/* First review slice: opening splash, navigation and hero only.
   All subsequent sections retain their current presentation for the next review. */
:root{
  --review-navy:#14213a;
  --review-deep:#0b1426;
  --review-cream:#f1e8d8;
  --review-ivory:#f8f0e2;
  --review-yellow:oklch(0.84 0.15 85);
  --review-terracotta:oklch(0.66 0.17 35);
}
.site-head,.hero,.open-v2{font-family:"Archivo",system-ui,sans-serif}
.toby-wordmark{display:block;width:94px;height:auto}
.open-v2 .brand-wordmark{display:block;width:min(68vw,540px);height:auto}

/* Header: existing links and language controls remain intact. */
.site-head{height:72px;background:var(--review-navy);border:0;color:var(--review-cream);box-shadow:0 10px 40px -28px rgba(11,20,38,.55)}
.site-head .wrap{min-height:72px;width:min(1320px,100% - 48px);gap:clamp(12px,1.5vw,24px)}
.site-head .brand{text-decoration:none;color:var(--review-cream);font-size:26px}
.site-head .nav{gap:clamp(10px,1.1vw,18px)}
.site-head .nav>a,.site-head .nav summary{font:500 14px/1.2 "Archivo",system-ui,sans-serif;color:var(--review-cream);letter-spacing:0}
.site-head .nav>a:hover,.site-head .nav summary:hover{color:var(--review-yellow);border-bottom-color:var(--review-terracotta)}
.site-head .explore summary{border-radius:14px;border-color:rgba(241,232,216,.35);background:transparent}
.site-head .explore summary::after{border-color:var(--review-yellow)}
.site-head .explore-panel{background:var(--review-navy);border-color:rgba(241,232,216,.25);box-shadow:0 30px 80px -24px rgba(20,33,58,.5)}
.site-head .explore-panel a{font-family:"Archivo",system-ui,sans-serif;color:var(--review-cream);background:rgba(248,240,226,.06);border-color:rgba(241,232,216,.16)}
.site-head .explore-panel a::before,.site-head .explore-panel a::after{color:var(--review-yellow)}
.site-head .explore-panel a::before,.site-head .explore-panel a::after{font-family:"Archivo",system-ui,sans-serif}
.site-head .lang,.site-head .lang select{color:var(--review-cream)}
.site-head .lang select{font-family:"Archivo",system-ui,sans-serif;border-color:rgba(241,232,216,.38)}
.site-head .lang select option{color:var(--review-navy);background:var(--review-ivory)}
.site-head .btn{font-family:"Archivo",system-ui,sans-serif}
.site-head .btn-primary,.hero .btn-primary{background:var(--review-yellow);color:var(--review-navy);border-radius:14px;box-shadow:0 18px 40px -24px rgba(11,20,38,.7)}
.site-head .btn-primary:hover,.hero .btn-primary:hover{background:var(--review-cream);color:var(--review-navy);transform:translateY(-2px) rotate(-1deg)}
.site-head .btn-ghost,.hero .btn-ghost{border:1.5px solid rgba(241,232,216,.42);border-radius:14px;color:var(--review-cream)}
.site-head .btn-ghost:hover,.hero .btn-ghost:hover{border-color:var(--review-cream);color:var(--review-cream)}
.head-progress{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left center;transform:scaleX(0);background:var(--review-terracotta);pointer-events:none}
[dir=rtl] .head-progress{transform-origin:right center}

