@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=DM+Serif+Display:ital@0;1&display=swap');
:root {
  color-scheme:light;
  --ink:#1e2827;
  --soft-ink:#68746e;
  --surface:#f7f7f2;
  --border:#e4e8dd;
  --rose:#c77969;
  --green:#c7f58c;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;min-height:100vh;color:var(--ink);background:var(--surface);font-family:"DM Sans", ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #49796c;outline-offset:5px}
.ambient{position:fixed;pointer-events:none;z-index:-1;filter:blur(15px)}
.ambient-one{width:550px;height:550px;background:radial-gradient(circle,rgba(240,205,176,.28),transparent 70%);top:-190px;left:-140px}
.ambient-two{width:620px;height:620px;background:radial-gradient(circle,rgba(195,230,183,.23),transparent 70%);right:-230px;top:80px}
.page{max-width:1200px;margin:0 auto;padding:0 35px}
.site-header{height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
.home-brand{display:flex;align-items:center;gap:11px;font-size:24px;font-weight:800;letter-spacing:-.085em}
.brand-symbol{width:39px;height:39px;border-radius:14px;background:var(--ink);color:white;display:grid;place-items:center}
.brand-secondary{font-weight:500}
.brand-period{color:var(--rose)}
.header-nav{display:flex;gap:9px;align-items:center}
.header-nav a{padding:11px 15px;font-size:13px;font-weight:700;border:1px solid transparent;border-radius:11px;transition:background .2s,border-color .2s}
.header-nav a:hover{background:white;border-color:var(--border)}
.header-nav a span{display:inline-block;margin-left:6px;opacity:.6}
.hero{text-align:center;max-width:850px;margin:auto;padding:69px 0 32px}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.23em;color:#718078;display:flex;gap:10px;justify-content:center;align-items:center}
.sparkle{color:#ba806f;font-size:18px;letter-spacing:0}
h1{font-weight:800;font-size:clamp(49px,7.1vw,90px);line-height:1.04;letter-spacing:-.074em;margin:19px 0 21px}
.serif{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.035em}
.hero-period{color:var(--rose)}
.hero-intro{font-size:clamp(15px,2vw,18px);line-height:1.7;color:var(--soft-ink);margin:0 auto;max-width:480px}
.hero-hint{margin-top:46px;display:flex;align-items:center;justify-content:center;gap:15px;color:#87938b;font-size:10px;font-weight:800;letter-spacing:.2em}
.hint-line{height:1px;width:36px;background:#d4dcd2}
.destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:0 0 23px}
.destination{position:relative;isolation:isolate;min-width:0;min-height:550px;padding:31px 34px 25px;border-radius:27px;overflow:hidden;border:1px solid;display:flex;flex-direction:column;box-shadow:0 20px 50px rgba(34,50,45,.04);transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,border-color .22s}
.destination:hover{transform:translateY(-5px);box-shadow:0 23px 54px rgba(34,50,45,.13)}
.destination:active{transform:translateY(-1px)}
.calendar{background:linear-gradient(157deg,#fff8f3 0%,#fff0eb 65%,#f8e3dc 100%);border-color:#edd8d0}
.sports{background:radial-gradient(ellipse at 77% 32%,#29453a 0%,transparent 54%),linear-gradient(157deg,#1d3530 0%,#152b26 85%);border-color:#28493b;color:#fff}
.card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}
.app-icon{width:59px;height:59px;display:grid;place-items:center;border-radius:18px}
.calendar-icon{background:#f5ddd7}
.sport-icon{background:#2b5140}
.top-category{font-size:10px;font-weight:800;letter-spacing:.1em;color:#b18075;text-align:right}
.sports .top-category{color:#b3d1bd}
.tiny-heart,.tiny-spark{margin-left:5px}
.card-main{padding:32px 0 18px}
.card-kicker{font-size:10px;font-weight:800;letter-spacing:.18em;color:#bd887a}
.sports .card-kicker{color:var(--green)}
.card-main h2{font-size:clamp(45px,5vw,66px);line-height:1.2;font-weight:800;letter-spacing:-.07em;margin:3px 0 5px}
.card-dot{color:var(--rose)}
.sports .card-dot{color:var(--green)}
.card-main p{line-height:1.65;font-size:14px;max-width:335px;color:#846c66;margin:0}
.sports .card-main p{color:#b9d1c8}
.calendar-art{max-width:365px;width:83%;align-self:center;margin:5px auto -38px;border-radius:15px 15px 0 0;border:1px solid #f3dbd5;background:#fffdfb;transform:rotate(-4deg);padding:18px 18px 30px;box-shadow:0 15px 37px rgba(117,68,55,.13)}
.art-top{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:800;color:#62504c}
.art-circle{color:#daaaa0;font-size:17px}
.art-dots{margin-left:auto;color:#cbb1a8;letter-spacing:1px}
.art-days,.art-week{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:6px}
.art-days{margin-top:15px;font-size:9px;font-weight:700;color:#bbada9}
.art-week{font-size:12px;color:#514c47;font-weight:700;margin-top:11px}
.art-week span{height:25px;display:grid;place-items:center}
.art-week .art-date{border-radius:50%;background:#d78776;color:#fff}
.art-strokes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.art-stroke{height:18px;border-radius:5px}
.stroke-peach{background:#f7d5ce;grid-column:1/3;width:65%}
.stroke-lavender{background:#dedafa;width:85%}
.stroke-blue{background:#d6e6ef}
.football-art{max-width:365px;width:83%;align-self:center;margin:5px auto -38px;border:1px solid #3d6252;border-radius:15px 15px 0 0;background:#203c32;transform:rotate(4deg);padding:15px 18px 29px;box-shadow:0 20px 37px rgba(1,10,5,.2)}
.sport-art-head,.football-bottom{display:flex;justify-content:space-between;align-items:center;color:#b4c8bb;font-size:8px;font-weight:800;letter-spacing:.13em}
.sport-dot{height:7px;width:7px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #557b4d}
.score-block{display:flex;align-items:center;justify-content:center;gap:35px;padding:15px 5px 13px}
.score-team{display:flex;align-items:center;gap:7px;flex-direction:column}
.team-shape{height:36px;width:36px;border-radius:12px;background:linear-gradient(135deg,#f8fff3,#b4dab7);transform:rotate(-8deg)}
.team-shape.second{background:linear-gradient(135deg,#f7dd9c,#c3a667);transform:rotate(8deg)}
.score-team div:nth-child(2){display:flex;gap:4px}
.score-team i{display:block;width:24px;height:5px;border-radius:10px;background:#628774}
.score-team i+ i{width:15px}
.vs{font-size:12px;font-weight:800;color:#97bea4}
.football-bottom{border-top:1px solid #416454;padding-top:12px}
.mini-bars{display:flex;align-items:end;gap:3px}
.mini-bars i{display:block;width:4px;background:#a5d68b;border-radius:2px 2px 0 0;height:5px}
.mini-bars i:nth-child(2){height:10px}.mini-bars i:nth-child(3){height:7px}.mini-bars i:nth-child(4){height:14px}.mini-bars i:nth-child(5){height:11px}.mini-bars i:nth-child(6){height:16px}.mini-bars i:nth-child(7){height:9px}.mini-bars i:nth-child(8){height:17px}
.card-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e8cec6;padding-top:20px;position:relative;z-index:2;font-weight:800;font-size:13px}
.sports .card-bottom{border-color:#3b5a4d}
.arrow-circle{display:grid;place-items:center;width:39px;height:39px;border:1px solid #dcbab0;border-radius:50%;font-size:22px;transition:transform .22s,background .22s}
.sports .arrow-circle{border-color:#547163;color:var(--green)}
.destination:hover .arrow-circle{transform:translate(3px,-3px);background:rgba(255,255,255,.14)}
.closing{display:flex;justify-content:center;align-items:center;gap:12px;padding:16px 20px 48px;color:#8c9890}
.closing-icon{font-size:20px;color:#c3ac8f}
.closing p{font-size:12px;line-height:1.6;margin:0}
.site-footer{min-height:78px;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:15px;align-items:center;color:#9ba69e;font-size:11px;font-weight:700}
@media (max-width:800px){
  .page{padding:0 22px}
  .site-header{height:78px}
  .hero{padding:52px 0 26px}
  .hero-hint{margin-top:32px}
  .destination-grid{grid-template-columns:1fr;gap:18px}
  .destination{min-height:480px;padding:26px 26px 23px}
  .card-main{padding:22px 0 12px}
  .card-main h2{font-size:54px}
  .calendar-art,.football-art{width:72%;max-width:370px;margin-top:1px}
  .card-bottom{padding-top:20px}
}
@media (max-width:480px){
  .page{padding:0 16px}
  .home-brand{font-size:21px}
  .brand-symbol{width:34px;height:34px}
  .header-nav{gap:1px}
  .header-nav a{font-size:12px;padding:8px}
  .header-nav a span{display:none}
  .hero h1{font-size:clamp(45px,12vw,66px)}
  .hero-intro{font-size:15px}
  .hero{padding:48px 0 28px}
  .destination{padding:22px;min-height:455px;border-radius:22px}
  .card-topline{align-items:flex-start}
  .app-icon{height:51px;width:51px}
  .top-category{font-size:9px;max-width:170px;margin-top:15px}
  .card-main h2{font-size:48px}
  .calendar-art,.football-art{width:90%;margin-bottom:-30px}
  .closing{padding:15px 0 38px}
  .site-footer{flex-wrap:wrap;padding:18px 0}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
