:root{color-scheme:light;--ink:#24212b;--paper:#faf7f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #c64960;outline-offset:6px}header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 5vw;background:#faf7f2f7;border-bottom:1px solid #e3ddd5}.brand{text-decoration:none;font-weight:700;font-size:21px;white-space:nowrap}.brand span{display:block;font-size:12px;letter-spacing:2px;margin-top:5px;font-weight:400}nav{display:flex;gap:25px;overflow:auto;padding:7px 2px;white-space:nowrap;font-size:14px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}section{position:relative;min-height:80svh;overflow:hidden}.hero{display:grid;place-items:center;min-height:calc(100svh - 88px);color:white;text-align:center;background:#283239}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:#11132270}.hero-text{position:relative;z-index:1;padding:60px 20px;text-shadow:0 2px 20px #0007}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(70px,13vw,180px);letter-spacing:-5px;margin:20px 0}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:13px;font-weight:700;line-height:1.7}p{font-size:clamp(17px,1.6vw,22px);line-height:1.6}.button{display:inline-block;margin-top:25px;background:var(--paper);color:var(--ink);text-decoration:none;border-radius:50px;padding:17px 28px;font-size:15px;text-shadow:none}.button:hover{background:#f5d9dd}.gift{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw;padding:8vw 6vw}.copy{max-width:560px}h2{font-family:Georgia,serif;font-size:clamp(45px,6vw,88px);line-height:1.05;letter-spacing:-2px;font-weight:400;margin:20px 0 30px}.copy>a{display:inline-block;margin-top:24px;font-size:15px}.scene{display:block;width:100%;height:auto;border-radius:4px}.pearly{background:#eee0ed url('assets/slide-3.jpg') center/cover}.figures{display:flex;align-items:center}.figures img{width:50%;min-width:0;height:auto}.pink{background:#f3d8df}.toy{max-height:70svh;max-width:100%;display:block;margin:auto}.modi{background:#eee4ec}.modi figure{margin:0}.modi figcaption{font-size:11px;line-height:1.6;margin-top:12px}.beauty{background:#f0e0dc}.final{background:#030108 url('assets/slide-7.jpg') top center/cover no-repeat;color:#fff;display:grid;place-items:center;text-align:center;padding:250px 6vw 90px}.final h2{font-size:clamp(40px,5vw,75px)}.final>div{background:#0009;padding:25px;border-radius:8px}footer{text-align:center;padding:25px;font-size:12px;letter-spacing:2px}@media(max-width:700px){header{display:block;padding:14px 5vw}.brand{display:flex;align-items:center;justify-content:space-between}.brand span{margin:0}nav{gap:22px;margin-top:12px}.hero{min-height:75svh}.gift{grid-template-columns:1fr;gap:35px;padding:65px 6vw;min-height:0}.gift h2{margin:15px 0 25px}.gift .scene{max-height:55svh;object-fit:contain}.toy{max-height:55svh}.figures{max-width:500px;margin:auto}.final{padding-top:170px}html{scroll-padding-top:115px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Mobile: show every menu item, retain comfortable touch targets and image proportions. */
header>nav{min-width:0}
.gift>*{min-width:0}
@media(max-width:700px){
  html{scroll-padding-top:165px}
  body{-webkit-text-size-adjust:100%}
  header{padding:12px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))}
  .brand{font-size:20px;min-height:28px}
  .brand span{font-size:11px;letter-spacing:1.5px}
  nav{display:flex;flex-wrap:wrap;justify-content:center;gap:0 8px;margin-top:8px;padding:0;overflow:visible;white-space:normal}
  nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 8px;font-size:13px;border-radius:6px}
  nav a:active,.copy>a:active{background:#efdfe3}
  .hero{min-height:calc(100svh - 145px)}
  .hero-text{width:100%;padding:48px 20px}
  h1{font-size:clamp(57px,17vw,104px);letter-spacing:-2px;line-height:1.1;overflow-wrap:anywhere;margin:22px 0}
  .hero-text>p:not(.eyebrow){font-size:17px;max-width:270px;margin:0 auto}
  .eyebrow{font-size:11px;letter-spacing:2.2px}
  .button{min-height:48px;padding:15px 24px;max-width:100%;line-height:1.4}
  .gift{padding:46px max(20px,6vw);gap:28px}
  .gift h2{font-size:clamp(40px,11vw,64px);letter-spacing:-1.4px;line-height:1.1;margin:14px 0 22px}
  .copy p{font-size:17px;line-height:1.65}
  .copy>a{min-height:44px;display:inline-flex;align-items:center;margin-top:8px;padding:10px 0}
  .gift .scene{width:100%;max-height:none;height:auto}
  .figures{width:100%;gap:0}
  .toy{width:auto;max-width:100%;max-height:480px;max-height:60svh;object-fit:contain}
  .modi figcaption{font-size:12px;line-height:1.6}
  .final{min-height:80svh;padding:140px 20px 55px;background-size:auto 100%}
  .final>div{min-width:0;width:100%;padding:24px 12px}
  .final h2{font-size:clamp(31px,8.6vw,52px);letter-spacing:-1px;line-height:1.15;overflow-wrap:anywhere}
  .final p{font-size:16px;line-height:1.7}
  footer{padding-bottom:max(25px,env(safe-area-inset-bottom))}
}
@media(max-width:700px) and (max-height:500px){
  header{position:static}
  html{scroll-padding-top:16px}
  .hero{min-height:380px}
}