/* Hero: preserve all existing copy, links, image and workspace screenshot. */
.hero{min-height:calc(100svh - 72px - 68px);background:var(--review-navy);color:var(--review-cream);border-radius:0 0 40px 40px}
.hero-photo{
  inset:0;
  background-image:url('/toby-hero-home.jpg');
  background-position:left -210px center;
  background-size:auto 100%;
  background-repeat:no-repeat;
  filter:grayscale(1) contrast(1.1) brightness(1.05);
  opacity:.52;
  mix-blend-mode:luminosity;
  transform:none;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 43%,transparent 76%);
  mask-image:linear-gradient(90deg,#000 0%,#000 43%,transparent 76%);
}
.hero::before{background:linear-gradient(90deg,rgba(20,33,58,.22) 0%,rgba(20,33,58,.38) 52%,rgba(20,33,58,.55) 100%)}
[dir=rtl] .hero::before{background:linear-gradient(270deg,rgba(20,33,58,.22) 0%,rgba(20,33,58,.38) 52%,rgba(20,33,58,.55) 100%)}
[dir=rtl] .hero-photo{background-position:right -210px center;transform:scaleX(-1);-webkit-mask-image:linear-gradient(270deg,#000 8%,rgba(0,0,0,.78) 62%,rgba(0,0,0,.45) 100%);mask-image:linear-gradient(270deg,#000 8%,rgba(0,0,0,.78) 62%,rgba(0,0,0,.45) 100%)}
.hero .wrap{
  width:min(1320px,100% - 48px);
  grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  min-height:calc(100svh - 72px - 68px);
  gap:clamp(22px,2.8vw,42px);
  padding-block:clamp(28px,3vw,44px);
}
.hero .wrap>div:first-child{position:relative;z-index:2}
.hero .kicker{gap:15px;margin-bottom:18px;color:var(--review-yellow);font:600 14px/1.2 "Archivo",system-ui,sans-serif;letter-spacing:.04em;text-transform:none}
.hero .kicker .toby-wordmark{width:94px;height:auto}
.hero h1{font:700 clamp(46px,5vw,72px)/1.02 "Archivo",system-ui,sans-serif;font-stretch:106%;letter-spacing:-.03em;max-width:15ch}
.hero .lede{margin-top:18px;color:rgba(241,232,216,.86);font:400 clamp(18px,1.5vw,21px)/1.55 "Archivo",system-ui,sans-serif;max-width:40ch}
.hero .hero-ctas{gap:12px;margin-top:20px}
.hero .hero-ctas .btn{font:700 17px/1 "Archivo",system-ui,sans-serif;padding:17px 28px}
.hero .launch{margin-top:15px;padding:7px 0;background:none;border:0;border-radius:0;box-shadow:none;transform:none;color:var(--review-yellow);font:600 14px/1.35 "Archivo",system-ui,sans-serif;letter-spacing:.04em}
.hero .launch .dot{width:28px;height:2px;background:var(--review-yellow);clip-path:none;border-radius:2px}
.hero .hero-owner{color:rgba(241,232,216,.8);font:500 14px/1.5 "Archivo",system-ui,sans-serif}
.hero .hero-owner a{color:var(--review-cream)}
.hero .phone-qr{margin-top:14px;border:1px solid rgba(241,232,216,.3);background:rgba(11,20,38,.74);border-radius:16px;color:var(--review-cream);box-shadow:0 30px 80px -24px rgba(20,33,58,.5)}
.hero .phone-qr img{background:var(--review-ivory);border-radius:8px}
.hero .phone-qr strong,.hero .phone-qr small{font-family:"Archivo",system-ui,sans-serif}
.hero .phone-qr small{color:rgba(241,232,216,.72)}
.hero .wrap>figure{width:min(100%,720px);margin:0 auto!important;align-self:center;justify-self:center}
.hero .screen{border:1px solid rgba(241,232,216,.65);border-radius:22px;background:var(--review-ivory);box-shadow:0 30px 80px -24px rgba(20,33,58,.5)}
.hero .screen .bar{background:var(--review-ivory);border-color:rgba(20,33,58,.15)}
.hero .screen .bar i{background:#c8c2b7}
.hero .screen .bar span{font-family:"Archivo",system-ui,sans-serif;color:#3d4a63}
.hero .hero-shot{opacity:.94;transform:perspective(1500px) rotateY(-3deg) rotateX(1deg);transform-origin:center center}
.owner-lane{min-height:68px;background:var(--review-yellow);color:var(--review-navy);font-family:"Archivo",system-ui,sans-serif}
.owner-lane span{font-family:"Archivo",system-ui,sans-serif}
.hero .shot-caption,.hero .shot-caption b{font-family:"Archivo",system-ui,sans-serif}
.hero .shot-caption{color:rgba(241,232,216,.78)}
.hero .shot-caption b{color:var(--review-yellow)}
.hero .tag-note{background:rgba(241,232,216,.13);color:var(--review-cream);font-family:"Archivo",system-ui,sans-serif}

/* The existing once-per-session splash takes on the reference's curved lift. */
.open-v2{background:var(--review-navy)}
.open-v2 .field{background:var(--review-navy)}
.open-v2 .light{background:radial-gradient(65% 65% at 50% 35%,rgba(248,240,226,.12),transparent 70%)}
.open-v2 .mark{--w:min(74vw,620px);--h:clamp(110px,18vw,190px)}
.open-v2 .mark>.dot{background:var(--review-deep);box-shadow:inset 0 0 0 2px rgba(241,232,216,.28),0 22px 38px rgba(11,20,38,.3)}
.open-v2 .mark .brand-wordmark{position:relative;opacity:0;animation:ov-fade .45s 1.55s ease forwards}
.open-v2 .tag{font-family:"Archivo",system-ui,sans-serif;color:var(--review-cream);font-stretch:106%;letter-spacing:.04em}
.open-v2 .promise{background:var(--review-yellow);color:var(--review-navy);font-family:"Archivo",system-ui,sans-serif;box-shadow:0 30px 80px -24px rgba(20,33,58,.5)}
.open-v2 .open-foot{background:var(--review-deep);color:var(--review-cream);font-family:"Archivo",system-ui,sans-serif}
.open-v2 .open-foot strong{color:var(--review-yellow)}
.open-v2 .skip-intro{background:var(--review-ivory);color:var(--review-navy);border-color:rgba(20,33,58,.4)}
.open-v2.leaving{animation:review-splash-out 1.25s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes review-splash-out{to{transform:translateY(-105%);border-radius:0 0 40% 40%}}

@media(max-width:1100px){
  .site-head .nav,.site-head .head-tools .btn-ghost{display:none}
  .site-head .head-tools{margin-inline-start:auto}
  .site-head .menu-toggle{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;border:1px solid rgba(241,232,216,.4);background:transparent;color:var(--review-cream);cursor:pointer}
  .site-head.open .nav{display:grid;position:absolute;inset-inline:0;top:100%;max-height:calc(100svh - 72px);overflow-y:auto;padding:12px 24px 24px;background:var(--review-navy);box-shadow:0 30px 80px -24px rgba(20,33,58,.5)}
  .site-head.open .nav>a,.site-head.open .nav summary{display:block;padding:14px 0;border-bottom:1px solid rgba(241,232,216,.18);font:600 17px/1.2 "Archivo",system-ui,sans-serif}
  .site-head.open .nav .explore summary{display:inline-flex;padding:12px 15px;margin-block:8px;border:1px solid rgba(241,232,216,.35);border-radius:14px}
  .site-head.open .explore-panel{position:static;width:100%;margin:8px 0 12px;box-shadow:none}
  .site-head.open .explore-panel::before{display:none}
  .site-head.open .nav .m-signin{display:block}
}
@media(max-width:860px){
  .hero{min-height:0}
  .hero .wrap{grid-template-columns:1fr;min-height:0;padding-block:56px 64px}
  .hero-photo{inset:0;background-position:center center}
  .hero::before,[dir=rtl] .hero::before{background:linear-gradient(180deg,rgba(20,33,58,.35),rgba(20,33,58,.93) 48%,#14213a 100%)}
  .hero h1{max-width:15ch}
  .hero .wrap>figure{width:min(100%,620px);margin:24px auto 0!important}
  .hero .hero-shot{transform:none}
}
@media(max-width:560px){
  .site-head .wrap,.hero .wrap{width:min(100% - 32px,1320px)}
  .site-head .brand{font-size:22px}
  .site-head .lang select,[dir=rtl] .site-head .lang select{width:42px;height:42px;padding:0;color:transparent;background-image:none}
  .site-head .lang select option{color:var(--review-navy)}
  .site-head .head-tools .btn-primary{max-width:132px}
  .hero h1{font-size:clamp(42px,11vw,58px)}
  .hero .kicker{flex-wrap:wrap}
  .hero .hero-ctas .btn{width:100%}
  .hero .phone-qr{max-width:100%}
  .hero .shot-caption{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
  .site-head *,.hero *,.open-v2 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .open-v2.leaving{animation:none!important;opacity:0}
  .head-progress{transition:none!important}
}
