@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&display=swap');

/* Arabic is opt-in at runtime; English retains the existing typeface and layout. */
html[lang="ar"][dir="rtl"] body{
  font-family:'IBM Plex Sans Arabic',system-ui,sans-serif;
  font-size:17.5px;
  line-height:1.8;
  text-align:right;
}

/* Services: full-section technical service set. */
.page-card-stack .service-detail{overflow-y:auto!important}
.service-detail{background:#f2f3ef;color:#171b19}
.service-detail-dark{background:#0b100d;color:#f2f5f3}
.service-detail-inner{height:100%;display:grid;grid-template-rows:auto 1fr;align-content:center;gap:clamp(22px,3.6vh,40px)}
.service-detail-head{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);column-gap:clamp(40px,8vw,120px);align-items:start}
.service-detail-head .eyebrow{grid-column:1/-1;margin-bottom:clamp(12px,2vh,20px);color:#18865d}
.service-detail-head .h2{max-width:760px;margin:0;font-size:clamp(36px,4.3vw,68px);line-height:.94}
.service-framing{max-width:610px;margin:0;color:#535c56;font-size:clamp(14px,1.15vw,17px);line-height:1.5}
.service-detail-dark .service-framing{color:#aeb9b3}
.service-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);align-items:stretch;gap:clamp(40px,7vw,100px);min-height:0}
.service-work{display:flex;flex-direction:column}
.service-detail h3{margin:0 0 14px;color:#18865d;font-size:11px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase}
.service-detail-dark h3,.service-detail-dark .eyebrow{color:#18865d}
.service-work ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0 clamp(28px,4vw,58px);margin:0;padding:0;list-style:none;counter-reset:service-work}
.service-work li{position:relative;padding:12px 0 12px 30px;border-top:1px solid rgba(23,27,25,.15);color:#343b37;font-size:clamp(12px,.92vw,14px);line-height:1.42;counter-increment:service-work}
.service-work li:before{content:counter(service-work,decimal-leading-zero);position:absolute;left:0;top:13px;color:#18865d;font-size:9px;font-weight:700;letter-spacing:.08em}
.service-detail-dark .service-work li{border-color:rgba(99,230,173,.16);color:#aeb9b3}
.service-detail-dark .service-work li:before{color:#63e6ad}
.service-outcome{display:flex;flex-direction:column;gap:clamp(14px,2vh,22px);padding-left:clamp(24px,3vw,42px);border-left:1px solid rgba(23,27,25,.16)}
.service-detail-dark .service-outcome{border-color:rgba(99,230,173,.2)}
.service-outcome p{margin:0;color:#535c56;font-size:clamp(12px,.98vw,14px);line-height:1.48}
.service-detail-dark .service-outcome p{color:#aeb9b3}
.service-start{padding-top:14px;border-top:1px solid rgba(23,27,25,.15)}
.service-detail-dark .service-start{border-color:rgba(99,230,173,.16)}
.service-outcome .service-start{margin-top:0}
.service-outcome .btn{align-self:flex-start;margin-top:0}
@media(max-width:800px){
  .service-detail-inner{height:auto;display:block}
  .service-detail-head,.service-detail-grid{display:block}
  .service-detail-head .h2{margin-bottom:18px;font-size:36px}
  .service-framing{font-size:14px}
  .service-detail-grid{margin-top:30px}
  .service-work{display:block}
  .service-work ul{grid-template-columns:1fr}
  .service-work li{font-size:13px}
  .service-outcome{margin-top:28px;padding:0;border-left:0;border-top:0}
  .service-outcome .service-start{margin-top:0;padding-top:0;border-top:0}
  .service-outcome .service-start h3{padding-bottom:13px;border-bottom:1px solid rgba(23,27,25,.15);font-size:0}
  .service-outcome .service-start h3::after{content:"WHEN IS THIS APPLICABLE";font-size:11px;line-height:1.2;letter-spacing:.12em}
  html[lang="ar"][dir="rtl"] .service-outcome .service-start h3::after{content:"متى ينطبق ذلك";letter-spacing:0}
  .service-detail-dark .service-outcome .service-start h3{border-bottom-color:rgba(99,230,173,.16)}
  .service-detail-dark .service-outcome{border-color:rgba(99,230,173,.2)}
  .service-outcome .btn{margin-top:4px}
}
html[dir="rtl"] .service-detail-head,html[dir="rtl"] .service-detail-grid{text-align:right}
html[dir="rtl"] .service-work li{padding-left:0;padding-right:30px}
html[dir="rtl"] .service-work li:before{left:auto;right:0}
html[dir="rtl"] .service-outcome{padding-left:0;padding-right:clamp(24px,3vw,42px);border-left:0;border-right:1px solid rgba(23,27,25,.16)}
@media(max-width:800px){html[dir="rtl"] .service-outcome{padding-right:0;border-right:0}}
html[lang="ar"][dir="rtl"] :is(.hero h1,.page-hero h1,.h2,.h3,.band h2,.product-feature h2,.quote blockquote,.studio-title){
  font-family:'IBM Plex Sans Arabic',system-ui,sans-serif;
  letter-spacing:0;
  line-height:1.18;
}
html[lang="ar"][dir="rtl"] :is(.lead,.section-head p,.panel p,.list-card p,.step p,.product-feature p,.details,.studio-category p,.legal-copy p,.legal-copy li){
  line-height:1.8;
}
html[lang="ar"][dir="rtl"] :is(.eyebrow,label,.meta-item strong,.panel-index,.step-num,.status,.btn,.nav a,.nav-dropdown a,.language-current,.language-dropdown button){
  letter-spacing:0;
  text-transform:none;
}
html[lang="ar"][dir="rtl"] .header-inner,
html[lang="ar"][dir="rtl"] .section-head,
html[lang="ar"][dir="rtl"] .fc-content,
html[lang="ar"][dir="rtl"] .fc-bottom{direction:rtl;}
html[lang="ar"][dir="rtl"] .nav{flex-direction:row-reverse;}
html[lang="ar"][dir="rtl"] .nav-group>a{padding-right:15px;padding-left:7px;}
html[lang="ar"][dir="rtl"] .nav-dropdown{left:auto;right:0;text-align:right;}
html[lang="ar"][dir="rtl"] .home-capabilities-grid,
html[lang="ar"][dir="rtl"] .steps{direction:rtl;}
html[lang="ar"][dir="rtl"] .process-photo-grid .step-num{
  direction:ltr;
  text-align:left;
  align-self:stretch;
}
html[lang="ar"][dir="rtl"] .panel-index,
html[lang="ar"][dir="rtl"] .what-bottom-index{flex-direction:row-reverse;}
html[lang="ar"][dir="rtl"] .quote{border-left:0;border-right:2px solid var(--emerald);padding-left:0;padding-right:28px;}
html[lang="ar"][dir="rtl"] .latin-token,
html[lang="ar"][dir="rtl"] .logo,
html[lang="ar"][dir="rtl"] .fc-logo{font-family:'Inter',system-ui,sans-serif;unicode-bidi:isolate;text-align:left;}
html[lang="ar"][dir="rtl"] .logo,
html[lang="ar"][dir="rtl"] .fc-logo{display:inline-block;direction:ltr;}
html[lang="ar"][dir="rtl"] .fc-brand .fc-logo{
  align-self:flex-start;
  width:max-content;
}
@media(max-width:800px){
  html[lang="ar"][dir="rtl"] .nav{flex-direction:column;}
  html[lang="ar"][dir="rtl"] .nav-group{direction:rtl;}
  html[lang="ar"][dir="rtl"] .nav-dropdown{margin:0 7px 7px;}
}

@media(max-width:800px){
  html[lang="ar"][dir="rtl"] .steps .step {
    padding-inline: 24px;
  }
}

:root{--night:#070908;--night-2:#101512;--ink:#e9eeea;--muted:#a2ada5;--zinc:#f1f2f0;--zinc-2:#e2e5e1;--dark:#111614;--emerald:#48e0a2;--emerald-2:#b0f4d2;--line:rgba(255,255,255,.13);--dark-line:rgba(17,22,20,.12);--max:1320px;--pad:clamp(20px,5vw,72px);--radius:40px;--sans:'Inter',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--zinc);color:#171b19;font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.08;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E")}a{color:inherit}button,input,textarea{font:inherit}::selection{background:var(--emerald);color:var(--night)}.wrap{max-width:var(--max);margin:auto;padding:0 var(--pad)}
.dark{background:linear-gradient(180deg,var(--night) 0%,#0b100d 66%,#152a20 100%);color:var(--ink);position:relative}.dark:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,rgba(72,224,162,.15),transparent 68%)}.dark>*{position:relative;z-index:1}
.site-header{position:absolute;top:0;left:0;right:0;z-index:30}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between}.logo{font-weight:700;letter-spacing:-.06em;text-decoration:none;font-size:19px}.logo:before{content:"";display:inline-block;width:21px;height:21px;margin-right:7px;vertical-align:-5px;background:url("/assets/sail-logo-mark.svg") center/contain no-repeat}.logo mark{background:none;color:var(--emerald);font-weight:800}.nav{display:flex;gap:7px;align-items:center;padding:7px;border:1px solid var(--line);background:rgba(10,14,12,.5);backdrop-filter:blur(20px);border-radius:999px}.nav a{font-size:12px;color:rgba(233,238,234,.72);text-decoration:none;padding:10px 15px;border-radius:999px;transition:.3s}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);background:rgba(255,255,255,.1)}.nav-toggle{display:none;border:1px solid var(--line);background:rgba(10,14,12,.7);color:var(--ink);border-radius:99px;padding:10px 13px;cursor:pointer}.nav-toggle span{display:block;width:21px;height:1px;background:currentColor;margin:5px}
.hero{min-height:min(880px,100vh);display:flex;align-items:center;padding:150px 0 100px;overflow:hidden;position:relative;isolation:isolate;cursor:crosshair}.hero .wrap{width:100%;position:relative;z-index:3}.hero-tubes{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:0;pointer-events:none;transition:opacity 1.2s cubic-bezier(.16,1,.3,1);touch-action:none}.tubes-ready .hero-tubes{opacity:.72}.hero-veil{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(7,9,8,.92) 0%,rgba(7,9,8,.73) 48%,rgba(7,9,8,.23) 100%),linear-gradient(180deg,rgba(7,9,8,.22),rgba(7,9,8,.7) 94%)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.55fr);gap:8vw;align-items:end}.hero h1{max-width:920px;margin:0 0 30px;font-size:clamp(50px,8vw,124px);line-height:.96;letter-spacing:-.085em;font-weight:600;text-shadow:0 2px 34px rgba(0,0,0,.45)}.hero h1 em{font-style:normal;color:var(--emerald)}.lead{max-width:620px;color:rgba(233,238,234,.68);font-size:clamp(17px,2vw,22px);line-height:1.55}.eyebrow{margin:0 0 25px;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--emerald)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:600;transition:transform .3s,background .3s,border-color .3s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--emerald);color:var(--night)}.btn-primary:hover{background:var(--emerald-2)}.btn-ghost{border:1px solid var(--line);color:var(--ink);background:rgba(255,255,255,.04)}.btn-ghost:hover{background:rgba(255,255,255,.1)}.interaction-note{display:flex;align-items:center;gap:9px;margin:24px 0 0;color:rgba(233,238,234,.42);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.interaction-note span{width:6px;height:6px;border-radius:50%;background:var(--emerald);box-shadow:0 0 14px var(--emerald)}
.hero[data-tubes-hero]{background-color:#070908;isolation:isolate}.hero[data-tubes-hero] .hero-grid.hero-solo>div{width:100%;max-width:850px;margin-left:0;margin-right:auto}.hero[data-tubes-hero] .hero-tubes{z-index:2;mix-blend-mode:screen}.hero[data-tubes-hero].tubes-ready .hero-tubes{opacity:.58}
.hero-orbit{min-height:270px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.025));backdrop-filter:blur(15px);padding:22px;display:flex;flex-direction:column;justify-content:space-between}.hero-orbit svg{width:100%;height:160px}.orbit-meta{display:flex;justify-content:space-between;color:rgba(233,238,234,.6);font-size:11px}.orbit-meta strong{color:var(--emerald);font-weight:600}
.hero-system{min-height:390px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(155deg,rgba(255,255,255,.1),rgba(255,255,255,.025));backdrop-filter:blur(18px);padding:26px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.hero-system:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-120px;bottom:-140px;background:radial-gradient(circle,rgba(72,224,162,.24),transparent 68%);filter:blur(6px)}.system-source,.system-process,.system-output{position:relative;z-index:1}.system-kicker,.system-output small{display:block;color:rgba(233,238,234,.48);font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.knowledge-cloud{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.knowledge-cloud i{padding:6px 9px;border:1px solid rgba(255,255,255,.12);border-radius:99px;background:rgba(255,255,255,.045);color:rgba(233,238,234,.78);font-size:9px;font-style:normal}.system-flow{height:42px;margin:5px 0;position:relative}.system-flow:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:1px;background:linear-gradient(var(--emerald),rgba(72,224,162,.12))}.system-flow span{position:absolute;left:5px;width:7px;height:7px;border-radius:50%;background:var(--emerald);box-shadow:0 0 14px var(--emerald);animation:signal-drop 3s ease-in-out infinite}.system-flow span:nth-child(2){animation-delay:1s}.system-flow span:nth-child(3){animation-delay:2s}.system-process{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.system-process div{padding:10px 8px;border-top:1px solid rgba(255,255,255,.15)}.system-process b{display:block;margin-bottom:5px;color:var(--emerald);font-size:9px}.system-process span{color:rgba(233,238,234,.7);font-size:9px}.system-output{display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}.system-output strong{display:block;margin-top:5px;color:var(--ink);font-size:15px;line-height:1.25;letter-spacing:-.03em}.machine-pulse{width:34px;height:34px;flex:0 0 auto;border:1px solid var(--emerald);border-radius:50%;position:relative;box-shadow:0 0 24px rgba(72,224,162,.18)}.machine-pulse:before,.machine-pulse:after{content:"";position:absolute;inset:50% auto auto 50%;width:7px;height:7px;border-radius:50%;background:var(--emerald);transform:translate(-50%,-50%)}.machine-pulse:after{width:100%;height:100%;background:transparent;border:1px solid rgba(72,224,162,.45);animation:machine-ring 2.4s ease-out infinite}@keyframes signal-drop{0%{transform:translateY(0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateY(36px);opacity:0}}@keyframes machine-ring{0%{transform:translate(-50%,-50%) scale(.45);opacity:.8}100%{transform:translate(-50%,-50%) scale(1.45);opacity:0}}
.hero-grid.hero-solo{grid-template-columns:1fr}.hero-grid.hero-solo>div{max-width:1000px}
.section{padding:clamp(85px,12vw,170px) 0}.light{background:var(--zinc);color:#171b19}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:58px}.section-head h2{margin:0;max-width:720px}.section-head p{max-width:420px;color:#68716b;margin:0}.h2{font-size:clamp(36px,5vw,72px);line-height:.98;letter-spacing:-.075em;font-weight:600}.h3{font-size:22px;line-height:1.15;letter-spacing:-.045em;margin:0 0 14px}.dark .section-head p,.dark .muted{color:var(--muted)}
.bento{display:grid;grid-template-columns:1.05fr .95fr .95fr;gap:14px}.panel{border:1px solid var(--dark-line);border-radius:26px;padding:30px;min-height:245px;background:rgba(255,255,255,.42);transition:transform .35s,background .35s}.panel:hover{transform:translateY(-6px);background:rgba(255,255,255,.72)}.panel-tall{grid-row:span 2;min-height:505px;background:#daddd9}.panel-dark{background:var(--dark);color:var(--ink);border-color:var(--line)}.panel-dark:hover{background:#18201c}.panel p{color:#68716b}.panel-dark p{color:var(--muted)}.panel-index{display:flex;justify-content:space-between;color:#77817a;font-size:11px;margin-bottom:50px}.panel-dark .panel-index{color:var(--emerald)}.arrow{font-size:22px;color:var(--emerald)}
.band{padding:clamp(88px,12vw,170px) 0;background:var(--dark);color:var(--ink);border-radius:var(--radius);margin:0 var(--pad);overflow:hidden}.band .wrap{position:relative}.band h2{max-width:940px;font-size:clamp(42px,7vw,104px);line-height:.94;letter-spacing:-.09em;margin:0}.band h2 span{color:var(--emerald)}.band:before{content:"S";position:absolute;right:8%;top:-25%;font-size:clamp(240px,44vw,680px);font-weight:800;line-height:1;color:rgba(72,224,162,.055);letter-spacing:-.2em}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.step{border-top:1px solid var(--dark-line);padding:22px 10px 0 0}.step-num{font-size:11px;color:#77817a;display:block;margin-bottom:45px}.step p{color:#68716b;margin:0}.quote{max-width:850px;border-left:2px solid var(--emerald);padding-left:28px}.quote blockquote{font-size:clamp(25px,4vw,54px);line-height:1.12;letter-spacing:-.065em;margin:0 0 28px}.quote cite{font-size:12px;color:var(--muted);font-style:normal}
.page-hero{padding:180px 0 110px;min-height:580px}.page-hero h1{font-size:clamp(54px,8vw,116px);line-height:.94;letter-spacing:-.09em;max-width:1000px;margin:0 0 25px}.page-hero .lead{max-width:670px}.list-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--dark-line);border:1px solid var(--dark-line);border-radius:26px;overflow:hidden}.list-card{background:var(--zinc);padding:clamp(28px,4vw,55px);min-height:300px}.list-card:nth-child(3n){background:#e2e6e1}.list-card .panel-index{margin-bottom:64px}.list-card p{color:#68716b;max-width:42ch}.product-feature{border-radius:var(--radius);background:var(--dark);color:var(--ink);padding:clamp(30px,6vw,78px);display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center}.product-feature h2{font-size:clamp(40px,6vw,76px);line-height:.95;letter-spacing:-.08em;margin:0 0 24px}.product-feature p{color:var(--muted)}.product-mark{height:300px;border:1px solid var(--line);border-radius:26px;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(72,224,162,.25),transparent 48%)}.product-mark span{font-size:clamp(60px,11vw,150px);font-weight:700;letter-spacing:-.12em;color:var(--emerald)}
.contact-grid{display:grid;grid-template-columns:1fr .75fr;gap:10vw}.email-big{font-size:clamp(26px,4vw,54px);letter-spacing:-.07em;text-decoration:none;border-bottom:1px solid var(--emerald)}.details{color:#68716b;line-height:1.9}.details strong{color:#171b19}.contact-box{border-radius:26px;border:1px solid var(--dark-line);padding:clamp(30px,4vw,50px);background:rgba(255,255,255,.4)}.clean-form input,.clean-form textarea{padding:16px 0;font-size:16px}.clean-form .form-row{display:flex;gap:20px;flex-wrap:wrap}.clean-form .form-group{flex:1 1 calc(50% - 10px);min-width:200px}.clean-form > .form-group{width:100%}.meta-details{display:flex;flex-direction:column;gap:24px}.meta-item strong{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#68716b;margin-bottom:4px}.meta-item span{display:block;font-size:14px;color:#171b19}label{display:block;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#68716b;margin:0 0 8px}input,textarea{width:100%;border:0;border-bottom:1px solid var(--dark-line);background:transparent;padding:13px 0;margin-bottom:25px;color:#171b19;outline:none}input:focus,textarea:focus{border-color:#1d7656;box-shadow:0 2px 0 #1d7656}textarea{min-height:135px;resize:vertical}.form-note{display:none;margin-top:15px;color:#247552;font-size:13px}
.site-footer{background:var(--night);color:var(--ink);padding:75px 0 35px}.footer-inner{display:flex;justify-content:space-between;gap:40px}.footer-meta{color:var(--muted);font-size:12px;line-height:1.9;margin-top:20px}.footer-meta a{color:var(--emerald);text-decoration:none}.footer-nav{display:flex;gap:22px;align-items:flex-start}.footer-nav a{font-size:12px;color:var(--muted);text-decoration:none}.footer-nav a:hover{color:var(--emerald)}.copyright{border-top:1px solid var(--line);margin:50px 0 0;padding-top:20px;color:#6f7a73;font-size:11px}
.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.js .reveal.in{opacity:1;transform:none}
@media(max-width:800px){.header-inner{height:78px}.nav-toggle{display:block}.nav{display:none;position:absolute;top:70px;left:var(--pad);right:var(--pad);border-radius:22px;flex-direction:column;align-items:stretch;padding:9px;background:rgba(9,13,11,.95)}.nav.open{display:flex}.nav a{padding:14px 16px}.hero{min-height:auto;padding:150px 0 82px;cursor:auto}.hero-veil{background:linear-gradient(180deg,rgba(7,9,8,.84),rgba(7,9,8,.66))}.tubes-ready .hero-tubes{opacity:.45}.interaction-note{display:none}.hero-grid,.contact-grid,.product-feature{grid-template-columns:1fr;gap:45px}.hero-orbit{min-height:240px}.section-head{display:block;margin-bottom:35px}.section-head p{margin-top:20px}.bento,.steps{grid-template-columns:1fr}.panel-tall{grid-row:auto;min-height:290px}.list-grid{grid-template-columns:1fr}.list-card{min-height:250px}.band{margin:0 14px;border-radius:28px}.page-hero{padding:145px 0 80px;min-height:auto}.footer-inner{display:block}.footer-nav{margin-top:40px;flex-wrap:wrap}.actions .btn{flex:1 1 auto}.product-mark{height:230px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.js .reveal{opacity:1;transform:none}.hero-tubes,.interaction-note{display:none}}
.status{display:inline-block;margin-top:18px;border:1px solid rgba(72,224,162,.42);border-radius:999px;padding:9px 14px;color:var(--emerald);font-size:11px}.link-more{display:inline-block;margin-top:25px;color:#171b19;text-decoration:none;border-bottom:1px solid #247552;padding-bottom:3px;font-size:12px;font-weight:600}
.page-hero{position:relative;overflow:hidden;isolation:isolate;cursor:crosshair}.page-hero .wrap{position:relative;z-index:3}.page-hero .hero-veil{background:linear-gradient(90deg,rgba(7,9,8,.93) 0%,rgba(7,9,8,.68) 58%,rgba(7,9,8,.28) 100%),linear-gradient(180deg,rgba(7,9,8,.15),rgba(7,9,8,.72))}.page-hero.tubes-ready .hero-tubes{opacity:.58}.page-hero h1{text-shadow:0 2px 34px rgba(0,0,0,.5)}
@media(max-width:800px){.page-hero{cursor:auto}.page-hero .hero-veil{background:linear-gradient(180deg,rgba(7,9,8,.84),rgba(7,9,8,.66))}.page-hero.tubes-ready .hero-tubes{opacity:.4}}
.list-grid{gap:14px;background:transparent;border:0;overflow:visible}.list-card{border:1px solid var(--dark-line);border-radius:26px;overflow:hidden}.what-bottom{margin:0 var(--pad) clamp(85px,12vw,170px);padding:clamp(55px,8vw,105px) 0;border-radius:var(--radius);background:linear-gradient(135deg,#101512,#1a3026);color:var(--ink);overflow:hidden;position:relative}.what-bottom:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-160px;bottom:-330px;background:radial-gradient(circle,rgba(72,224,162,.28),transparent 68%);filter:blur(10px)}.what-bottom .wrap{position:relative;z-index:1}.what-bottom-index{display:flex;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid var(--line);color:var(--emerald);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.what-bottom-grid{display:grid;grid-template-columns:1.2fr .7fr;gap:8vw;align-items:end;padding-top:clamp(45px,7vw,90px)}.what-bottom h2{max-width:760px;margin:0;font-size:clamp(42px,7vw,92px);line-height:.94;letter-spacing:-.085em}.what-bottom p{max-width:430px;margin:0;color:var(--muted);font-size:clamp(16px,2vw,20px)}@media(max-width:800px){.list-grid{gap:12px}.what-bottom{margin-left:14px;margin-right:14px;border-radius:28px}.what-bottom-grid{grid-template-columns:1fr;gap:30px}.what-bottom-index span:last-child{display:none}}
.promise-section{border-top:1px solid var(--line)}.promise-section .eyebrow{margin-bottom:28px;color:var(--emerald)}.promise-section .section-head{margin-bottom:0;align-items:start}.promise-section .section-head p{color:var(--muted);font-size:clamp(17px,2vw,21px);line-height:1.6}.promise-section h2 span{color:var(--emerald)}
.product-feature{border-radius:0;background:transparent;color:#171b19;padding:0}.product-feature p{color:#68716b}.product-mark{border:0;border-radius:0;background:radial-gradient(circle at 50% 50%,rgba(72,224,162,.22),transparent 55%)}
.product-feature.wain-feature-open{display:block}.wain-feature-open>div{max-width:900px}
.hero,.page-hero,.section,.band{height:100vh;height:100svh;min-height:100vh;min-height:100svh;max-height:100vh;max-height:100svh;display:flex;width:100%}.hero,.page-hero{align-items:center;overflow:hidden}.section,.band{align-items:stretch;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.hero>.wrap,.page-hero>.wrap,.section>.wrap,.band>.wrap{width:100%}.section>.wrap,.band>.wrap{margin-top:auto;margin-bottom:auto}.band{margin-left:0;margin-right:0;border-radius:0}.section::-webkit-scrollbar,.band::-webkit-scrollbar{width:5px}.section::-webkit-scrollbar-thumb,.band::-webkit-scrollbar-thumb{background:rgba(72,224,162,.38);border-radius:99px}@media(max-width:800px){.hero,.page-hero,.section,.band{height:100svh;min-height:100svh;max-height:100svh}.band{margin-left:0;margin-right:0;border-radius:0}}
.section,.band{padding-top:clamp(32px,6vh,72px);padding-bottom:clamp(32px,6vh,72px);overflow:hidden}.section-head{margin-bottom:clamp(24px,4vh,48px)}.panel{min-height:clamp(170px,25vh,230px);padding:clamp(20px,3vh,30px)}.panel-tall{min-height:clamp(354px,52vh,474px)}.panel-index{margin-bottom:clamp(20px,5vh,44px)}.list-card{min-height:clamp(180px,27vh,250px);padding:clamp(22px,4vh,42px)}.list-card .panel-index{margin-bottom:clamp(22px,5vh,46px)}.step-num{margin-bottom:clamp(20px,5vh,40px)}
.hero+.section{padding-top:clamp(22px,3.5vh,42px);padding-bottom:clamp(22px,3.5vh,42px)}.hero+.section .section-head{margin-bottom:clamp(16px,2.5vh,28px);align-items:center}.hero+.section .section-head .h2{font-size:clamp(32px,4.2vw,58px)}.hero+.section .panel{min-height:clamp(145px,21vh,200px);padding:clamp(18px,2.4vh,26px)}.hero+.section .panel-tall{min-height:clamp(304px,44vh,414px)}.hero+.section .panel-index{margin-bottom:clamp(14px,3vh,28px)}.hero+.section .panel p{margin-bottom:8px}.hero+.section .link-more{margin-top:12px}
@media(max-width:800px){.section,.band{padding-top:clamp(26px,5vh,46px);padding-bottom:clamp(26px,5vh,46px)}.section-head{margin-bottom:24px}.section-head .h2{font-size:clamp(30px,9vw,46px)}.bento,.list-grid,.steps,.contact-grid{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:3px var(--pad) 12px;margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);scrollbar-width:thin;scrollbar-color:rgba(72,224,162,.48) transparent}.bento>* ,.list-grid>* ,.steps>* ,.contact-grid>*{flex:0 0 min(82vw,360px);scroll-snap-align:center}.panel,.panel-tall,.list-card{min-height:clamp(260px,48vh,390px);height:auto}.panel-index,.list-card .panel-index{margin-bottom:clamp(28px,7vh,52px)}.step{min-height:clamp(250px,44vh,340px);padding:24px;border:1px solid var(--dark-line);border-radius:24px;background:rgba(255,255,255,.28)}.contact-grid{gap:18px}.contact-grid>*{flex-basis:min(88vw,420px)}.contact-box{padding:24px;border-radius:24px}input,textarea{margin-bottom:16px}textarea{min-height:90px}.hero+.section{padding-top:20px;padding-bottom:20px}.hero+.section .section-head{margin-bottom:16px}.hero+.section .section-head .h2{font-size:clamp(28px,8vw,40px)}.hero+.section .section-head p{font-size:14px;line-height:1.45}.hero+.section .panel,.hero+.section .panel-tall{min-height:clamp(245px,43vh,340px)}}
.hero,.page-hero{padding-top:180px;padding-bottom:80px;align-items:flex-start}.hero>.wrap,.page-hero>.wrap{margin-top:0;margin-bottom:0}@media(max-width:800px){.hero,.page-hero{padding-top:130px;padding-bottom:56px;align-items:flex-start}}
.page-hero h1 em{font-style:normal;color:var(--emerald)}
.hero h1,.page-hero h1{width:100%;max-width:1100px;min-height:1.92em;margin-bottom:28px;font-size:clamp(54px,6vw,82px);line-height:.96;letter-spacing:-.075em}.hero .lead,.page-hero .lead{max-width:670px}.hero .hero-lead-secondary{margin-top:14px}@media(max-width:800px){.hero h1,.page-hero h1{min-height:3.84em;margin-bottom:22px;font-size:clamp(40px,11.5vw,54px);line-height:.96;letter-spacing:-.07em}}
.page-card-stack main>section,.page-card-stack>section{position:sticky;top:0;isolation:isolate;box-shadow:0 -18px 50px rgba(0,0,0,.16)}.page-card-stack main>section{z-index:1}.page-card-stack>section:nth-of-type(1){z-index:2}.page-card-stack>section:nth-of-type(2){z-index:3}.page-card-stack>section:nth-of-type(3){z-index:4}.page-card-stack>section:nth-of-type(4){z-index:5}.page-card-stack>section:nth-of-type(5){z-index:6}.page-card-stack .site-footer{position:relative;z-index:10}
.hero,.page-hero,.section,.band{padding-top:110px;padding-bottom:40px;align-items:flex-start}.hero>.wrap,.page-hero>.wrap,.section>.wrap,.band>.wrap{margin-top:0;margin-bottom:0}@media(max-width:800px){.hero,.page-hero,.section,.band{padding-top:100px;padding-bottom:28px;align-items:flex-start}}
.site-header{position:fixed;background:linear-gradient(180deg,rgba(7,9,8,.88),rgba(7,9,8,.45) 68%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:opacity .35s ease,transform .35s ease,visibility .35s}.footer-in-view .site-header{opacity:0;visibility:hidden;transform:translateY(-100%);pointer-events:none}.logo{color:var(--ink)}.logo mark{color:var(--emerald)}
.page-card-stack .hero,.page-card-stack .page-hero,.page-card-stack .section,.page-card-stack .band{padding-top:104px;padding-bottom:24px;align-items:flex-start;overflow:hidden}.page-card-stack .hero>.wrap,.page-card-stack .page-hero>.wrap,.page-card-stack .section>.wrap,.page-card-stack .band>.wrap{margin-top:0;margin-bottom:0}.page-card-stack>.site-header{z-index:100}.page-card-stack .section-head{margin-bottom:16px}@media(max-height:800px) and (min-width:801px){.page-card-stack .section-head .h2{font-size:clamp(32px,4vw,52px)}.page-card-stack .panel{min-height:150px;padding:20px}.page-card-stack .panel-tall{min-height:320px}.page-card-stack .list-card{min-height:190px;padding:22px}.page-card-stack .panel-index,.page-card-stack .list-card .panel-index{margin-bottom:18px}.page-card-stack .what-bottom-grid{padding-top:35px}.page-card-stack .what-bottom h2{font-size:clamp(38px,5vw,64px)}}@media(max-width:800px){.page-card-stack .hero,.page-card-stack .page-hero,.page-card-stack .section,.page-card-stack .band{padding-top:88px;padding-bottom:20px}.page-card-stack .section-head{margin-bottom:14px}.page-card-stack .hero h1,.page-card-stack .page-hero h1{min-height:3.7em;font-size:clamp(36px,10.5vw,48px)}.page-card-stack .panel,.page-card-stack .panel-tall,.page-card-stack .list-card{min-height:clamp(220px,40vh,320px)}}
@media(max-height:800px) and (min-width:801px){.page-card-stack .hero+.section .section-head .h2{font-size:42px;line-height:.96}.page-card-stack .hero+.section .bento{grid-template-rows:210px 210px}.page-card-stack .hero+.section .panel{height:210px;min-height:210px}.page-card-stack .hero+.section .panel-tall{height:432px;min-height:432px}}
.nav-group{position:relative;display:flex;align-items:center}.nav-group>a{padding-right:7px}.nav-dropdown-toggle{width:24px;height:28px;padding:0 7px 0 0;border:0;background:transparent;color:rgba(233,238,234,.72);cursor:pointer}.nav-dropdown-toggle span{display:block;width:6px;height:6px;margin:auto;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s}.nav-group.open .nav-dropdown-toggle span,.nav-group:focus-within .nav-dropdown-toggle span{transform:translateY(2px) rotate(225deg)}.nav-dropdown{position:absolute;top:calc(100% + 12px);left:0;width:245px;padding:8px;border:1px solid var(--line);border-radius:18px;background:rgba(8,12,10,.96);box-shadow:0 20px 55px rgba(0,0,0,.38);backdrop-filter:blur(20px);opacity:0;visibility:hidden;transform:translateY(-7px);transition:opacity .22s,transform .22s,visibility .22s}.nav-dropdown a{display:block;padding:11px 12px;border-radius:11px;font-size:11px;line-height:1.4;white-space:normal;text-wrap:balance}.nav-dropdown a:hover{background:rgba(72,224,162,.12);color:var(--emerald)}.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown,.nav-group.open .nav-dropdown{opacity:1;visibility:visible;transform:none}@media(max-width:800px){.nav-group{display:grid;grid-template-columns:1fr 44px}.nav-group>a{padding:14px 16px}.nav-dropdown-toggle{width:44px;height:44px;padding:0}.nav-dropdown{position:static;grid-column:1/-1;width:auto;margin:0 7px 7px;padding:5px;border-radius:14px;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;background:rgba(255,255,255,.045)}.nav-group:hover .nav-dropdown{display:none}.nav-group.open .nav-dropdown,.nav-group:focus-within .nav-dropdown{display:block}.nav-dropdown a{padding:11px 13px}}
.goo-filter{position:absolute;width:0;height:0;overflow:hidden}.gooey-card{position:relative;isolation:isolate;overflow:hidden;--goo-x:50%;--goo-y:50%}.gooey-card>*:not(.gooey-field){position:relative;z-index:2}.gooey-field{position:absolute;inset:-20%;z-index:0;overflow:hidden;pointer-events:none;filter:url(#sail-goo) blur(14px);opacity:.42;transition:opacity .4s}.gooey-card:hover .gooey-field{opacity:.68}.goo-blob{position:absolute;display:block;width:62%;aspect-ratio:1;border-radius:50%;mix-blend-mode:multiply}.goo-1{left:-18%;top:-24%;background:radial-gradient(circle,rgba(72,224,162,.82),rgba(72,224,162,0) 68%);animation:goo-drift-a 14s ease-in-out infinite alternate;animation-delay:var(--goo-delay)}.goo-2{right:-22%;bottom:-30%;background:radial-gradient(circle,rgba(114,165,255,.66),rgba(114,165,255,0) 68%);animation:goo-drift-b 18s ease-in-out infinite alternate;animation-delay:var(--goo-delay)}.goo-3{left:32%;top:35%;width:44%;background:radial-gradient(circle,rgba(176,244,210,.72),rgba(176,244,210,0) 70%);animation:goo-drift-c 11s ease-in-out infinite alternate;animation-delay:var(--goo-delay)}.goo-pointer{width:48%;left:calc(var(--goo-x) - 24%);top:calc(var(--goo-y) - 24%);background:radial-gradient(circle,rgba(72,224,162,.72),rgba(72,224,162,0) 66%);transition:left .18s ease-out,top .18s ease-out}.gooey-card-dark .gooey-field{opacity:.52}.gooey-card-dark .goo-blob{mix-blend-mode:screen}.gooey-card-dark .goo-2{background:radial-gradient(circle,rgba(66,107,255,.7),rgba(66,107,255,0) 68%)}@keyframes goo-drift-a{to{transform:translate(62%,42%) scale(1.16) rotate(80deg)}}@keyframes goo-drift-b{to{transform:translate(-55%,-38%) scale(.86) rotate(-70deg)}}@keyframes goo-drift-c{to{transform:translate(20%,-55%) scale(1.25)}}@media(max-width:800px){.gooey-field{opacity:.34;filter:url(#sail-goo) blur(18px)}.goo-pointer{display:none}}@media(prefers-reduced-motion:reduce){.goo-blob{animation:none!important}.goo-pointer{display:none}.gooey-field{opacity:.3}}
/* Footer Overrides - Light Card inside Dark Section */
.site-footer {
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--night) !important;
  color: var(--ink) !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: relative;
  isolation:isolate;
  cursor:default;
}

@media(min-width:801px) {
  .page-card-stack #services-cards {
    padding-top: 82px !important;
    padding-bottom: 16px !important;
  }
  .hero[data-tubes-hero] .hero-grid.hero-solo .lead {
    max-width: 720px;
  }
}
.site-footer:before {
  content: none;
}
.page-card-stack .site-footer {
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
  box-shadow: 0 -18px 50px rgba(0,0,0,.16) !important;
}
.page-card-stack .site-footer .footer-card.reveal {
  opacity: 1;
  transform: none;
}
.footer-card-wrap {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding-top: clamp(60px, 10vh, 120px) !important;
  padding-bottom: clamp(60px, 10vh, 120px) !important;
}
.site-footer .hero-tubes{display:none!important}.site-footer.tubes-fallback{background:var(--zinc) radial-gradient(circle at 84% 32%,rgba(72,224,162,.12),transparent 34%)!important}

/* Studio Contact Form */
#contact-studio {
  background: #e5e8e4;
  color: #171b19;
  position: relative;
  isolation: isolate;
}
#contact-studio::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent 0 47%, rgba(23,27,25,.07) 47% 47.08%, transparent 47.08%),
    radial-gradient(circle at 100% 0%, rgba(72,224,162,.16), transparent 48%);
  z-index: 0;
  pointer-events: none;
}
.studio-contact-wrap {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(36px, 6vw, 84px);
  align-items: start;
}
@media(min-width:901px) {
  .studio-contact-wrap {
    align-items: stretch;
  }
  .studio-form-container,
  .studio-form {
    height: 100%;
  }
  .studio-form-container {
    height: calc(100% - 18px);
  }
  .studio-form > .studio-field {
    flex: 1;
  }
  .studio-form > .studio-field textarea {
    height: 100%;
    max-height: none;
  }
}
.studio-info {
  position: relative;
}
.studio-title {
  font-size: clamp(36px, 4vw, 54px);
  line-height: 1.05;
  letter-spacing: -0.05em;
  margin: 0 0 34px;
  color: #171b19;
}
.studio-categories {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.studio-category h3 {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--emerald);
  margin: 0 0 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(23,27,25,.12);
}
.studio-category p {
  color: #626b65;
  font-size: 16px;
  line-height: 1.55;
  margin: 0 0 16px;
  max-width: 440px;
}
.studio-email {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.studio-email-label {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #68716b;
}
.studio-email-link {
  font-size: clamp(18px, 2vw, 22px);
  color: #171b19;
  text-decoration: none;
  font-weight: 500;
  display: inline-block;
  border-bottom: 1px solid rgba(23,27,25,.22);
  padding-bottom: 6px;
  transition: color 0.3s, border-color 0.3s;
  align-self: flex-start;
}
.studio-email-link:hover {
  color: var(--emerald);
  border-color: var(--emerald);
}

.studio-form-container {
  background: rgba(250,251,249,.82);
  border: 1px solid rgba(23,27,25,.12);
  border-radius: var(--radius);
  padding: clamp(20px, 2.4vw, 30px);
  box-shadow: 0 22px 60px rgba(23,27,25,.1);
  backdrop-filter: blur(12px);
}
.studio-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.studio-row {
  display: flex;
  gap: 10px;
}
.studio-field {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.studio-field input, .studio-field textarea {
  width: 100%;
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(23,27,25,.14);
  border-radius: 13px;
  color: #171b19;
  font-size: 14px;
  padding: 24px 16px 7px;
  margin: 0;
  min-height: 56px;
  outline: none;
  transition: border-color 0.3s, background 0.3s, box-shadow 0.3s;
}
.studio-field textarea {
  min-height: 88px;
  max-height: 104px;
  resize: vertical;
}
.studio-field label {
  position: absolute;
  top: 18px;
  inset-inline-start: 16px;
  font-size: 13px;
  color: #68716b;
  pointer-events: none;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), color 0.3s;
}
html:not([dir="rtl"]) .studio-field label {
  transform-origin: left top;
}
html[dir="rtl"] .studio-field label {
  transform-origin: right top;
}
.studio-field input:focus, .studio-field textarea:focus {
  background: #fff;
  border-color: #1d7656;
  box-shadow: 0 0 0 3px rgba(29,118,86,.1);
}
.studio-field input:focus ~ label,
.studio-field input:not(:placeholder-shown) ~ label,
.studio-field textarea:focus ~ label,
.studio-field textarea:not(:placeholder-shown) ~ label {
  transform: translateY(-9px) scale(0.7);
  color: #1d7656;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.studio-field input:required ~ label::after,
.studio-field textarea:required ~ label::after {
  content: " *";
  color: var(--emerald);
}

.studio-form-footer {
  margin-top: 2px;
}
.studio-submit {
  width: 100%;
  min-height: 52px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border: 1px solid var(--emerald);
  border-radius: 13px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 28px;
  background: var(--emerald);
  color: var(--night);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.studio-submit:hover {
  background: #171b19;
  border-color: #171b19;
  color: var(--emerald);
  box-shadow: 0 10px 30px rgba(23,27,25,.15);
  transform: translateY(-2px);
}
.studio-submit:disabled {
  cursor:wait;
  opacity:.68;
  transform:none;
  box-shadow:none;
}
.studio-submit svg {
  transition: transform 0.3s;
}
html:not([dir="rtl"]) .studio-submit:hover svg {
  transform: translateX(6px);
}
html[dir="rtl"] .studio-submit svg {
  transform: scaleX(-1);
}
html[dir="rtl"] .studio-submit:hover svg {
  transform: scaleX(-1) translateX(-6px);
}

.form-note {
  display: none;
  margin: 8px 0 0;
  color: #1d7656;
  font-size: 13px;
  text-align: center;
}
.form-note.is-success,
.form-note.is-error {
  display:block;
}
.form-note.is-error {
  color:#a13a32;
}
.privacy-ack {
  margin: 8px 0 0;
  font-size: 10px;
  color: #68716b;
  text-align: center;
  line-height: 1.6;
}
.privacy-ack a {
  color: #171b19;
  text-decoration: underline;
  text-decoration-color: rgba(23,27,25,.24);
  text-underline-offset: 3px;
  transition: text-decoration-color 0.3s;
}
.privacy-ack a:hover {
  text-decoration-color: var(--emerald);
}

@media(max-width: 900px) {
  .studio-contact-wrap {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .studio-info {
    position: relative;
    top: 0;
  }
}
@media(max-width: 800px) {
  #contact-studio {
    padding-top: 72px !important;
    padding-bottom: 14px !important;
    overflow: hidden !important;
  }
  #contact-studio .studio-contact-wrap {
    gap: 25px;
  }
  #contact-studio .contact-split-info > h2 {
    margin: 0 0 25px !important;
    font-size: clamp(26px, 7.4vw, 31px) !important;
    line-height: .96;
  }
  #contact-studio .contact-heading-brand {
    display: none;
  }
  #contact-studio .inquiry-categories {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
    margin-top: 0;
  }
  #contact-studio .category h3 {
    margin-bottom: 3px;
    font-size: 12px;
    line-height: 1.2;
  }
  #contact-studio .category p {
    max-width: none;
    margin-bottom: 3px;
    font-size: 10px;
    line-height: 1.28;
  }
  #contact-studio .category .category-email-intro {
    display: inline;
    margin: 0 3px 0 0;
    font-size: 9px;
  }
  #contact-studio .category a {
    display: inline-block;
    direction: ltr;
    unicode-bidi: isolate;
    font-size: 10px;
    line-height: 1.25;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .studio-title {
    font-size: clamp(27px, 8vw, 36px);
    margin-bottom: 12px;
  }
  .studio-categories {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .studio-category h3 {
    font-size: 9px;
    line-height: 1.35;
    margin-bottom: 5px;
    padding-bottom: 5px;
  }
  .studio-category p,
  .studio-email-label {
    display: none;
  }
  .studio-email-link {
    max-width: 100%;
    font-size: 11px;
    line-height: 1.3;
    overflow-wrap: anywhere;
  }
  .studio-form {
    gap: 6px;
  }
  .studio-row {
    gap: 6px;
  }
  .studio-form-container {
    padding: 10px;
    border-radius: 16px;
  }
  .studio-field input,
  .studio-field textarea {
    min-height: 42px;
    padding: 18px 10px 4px;
    font-size: 11px;
    border-radius: 10px;
  }
  .studio-field textarea {
    min-height: 54px;
    max-height: 54px;
  }
  .studio-field label {
    top: 12px;
    inset-inline-start: 10px;
    font-size: 9px;
  }
  .studio-field input:focus ~ label,
  .studio-field input:not(:placeholder-shown) ~ label,
  .studio-field textarea:focus ~ label,
  .studio-field textarea:not(:placeholder-shown) ~ label {
    transform: translateY(-7px) scale(.72);
  }
  .studio-submit {
    min-height: 40px;
    padding: 0 14px;
    font-size: 11px;
  }
  .privacy-ack {
    margin-top: 6px;
    font-size: 8px;
    line-height: 1.25;
  }
}
.footer-card {
  width: 100%;
  background: transparent;
  color: var(--ink);
  border-radius: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  min-height: clamp(380px, 58vh, 500px);
  box-shadow: none;
}
.fc-content {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  flex: 1;
}
.fc-brand {
  display: flex;
  flex-direction: column;
  max-width: 320px;
}
.fc-logo {
  font-size: clamp(20px, 2.2vw, 28px) !important;
  color: var(--ink) !important;
}
.fc-logo mark {
  color: var(--emerald) !important;
}
.fc-description {
  max-width:42ch;
  margin:16px 0 0;
  color:#fff;
  font-size:14px;
  line-height:1.65;
  font-weight:500;
}
.fc-email {
  width:min(100%,360px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:13px;
  font-weight:500;
  color:var(--ink);
  text-decoration: none;
  border:1px solid rgba(233,238,234,.22);
  border-radius:10px;
  padding:12px 14px;
  transition:border-color .25s,background .25s;
}
.fc-email:hover {
  border-color:var(--emerald);
  background:rgba(72,224,162,.09);
}
.fc-links {
  width:min(100%,720px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(36px,6vw,84px);
}
.fc-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.fc-col strong {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color:#fff;
  margin-bottom: 12px;
}
.fc-col a {
  font-size: 15px;
  color:#fff;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.25s, transform 0.25s;
  display: inline-block;
}
.fc-col a:hover {
  color: #1d7656;
  transform: translateX(4px);
}
.fc-contact{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:clamp(48px,8vh,80px)}.fc-contact p{margin:0;color:var(--ink);font-size:clamp(18px,2vw,24px);letter-spacing:-.025em}
.fc-location{margin-top:clamp(28px,4vh,40px);padding-top:22px;border-top:1px solid var(--emerald)}
.fc-location-item{display:flex;flex-direction:column;align-items:flex-start;gap:10px;max-width:460px}
.fc-location-heading{display:flex;align-items:center;gap:10px}
.fc-location-flag{display:block;width:30px;height:auto;aspect-ratio:40/29;object-fit:contain;flex:none}
.fc-location-details{display:flex;flex-direction:column;gap:4px}
.fc-location-item strong{color:#fff;font-size:13px;font-weight:600}
.fc-location-item span{color:#fff;font-size:11px;line-height:1.45}
.fc-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:22px;padding-top:18px;border-top:1px solid var(--emerald);color:#fff;font-size:11px}
.fc-bottom p{margin:0}
.fc-legal{display:flex;align-items:center;gap:10px}
.fc-legal a{color:#fff;text-decoration:none;transition:opacity .25s}
.fc-legal a:hover{opacity:.72}
@media (max-width: 900px) {
  .fc-content {
    flex-direction: column;
    gap: 60px;
  }
  .fc-brand {
    gap: 0;
  }
  .fc-links {
    gap:32px;
  }
  .fc-contact{align-items:flex-start;flex-direction:column;margin-top:48px}
}
@media (max-width: 819px) {
  .fc-brand{max-width:none;width:100%}
  .fc-description{max-width:42ch}
  .fc-location{margin-top:32px}
  .fc-bottom{align-items:flex-start;flex-direction:column;gap:12px}
}
@media (max-width: 500px) {
  .fc-links {
    grid-template-columns:1fr;
    gap: 40px;
  }
  .site-footer{cursor:auto}
}
.site-footer {
  overflow-y: auto !important;
  overscroll-behavior: contain;
}
.footer-card-wrap {
  height: auto !important;
  min-height: 100%;
}
@media(max-width:500px) {
  .page-card-stack .site-footer {
    overflow:hidden !important;
  }
  .page-card-stack .footer-card-wrap {
    --mobile-footer-top:max(76px,calc(env(safe-area-inset-top) + 56px));
    --mobile-footer-bottom:max(76px,calc(env(safe-area-inset-bottom) + 56px));
    height:100% !important;
    min-height:100%;
    align-items:flex-start;
    justify-content:flex-start;
    padding-top:var(--mobile-footer-top) !important;
    padding-bottom:var(--mobile-footer-bottom) !important;
  }
  .footer-card {
    min-height:0;
    height:calc(100svh - var(--mobile-footer-top) - var(--mobile-footer-bottom));
    justify-content:flex-start;
  }
  .fc-content {
    display:block;
    flex:0 0 auto;
  }
  .fc-brand {
    width:100%;
  }
  .fc-logo {
    font-size:20px !important;
  }
  .fc-description {
    max-width:100%;
    margin-top:14px;
    font-size:11.5px;
    line-height:1.62;
  }
  .fc-links {
    width:100%;
    grid-template-columns:.8fr 1.35fr .7fr;
    gap:14px;
    margin-top:50px;
  }
  .fc-col {
    min-width:0;
    gap:11px;
  }
  .fc-col strong {
    margin-bottom:4px;
    font-size:8.5px;
    letter-spacing:.13em;
  }
  .fc-col a {
    font-size:10.5px;
    line-height:1.45;
  }
  .fc-contact {
    gap:10px;
    margin-top:40px;
  }
  .fc-contact p {
    font-size:16px;
    line-height:1.3;
  }
  .fc-email {
    width:100%;
    min-height:42px;
    padding:10px 12px;
    font-size:11.5px;
  }
  .fc-location {
    margin-top:24px;
    padding-top:14px;
  }
  .fc-location-item {
    gap:9px;
  }
  .fc-location-heading {
    gap:7px;
  }
  .fc-location-flag {
    width:25px;
  }
  .fc-location-item strong {
    font-size:11.5px;
  }
  .fc-location-item span {
    font-size:9.5px;
    line-height:1.5;
  }
  .fc-bottom {
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:9px;
    margin-top:17px;
    padding-top:14px;
    font-size:8.5px;
    line-height:1.45;
    text-align:left;
  }
  .fc-bottom p {
    max-width:100%;
    order:2;
  }
  .fc-legal {
    flex:none;
    gap:6px;
    order:1;
    justify-content:flex-start;
  }
}

/* Language control and intentional right-to-left presentation. */
.language-group{margin-left:2px}.language-current{border:0;background:transparent;color:rgba(233,238,234,.72);padding:10px 7px 10px 15px;border-radius:999px;font-family:inherit;font-size:12px;font-weight:400;line-height:normal;cursor:pointer;transition:.3s}.language-group:hover .language-current,.language-group.open .language-current{color:var(--ink);background:rgba(255,255,255,.1)}.language-dropdown{left:auto;right:0;width:145px}.language-dropdown button{display:block;width:100%;border:0;background:transparent;padding:11px 12px;border-radius:11px;color:rgba(233,238,234,.72);font-family:inherit;font-size:11px;font-weight:400;line-height:1.3;text-align:left;cursor:pointer}.language-dropdown button:hover,.language-dropdown button:focus-visible{background:rgba(72,224,162,.12);color:var(--emerald);outline:0}
html[dir="rtl"] body{font-family:Tahoma,Arial,sans-serif;text-align:right}html[dir="rtl"] .logo,html[dir="rtl"] .language-current{font-family:Inter,Tahoma,Arial,sans-serif}html[dir="rtl"] .header-inner{flex-direction:row-reverse}html[dir="rtl"] .nav{flex-direction:row-reverse}html[dir="rtl"] .hero-veil,html[dir="rtl"] .page-hero .hero-veil{background:linear-gradient(270deg,rgba(7,9,8,.92),rgba(7,9,8,.68) 58%,rgba(7,9,8,.25)),linear-gradient(180deg,rgba(7,9,8,.15),rgba(7,9,8,.72))}html[dir="rtl"] .section-head,html[dir="rtl"] .panel-index,html[dir="rtl"] .orbit-meta,html[dir="rtl"] .fc-content,html[dir="rtl"] .fc-contact{direction:rtl}html[dir="rtl"] .quote{border-left:0;border-right:2px solid var(--emerald);padding-left:0;padding-right:28px}html[dir="rtl"] .step{padding-right:0;padding-left:10px}html[dir="rtl"] .fc-col a:hover{transform:translateX(-4px)}html[dir="rtl"] input,html[dir="rtl"] textarea{direction:rtl}html[dir="rtl"] input[type=email]{direction:ltr;text-align:right}html[dir="rtl"] .nav-dropdown{left:auto;right:0}html[dir="rtl"] .nav-group>a{padding-right:15px;padding-left:7px}html[dir="rtl"] .nav-dropdown-toggle{padding:0 0 0 7px}html[dir="rtl"] .language-dropdown{left:0;right:auto}html[dir="rtl"] .language-dropdown button{text-align:right}
@media(max-width:800px){.language-group{display:grid;margin:0;border-top:1px solid var(--line)}.language-current{min-height:44px;padding:14px 16px;text-align:left}.language-group .nav-dropdown{margin-top:0}.language-dropdown button{padding:12px 13px}html[dir="rtl"] .nav{flex-direction:column}html[dir="rtl"] .nav-group{direction:rtl}html[dir="rtl"] .nav-dropdown{right:auto}html[dir="rtl"] .nav-group>a{padding:14px 16px}html[dir="rtl"] .language-current{text-align:right}html[dir="rtl"] .bento,html[dir="rtl"] .list-grid,html[dir="rtl"] .steps,html[dir="rtl"] .contact-grid{direction:rtl}}
.legal-updated{margin-top:24px;color:rgba(233,238,234,.5);font-size:13px}.page-card-stack .legal-content{position:relative!important;top:auto!important;display:block!important;width:100%;min-height:0!important;height:auto!important;overflow:visible!important;padding:clamp(80px,10vw,140px) 0!important;box-shadow:none!important;isolation:auto!important}.legal-copy{max-width:780px}.legal-copy h2{margin:64px 0 18px;font-size:clamp(25px,3vw,38px);line-height:1.08;letter-spacing:-.045em;color:var(--night)}.legal-copy h2:first-child{margin-top:0}.legal-copy p,.legal-copy li{color:#4d5751;font-size:16px;line-height:1.8}.legal-copy p{margin:0 0 18px}.legal-copy strong{color:#171b19}.legal-copy a{color:#14704f;text-underline-offset:3px}.legal-copy ul{margin:0 0 24px;padding-left:22px}.legal-details{padding:24px;border:1px solid rgba(23,27,25,.12);border-radius:16px;background:rgba(255,255,255,.48)}@media(max-width:800px){.page-card-stack .legal-content{padding:72px 0!important}.legal-copy h2{margin-top:48px}.legal-copy p,.legal-copy li{font-size:15px}}

.contact-split {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 8vw;
  align-items: flex-start;
}
.inquiry-categories {
  display: flex;
  flex-direction: column;
  gap: 35px;
  margin-top: 45px;
}
.category h3 {
  font-size: 16px;
  margin: 0 0 10px;
  color: #171b19;
}
.category p {
  color: #68716b;
  margin: 0 0 12px;
  font-size: 15px;
  max-width: 400px;
}
.category .category-email-intro {
  margin: 16px 0 4px;
  font-size: 12px;
}
.category a {
  color: #1d7656;
  text-decoration: none;
  font-weight: 600;
  font-size: 14px;
}
.contact-split-form > .privacy-ack {
  margin: 14px 4px 0;
  color: #68716b;
  font-size: 11px;
  line-height: 1.6;
}
.contact-split-form > .privacy-ack a {
  color: #171b19;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.contact-details-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 6vw;
  align-items: center;
}
@media(max-width: 800px) {
  .contact-split, .contact-details-grid {
    grid-template-columns: 1fr;
    gap: 60px;
  }
}
html[dir="rtl"] .contact-split, html[dir="rtl"] .contact-details-grid {
  direction: rtl;
}

/* Homepage Editorial Cards & Motion Comparison */
.home-capabilities-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.home-capabilities-section {
  background-color: var(--zinc);
  background-image: none;
}
.home-directions-section {
  background-color: var(--zinc);
  background-image: none;
}
.page-card-stack .home-capabilities-section .section-head {
  margin-bottom: clamp(24px, 3.5vh, 36px);
}
@media(max-width:800px) {
  .page-card-stack .home-capabilities-section .section-head {
    margin-bottom: 20px;
  }
}
.editorial-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.editorial-image-wrap {
  width: 100%;
  height: clamp(120px, 18vh, 170px);
  aspect-ratio: auto;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: clamp(24px, 4vw, 36px);
  background: var(--dark-line);
  position: relative;
  isolation: isolate;
}
.editorial-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
}
.editorial-card:hover .editorial-image-wrap img {
  transform: scale(1.04);
}
.editorial-card .panel-index span:last-child {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 600;
  font-size: 10px;
}
.editorial-card .panel-index {
  margin-bottom: clamp(20px, 3vw, 24px) !important;
}
.editorial-card h3 {
  min-height: 1.2em;
  margin-bottom: 10px;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -.035em;
  white-space: nowrap;
  transform: scaleX(.82);
  transform-origin: left center;
  width: 121.95%;
}
.editorial-card p {
  margin: 0;
  flex: 1;
  font-size: clamp(11.5px, .9vw, 13px);
  line-height: 1.42;
  text-wrap: balance;
}
.editorial-card .link-more {
  margin-top: 24px;
  align-self: flex-start;
}
.static-card .gooey-field {
  display: none !important;
}
.static-card .editorial-image-wrap img {
  transition: none;
}
.static-card:hover .editorial-image-wrap img {
  transform: none;
}
@media(max-height: 800px) and (min-width: 801px) {
  .page-card-stack .hero + .section .home-capabilities-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: 400px;
  }
  .page-card-stack .hero + .section .editorial-card {
    height: 400px;
    min-height: 400px;
    padding: 16px;
  }
  .page-card-stack .hero + .section .editorial-image-wrap {
    height: 132px;
    aspect-ratio: auto;
    margin-bottom: 14px;
  }
  .page-card-stack .hero + .section .editorial-card .panel-index {
    margin-bottom: 6px !important;
  }
  .page-card-stack .hero + .section .editorial-card h3 {
    margin-bottom: 7px;
    font-size: 20px;
  }
  .page-card-stack .hero + .section .editorial-card p {
    font-size: 11px;
    line-height: 1.42;
  }
  .page-card-stack .hero + .section .editorial-card .link-more {
    margin-top: 6px;
    font-size: 11px;
  }
}
@media(max-width: 800px) {
  .editorial-image-wrap {
    aspect-ratio: 16 / 11;
  }
}

/* Homepage North Star light treatment */
.hero + .section + .band {
  position: relative;
  background-color: #070908;
  background-image:
    linear-gradient(90deg, rgba(7,9,8,.76) 0%, rgba(7,9,8,.48) 52%, rgba(7,9,8,.1) 100%),
    url("/assets/north-star-glass-light.jpg?v=standardized-20260919-421");
  background-position: center, center;
  background-size: cover, cover;
  background-repeat: no-repeat;
  color: var(--ink);
  box-shadow: none;
}
.hero + .section + .band::before {
  content: none;
}
.hero + .section + .band h2 {
  width: 100%;
  max-width: 940px;
  color: var(--ink);
}
.hero + .section + .band .eyebrow {
  color: var(--emerald);
}
@media(max-width: 800px) {
  .hero + .section + .band {
    background-position: center, center;
    background-size: cover, cover;
  }
  .hero + .section + .band h2 {
    width: 100%;
    max-width: none;
  }
}

/* Unified hero statement scale */
:root {
  --hero-statement-size: clamp(54px, 6vw, 82px);
}
.hero h1,
.page-hero h1,
.hero + .section + .band h2 {
  font-size: var(--hero-statement-size);
  font-weight: 600;
  line-height: .96;
  letter-spacing: -.075em;
}
html[dir="rtl"] .hero h1,
html[dir="rtl"] .page-hero h1,
html[dir="rtl"] .hero + .section + .band h2 {
  letter-spacing: 0;
}
html[lang="ar"][dir="rtl"] .hero + .section + .band h2 {
  width: 100%;
  max-width: 850px;
  margin-left: 0;
  margin-right: auto;
}
html[lang="ar"][dir="rtl"] #north-star .north-star-line {
  color: inherit;
}
html[lang="ar"][dir="rtl"] #north-star .north-star-line strong {
  color: var(--emerald);
  font: inherit;
}
@media(min-width:801px){
  html[lang="ar"][dir="rtl"] .hero[data-tubes-hero] h1{
    width:max-content;
    max-width:none;
    min-height:0;
    margin-bottom:12px;
    white-space:nowrap;
  }
  html[lang="ar"][dir="rtl"] #north-star h2{
    max-width:850px;
  }
  html[lang="ar"][dir="rtl"] #north-star .north-star-line{
    display:block;
    white-space:nowrap;
    color:inherit;
  }
  html[lang="ar"][dir="rtl"] #north-star .north-star-line strong{
    color:var(--emerald);
    font:inherit;
  }
  html[lang="ar"][dir="rtl"] .home-capabilities-grid .editorial-card,
  html[lang="ar"][dir="rtl"] .process-photo-grid .step{
    padding:clamp(20px,2.1vw,30px) !important;
  }
  html[lang="ar"][dir="rtl"] .home-capabilities-grid .editorial-card h3,
  html[lang="ar"][dir="rtl"] .home-capabilities-grid .editorial-card p,
  html[lang="ar"][dir="rtl"] .process-photo-grid .step h3,
  html[lang="ar"][dir="rtl"] .process-photo-grid .step p{
    width:100%;
    margin-left:auto;
    margin-right:0;
  }
}
@media(max-width: 800px) {
  :root {
    --hero-statement-size: clamp(36px, 10.5vw, 48px);
  }
}

/* Site-wide statement hierarchy */
:root {
  --section-statement-size: clamp(34px, 4.2vw, 58px);
  --card-statement-size: 22px;
}
.page-hero h1 {
  font-size: var(--hero-statement-size) !important;
}
.section-head .h2,
.product-feature h2,
.what-bottom h2,
.contact-split-info > h2 {
  font-size: var(--section-statement-size) !important;
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.065em !important;
}
.panel .h3,
.list-card .h3,
.step .h3,
.contact-details-grid h3 {
  font-size: var(--card-statement-size);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.045em;
}
html[dir="rtl"] .section-head .h2,
html[dir="rtl"] .product-feature h2,
html[dir="rtl"] .what-bottom h2,
html[dir="rtl"] .contact-split-info > h2,
html[dir="rtl"] .panel .h3,
html[dir="rtl"] .list-card .h3,
html[dir="rtl"] .step .h3,
html[dir="rtl"] .contact-details-grid h3 {
  letter-spacing: 0 !important;
}
@media(max-width: 800px) {
  :root {
    --section-statement-size: clamp(32px, 8.5vw, 44px);
    --card-statement-size: 20px;
  }
}

/* Viewport-fitted four-card sections */
.process-photo-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.process-photo-grid .step {
  min-width: 0;
  min-height: 0;
  padding: 16px;
  border: 1px solid var(--dark-line);
  border-radius: 26px;
  background: rgba(255,255,255,.38);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.process-photo-grid .step:nth-child(2) {
  background: #e2e6e1;
}
.step-image-wrap {
  width: 100%;
  height: clamp(82px, 14vh, 132px);
  margin-bottom: 14px;
  border-radius: 12px;
  overflow: hidden;
  background: var(--dark-line);
}
.step-image-wrap img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .85s cubic-bezier(.16,1,.3,1);
}
.process-photo-grid .step:hover .step-image-wrap img {
  transform: scale(1.04);
}
.process-photo-grid .step-num {
  margin-bottom: 9px;
}
.process-photo-grid .step h3 {
  margin-bottom: 8px;
}
.process-photo-grid .step h3 .key-line {
  display: block;
  white-space: nowrap;
}
@media(min-width:801px){
  .process-photo-grid .step h3 .key-line {
    font-size: clamp(22px, 1.75vw, 26px);
  }
}
.process-photo-grid .step p {
  flex: 1;
  font-size: 14px;
  line-height: 1.45;
}
@media(min-width: 801px) {
  .page-card-stack .hero + .section .home-capabilities-grid,
  .page-card-stack .process-photo-grid {
    height: clamp(300px, calc(100svh - 294px), 400px);
    grid-template-rows: minmax(0, 1fr);
  }
  .page-card-stack .hero + .section .editorial-card,
  .page-card-stack .process-photo-grid .step {
    height: 100%;
    min-height: 0;
  }
  .page-card-stack .hero + .section .editorial-image-wrap,
  .page-card-stack .step-image-wrap {
    height: clamp(82px, 14svh, 132px);
  }
}
@media(max-width: 800px) {
  .process-photo-grid {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
  }
  .process-photo-grid .step {
    flex: 0 0 min(82vw, 360px);
    min-height: clamp(300px, 50vh, 390px);
    scroll-snap-align: center;
  }
  .step-image-wrap {
    height: clamp(120px, 20vh, 155px);
  }
}

/* Show the complete capability photographs without cropping */
.home-capabilities-grid .editorial-image-wrap,
.page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap {
  height: auto;
  aspect-ratio: 8 / 5;
  background: #dfe2de;
}
.home-capabilities-grid .editorial-image-wrap img {
  object-fit: contain;
  display: block;
}

/* Rebuilt homepage capability cards */
@media(min-width: 801px) {
  .page-card-stack .hero + .section .home-capabilities-grid {
    height: clamp(340px, calc(100svh - 294px), 420px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    border: 0;
    background: transparent;
    overflow: visible;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-card {
    height: 100%;
    min-height: 0;
    padding: 14px;
    display: grid;
    grid-template-columns: minmax(125px, 34%) minmax(0, 1fr);
    grid-template-rows: auto auto 1fr auto;
    column-gap: 18px;
    border-radius: 22px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap {
    grid-column: 1;
    grid-row: 1 / -1;
    width: 100%;
    height: 100%;
    min-height: 0;
    margin: 0;
    aspect-ratio: auto;
    border-radius: 12px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .panel-index {
    grid-column: 2;
    grid-row: 1;
    margin: 1px 0 8px !important;
  }
  .page-card-stack .hero + .section .home-capabilities-grid h3 {
    grid-column: 2;
    grid-row: 2;
    margin-bottom: 7px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid p {
    grid-column: 2;
    grid-row: 3;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .link-more {
    grid-column: 2;
    grid-row: 4;
    margin-top: 8px;
  }
}
@media(max-width: 800px) {
  .home-capabilities-grid .editorial-card {
    display: flex;
    flex-direction: column;
  }
  .home-capabilities-grid .editorial-image-wrap,
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap {
    height: clamp(130px, 20vh, 160px);
    aspect-ratio: auto;
  }
}

/* Match capability cards exactly to the process-card design */
@media(min-width: 801px) {
  .page-card-stack .hero + .section .home-capabilities-grid {
    height: clamp(300px, calc(100svh - 294px), 400px);
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: minmax(0, 1fr);
    gap: 14px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-card {
    height: 100%;
    min-height: 0;
    padding: 16px;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--dark-line);
    border-radius: 26px;
    background: rgba(255,255,255,.38);
    overflow: hidden;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap {
    width: 100%;
    height: clamp(82px, 14svh, 132px);
    min-height: 0;
    margin: 0 0 14px;
    aspect-ratio: auto;
    border-radius: 12px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .panel-index {
    display: flex;
    justify-content: flex-start;
    gap: 4px;
    margin: 0 0 9px !important;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .panel-index span:first-child::after {
    content: " /";
  }
  .page-card-stack .hero + .section .home-capabilities-grid h3 {
    margin: 0 0 8px;
  }
  .page-card-stack .hero + .section .home-capabilities-grid p {
    flex: 1;
    font-size: 14px;
    line-height: 1.45;
  }
  .page-card-stack .hero + .section .home-capabilities-grid .link-more {
    margin-top: 8px;
  }
}
.home-capabilities-grid .editorial-card:nth-child(1) .gooey-field,
.home-capabilities-grid .editorial-card:nth-child(2) .gooey-field {
  display: none !important;
}
.home-capabilities-grid .editorial-card:nth-child(2) {
  background: #e2e6e1 !important;
}
.home-capabilities-grid .editorial-card:nth-child(3) .gooey-field,
.home-capabilities-grid .editorial-card:nth-child(4) .gooey-field {
  display: block !important;
}
.home-capabilities-grid .editorial-card:nth-child(3) .editorial-image-wrap img,
.home-capabilities-grid .editorial-card:nth-child(4) .editorial-image-wrap img {
  transition: transform .85s cubic-bezier(.16,1,.3,1);
}
.home-capabilities-grid .editorial-card:nth-child(3):hover .editorial-image-wrap img,
.home-capabilities-grid .editorial-card:nth-child(4):hover .editorial-image-wrap img {
  transform: scale(1.04);
}
@media(max-width: 800px) {
  .home-capabilities-grid .editorial-card {
    min-height: clamp(300px, 50vh, 390px);
    padding: 16px;
    border: 1px solid var(--dark-line);
    border-radius: 26px;
    background: rgba(255,255,255,.38);
  }
  .home-capabilities-grid .editorial-image-wrap,
  .page-card-stack .hero + .section .home-capabilities-grid .editorial-image-wrap {
    height: clamp(120px, 20vh, 155px);
    margin-bottom: 14px;
    border-radius: 12px;
  }
  .home-capabilities-grid .panel-index {
    justify-content: flex-start;
    gap: 4px;
    margin-bottom: 9px !important;
  }
  .home-capabilities-grid .panel-index span:first-child::after {
    content: " /";
  }
  .home-capabilities-grid .editorial-card h3 {
    margin-bottom: 8px;
  }
  .home-capabilities-grid .editorial-card p {
    font-size: 14px;
    line-height: 1.45;
  }
}

/* Home quote panel: shared dark image treatment across desktop and mobile */
.quote-image-section {
  background-color: #07100c;
  background-image:
    linear-gradient(90deg, rgba(5,12,9,.88) 0%, rgba(5,12,9,.68) 48%, rgba(5,12,9,.08) 100%),
    url("/assets/quote-office-painted-complete.jpg?v=standardized-20260919-421");
  background-position: center, center 44%;
  background-size: cover, cover;
  background-repeat: no-repeat;
  color: var(--ink);
  box-shadow: none;
}
.quote-image-section .quote {
  max-width: 1040px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.quote-image-section .quote blockquote {
  color: #171b19;
  text-shadow: none;
  font-size: clamp(36px,5vw,72px);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.075em;
  margin: 0;
}
.quote-image-section .quote .h2 {
  color: #f2f4f1;
  text-shadow: 0 2px 30px rgba(0,0,0,.42);
}
.quote-image-section .quote cite {
  display: flex;
  align-items: baseline;
  gap: 14px;
  flex-wrap: wrap;
  color: #5f6b64;
}
.signature-name {
  color: #16845d;
  font-family: "Segoe Script", "Snell Roundhand", "Brush Script MT", cursive;
  font-size: clamp(28px, 3vw, 42px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: none;
}
.signature-role {
  font-family: Inter, Arial, sans-serif;
  font-size: 12px;
  letter-spacing: .02em;
}
html[dir="rtl"] .signature-name {
  font-family: "Aref Ruqaa", "Noto Naskh Arabic", Tahoma, serif;
  letter-spacing: 0;
}
html[dir="rtl"] .quote-image-section .quote {
  padding: 0;
  border: 0;
}
@media(max-width: 800px) {
  .quote-image-section .quote cite {
    display: block;
  }
  .signature-role {
    display: block;
    margin-top: 10px;
  }
}

@media(min-width: 801px) {
  .hero + .section + .band {
    background-color: #070908;
    background-image:
      linear-gradient(90deg, rgba(7,9,8,.76) 0%, rgba(7,9,8,.48) 52%, rgba(7,9,8,.1) 100%),
      url("/assets/north-star-glass-light.jpg?v=standardized-20260919-421");
    background-position: center, center;
    background-size: cover, cover;
    background-repeat: no-repeat;
    color: var(--ink);
    box-shadow: none;
  }
  .hero + .section + .band h2 {
    width: 55%;
    max-width: 680px;
    color: var(--ink);
  }
  .hero + .section + .band .eyebrow {
    color: var(--emerald);
  }
  .quote-image-section {
    background-color: #07100c;
    background-image:
      linear-gradient(90deg, rgba(5,12,9,.88) 0%, rgba(5,12,9,.68) 48%, rgba(5,12,9,.08) 100%),
      url("/assets/quote-office-painted-complete.jpg?v=standardized-20260919-421");
    background-position: center, center 44%;
    background-size: cover, cover;
    background-repeat: no-repeat;
    color: var(--ink);
    box-shadow: none;
  }
  .quote-image-section .quote {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .quote-image-section .quote blockquote {
    color: #f2f4f1;
    text-shadow: 0 2px 30px rgba(0,0,0,.38);
  }
  .quote-image-section .quote .h2 {
    color: #f2f4f1;
    text-shadow: 0 2px 30px rgba(0,0,0,.42);
  }
  .quote-image-section .quote cite {
    color: rgba(242,244,241,.72);
  }
  .quote-image-section .signature-name {
    color: var(--emerald);
  }
  html[dir="rtl"] .quote-image-section .quote {
    padding: 0;
    border-left: 0;
    border-right: 0;
  }
}

/* Text-only homepage card rows */
.home-capabilities-grid .editorial-image-wrap,
.home-capabilities-grid .link-more,
.process-photo-grid .step-image-wrap {
  display: none !important;
}
.home-capabilities-grid .panel-index span:first-child::after {
  content: none !important;
}
.home-capabilities-grid .editorial-card,
.process-photo-grid .step {
  padding: clamp(20px, 2.1vw, 30px);
}
.home-capabilities-grid .panel-index,
.process-photo-grid .step-num {
  margin: 0 !important;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .08em;
}
.home-capabilities-grid .editorial-card h3,
.process-photo-grid .step h3 {
  margin: clamp(48px, 8vh, 64px) 0 10px;
  font-size: clamp(22px, 1.75vw, 26px);
  line-height: 1.04;
}
.home-capabilities-grid .editorial-card p,
.process-photo-grid .step p {
  flex: 0;
  max-width: 28ch;
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card h3 {
  margin: clamp(48px, 8vh, 64px) 0 10px;
  font-size: clamp(22px, 1.75vw, 26px);
  min-height: 2.08em;
  white-space: normal;
  text-wrap: balance;
  transform: none;
  width: auto;
}
html[lang="ar"][dir="rtl"] .home-capabilities-grid .editorial-card h3 {
  transform-origin: right center;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card p {
  flex: 0;
  max-width: 28ch;
  margin: 0;
  font-size: 14px;
  line-height: 1.45;
  text-wrap: initial;
}
.page-card-stack .hero + .section .home-capabilities-grid {
  background: transparent;
  border-color: transparent;
  gap: 14px;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card,
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card:nth-child(3n) {
  background: #101713;
  color: #f2f5f3;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card:nth-child(even) {
  background: #142019 !important;
}
.page-card-stack .hero + .section .home-capabilities-grid .panel-index {
  color: #63e6ad;
}
html[lang="ar"][dir="rtl"] .home-capabilities-grid .panel-index {
  direction: ltr;
  width: 100%;
  flex-direction: row !important;
  justify-content: space-between !important;
}
html[lang="ar"][dir="rtl"] .home-capabilities-grid .home-service-stage {
  direction: rtl;
  letter-spacing: 0;
  text-transform: none;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card h3 {
  color: #f2f5f3;
}
.page-card-stack .hero + .section .home-capabilities-grid .editorial-card p {
  color: #aeb9b3;
}
@media(min-width: 801px) {
  .page-card-stack .hero + .section .home-capabilities-grid,
  .page-card-stack .process-photo-grid {
    height: clamp(280px, calc(100svh - 294px), 390px);
  }
}
@media(max-width: 800px) {
  .home-capabilities-grid .editorial-card,
  .process-photo-grid .step {
    min-height: clamp(275px, 46vh, 350px);
  }
  .home-capabilities-grid .editorial-card h3,
  .process-photo-grid .step h3 {
    margin-top: 48px;
  }
}

/* What We Do Page Redesign */
.hero-what-we-do {
  background-color: var(--night);
  isolation: isolate;
}
.hero-what-we-do .hero-grid {
  position: relative;
  z-index: 3;
}
.hero-what-we-do .hero-tubes {
  z-index: 2;
  mix-blend-mode: screen;
}
.hero-what-we-do.tubes-ready .hero-tubes {
  opacity: .58;
}

.what-we-do-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media(min-width:801px){
  .section-head .approach-argument-heading {
    font-size: clamp(40px, 3.9vw, 56px) !important;
  }
  .approach-argument-heading > span {
    display: block;
    white-space: nowrap;
  }
}
.page-card-stack .section:has(.home-capabilities-grid) .section-head,
.page-card-stack .section:has(.what-we-do-cards) .section-head,
.page-card-stack .section:has(.process-photo-grid) .section-head {
  height: 126px;
  min-height: 126px;
  align-items: center;
}
@media(min-width:801px){
  .page-card-stack .section:has(.what-we-do-cards) .section-head {
    height: auto;
    min-height: 126px;
    margin-bottom: 36px;
  }
}
.what-we-do-cards .list-card {
  min-height: 0;
  height: 100%;
  padding: clamp(20px, 2.1vw, 30px);
  display: flex;
  flex-direction: column;
}
.what-we-do-cards .list-card:nth-child(1),
.what-we-do-cards .list-card:nth-child(3),
.what-we-do-cards .list-card:nth-child(4) {
  background: var(--zinc);
  color: #171b19;
}
.what-we-do-cards .list-card:nth-child(2) {
  background: #e2e6e1;
  color: #171b19;
}
.what-we-do-cards .panel-index {
  margin: 0 !important;
  color: #77817a !important;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .08em;
}
.what-we-do-cards .list-card h3 {
  margin: clamp(48px, 8vh, 64px) 0 10px;
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.04;
}
.what-we-do-cards .list-card p {
  flex: 0;
  max-width: 28ch;
  margin: 0;
  color: #68716b !important;
  font-size: 14px;
  line-height: 1.48;
}
.what-we-do-cards .list-card:nth-child(1) .gooey-field,
.what-we-do-cards .list-card:nth-child(2) .gooey-field {
  display: none !important;
}
.what-we-do-cards .gooey-card-dark .goo-blob {
  mix-blend-mode: multiply;
}
@media(min-width:801px){
  .what-we-do-cards {
    height: clamp(280px, calc(100svh - 294px), 390px);
  }
}
@media(max-width:800px){
  .page-card-stack .section:has(.home-capabilities-grid) .section-head,
  .page-card-stack .section:has(.what-we-do-cards) .section-head,
  .page-card-stack .section:has(.process-photo-grid) .section-head {
    height: auto;
    min-height: 0;
  }
  .what-we-do-cards .list-card {
    min-height: clamp(275px, 46vh, 350px);
    height: auto;
    justify-content: flex-start;
  }
  .what-we-do-cards .list-card h3 {
    margin: 24px 0 8px;
  }
  .what-we-do-cards .list-card p {
    max-width: none;
  }
}

.page-card-stack .hero-what-we-do ~ .promise-band {
  background-color: var(--night);
  background-image: url("/assets/approach-promise-architecture.jpg?v=standardized-20260919-421");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: sticky;
  top: 0;
  isolation: isolate;
  color: var(--ink);
}
.promise-band::before {
  content: none !important;
}
.promise-band .promise-veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg,rgba(7,9,8,.92) 0%,rgba(7,9,8,.76) 42%,rgba(7,9,8,.32) 72%,rgba(7,9,8,.12) 100%),
    linear-gradient(180deg,rgba(7,9,8,.08),rgba(7,9,8,.26));
  pointer-events: none;
}
.promise-band .wrap {
  position: relative;
  z-index: 3;
}
.approach-promise-line {
  display: block;
  color: inherit !important;
}
.approach-promise-line > span {
  color: var(--emerald) !important;
}
html[lang="ar"][dir="rtl"] .hero-what-we-do ~ .promise-band .lead {
  margin-top: 12px !important;
}
@media(min-width:801px) {
  html[lang="ar"][dir="rtl"] .hero-what-we-do ~ .promise-band .wrap > * {
    width: 100%;
    max-width: 850px;
    margin-left: 0;
    margin-right: auto;
  }
  html[lang="ar"][dir="rtl"] .hero-what-we-do ~ .promise-band h2 {
    min-height: 0;
    margin-bottom: 0;
    font-size: var(--hero-statement-size);
    font-weight: 600;
    line-height: .96;
  }
  html[lang="ar"][dir="rtl"] .hero-what-we-do ~ .promise-band .approach-promise-line {
    white-space: nowrap;
  }
}
.where-to-start {
  min-height: 100vh;
  min-height: 100svh;
  height: 100vh;
  height: 100svh;
  background: #f2f3f1;
  color: #171b19;
  z-index: 7 !important;
}
.where-to-start .wrap {
  min-height: 100%;
  display: flex;
  align-items: center;
}
.where-to-start-copy {
  width: min(100%, 980px);
}
.where-to-start-copy .eyebrow {
  color: #18865d;
}
.where-to-start-copy .h2 {
  max-width: 16ch;
  margin: 20px 0 clamp(32px,5vh,54px);
}
.where-heading-line {
  display: block;
}
@media(min-width:801px) {
  html[lang="en"] .where-to-start-copy .h2 {
    width: max-content;
    max-width: none;
  }
  html[lang="en"] .where-heading-line {
    white-space: nowrap;
  }
  html[lang="ar"][dir="rtl"] .where-to-start-copy .h2 {
    width: max-content;
    max-width: none;
    margin-bottom: 12px;
    white-space: nowrap;
  }
  html[lang="ar"][dir="rtl"] .solutions-next-step .where-to-start-copy .h2 {
    margin-bottom:clamp(32px,5vh,54px);
  }
}
.where-to-start-body {
  width: min(100%, 760px);
  display: grid;
  gap: 22px;
}
.where-to-start-body p {
  margin: 0;
  color: #535c56;
  font-size: clamp(17px,1.35vw,20px);
  line-height: 1.62;
}
.where-to-start-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: clamp(34px,5vh,54px);
  color: #171b19;
  font-size: 15px;
  font-weight: 650;
  text-decoration: none;
  border-bottom: 1px solid rgba(23,27,25,.38);
  padding-bottom: 7px;
}
.where-to-start-link span {
  color: #18865d;
  transition: transform .25s ease;
}
.where-to-start-link:hover span {
  transform: translateX(4px);
}
[dir="rtl"] .where-to-start-link:hover span {
  transform: translateX(-4px);
}
@media(max-width:800px){
  .page-card-stack .hero-what-we-do ~ .promise-band {
    background-position: center;
    background-size: cover;
  }
  .promise-band .promise-veil {
    background: linear-gradient(180deg,rgba(7,9,8,.82),rgba(7,9,8,.65));
  }
  .where-to-start .wrap {
    align-items: flex-start;
  }
  .where-to-start-copy .h2 {
    margin-top: 16px;
  }
}

/* Restrained hero tube intensity across all pages */
.tubes-ready .hero-tubes,
.hero[data-tubes-hero].tubes-ready .hero-tubes,
.page-hero.tubes-ready .hero-tubes,
.hero-what-we-do.tubes-ready .hero-tubes {
  opacity: .32;
}

.page-card-stack .home-product-intro,
.home-product-intro {
  min-height: 100vh !important;
  min-height: 100svh !important;
  height: 100vh !important;
  height: 100svh !important;
  max-height: 100vh !important;
  max-height: 100svh !important;
  padding: 104px 0 24px !important;
  background:
    linear-gradient(90deg,rgba(7,9,8,.78) 0%,rgba(7,9,8,.48) 48%,rgba(7,9,8,.1) 100%),
    linear-gradient(180deg,rgba(7,9,8,.1),rgba(7,9,8,.38)),
    url("/assets/method-applied-green-coffee-shop-16x9.jpg") center / cover no-repeat;
  position: sticky !important;
  top: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 -18px 50px rgba(0,0,0,.2) !important;
  color: var(--ink);
}
.home-product-intro > .wrap {
  display: flex;
  align-items: center;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.home-product-copy {
  max-width: 850px;
}
.home-product-copy .eyebrow {
  margin-bottom: 18px;
  color: var(--emerald);
}
.home-product-copy .h2 {
  margin: 0 0 20px;
  font-size: clamp(36px, 5vw, 68px);
  line-height: 1;
}
.home-product-copy > p:not(.eyebrow) {
  max-width: 720px;
  margin: 0;
  color: rgba(233,238,234,.76);
  font-size: clamp(16px, 1.6vw, 20px);
  line-height: 1.55;
}
.home-product-copy > p:not(.eyebrow) + p {
  margin-top: 14px;
}
.home-product-link {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  margin-top: 24px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.home-product-link span {
  color: var(--emerald);
  transition: transform .25s ease;
}
.home-product-link:hover span {
  transform: translateX(4px);
}
@media(max-width:800px){
  .page-card-stack .home-product-intro,
  .home-product-intro {
    padding: 88px 0 20px !important;
    background:
      linear-gradient(180deg,rgba(7,9,8,.42),rgba(7,9,8,.7)),
      url("/assets/method-applied-green-coffee-shop-16x9.jpg") center / cover no-repeat;
  }
}

.engagement-flow {
  flex-direction: column;
  justify-content: center;
  gap: clamp(34px, 6vh, 66px);
  background: #ddd9cf;
  color: #171b19;
  position: relative;
  isolation: isolate;
  z-index: 4 !important;
}
.engagement-flow::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url("/assets/how-we-engage-pencil.jpg") center / cover no-repeat;
  mix-blend-mode: multiply;
  opacity: .58;
  pointer-events: none;
}
.engagement-flow::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(
      ellipse 95% 42% at 100% 0,
      rgba(7,9,8,.9) 0%,
      rgba(7,9,8,.7) 42%,
      rgba(7,9,8,.3) 70%,
      rgba(7,9,8,0) 100%
    );
  pointer-events: none;
}
@media(max-width:600px) and (orientation:portrait) {
  .page-card-stack .engagement-flow {
    background:
      radial-gradient(
        ellipse 145% 28% at 100% 0,
        rgba(7,9,8,.92) 0%,
        rgba(7,9,8,.68) 34%,
        rgba(7,9,8,.24) 68%,
        rgba(7,9,8,0) 100%
      ),
      linear-gradient(rgba(221,217,207,.2),rgba(221,217,207,.2)),
      url("/assets/how-we-engage-pencil.jpg") right center / auto 100% no-repeat,
      #ddd9cf !important;
  }
  .engagement-flow::before,
  .engagement-flow::after {
    display: none;
  }
}

/* Keep the complete wAIno card deck and controls inside short phone sections. */
@media(max-width:600px) and (max-height:620px) and (orientation:portrait) {
    .page-card-stack .wain-product-section {
        padding-top:78px !important;
        padding-bottom:8px !important;
    }
    .page-card-stack .wain-product-section .product-feature {
        padding:4px 0 !important;
    }
    .wain-product-meta {
        gap:3px;
        margin-bottom:4px;
    }
    .wain-product-meta .eyebrow {
        margin:0;
        white-space:nowrap;
        font-size:7px;
        letter-spacing:.14em;
        line-height:1.2;
    }
    .wain-product-meta .status {
        padding:3px 8px;
        font-size:8px;
        line-height:1.2;
    }
    .wain-product-section .product-feature h2 {
        margin-bottom:3px;
        font-size:23px !important;
        line-height:.98;
    }
    .wain-product-section .product-feature .wain-name-story {
        margin:0 0 4px;
        font-size:10.5px;
        line-height:1.2;
    }
    .mobile-wain-primary .wain-mobile-deck {
        margin-top:3px;
    }
    .wain-mobile-slide {
        padding:8px;
        border-radius:15px;
    }
    .wain-mobile-slide .wain-audience-block {
        margin-bottom:6px;
    }
    .wain-mobile-slide .wain-audience-block h3 {
        margin-bottom:3px;
        font-size:10px;
        line-height:1.1;
    }
    .wain-mobile-slide .wain-audience-block p {
        font-size:10.5px;
        line-height:1.25;
    }
    .wain-mobile-slide .wain-artifact-eyebrow {
        margin-bottom:5px !important;
        padding-top:6px;
        font-size:8px !important;
        line-height:1.1;
    }
    .solutions-diners-concierge-copy {
        min-height:104px;
        padding-inline-end:116px;
    }
    .solutions-diners-concierge-copy h3 {
        margin-bottom:3px;
        font-size:15px;
    }
    .solutions-diners-concierge-copy > p {
        font-size:10.5px;
        line-height:1.22;
    }
    .solutions-diners-waino {
        top:10px;
        width:126px;
        height:126px;
    }
    .solutions-diners-chips {
        gap:5px;
        margin-top:5px;
    }
    .solutions-diners-chips span {
        min-height:26px;
        padding:3px 6px;
        font-size:7.8px;
        line-height:1.15;
    }
    .solutions-diners-caption {
        margin-top:4px;
        font-size:7.5px;
        line-height:1.2;
    }
    .wain-mobile-deck .service-deck-controls {
        margin-top:5px;
    }
    .wain-mobile-deck .service-deck-button {
        width:38px;
        height:38px;
    }
}

/* Align the desktop service-start divider with the divider beneath THE WORK. */
@media(min-width:801px) {
    .service-outcome .service-start {
        margin-top:0;
        padding-top:0;
        border-top:0;
    }
    .service-outcome .service-start h3 {
        padding-bottom:13px;
        border-bottom:1px solid rgba(23,27,25,.15);
        font-size:0;
    }
    .service-outcome .service-start h3::after {
        content:"WHEN IS THIS APPLICABLE";
        font-size:11px;
        line-height:1.2;
        letter-spacing:.12em;
    }
    html[lang="ar"][dir="rtl"] .service-outcome .service-start h3::after {
        content:"متى ينطبق ذلك";
        letter-spacing:0;
    }
    .service-detail-dark .service-outcome .service-start h3 {
        border-bottom-color:rgba(99,230,173,.16);
    }
}
@media(max-width:800px) {
    .services-evidence-editorial sup,
    .services-evidence-source {
        display:none !important;
    }
}

/* Services phone hero follows the same full-viewport opening frame as other pages. */
@media(max-width:600px) {
    body.page-card-stack.mobile-natural-scroll main > .hero-services {
        height:100vh !important;
        height:100svh !important;
        min-height:100vh !important;
        min-height:100svh !important;
        max-height:100vh !important;
        max-height:100svh !important;
        overflow:hidden !important;
    }
}

/* Mobile sizing exception: wAIno grows with its complete deck instead of scrolling internally. */
@media(max-width:600px) {
    .wain-product-section {
        height:auto !important;
        min-height:100svh !important;
        max-height:none !important;
        overflow:visible !important;
        overflow-x:visible !important;
        overflow-y:visible !important;
        overscroll-behavior:visible !important;
        touch-action:auto !important;
    }
}

/* wAIno is the only mobile section allowed to grow beyond one viewport. */
@media(max-width:600px) {
    body.mobile-natural-scroll main > .wain-product-section {
        height:auto !important;
        min-height:100svh !important;
        max-height:none !important;
        overflow:visible !important;
        overscroll-behavior:visible;
        touch-action:auto;
    }
}
.engagement-flow + .promise-band {
  z-index: 5 !important;
}
.services-process {
  background:
    linear-gradient(90deg,rgba(7,9,8,.92),rgba(7,9,8,.62) 58%,rgba(7,9,8,.46)),
    linear-gradient(180deg,rgba(7,9,8,.34),rgba(7,9,8,.72)),
    url("/assets/how-it-runs-dark-wide.jpg") center / cover no-repeat !important;
}
.services-process .engagement-heading {
  width: min(100% - (var(--pad) * 2), var(--max));
}
.services-process .engage-card {
  min-height: 300px;
}
@media(min-width:801px) {
  .services-process {
    gap: 48px;
  }
}
@media(min-width:1400px) {
  html[lang="en"] .services-process .engagement-heading .h2,
  html[lang="ar"][dir="rtl"] .services-process .engagement-heading .h2 {
    width: max-content;
    max-width: none;
    white-space: nowrap;
  }
}
.engagement-heading {
  flex: 0 0 auto;
  margin: 0 auto !important;
}
.page-card-stack .engagement-flow .engagement-heading .eyebrow {
  margin-bottom: 16px;
  color: #18865d !important;
  font-weight: 800;
}
.page-card-stack .engagement-flow .engage-card .engage-number {
  color: #18865d !important;
}
@media(max-width:800px) {
  .page-card-stack .engagement-flow .service-deck-track i {
    background: #18865d;
  }
}
.engagement-heading .h2 {
  margin: 0;
  font-size: clamp(44px, 6vw, 82px);
  line-height: .96;
}
.engagement-marquee {
  width: 100%;
  overflow: hidden;
  flex: 0 0 auto;
}
.engagement-track {
  display: flex;
  width: max-content;
  animation: engagement-ticker 34s linear infinite;
  will-change: transform;
}
.engagement-flow.ticker-pending .engagement-track {
  animation-play-state: paused;
}
.engagement-marquee:hover .engagement-track {
  animation-play-state: paused;
}
.engagement-group {
  display: flex;
  gap: 20px;
  padding-right: 20px;
}
.engage-card {
  width: clamp(360px, 34vw, 520px);
  min-height: 270px;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  padding: clamp(28px, 3vw, 42px);
  border: 1px solid rgba(23,27,25,.12);
  border-radius: 30px;
  background: #fafbf9;
  color: #171b19;
  box-shadow: 0 20px 50px rgba(23,27,25,.09);
}
.engage-number {
  color: #18865d;
  font-size: 11px;
  letter-spacing: .16em;
}
.engage-card h3 {
  min-height: 84px;
  margin: 36px 0 16px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1;
  letter-spacing: -.045em;
}
.engage-card p {
  max-width: 430px;
  margin: 0;
  color: rgba(23,27,25,.66);
  font-size: 15px;
  line-height: 1.55;
}
.engagement-group .engage-card:nth-child(3) {
  background-color: #d5ddd7 !important;
  background-image: none !important;
  border-color: var(--dark-line);
  box-shadow: none;
  backdrop-filter: none;
}
.engagement-group .engage-card:nth-child(2) .gooey-field {
  opacity: .34;
}
.engagement-group .engage-card:nth-child(2):hover .gooey-field {
  opacity: .56;
}
@keyframes engagement-ticker {
  to { transform: translateX(-50%); }
}
html[dir="rtl"] .engagement-track {
  animation-direction: reverse;
}
html[lang="ar"][dir="rtl"] .engagement-flow .engagement-track {
  direction: ltr;
  animation: engagement-ticker-ar 34s linear infinite;
}
html[lang="ar"][dir="rtl"] .engagement-flow .engagement-marquee {
  direction: ltr;
}
html[lang="ar"][dir="rtl"] .engagement-flow .engagement-group {
  direction: ltr;
  flex-direction: row-reverse;
}
html[lang="ar"][dir="rtl"] .engagement-flow .engage-card {
  direction: rtl;
  text-align: right;
}
@keyframes engagement-ticker-ar {
  from {
    transform: translateX(var(--ticker-ar-from, 0px));
  }
  to {
    transform: translateX(var(--ticker-ar-to, 0px));
  }
}
html[lang="ar"][dir="rtl"] .engagement-flow .engagement-heading {
  width: 100%;
  max-width: var(--max);
  margin-inline: auto !important;
  padding-inline: var(--pad);
  text-align: right;
}
.hero-what-we-do ~ .engagement-flow .engagement-marquee {
  padding-inline: var(--pad);
}
.hero-what-we-do ~ .engagement-flow .engagement-group {
  gap: 14px;
  padding-right: 14px;
}
html[dir="rtl"] .hero-what-we-do ~ .engagement-flow .engagement-group {
  padding-right: 0;
  padding-left: 14px;
}
@media(max-width:800px){
  .engagement-flow {
    gap: 34px;
  }
  .engagement-heading .h2 {
    font-size: clamp(38px, 11vw, 52px);
  }
  .engagement-track {
    animation-duration: 28s;
  }
  .engage-card {
    width: 82vw;
    min-height: 300px;
  }
  .hero-what-we-do ~ .engagement-flow .engagement-marquee {
    padding-inline: var(--pad);
  }
}
@media(max-width:800px) {
  .engagement-flow.phone-card-deck {
    gap: clamp(18px,3.5vh,28px);
  }
  .engagement-flow.phone-card-deck .engagement-marquee {
    overflow: visible;
    padding-inline: var(--pad);
    touch-action: pan-y;
  }
  .engagement-flow.phone-card-deck .engagement-track {
    display: block;
    width: 100%;
    animation: none !important;
    transform: none !important;
    will-change: auto;
  }
  .engagement-flow.phone-card-deck .engagement-group:first-child {
    display: grid;
    width: 100%;
    padding: 0;
    gap: 0;
    isolation: isolate;
  }
  .engagement-flow.phone-card-deck .engagement-group:first-child::before,
  .engagement-flow.phone-card-deck .engagement-group:first-child::after {
    content: "";
    grid-area: 1 / 1;
    align-self: stretch;
    margin: 0 8px;
    border: 1px solid rgba(72,224,162,.12);
    border-radius: 26px;
    background: #0d1511;
    pointer-events: none;
  }
  .engagement-flow.phone-card-deck .engagement-group:first-child::before {
    z-index: -2;
    transform: translateY(12px) scale(.94);
    opacity: .48;
  }
  .engagement-flow.phone-card-deck .engagement-group:first-child::after {
    z-index: -1;
    transform: translateY(7px) scale(.97);
    opacity: .72;
  }
  .engagement-flow.phone-card-deck .engagement-group[aria-hidden="true"] {
    display: none;
  }
  .engagement-flow.phone-card-deck .engage-card {
    grid-area: 1 / 1;
    z-index: 1;
    width: 100%;
    min-width: 0;
    min-height: clamp(270px,42dvh,330px);
    padding: clamp(24px,7vw,30px);
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateX(24px) scale(.985);
    transition: opacity .26s ease,transform .32s cubic-bezier(.16,1,.3,1);
  }
  html[dir="rtl"] .engagement-flow.phone-card-deck .engage-card {
    transform: translateX(-24px) scale(.985);
  }
  .engagement-flow.phone-card-deck .engage-card.deck-active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
  html[dir="rtl"] .engagement-flow.phone-card-deck .engage-card.deck-active {
    transform: none;
  }
  .engagement-flow.phone-card-deck .engage-card.deck-active.deck-entering {
    opacity: 0;
    transform: translateX(24px) scale(.985);
  }
  html[dir="rtl"] .engagement-flow.phone-card-deck .engage-card.deck-active.deck-entering {
    transform: translateX(-24px) scale(.985);
  }
  .engagement-flow.phone-card-deck .engage-card h3 {
    min-height: 0;
    margin: clamp(42px,7vh,58px) 0 14px;
    font-size: clamp(28px,8.5vw,36px);
  }
  .engagement-flow.phone-card-deck .engage-card p {
    font-size: 14px;
    line-height: 1.55;
  }
  .service-deck-controls {
    display: grid;
    grid-template-columns: 44px minmax(0,1fr) 44px;
    gap: 14px;
    align-items: center;
    width: min(100% - (var(--pad) * 2),var(--max));
    margin: 4px auto 0;
  }
  .service-deck-controls[hidden] {
    display: none;
  }
  .service-deck-button {
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(72,224,162,.28);
    border-radius: 50%;
    background: rgba(7,9,8,.76);
    color: var(--emerald);
    cursor: pointer;
  }
  .service-deck-button:focus-visible {
    outline: 2px solid var(--emerald);
    outline-offset: 3px;
  }
  .service-deck-progress {
    display: grid;
    gap: 7px;
  }
  .service-deck-count {
    color: rgba(233,238,234,.72);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .14em;
  }
  .service-deck-track {
    display: block;
    height: 4px;
    overflow: hidden;
    border-radius: 99px;
    background: rgba(255,255,255,.14);
  }
  .service-deck-track i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--emerald);
    transition: width .28s ease;
  }
  html[dir="rtl"] .service-deck-track i {
    margin-left: auto;
  }
  html[dir="rtl"] .service-deck-previous span,
  html[dir="rtl"] .service-deck-next span {
    display: inline-block;
    transform: scaleX(-1);
  }
}
@media(prefers-reduced-motion:reduce){
  .engagement-marquee {
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .engagement-track {
    animation: none;
  }
  .engagement-flow.phone-card-deck .engage-card,
  .engagement-flow.phone-card-deck .engage-card.deck-active.deck-entering {
    transition: opacity .01ms;
    transform: none;
  }
}

.building-lessons {
  z-index: 5 !important;
  overflow-y: auto !important;
  background: var(--zinc);
  color: #171b19;
}
.building-lessons + .promise-band {
  z-index: 6 !important;
}
.building-lessons > .wrap {
  padding-bottom: 34px;
}
.building-lessons-head {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr);
  column-gap: 7vw;
  align-items: end;
  margin-bottom: 24px;
}
.building-lessons-head .eyebrow {
  grid-column: 1 / -1;
  margin-bottom: 14px;
  color: #18865d;
}
.building-lessons-head .h2 {
  margin: 0;
  font-size: clamp(38px, 4.8vw, 66px);
  line-height: .96;
}
@media(min-width:801px) {
  html[lang="ar"][dir="rtl"] .building-lessons-head {
    height: 126px;
    min-height: 126px;
    margin-bottom: 80px;
  }
  html[lang="ar"][dir="rtl"] .building-lessons-head .h2 {
    width: max-content;
    max-width: none;
    white-space: nowrap;
  }
}
.building-lessons-intro {
  max-width: 58ch;
  margin: 0;
  color: rgba(23,27,25,.66);
  font-size: 14px;
  line-height: 1.55;
}
.building-lessons-grid {
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
}
.building-lessons-grid .list-card {
  min-height: 0;
  height: 100%;
  padding: clamp(20px, 2.1vw, 30px);
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(23,27,25,.12);
  border-radius: var(--radius);
  background: var(--zinc);
  color: #171b19;
}
.building-lessons-grid .list-card:nth-child(2) {
  background: #e2e6e1;
}
.building-lessons-grid .panel-index {
  margin: 0 !important;
  color: #77817a !important;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .08em;
}
.building-lessons-grid h3 {
  margin: clamp(48px, 8vh, 64px) 0 10px;
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.04;
}
.building-lessons-grid p {
  flex: 0;
  max-width: 28ch;
  margin: 0;
  color: #68716b !important;
  font-size: 13px;
  line-height: 1.48;
}
.building-lessons-grid .list-card:nth-child(1) .gooey-field,
.building-lessons-grid .list-card:nth-child(2) .gooey-field {
  display: none !important;
}
.building-lessons-grid .list-card:nth-child(3) .gooey-field,
.building-lessons-grid .list-card:nth-child(4) .gooey-field {
  display: block !important;
  opacity: .42;
}
.building-lessons-grid .list-card:nth-child(3):hover .gooey-field,
.building-lessons-grid .list-card:nth-child(4):hover .gooey-field {
  opacity: .68;
}
@media(min-width:801px){
  .building-lessons-grid {
    height: clamp(280px, calc(100svh - 294px), 390px);
  }
}
.building-lessons-close {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  padding-top: 22px;
}
.building-lessons-close p {
  margin: 0;
  font-size: clamp(17px,1.7vw,22px);
  font-weight: 600;
}
.building-lessons-close a {
  flex: 0 0 auto;
  color: #171b19;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.building-lessons-close a span {
  color: #18865d;
}
@media(max-width:800px){
  .page-card-stack .building-lessons {
    overflow-y:hidden !important;
  }
  .building-lessons > .wrap {
    height:100%;
    min-height:0;
    display:flex;
    flex-direction:column;
  }
  .building-lessons-head {
    display: block;
    flex:0 0 auto;
    margin-bottom:16px;
  }
  .building-lessons-head .h2 {
    margin-bottom:14px;
    font-size:clamp(34px,9.5vw,42px);
  }
  .building-lessons-intro {
    font-size:12.5px;
    line-height:1.45;
  }
  .building-lessons-grid {
    display: flex;
    flex:0 0 auto;
    min-height:auto;
    height:auto;
    gap:12px;
    overflow-x: auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scrollbar-width:thin;
    scrollbar-color:rgba(72,224,162,.48) transparent;
    padding:3px var(--pad) 12px;
    margin-left:calc(var(--pad) * -1);
    margin-right:calc(var(--pad) * -1);
    scroll-padding-inline:var(--pad);
  }
  .building-lessons-grid .list-card {
    flex:0 0 min(82vw,360px);
    width:auto;
    min-width:0;
    min-height:clamp(275px,46vh,350px);
    height:auto;
    scroll-snap-align:center;
  }
  .building-lessons-grid h3 {
    margin-top:clamp(26px,4.5vh,38px);
  }
  .building-lessons-close {
    flex:0 0 auto;
    align-items:flex-start;
    flex-direction:row;
    gap:12px;
    padding-top:12px;
  }
  .building-lessons-close p {
    font-size:clamp(13px,3.5vw,15px);
    line-height:1.2;
  }
  .building-lessons-close a {
    font-size:10.5px;
    margin-top:24px;
  }
}

/* Shared section start line */
:root {
  --section-start: 104px;
  --section-end: 24px;
}
.page-card-stack .hero,
.page-card-stack .page-hero,
.page-card-stack .section,
.page-card-stack .band,
.page-card-stack .home-product-intro,
.page-card-stack .engagement-flow,
.page-card-stack .building-lessons {
  padding-top: var(--section-start) !important;
  padding-bottom: var(--section-end) !important;
}
.page-card-stack .hero > .wrap,
.page-card-stack .page-hero > .wrap,
.page-card-stack .section > .wrap,
.page-card-stack .band > .wrap {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.home-product-intro > .wrap {
  align-items: flex-start;
}
.engagement-flow {
  justify-content: flex-start;
}
.page-card-stack .where-to-start > .wrap {
  align-items: flex-start;
}
.page-card-stack .section:has(.home-capabilities-grid) .section-head,
.page-card-stack .section:has(.what-we-do-cards) .section-head,
.page-card-stack .section:has(.process-photo-grid) .section-head {
  align-items: flex-start;
}
.page-card-stack .footer-card-wrap {
  padding-top: var(--section-start) !important;
  padding-bottom: var(--section-end) !important;
}
.page-card-stack .legal-content {
  padding-top: var(--section-start) !important;
  padding-bottom: var(--section-end) !important;
}
@media(max-width:800px){
  :root {
    --section-start: 88px;
    --section-end: 20px;
  }
}
@media(max-width:800px){
  .tubes-ready .hero-tubes,
  .hero[data-tubes-hero].tubes-ready .hero-tubes,
  .page-hero.tubes-ready .hero-tubes,
  .hero-what-we-do.tubes-ready .hero-tubes {
    opacity: .24;
  }
}

/* Authoritative site-wide stacked section contract. */
.page-card-stack main > section {
  position: sticky !important;
  top: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: 100vh !important;
  max-height: 100svh !important;
  isolation: isolate;
  z-index: var(--stack-z, 1) !important;
  box-shadow: 0 -18px 50px rgba(0,0,0,.16);
}
.page-card-stack .site-footer {
  position: relative !important;
  top: auto !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  max-height: 100vh !important;
  max-height: 100svh !important;
  z-index: var(--stack-z, 20) !important;
  box-shadow: 0 -18px 50px rgba(0,0,0,.16) !important;
}
.page-card-stack.stacked-footer main > .site-footer {
  position: sticky !important;
  top: 0 !important;
}
.page-card-stack .building-lessons,
.page-card-stack .where-to-start,
.page-card-stack #services-cards,
.page-card-stack .site-footer {
  overflow-y: auto !important;
  overscroll-behavior-y: contain;
}
.page-card-stack .where-to-start {
  overscroll-behavior-y: auto;
}
.page-card-stack .legal-content {
  position: relative !important;
  top: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  z-index: auto !important;
}

/* Unified dark card palette across every content card. */
.page-card-stack :is(.panel, .list-card, .step, .contact-box, .product-feature, .engage-card) {
  background: #101713 !important;
  background-image: none !important;
  color: #f2f5f3 !important;
  border-color: rgba(72,224,162,.16) !important;
}
.page-card-stack :is(.panel, .list-card, .step, .engage-card):nth-child(even) {
  background: #142019 !important;
}
.page-card-stack :is(.panel, .list-card, .step, .contact-box, .product-feature, .engage-card)
  :is(h2, h3, h4, label, strong) {
  color: #f2f5f3 !important;
}
.page-card-stack :is(.panel, .list-card, .step, .contact-box, .product-feature, .engage-card)
  :is(p, li, .privacy-ack) {
  color: #aeb9b3 !important;
}
.page-card-stack :is(.panel, .list-card, .step) .panel-index,
.page-card-stack .step .step-num,
.page-card-stack .product-feature .eyebrow,
.page-card-stack .engage-card .engage-number {
  color: #63e6ad !important;
}
.page-card-stack .contact-box :is(input, textarea) {
  background: rgba(255,255,255,.055) !important;
  color: #f2f5f3 !important;
  border-color: rgba(174,185,179,.24) !important;
}
.page-card-stack .contact-box :is(input, textarea):focus {
  border-color: #63e6ad !important;
}
.page-card-stack .engagement-flow .engagement-group .engage-card {
  background: #fafbf9 !important;
  background-image: none !important;
  color: #171b19 !important;
  border-color: rgba(23,27,25,.12) !important;
  box-shadow: 0 20px 50px rgba(23,27,25,.09) !important;
  backdrop-filter: none;
}
.page-card-stack .engagement-flow .engagement-group .engage-card:nth-child(even) {
  background: #fafbf9 !important;
}
.page-card-stack .engagement-flow .engagement-group .engage-card h3 {
  color: #171b19 !important;
}
.page-card-stack .engagement-flow .engagement-group .engage-card p {
  color: #535c56 !important;
}
.page-card-stack .engagement-flow .engagement-group .engage-card:nth-child(3n) {
  background: #fafbf9 !important;
}
.page-card-stack .hero-what-we-do ~ .engagement-flow + .where-to-start {
  background: #0b100d;
  color: #f2f5f3;
}
.page-card-stack .hero-what-we-do ~ .engagement-flow + .where-to-start .eyebrow {
  color: #63e6ad;
}
.page-card-stack .hero-what-we-do ~ .engagement-flow + .where-to-start .where-to-start-body p {
  color: #aeb9b3;
}
.page-card-stack .hero-what-we-do ~ .engagement-flow + .where-to-start .where-to-start-link {
  color: #f2f5f3;
  border-bottom-color: rgba(242,245,243,.38);
}
.page-card-stack .list-card .service-deliverables {
  display: grid;
  gap: 8px;
  margin: 16px 0 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(72,224,162,.16);
}
.page-card-stack .list-card .service-deliverables p {
  max-width: none;
  margin: 0;
  color: #aeb9b3 !important;
  font-size: 13px;
  line-height: 1.42;
}
.page-card-stack .list-card .service-deliverables strong {
  color: #63e6ad !important;
  font-size: 11px;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.page-card-stack .list-card:has(.service-deliverables) {
  padding: clamp(18px,2.2vw,30px);
}
.page-card-stack .list-card:has(.service-deliverables) .panel-index {
  margin-bottom: 18px;
}
.page-card-stack .list-card:has(.service-deliverables) .h3 {
  margin-bottom: 12px;
}
.page-card-stack .list-card:has(.service-deliverables) > p {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 1.45;
}
@media(min-width:801px) {
  .page-card-stack #services-cards > .wrap {
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .page-card-stack #services-cards > .wrap > p {
    flex: 0 0 auto;
    margin: 0 0 clamp(10px,1.6vh,18px);
    font-size: clamp(12px,1.15vw,15px);
    line-height: 1.35;
  }
  .page-card-stack #services-cards .list-grid {
    flex: 0 0 auto;
    min-height: 0;
    grid-template-rows: none;
  }
  .page-card-stack #services-cards .service-card {
    min-height: 0;
    padding: clamp(15px,1.7vw,24px);
  }
  .page-card-stack #services-cards .service-card .panel-index {
    margin-bottom: clamp(8px,1.2vh,13px);
  }
  .page-card-stack #services-cards .service-card .h3 {
    margin-bottom: clamp(6px,.9vh,9px);
    font-size: clamp(17px,1.55vw,21px);
  }
  .page-card-stack #services-cards .service-card > p {
    max-width: none;
    font-size: clamp(11px,.98vw,13px);
    line-height: 1.32;
  }
  .page-card-stack #services-cards .service-deliverables {
    gap: clamp(3px,.5vh,6px);
    margin: clamp(7px,1vh,11px) 0 clamp(8px,1.1vh,12px);
    padding-top: clamp(7px,1vh,10px);
  }
  .page-card-stack #services-cards .service-deliverables p {
    max-width: none;
    font-size: clamp(10px,.88vw,12px);
    line-height: 1.3;
  }
  .page-card-stack #services-cards .service-deliverables strong {
    font-size: clamp(9px,.76vw,10px);
  }
  .page-card-stack #services-cards .btn {
    padding: clamp(9px,1.1vh,12px) clamp(16px,1.7vw,22px);
    font-size: clamp(10px,.88vw,12px);
  }
}
@media(min-width:801px) and (max-height:800px) {
  .page-card-stack #services-cards > .wrap > p {
    margin-bottom: 6px;
    font-size: 12px;
    line-height: 1.2;
  }
  .page-card-stack #services-cards .list-grid {
    gap: 10px;
  }
  .page-card-stack #services-cards .service-card {
    padding: 11px 20px;
    border-radius: 22px;
  }
  .page-card-stack #services-cards .service-card .panel-index {
    margin-bottom: 5px;
    font-size: 9px;
  }
  .page-card-stack #services-cards .service-card .h3 {
    margin-bottom: 4px;
    font-size: 18px;
    line-height: 1.08;
  }
  .page-card-stack #services-cards .service-card > p {
    font-size: 11.5px;
    line-height: 1.2;
  }
  .page-card-stack #services-cards .service-deliverables {
    gap: 2px;
    margin: 4px 0 5px;
    padding-top: 4px;
  }
  .page-card-stack #services-cards .service-deliverables p {
    font-size: 10px;
    line-height: 1.18;
  }
  .page-card-stack #services-cards .service-deliverables strong {
    font-size: 8.5px;
  }
  .page-card-stack #services-cards .btn {
    padding: 7px 14px;
    font-size: 9.5px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-card {
    padding: 8px 16px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-card .panel-index {
    margin-bottom: 3px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-card .h3 {
    margin-bottom: 3px;
    font-size: 16px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-card > p {
    font-size: 10.5px;
    line-height: 1.14;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-deliverables {
    margin: 3px 0 4px;
    padding-top: 3px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-deliverables p {
    font-size: 9.3px;
    line-height: 1.12;
  }
  html[dir="rtl"] .page-card-stack #services-cards .service-deliverables strong {
    font-size: 8px;
  }
  html[dir="rtl"] .page-card-stack #services-cards .btn {
    padding: 6px 12px;
    font-size: 9px;
  }
}
.page-card-stack .services-evidence {
  overflow-y: auto !important;
}
.services-evidence > .wrap {
  height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0,1fr) auto;
  gap: clamp(14px,2.2vh,24px);
}
.services-evidence-heading .eyebrow {
  margin: 0 0 12px;
}
.services-evidence-heading .h2 {
  max-width: 900px;
  margin: 0;
}
.services-evidence-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  grid-template-rows: repeat(2,minmax(0,1fr));
  gap: 12px;
  min-height: 0;
}
.services-evidence-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 0;
  padding: clamp(20px,2.7vw,34px);
  border: 1px solid rgba(72,224,162,.16);
  border-radius: 26px;
  background: #101713;
  color: #f2f5f3;
}
.services-evidence-card:nth-child(even) {
  background: #142019;
}
.services-evidence-card p {
  max-width: 48ch;
  margin: 0;
  color: #f2f5f3;
  font-size: clamp(17px,1.75vw,24px);
  line-height: 1.22;
  letter-spacing: -.025em;
}
.services-evidence-card span {
  margin-top: 16px;
  color: #63e6ad;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.services-evidence-result {
  margin: 0;
  padding-top: clamp(12px,1.8vh,18px);
  border-top: 1px solid rgba(23,27,25,.16);
  color: #171b19;
  font-size: clamp(17px,1.55vw,21px);
  font-weight: 600;
}
@media(min-width:801px) and (max-height:800px) {
  .page-card-stack .services-evidence {
    padding-top: 82px !important;
    padding-bottom: 12px !important;
  }
  .services-evidence > .wrap {
    position: static;
    gap: 8px;
  }
  .services-evidence-heading .eyebrow {
    margin-bottom: 6px;
  }
  .services-evidence-heading .h2 {
    font-size: clamp(38px,4.2vw,50px) !important;
    line-height: .98;
  }
  .services-evidence-grid {
    align-self: start;
    grid-template-rows: repeat(2,140px);
    gap: 8px;
  }
  .services-evidence-card {
    padding: 14px 20px;
    border-radius: 22px;
  }
  .services-evidence-card p {
    max-width: none;
    font-size: clamp(13px,1.25vw,16px);
    line-height: 1.18;
  }
  .services-evidence-card span {
    margin-top: 8px;
    font-size: 9px;
  }
  .services-evidence-result {
    position: absolute;
    right: var(--pad);
    bottom: 32px;
    left: var(--pad);
    padding-top: 7px;
    font-size: 14px;
  }
}
@media(max-width:800px) {
  .services-evidence > .wrap {
    height: auto;
    display: block;
  }
  .services-evidence-heading {
    margin-bottom: 26px;
  }
  .services-evidence-heading .h2 {
    font-size: clamp(34px,10vw,44px) !important;
  }
  .services-evidence-grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    gap: 12px;
  }
  .services-evidence-card {
    min-height: 190px;
    padding: 22px;
  }
  .services-evidence-card p {
    max-width: none;
    font-size: 18px;
  }
  .services-evidence-result {
    margin-top: 24px;
    padding-bottom: 20px;
  }
}
.services-evidence > .wrap {
  height: 100%;
  display: grid;
  place-items: center;
}
.services-evidence-panel {
  width: 100%;
  padding: clamp(14px,3vw,44px);
  border: 1px solid rgba(23,27,25,.06);
  border-radius: clamp(26px,3vw,38px);
  background: #e8eeeb;
  color: #171b19;
}
.services-evidence-panel .services-evidence-heading {
  margin: 0 0 clamp(30px,4.5vh,52px);
  text-align: center;
}
.services-evidence-panel .services-evidence-heading .eyebrow {
  margin: 0 0 12px;
  color: #18865d;
}
.services-evidence-panel .services-evidence-heading .h2 {
  max-width: none;
  margin: 0;
  font-size: clamp(38px,4.2vw,62px) !important;
}
.services-evidence-panel .services-evidence-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  grid-auto-rows: auto;
  gap: 0;
}
.services-evidence-metric {
  display: flex;
  min-width: 0;
  padding: 0 clamp(14px,1.6vw,24px);
  flex-direction: column;
  align-items: center;
  text-align: center;
}
@media(min-width:801px) {
  .services-evidence-metric:first-child {
    padding-inline-start: 0;
  }
}
.services-evidence-metric + .services-evidence-metric {
  border-left: 1px solid rgba(23,27,25,.12);
}
.services-evidence-label {
  display: inline-flex;
  min-height: 24px;
  margin-bottom: 10px;
  padding: 5px 12px;
  align-items: center;
  border-radius: 7px;
  background: #48e0a2;
  color: #102118;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
}
.services-evidence-value {
  display: block;
  margin-bottom: 10px;
  color: #171b19;
  font-size: clamp(44px,4.8vw,68px);
  font-weight: 500;
  letter-spacing: -.06em;
  line-height: .92;
}
.services-evidence-metric p {
  max-width: 46ch;
  margin: 0;
  color: #505a54;
  font-size: clamp(12px,1.05vw,15px);
  line-height: 1.4;
}
.services-evidence-source {
  margin-top: 10px;
  color: #288b62;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.services-evidence-editorial {
  align-items: flex-start;
  text-align: left;
}
.services-evidence-editorial .services-evidence-statement {
  max-width: 50ch;
  color: #26302b;
  font-size: clamp(12px,.82vw,14px);
  font-weight: 500;
  line-height: 1.48;
}
.services-evidence-editorial sup {
  color: #18865d;
  font-size: .62em;
  font-weight: 800;
  line-height: 0;
  vertical-align: super;
}
.services-evidence-editorial .services-evidence-source {
  width: 133.333%;
  max-width: none;
  margin-top: 14px;
  padding-top: 12px;
  align-self: flex-start;
  border-top: 1px solid rgba(23,27,25,.18);
  color: #66716b;
  font-size: clamp(8px,.58vw,9px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  text-align: left;
  text-transform: none;
  transform: scale(.75);
  transform-origin: top left;
}
.services-evidence-panel .services-evidence-result {
  position: static !important;
  margin: clamp(28px,4vh,44px) 0 0;
  padding: clamp(18px,2.5vh,26px) 0 0;
  border-top: 1px solid rgba(23,27,25,.12);
  color: #6c746f;
  font-size: clamp(15px,1.35vw,19px);
  font-weight: 400;
  text-align: center;
}
@media(min-width:801px) and (max-height:800px) {
  .services-evidence-panel {
    padding: 24px 14px;
  }
  .services-evidence-panel .services-evidence-heading {
    margin-bottom: 22px;
  }
  .services-evidence-panel .services-evidence-heading .h2 {
    font-size: 40px !important;
  }
  .services-evidence-metric {
    padding-inline: 14px;
  }
  .services-evidence-editorial .services-evidence-statement {
    font-size: clamp(12.5px,1.05vw,14px);
    line-height: 1.42;
  }
  .services-evidence-editorial .services-evidence-source {
    margin-top: 10px;
    padding-top: 9px;
    font-size: clamp(8px,.65vw,9px);
    line-height: 1.42;
  }
  .services-evidence-value {
    font-size: 46px;
  }
  .services-evidence-panel .services-evidence-result {
    margin-top: 20px;
    padding-top: 14px;
  }
}
@media(max-width:800px) {
  .services-evidence > .wrap {
    height: auto;
    display: block;
  }
  .services-evidence-panel {
    padding: 30px 20px;
    border-radius: 26px;
  }
  .services-evidence-panel .services-evidence-heading {
    margin-bottom: 30px;
    text-align: start;
  }
  .services-evidence-panel .services-evidence-heading .h2 {
    font-size: clamp(34px,10vw,44px) !important;
  }
  .services-evidence-panel .services-evidence-grid {
    grid-template-columns: 1fr;
  }
  .services-evidence-metric {
    padding: 24px 0;
    align-items: flex-start;
    text-align: start;
  }
  .services-evidence-metric:first-child {
    padding-top: 0;
  }
  .services-evidence-metric + .services-evidence-metric {
    border-top: 1px solid rgba(23,27,25,.12);
    border-left: 0;
  }
  .services-evidence-metric p {
    max-width: none;
    font-size: 15px;
  }
  .services-evidence-editorial .services-evidence-statement {
    font-size: 16px;
  }
  .services-evidence-editorial .services-evidence-source {
    font-size: 9px;
  }
  .services-evidence-panel .services-evidence-result {
    margin-top: 4px;
    text-align: start;
  }
}
html[dir="rtl"] .services-evidence-metric + .services-evidence-metric {
  border-right: 1px solid rgba(23,27,25,.12);
  border-left: 0;
}
html[dir="rtl"] .services-evidence-editorial,
html[dir="rtl"] .services-evidence-editorial .services-evidence-source {
  text-align: right;
}
html[dir="rtl"] .services-evidence-editorial .services-evidence-source {
  transform-origin: top right;
}
@media(max-width:800px) {
  html[dir="rtl"] .services-evidence-metric + .services-evidence-metric {
    border-top: 1px solid rgba(23,27,25,.12);
    border-right: 0;
  }
}
@media(min-width:801px) and (max-width:1099px) {
  .services-evidence-panel .services-evidence-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .services-evidence-metric {
    padding-block: 20px;
  }
  .services-evidence-metric + .services-evidence-metric {
    border-left: 0;
  }
  .services-evidence-metric:nth-child(even) {
    border-left: 1px solid rgba(23,27,25,.12);
  }
  .services-evidence-metric:nth-child(n+3) {
    border-top: 1px solid rgba(23,27,25,.12);
  }
  .services-evidence-editorial .services-evidence-statement {
    font-size: 14px;
    line-height: 1.45;
  }
  html[dir="rtl"] .services-evidence-metric + .services-evidence-metric {
    border-right: 0;
  }
  html[dir="rtl"] .services-evidence-metric:nth-child(even) {
    border-right: 1px solid rgba(23,27,25,.12);
    border-left: 0;
  }
}

/* Services evidence: a quiet field where a small cluster becomes visible. */
.services-evidence-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-color: #f2f2f0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 34 34'%3E%3Cpath d='M5 4v4' fill='none' stroke='%230e1113' stroke-opacity='.07' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 34px 34px;
}
.services-evidence-panel::before {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -145px;
  width: 430px;
  height: 430px;
  z-index: -1;
  pointer-events: none;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='102' height='68' viewBox='0 0 102 68'%3E%3Cpath d='M5 4v4M39 38v4M73 4v4' fill='none' stroke='%2348e0a2' stroke-opacity='.19' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E"),
    radial-gradient(circle at center,rgba(72,224,162,.055) 0%,rgba(72,224,162,.035) 42%,rgba(72,224,162,0) 72%);
  background-repeat: repeat,no-repeat;
  background-size: 102px 68px,100% 100%;
  -webkit-mask-image: radial-gradient(circle at center,#000 0%,rgba(0,0,0,.88) 48%,transparent 76%);
  mask-image: radial-gradient(circle at center,#000 0%,rgba(0,0,0,.88) 48%,transparent 76%);
}
.services-evidence-panel > * {
  position: relative;
  z-index: 1;
}
@media(max-width:800px) {
  .services-evidence-panel {
    background-size: 32px 32px;
    padding: 24px 20px 22px;
  }
  .services-evidence-panel::before {
    right: -215px;
    bottom: -60px;
    width: 360px;
    height: 360px;
    opacity: .82;
  }
  .services-evidence-panel .services-evidence-heading {
    margin-bottom: 20px;
  }
  .services-evidence-panel .services-evidence-heading .eyebrow {
    margin-bottom: 8px;
  }
  .services-evidence-panel .services-evidence-heading .h2 {
    font-size: clamp(30px,8.2vw,34px) !important;
    line-height: 1.02;
  }
  .services-evidence-title-lead,
  .services-evidence-title-end {
    display: block;
  }
  .services-evidence-metric {
    padding: 16px 0;
  }
  .services-evidence-label {
    margin-bottom: 7px;
  }
  .services-evidence-value {
    margin-bottom: 7px;
    font-size: 42px;
  }
  .services-evidence-source {
    margin-top: 7px;
  }
  .services-evidence-panel .services-evidence-result {
    margin-top: 0;
    padding-top: 16px;
    padding-bottom: 0;
  }
}

/* Light photographic companion to the Services hero, scoped to evidence only. */
.services-evidence-panel {
  background-color: #f2f2f0;
  background-image:
    linear-gradient(90deg,rgba(242,242,240,.84) 0%,rgba(242,242,240,.74) 58%,rgba(242,242,240,.68) 100%),
    url("/assets/services-evidence-light-workroom.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.services-evidence-panel::before {
  display: none;
}
@media(max-width:800px) {
  .services-evidence-panel {
    background-image:
      linear-gradient(rgba(242,242,240,.84),rgba(242,242,240,.84)),
      url("/assets/services-evidence-light-workroom.jpg");
    background-position: right center;
    background-size: cover;
  }
}

html[dir="rtl"] .services-evidence-panel {
  background-image:
    linear-gradient(90deg,rgba(242,242,240,.68) 0%,rgba(242,242,240,.74) 42%,rgba(242,242,240,.84) 100%),
    url("/assets/services-evidence-light-workroom-rtl.jpg");
  background-position: center;
  background-size: cover;
}
html[dir="rtl"] .services-evidence-panel::before {
  display: none;
}
@media(max-width:800px) {
  html[dir="rtl"] .services-evidence-panel {
    background-image:
      linear-gradient(rgba(242,242,240,.84),rgba(242,242,240,.84)),
      url("/assets/services-evidence-light-workroom-rtl.jpg");
    background-position: right center;
    background-size: cover;
  }
}

/* Frameless evidence section: full-viewport photograph with standard content alignment. */
.services-evidence {
  background-color: #f2f2f0;
  background-image:
    linear-gradient(90deg,rgba(242,242,240,.84) 0%,rgba(242,242,240,.74) 58%,rgba(242,242,240,.68) 100%),
    url("/assets/services-evidence-light-workroom.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.services-evidence > .wrap {
  width: 100%;
}
.services-evidence .services-evidence-panel {
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: none !important;
  overflow: visible;
}
.services-evidence-panel .services-evidence-heading {
  text-align: left;
}
html[dir="rtl"] .services-evidence {
  background-image:
    linear-gradient(90deg,rgba(242,242,240,.68) 0%,rgba(242,242,240,.74) 42%,rgba(242,242,240,.84) 100%),
    url("/assets/services-evidence-light-workroom-rtl.jpg");
}
html[dir="rtl"] .services-evidence-panel .services-evidence-heading {
  text-align: right;
}
@media(max-width:800px) {
  .services-evidence {
    background-image:
      linear-gradient(rgba(242,242,240,.84),rgba(242,242,240,.84)),
      url("/assets/services-evidence-light-workroom.jpg");
    background-position: right center;
  }
  html[dir="rtl"] .services-evidence {
    background-image:
      linear-gradient(rgba(242,242,240,.84),rgba(242,242,240,.84)),
      url("/assets/services-evidence-light-workroom-rtl.jpg");
    background-position: right center;
  }
}

/* Match the shared Where to start eyebrow and heading rhythm. */
.services-evidence-panel .services-evidence-heading {
  margin-bottom: clamp(32px,5vh,54px);
}
.services-evidence-panel .services-evidence-heading .eyebrow {
  margin-bottom: 25px;
}
@media(max-width:800px) {
  .services-evidence-panel .services-evidence-heading {
    margin-bottom: 32px;
  }
  .services-evidence-panel .services-evidence-heading .eyebrow {
    margin-bottom: 25px;
  }
}

.quote blockquote.text-\[58px\].font-semibold {
  font-size: 58px;
  font-weight: 600;
}
.quote-heading-line {
  display: block;
  margin-top: .22em;
}
@media(min-width:801px) {
  .desktop-heading-break {
    display:block;
  }
}
#services-quote {
  background-color: #07100c !important;
  background-image:
    linear-gradient(90deg,rgba(5,12,9,.88) 0%,rgba(5,12,9,.68) 48%,rgba(5,12,9,.08) 100%),
    url("/assets/services-statement-office-painted-wide-v2.jpg") !important;
  background-position: center, center;
  background-size: cover, cover;
  background-repeat: no-repeat;
  color: #f2f4f1;
}
#services-quote .section-head {
  max-width: 1040px;
}
#services-quote .section-head .h2 {
  color: #f2f4f1;
  text-shadow: 0 2px 30px rgba(0,0,0,.42);
}
@media(max-width:800px) {
  .quote-heading-line {
    margin-top: 50px;
  }
  #services-quote {
    background-color: #07100c !important;
    background-image:
      linear-gradient(180deg,rgba(5,12,9,.82),rgba(5,12,9,.68)),
      url("/assets/services-statement-office-painted-wide-v2.jpg") !important;
    background-position: center, 58% center;
    background-size: cover, cover;
  }
}

/* Quiet legal-page photographs beneath the existing hero veil and streak. */
.legal-hero.hero-terms,
.legal-hero.hero-privacy {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background-color:#070908;
  background-image:none !important;
}
.legal-hero.hero-terms::before,
.legal-hero.hero-privacy::before {
  content:"";
  position:absolute;
  inset:0;
  width:100%;
  min-width:100%;
  z-index:0;
  pointer-events:none;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center;
  filter:brightness(1.18);
  -webkit-mask-image:none;
  mask-image:none;
}
.legal-hero.hero-terms::before,
.legal-hero.hero-privacy::before {
  background-image:url("/assets/terms-repeating-colonnade-wide.jpg?v=standardized-20260919-421");
  background-position:56% center;
}
.legal-hero.hero-terms h1,
.legal-hero.hero-privacy h1 {
  min-height:0 !important;
  margin-bottom:26px;
}
.legal-hero.hero-terms > .wrap,
.legal-hero.hero-privacy > .wrap {
  position:relative;
  z-index:3;
}
@media(max-width:800px) {
  .legal-hero.hero-terms::before,
  .legal-hero.hero-privacy::before {
    width:100%;
    min-width:100%;
    opacity:1;
    -webkit-mask-image:none;
    mask-image:none;
  }
}
@media(max-width:800px) {
  .quote blockquote.text-\[58px\].font-semibold {
    font-size: clamp(34px,10vw,48px);
  }
}
/* Unified Hero Architecture Backgrounds */
.hero[data-tubes-hero],
.hero-what-we-do,
.hero-services,
.hero-contact,
.hero-solutions {
    background-color: #070908;
    background-image: none !important;
}
.hero-what-we-do,
.hero-services,
.hero-contact,
.hero-solutions {
    min-height: min(880px, 100svh);
}

.hero[data-tubes-hero]::before,
.hero-what-we-do::before,
.hero-services::before,
.hero-contact::before,
.hero-solutions::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    min-width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
    -webkit-mask-image: none;
    mask-image: none;
    pointer-events: none;
}
.hero-what-we-do::before,
.hero-services::before,
.hero-contact::before,
.hero-solutions::before {
    filter: brightness(1.24) contrast(1.03);
}

.hero[data-tubes-hero]::before {
    background-image: url("/assets/home-hero-architecture.jpg?v=standardized-20260919-421");
    left: 0;
    width: 100%;
    min-width: 100%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.3) 18%, #000 46%, #000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.3) 18%, #000 46%, #000 100%);
}
.hero-what-we-do::before {
    background-image: url("/assets/what-we-do-layered-glass-wide.jpg?v=standardized-20260919-421");
}
.hero-services::before {
    background-image: url("/assets/services-evening-work-room-wide.jpg?v=standardized-20260919-421");
}
.hero-contact::before {
    background-image: url("/assets/contact-hero-architecture-tight.jpg?v=standardized-20260919-421");
}
.hero-solutions::before {
    background-image: url("/assets/solutions-warm-human-interior-wide.jpg?v=standardized-20260919-421");
}
@media(min-width:801px) {
    .hero-what-we-do::before,
    .hero-services::before,
    .hero-contact::before,
    .hero-solutions::before {
        background-size: cover;
        background-position: right center;
    }
}
html[lang="ar"][dir="rtl"] .hero[data-tubes-hero]::before {
    -webkit-mask-image: linear-gradient(270deg, transparent 0%, rgba(0,0,0,.3) 18%, #000 46%, #000 100%);
    mask-image: linear-gradient(270deg, transparent 0%, rgba(0,0,0,.3) 18%, #000 46%, #000 100%);
}

/* English leads and body copy use IBM Plex Sans; display and interface text retain Inter. */
html[lang="en"] body :is(p, li, dd, blockquote, .details) {
    font-family:"IBM Plex Sans",system-ui,sans-serif;
}

/* All content cards use square edges at every breakpoint. */
:is(
    .panel,
    .panel-tall,
    .list-card,
    .step,
    .contact-box,
    .footer-card,
    .engage-card,
    .service-card,
    .services-evidence-card,
    .services-evidence-panel,
    .product-feature,
    .wain-audience-block,
    .wain-artifact-card,
    .legal-details,
    .studio-form-container,
    .solutions-diners-cards article,
    .solutions-diners-summary,
    .solutions-diners-concierge,
    .solutions-next-step
) {
    border-radius:0 !important;
}

.hero-contact h1 {
    min-height: 0 !important;
    margin-bottom: 26px;
}
.services-en-hero-line {
    display: block !important;
}
.services-en-lead-line {
    display: block;
}
@media(min-width:801px) {
    html[lang="en"] .hero-services .lead {
        width: max-content;
        max-width: none;
    }
    html[lang="en"] .services-en-lead-line {
        white-space: nowrap;
    }
}

/* Two equal columns: product story on the left, diner interface on the right. */
.solutions-diners-intro {
    display:block;
    margin-bottom:22px;
}
.solutions-diners-kicker {
    margin-bottom:0;
}
.solutions-diners .solutions-diners-body {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(38px,5vw,72px);
    align-items:start;
}
.solutions-diners-left {
    min-width:0;
}
.solutions-diners-left .h2 {
    max-width:660px;
    margin:0;
    color:#f2f5f3;
    font-size:clamp(40px,4.5vw,64px);
    line-height:.98;
    letter-spacing:-.055em;
}
.solutions-diners-left .solutions-diners-planning {
    margin-top:clamp(26px,4vh,42px);
}
.solutions-diners .solutions-diners-planning h3 {
    max-width:600px;
    margin:0 0 13px;
    color:#63e6ad;
    font-size:clamp(18px,1.7vw,25px);
    line-height:1.18;
    letter-spacing:-.035em;
}
.solutions-diners-left .solutions-diners-planning > p {
    max-width:590px;
}
.solutions-diners-needs {
    grid-column:2;
}
@media(min-width:801px) and (max-height:800px) {
    .solutions-diners-intro {
        margin-bottom:16px;
    }
    .solutions-diners-left .h2 {
        font-size:clamp(36px,3.7vw,48px);
    }
    .solutions-diners-left .solutions-diners-planning {
        margin-top:20px;
    }
    .solutions-diners .solutions-diners-planning h3 {
        margin-bottom:9px;
        font-size:18px;
        line-height:1.15;
    }
}
@media(max-width:800px) {
    .solutions-diners-intro {
        margin-bottom:30px;
    }
    .solutions-diners .solutions-diners-body {
        display:block;
    }
    .solutions-diners-left .h2 {
        font-size:clamp(34px,10vw,44px);
    }
    .solutions-diners-left .solutions-diners-planning {
        margin-top:30px;
    }
    .solutions-diners .solutions-diners-planning h3 {
        font-size:21px;
    }
}
@media(max-width:800px) {
    .services-en-lead-line {
        display: inline;
    }
    .services-en-lead-line:not(:last-child)::after {
        content: " ";
    }
}
@media(min-width:801px) {
    html[lang="ar"][dir="rtl"] .hero-contact h1 {
        width: max-content;
        max-width: none;
        margin-bottom: 12px;
        white-space: nowrap;
    }
    html[lang="ar"][dir="rtl"] .hero-contact .lead {
        width: 100%;
        max-width: 850px !important;
        margin-left: 0;
        margin-right: auto;
    }
}
.hero[data-tubes-hero] .hero-veil,
.hero-what-we-do .hero-veil,
.hero-services .hero-veil,
.hero-contact .hero-veil,
.hero-solutions .hero-veil {
    background: linear-gradient(90deg, rgba(7,9,8,.72) 0%, rgba(7,9,8,.38) 52%, rgba(7,9,8,.08) 100%),
                linear-gradient(180deg, rgba(7,9,8,.03), rgba(7,9,8,.28) 96%);
}
.hero-what-we-do .hero-veil,
.hero-services .hero-veil,
.hero-contact .hero-veil,
.hero-solutions .hero-veil {
    background: linear-gradient(90deg, rgba(7,9,8,.42) 0%, rgba(7,9,8,.24) 52%, rgba(7,9,8,.06) 100%),
                linear-gradient(180deg, rgba(7,9,8,.02), rgba(7,9,8,.16) 96%) !important;
}
.hero[data-tubes-hero] .hero-veil {
    display: block;
    background: linear-gradient(90deg, rgba(7,9,8,.42) 0%, rgba(7,9,8,.24) 52%, rgba(7,9,8,.06) 100%),
                linear-gradient(180deg, rgba(7,9,8,.02), rgba(7,9,8,.16) 96%) !important;
}

@media(max-width:800px) {
    .hero-what-we-do,
    .hero-services,
    .hero-contact,
    .hero-solutions {
        min-height: 100svh;
    }
    .hero[data-tubes-hero]::before,
    .hero-what-we-do::before,
    .hero-services::before,
    .hero-contact::before,
    .hero-solutions::before {
        width: 100%;
        min-width: 100%;
        -webkit-mask-image: none;
        mask-image: none;
        opacity: 1;
        background-position: center;
    }
    .hero[data-tubes-hero] .hero-veil,
    .hero-what-we-do .hero-veil,
    .hero-services .hero-veil,
    .hero-contact .hero-veil,
    .hero-solutions .hero-veil {
        background: rgba(7,9,8,.3);
    }
    .hero[data-tubes-hero]::before {
        opacity: 1;
        -webkit-mask-image: none;
        mask-image: none;
    }
    .hero[data-tubes-hero] .hero-veil {
        background: rgba(7,9,8,.3) !important;
    }
}

/* Solutions sector pattern flow */
.solutions-sector-flow {
    background:
      linear-gradient(90deg,rgba(7,9,8,.93),rgba(7,9,8,.64) 58%,rgba(7,9,8,.46)),
      linear-gradient(180deg,rgba(7,9,8,.34),rgba(7,9,8,.74)),
      url("/assets/solutions-sector-horizontal-bands-wide.jpg") center / cover no-repeat !important;
    color: var(--ink);
}
.solutions-sector-flow .engagement-heading {
    width: min(100% - (var(--pad) * 2),var(--max));
}
@media(min-width:801px) {
    .solutions-sector-flow {
        gap: 48px;
    }
    html[lang="en"] .solutions-sector-flow .engagement-heading .h2 {
        width: max-content;
        max-width: none;
        white-space: nowrap;
    }
}
.solutions-sector-flow .engage-card {
    width: clamp(390px,38vw,550px);
    min-height: 300px;
}
.solutions-sector-flow .engage-number {
    font-weight: 700;
}
@media(max-width:800px) {
    .solutions-sector-flow {
        background:
          linear-gradient(180deg,rgba(7,9,8,.76),rgba(7,9,8,.84)),
          url("/assets/solutions-sector-horizontal-bands-wide.jpg") 54% center / cover no-repeat !important;
    }
    .solutions-sector-flow .engage-card {
        width: 84vw;
        min-height: 310px;
    }
}

/* Solutions handwritten note */
@font-face {
    font-family: "Caveat Local";
    src: url("/assets/caveat-latin.ttf") format("truetype");
    font-style: normal;
    font-weight: 500 600;
    font-display: swap;
}
.handwritten-note-section {
    background:
      radial-gradient(circle at 18% 22%,rgba(35,45,39,.055) 0 1px,transparent 1.5px),
      radial-gradient(circle at 74% 68%,rgba(35,45,39,.045) 0 1px,transparent 1.5px),
      linear-gradient(145deg,#f2f0e8 0%,#e8e7df 100%) !important;
    background-size: 23px 23px,31px 31px,cover !important;
    color: #172019;
}
.handwritten-note-section .wrap {
    display: grid;
    place-items: center;
}
.scribbled-note {
    width: min(1040px,100%);
    position: relative;
    padding: clamp(42px,7vw,90px);
    border: 1px solid rgba(26,39,30,.16);
    background: rgba(255,254,248,.7);
    box-shadow: 0 30px 90px rgba(20,27,23,.11);
    transform: rotate(-.35deg);
}
.scribbled-kicker {
    margin: 0 0 30px;
    color: #1c7651 !important;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.scribbled-note h2 {
    max-width: 920px;
    margin: 0 0 38px;
    color: #161d19 !important;
    font-size: clamp(40px,5.5vw,76px);
    line-height: .98;
    letter-spacing: -.065em;
}
.scribbled-body {
    max-width: 900px;
    margin: 0;
    color: #26362d !important;
    font-family: "Caveat Local","Segoe Print","Bradley Hand",cursive;
    font-size: clamp(23px,2.1vw,31px);
    font-weight: 500;
    line-height: 1.62;
    letter-spacing: -.025em;
}
.scribbled-mark {
    display: block;
    width: min(310px,52%);
    height: 13px;
    margin: 26px 0 0 auto;
    border-top: 3px solid rgba(28,118,81,.72);
    border-radius: 50%;
    transform: rotate(-2deg);
}
.scribbled-mark::after {
    content: "";
    display: block;
    width: 67%;
    margin: 5px 0 0 18%;
    border-top: 2px solid rgba(28,118,81,.44);
    transform: rotate(1deg);
}
html[lang="ar"][dir="rtl"] .handwritten-note-section {
    overflow:hidden;
}
html[lang="ar"][dir="rtl"] .scribbled-note {
    box-sizing:border-box;
    max-width:100%;
    padding:clamp(38px,5vw,68px) clamp(34px,6vw,82px);
}
html[lang="ar"][dir="rtl"] .scribbled-kicker {
    margin-bottom:20px;
    letter-spacing:0;
    text-transform:none;
}
html[lang="ar"][dir="rtl"] .scribbled-note h2 {
    width:100%;
    max-width:100%;
    margin-bottom:26px;
    padding-bottom:.08em;
    font-size:clamp(38px,4.5vw,62px);
    line-height:1.17;
    letter-spacing:-.025em;
    overflow-wrap:break-word;
}
html[lang="ar"][dir="rtl"] .scribbled-body {
    width:100%;
    max-width:900px;
    font-family:"IBM Plex Sans Arabic","Noto Sans Arabic",Tahoma,Arial,sans-serif;
    font-size:clamp(18px,1.55vw,24px);
    font-weight:450;
    line-height:1.7;
    letter-spacing:0;
}
html[lang="ar"][dir="rtl"] .scribbled-mark {
    margin-top:18px;
    margin-right:auto;
    margin-left:0;
}
@media(min-width:801px) and (min-height:801px) {
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .scribbled-note {
        padding:72px 88px 86px;
        transform:translateY(-48px) rotate(-.35deg);
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .scribbled-kicker {
        margin-bottom:32px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .scribbled-note h2 {
        margin-bottom:42px;
        font-size:clamp(42px,4.8vw,70px);
        line-height:1.08;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .scribbled-body {
        line-height:1.68;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .scribbled-mark {
        margin-top:30px;
    }
}
@media(max-width:800px) {
    .scribbled-note {
        padding: 34px 25px;
        transform: rotate(-.15deg);
    }
    .scribbled-kicker {
        margin-bottom: 22px;
        font-size: 10px;
    }
    .scribbled-note h2 {
        margin-bottom: 26px;
        font-size: clamp(35px,10.5vw,50px);
    }
    .scribbled-body {
        font-size: clamp(16px,4.5vw,20px);
        line-height: 1.55;
    }
    html[lang="ar"][dir="rtl"] .scribbled-note {
        padding:30px 22px;
    }
    html[lang="ar"][dir="rtl"] .scribbled-kicker {
        margin-bottom:16px;
    }
    html[lang="ar"][dir="rtl"] .scribbled-note h2 {
        margin-bottom:20px;
        padding-bottom:.1em;
        font-size:clamp(32px,9vw,44px);
        line-height:1.2;
    }
    html[lang="ar"][dir="rtl"] .scribbled-body {
        font-size:clamp(16px,4.4vw,19px);
        line-height:1.65;
    }
}

.hero[data-tubes-hero] .hero-tubes,
.hero-what-we-do .hero-tubes,
.hero-services .hero-tubes,
.hero-contact .hero-tubes,
.hero-solutions .hero-tubes {
    z-index: 2;
    mix-blend-mode: screen;
}

.hero[data-tubes-hero].tubes-ready .hero-tubes,
.hero-what-we-do.tubes-ready .hero-tubes,
.hero-services.tubes-ready .hero-tubes,
.hero-contact.tubes-ready .hero-tubes,
.hero-solutions.tubes-ready .hero-tubes {
    opacity: .58;
}

/* Language parity: Arabic changes layout only, never hero imagery or streak intensity. */
@media(min-width:801px) {
    html[lang="ar"][dir="rtl"] .page-hero > .wrap > *,
    html[lang="ar"][dir="rtl"] .hero-what-we-do > .wrap > div {
        width: 100%;
        max-width: 850px;
        margin-left: 0;
        margin-right: auto;
    }
    html[lang="ar"][dir="rtl"] .hero-what-we-do h1 {
        min-height: 0;
        margin-bottom: 12px;
    }
    html[lang="ar"][dir="rtl"] .hero-what-we-do .approach-hero-line {
        display: block;
        white-space: nowrap;
    }
    html[lang="ar"][dir="rtl"] .hero-services h1 {
        margin-bottom: 12px;
    }
    html[lang="ar"][dir="rtl"] .hero-services .services-hero-line {
        display: block;
        white-space: nowrap;
    }
}
html[lang="ar"][dir="rtl"] .hero[data-tubes-hero] .hero-veil,
html[lang="ar"][dir="rtl"] .hero-what-we-do .hero-veil,
html[lang="ar"][dir="rtl"] .hero-services .hero-veil,
html[lang="ar"][dir="rtl"] .hero-contact .hero-veil,
html[lang="ar"][dir="rtl"] .hero-solutions .hero-veil {
    background: linear-gradient(90deg, rgba(7,9,8,.72) 0%, rgba(7,9,8,.38) 52%, rgba(7,9,8,.08) 100%),
                linear-gradient(180deg, rgba(7,9,8,.03), rgba(7,9,8,.28) 96%);
}
html[lang="ar"][dir="rtl"] .hero[data-tubes-hero].tubes-ready .hero-tubes,
html[lang="ar"][dir="rtl"] .hero-what-we-do.tubes-ready .hero-tubes,
html[lang="ar"][dir="rtl"] .hero-services.tubes-ready .hero-tubes,
html[lang="ar"][dir="rtl"] .hero-contact.tubes-ready .hero-tubes,
html[lang="ar"][dir="rtl"] .hero-solutions.tubes-ready .hero-tubes {
    opacity: .58;
}

/* Solutions product venture background */
.wain-product-section {
    background-color: #090d0b !important;
    background-image:
      linear-gradient(90deg,rgba(7,9,8,.92) 0%,rgba(7,9,8,.72) 48%,rgba(7,9,8,.38) 100%),
      linear-gradient(180deg,rgba(7,9,8,.12),rgba(7,9,8,.5)),
      url("/assets/wain-dining-background-full.jpg") !important;
    background-position: center;
    background-size: cover, cover, cover;
    background-repeat: no-repeat;
    color: #f2f5f3;
}
.page-card-stack .wain-product-section .product-feature {
    background: transparent !important;
    background-image: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none;
}
@media(min-width:801px) {
    .page-card-stack .wain-product-section .product-feature {
        transform: translateY(-32px);
    }
}
.wain-product-section .wain-feature-open > div {
    max-width:1100px;
}
.wain-product-meta {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    width:100%;
    margin:0 0 20px;
}
.wain-product-meta .eyebrow,
.wain-product-meta .status {
    margin:0;
}
.wain-product-meta .status {
    padding:7px 12px;
    background:rgba(7,9,8,.58);
    white-space:nowrap;
}
.wain-product-section .product-feature .wain-name-story {
    max-width: 760px;
    margin: -4px 0 22px;
    color: #63e6ad !important;
    font-size: clamp(17px,1.55vw,22px);
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -.02em;
    text-wrap: balance;
}
.wain-name-story bdi {
    display: inline-block;
    font-family: Tahoma, Arial, sans-serif;
    font-weight: 700;
    letter-spacing: 0;
}
.wain-product-section .product-feature .wain-detail {
    max-width: 900px;
    margin: 0 0 14px;
    font-size: clamp(15px,1.2vw,17px);
    line-height: 1.55;
}
.wain-product-section .product-feature .wain-detail strong {
    color: #f2f5f3 !important;
    font-weight: 700;
}
.wain-audience-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin-top: 22px;
}
.wain-audience-block {
    padding: 20px 22px;
    border: 1px solid rgba(99,230,173,.3);
    border-radius: 18px;
    background: rgba(7,9,8,.52);
    backdrop-filter: blur(7px);
}
.wain-audience-block h3 {
    margin: 0 0 10px;
    color: #63e6ad !important;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.wain-audience-block p {
    margin: 0;
    color: #d4dcd7 !important;
    font-size: clamp(13px,1vw,15px);
    line-height: 1.5;
}
.wain-artifact-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:14px;
}
.wain-artifact-card {
    min-width:0;
    padding:16px;
    border:1px solid rgba(233,238,234,.16);
    border-radius:18px;
    background:rgba(7,9,8,.8);
    box-shadow:0 16px 38px rgba(0,0,0,.2);
    backdrop-filter:blur(10px);
}
.wain-artifact-eyebrow {
    margin:0 0 10px !important;
    color:#48e0a2 !important;
    font-size:10px !important;
    font-weight:800;
    line-height:1;
    letter-spacing:.15em;
    text-transform:uppercase;
}
.wain-device-frame {
    padding:13px;
    border:1px solid rgba(72,224,162,.28);
    border-radius:13px;
    background:#0b100e;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
.wain-interface-header {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
    padding-bottom:11px;
    border-bottom:1px solid rgba(233,238,234,.11);
}
.wain-avatar {
    position:relative;
    flex:0 0 56px;
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    border:1px solid rgba(72,224,162,.5);
    border-radius:50%;
    background:#111915;
    overflow:hidden;
}
.wain-avatar img {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.wain-interface-title {
    display:block;
    min-width:0;
}
.wain-interface-title strong,
.wain-interface-title small {
    display:block;
}
.wain-interface-title strong {
    color:#f2f5f3;
    font-size:15px;
    font-weight:650;
    line-height:1.2;
}
.wain-interface-title small {
    margin-top:4px;
    color:#8e9992;
    font-size:11px;
    line-height:1.35;
}
.wain-prompt-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin-top:11px;
}
.wain-prompt-list span {
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:5px 9px;
    border:1px solid rgba(72,224,162,.2);
    border-radius:999px;
    background:rgba(72,224,162,.055);
    color:#cbd5cf;
    font-size:10px;
    font-weight:550;
    line-height:1.25;
}
.wain-artifact-caption {
    margin:10px 1px 0 !important;
    color:#89938d !important;
    font-size:11px !important;
    line-height:1.4;
}
@media(max-height:800px) and (min-width:801px) {
    .wain-product-section .product-feature {
        padding-top: 22px;
        padding-bottom: 22px;
    }
    .wain-product-meta {
        margin-bottom:8px;
    }
    .wain-product-meta .status {
        padding:5px 10px;
        font-size:9px;
    }
    .wain-product-section .product-feature h2 {
        max-width:1050px;
        margin-bottom:8px;
        font-size:clamp(38px,4vw,48px);
        line-height:.94;
    }
    .wain-product-section .product-feature .wain-name-story {
        margin:-1px 0 7px;
        font-size:14px;
        line-height:1.25;
    }
    .wain-product-section .product-feature .wain-detail {
        max-width:1080px;
        margin-bottom:5px;
        font-size:11.5px;
        line-height:1.32;
    }
    .wain-audience-grid {
        gap:10px;
        margin-top:8px;
    }
    .wain-audience-block {
        padding:9px 13px;
        border-radius:14px;
    }
    .wain-audience-block h3 {
        margin-bottom:5px;
        font-size:9px;
    }
    .wain-audience-block p {
        font-size:11px;
        line-height:1.28;
    }
    .wain-artifact-grid {
        gap:10px;
        margin-top:7px;
    }
    .wain-artifact-card {
        padding:8px 10px;
        border-radius:14px;
    }
    .wain-artifact-eyebrow {
        margin-bottom:5px !important;
        font-size:9px !important;
    }
    .wain-device-frame {
        padding:7px 9px;
    }
    .wain-interface-header {
        gap:9px;
        padding-bottom:6px;
    }
    .wain-avatar {
        flex-basis:42px;
        width:42px;
        height:42px;
    }
    .wain-interface-title strong {
        font-size:13px;
    }
    .wain-interface-title small,
    .wain-artifact-caption {
        font-size:9px !important;
    }
    .wain-prompt-list {
        gap:4px;
        margin-top:6px;
    }
    .wain-prompt-list span {
        min-height:20px;
        padding:3px 7px;
        font-size:9px;
    }
    .wain-artifact-caption {
        margin-top:5px !important;
    }
}
@media(min-width:801px) {
    html[lang="ar"][dir="rtl"] .page-card-stack .wain-product-section .product-feature {
        transform:translateY(-48px);
        padding-top:24px;
        padding-bottom:24px;
    }
    html[lang="ar"][dir="rtl"] .wain-product-section .product-feature h2 {
        max-width:1050px;
        margin-bottom:10px;
        font-size:clamp(42px,4.2vw,64px);
        line-height:1.02;
    }
    html[lang="ar"][dir="rtl"] .wain-product-meta {
        gap:10px;
        margin-bottom:8px;
    }
    html[lang="ar"][dir="rtl"] .wain-product-meta .status {
        padding:5px 10px;
    }
    html[lang="ar"][dir="rtl"] .wain-product-section .product-feature .wain-name-story {
        max-width:900px;
        margin:-2px 0 8px;
        font-size:clamp(15px,1.15vw,18px);
        line-height:1.3;
    }
    html[lang="ar"][dir="rtl"] .wain-product-section .product-feature .wain-detail {
        max-width:1100px;
        margin-bottom:6px;
        font-size:clamp(12px,.9vw,15px);
        line-height:1.35;
    }
    html[lang="ar"][dir="rtl"] .wain-audience-grid {
        gap:10px;
        margin-top:8px;
    }
    html[lang="ar"][dir="rtl"] .wain-audience-block {
        padding:11px 15px;
        border-radius:14px;
    }
    html[lang="ar"][dir="rtl"] .wain-audience-block h3 {
        margin-bottom:4px;
        font-size:10px;
    }
    html[lang="ar"][dir="rtl"] .wain-audience-block p {
        font-size:12px;
        line-height:1.35;
    }
    html[lang="ar"][dir="rtl"] .wain-artifact-grid {
        gap:10px;
        margin-top:8px;
    }
    html[lang="ar"][dir="rtl"] .wain-artifact-card {
        padding:10px 12px;
        border-radius:14px;
    }
    html[lang="ar"][dir="rtl"] .wain-artifact-eyebrow {
        margin-bottom:4px !important;
        font-size:9px !important;
    }
    html[lang="ar"][dir="rtl"] .wain-device-frame {
        padding:8px 10px;
    }
    html[lang="ar"][dir="rtl"] .wain-interface-header {
        gap:9px;
        padding-bottom:6px;
    }
    html[lang="ar"][dir="rtl"] .wain-avatar {
        flex-basis:44px;
        width:44px;
        height:44px;
    }
    html[lang="ar"][dir="rtl"] .wain-interface-title strong {
        font-size:13px;
    }
    html[lang="ar"][dir="rtl"] .wain-interface-title small {
        font-size:10px;
    }
    html[lang="ar"][dir="rtl"] .wain-prompt-list {
        gap:5px;
        margin-top:6px;
    }
    html[lang="ar"][dir="rtl"] .wain-prompt-list span {
        min-height:22px;
        padding:3px 8px;
        font-size:9px;
    }
    html[lang="ar"][dir="rtl"] .wain-artifact-caption {
        margin-top:5px !important;
        font-size:9.5px !important;
        line-height:1.3;
    }
}
@media(min-width:801px) and (min-height:801px) {
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .page-card-stack .wain-product-section .product-feature {
        transform:translateY(-24px);
        padding-top:34px;
        padding-bottom:34px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-product-section .product-feature h2 {
        max-width:1100px;
        margin-bottom:14px;
        font-size:clamp(50px,4.35vw,68px);
        line-height:1;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-product-meta {
        gap:12px;
        margin-bottom:12px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-product-meta .status {
        padding:6px 11px;
        font-size:10px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-product-section .product-feature .wain-name-story {
        max-width:900px;
        margin:-2px 0 12px;
        font-size:clamp(17px,1.25vw,20px);
        line-height:1.38;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-product-section .product-feature .wain-detail {
        max-width:1100px;
        margin-bottom:8px;
        font-size:clamp(14px,1vw,16px);
        line-height:1.45;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-audience-grid {
        gap:12px;
        margin-top:12px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-audience-block {
        padding:14px 18px;
        border-radius:16px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-audience-block h3 {
        margin-bottom:6px;
        font-size:10px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-audience-block p {
        font-size:13px;
        line-height:1.42;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-artifact-grid {
        gap:12px;
        margin-top:10px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-artifact-card {
        padding:12px 14px;
        border-radius:16px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-artifact-eyebrow {
        margin-bottom:6px !important;
        font-size:9.5px !important;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-device-frame {
        padding:10px 12px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-interface-header {
        gap:10px;
        padding-bottom:8px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-avatar {
        flex-basis:48px;
        width:48px;
        height:48px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-interface-title strong {
        font-size:14px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-interface-title small {
        font-size:10.5px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-prompt-list {
        gap:6px;
        margin-top:8px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-prompt-list span {
        min-height:24px;
        padding:4px 9px;
        font-size:9.5px;
    }
    :is(html[lang="en"],html[lang="ar"][dir="rtl"]) .wain-artifact-caption {
        margin-top:7px !important;
        font-size:10px !important;
        line-height:1.35;
    }
}
.wain-product-section .product-mark {
    background: rgba(7,9,8,.42);
    border-color: rgba(72,224,162,.28);
    backdrop-filter: blur(8px);
}
.mobile-wain-secondary {
    display:none;
}
.phone-only-copy,
.secondary-phone-only-copy {
    display:none;
}
.wain-mobile-deck {
    display:none;
}
.portrait-phone-concierge-copy {
    display:none;
}
@media(max-width:800px) {
    .mobile-wain-secondary {
        display:block;
    }
    .mobile-wain-primary .wain-audience-block:nth-child(2),
    .mobile-wain-primary .wain-artifact-card:nth-child(2),
    .mobile-wain-secondary .wain-audience-block:nth-child(1),
    .mobile-wain-secondary .wain-artifact-card:nth-child(1) {
        display:none;
    }
    .wain-product-section {
        background-image:
          linear-gradient(180deg,rgba(7,9,8,.75),rgba(7,9,8,.88)),
          url("/assets/wain-dining-background-full.jpg") !important;
        background-position: 58% center;
        background-size: cover, cover;
    }
    .page-card-stack .wain-product-section {
        padding-top: 68px !important;
        padding-bottom: 10px !important;
    }
    .page-card-stack .wain-product-section .product-feature {
        padding: 8px 0 !important;
    }
    .wain-product-section .product-feature h2 {
        margin-bottom: 10px;
        font-size: clamp(30px,8.4vw,36px) !important;
        line-height: 1.04;
    }
    .wain-product-section .product-feature .wain-name-story {
        margin: -2px 0 10px;
        font-size: clamp(14px,4vw,16px);
        line-height: 1.38;
    }
    .wain-product-meta {
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
        margin-bottom:14px;
    }
    .wain-product-section .product-feature .wain-detail {
        display: none;
    }
    .wain-audience-grid {
        grid-template-columns: 1fr;
        gap: 9px;
        margin-top: 6px;
    }
    .wain-audience-block {
        padding: 15px 16px;
        border-radius: 14px;
    }
    .wain-audience-block p {
        font-size: 13px;
        line-height: 1.45;
    }
    .wain-artifact-grid {
        grid-template-columns:1fr;
        gap:9px;
        margin-top:6px;
    }
    .wain-artifact-card {
        padding:13px;
        border-radius:14px;
    }
    .wain-device-frame {
        padding:11px;
    }
    .wain-prompt-list span {
        font-size:9px;
    }
    .wain-prompt-list {
        grid-template-columns:1fr;
    }
}
@media(max-width:600px) {
    .mobile-wain-secondary {
        display:none !important;
    }
    .mobile-wain-primary .wain-audience-grid,
    .mobile-wain-primary .wain-artifact-grid {
        display:none !important;
    }
    .mobile-wain-primary .wain-mobile-deck {
        display:block;
        margin-top:8px;
    }
    .wain-mobile-slides {
        display:grid;
        touch-action:pan-y;
    }
    .wain-mobile-slide {
        grid-area:1 / 1;
        display:block;
        min-width:0;
        padding:13px;
        border:1px solid rgba(72,224,162,.3);
        border-radius:18px;
        background:rgba(7,9,8,.76);
        box-shadow:0 16px 38px rgba(0,0,0,.22);
        backdrop-filter:blur(10px);
        visibility:hidden;
        pointer-events:none;
    }
    .wain-mobile-slide.deck-active {
        visibility:visible;
        pointer-events:auto;
    }
    .wain-mobile-slide:not(.deck-active) {
        display:none;
    }
    .wain-mobile-slide.deck-active.deck-entering {
        animation:serviceDeckEnter .28s ease both;
    }
    html[dir="rtl"] .wain-mobile-slide.deck-active.deck-entering {
        animation-name:serviceDeckEnterRtl;
    }
    .wain-mobile-slide .wain-audience-block,
    .wain-mobile-slide .wain-artifact-card {
        display:block !important;
        min-height:0 !important;
        padding:0 !important;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
        backdrop-filter:none;
    }
    .wain-mobile-slide .wain-audience-block {
        margin-bottom:11px;
    }
    .wain-mobile-slide .wain-audience-block h3 {
        display:block !important;
        margin-bottom:6px;
    }
    .wain-mobile-slide .wain-audience-block p {
        margin:0;
    }
    .wain-mobile-slide .wain-artifact-eyebrow {
        padding-top:11px;
        border-top:1px solid rgba(233,238,234,.12);
    }
    .wain-mobile-slide:nth-child(2) .secondary-phone-only-copy {
        display:inline;
    }
    .wain-mobile-slide:nth-child(2) .wain-interface-title strong .secondary-phone-only-copy,
    .wain-mobile-slide:nth-child(2) .wain-interface-title small .secondary-phone-only-copy {
        display:block;
    }
    .wain-mobile-slide:nth-child(2) .wain-artifact-caption {
        display:none;
    }
    .wain-mobile-deck .service-deck-controls {
        margin-top:15px;
    }
    @media(prefers-reduced-motion:reduce) {
        .wain-mobile-slide.deck-active.deck-entering {
            animation:none;
        }
    }
    .mobile-wain-primary .desktop-copy,
    .mobile-wain-primary .phone-hidden-copy,
    .mobile-wain-primary .wain-audience-block:first-child h3 {
        display:none;
    }
    .mobile-wain-primary .phone-only-copy {
        display:inline;
    }
    .mobile-wain-primary .product-feature h2 .phone-only-copy {
        display:block;
    }
    .mobile-wain-primary .wain-audience-block:first-child {
        display:flex;
        align-items:center;
        min-height:96px;
        padding:17px 16px;
    }
    .mobile-wain-primary .wain-audience-block:first-child p {
        margin:0;
    }
    .mobile-wain-primary .wain-interface-title small .phone-only-copy {
        display:block;
    }
    .mobile-wain-secondary .desktop-copy,
    .mobile-wain-secondary .secondary-phone-hidden-copy,
    .mobile-wain-secondary .wain-audience-block:nth-child(2) h3 {
        display:none;
    }
    .mobile-wain-secondary .secondary-phone-only-copy {
        display:inline;
    }
    .mobile-wain-secondary .product-feature h2 .secondary-phone-only-copy,
    .mobile-wain-secondary .wain-name-story .secondary-phone-only-copy,
    .mobile-wain-secondary .wain-interface-title small .secondary-phone-only-copy {
        display:block;
    }
    .mobile-wain-secondary .wain-audience-block:nth-child(2) {
        display:flex;
        align-items:center;
        min-height:96px;
        padding:17px 16px;
    }
    .mobile-wain-secondary .wain-audience-block:nth-child(2) p {
        margin:0;
    }
}
@media(max-width:600px) and (orientation:portrait) {
    .compact-landscape-copy {
        display:none;
    }
    .portrait-phone-concierge-copy {
        display:inline;
    }
    .site-header .nav {
        width:min(248px,calc(100vw - 48px));
        left:auto;
        right:var(--pad);
        gap:2px;
        padding:7px;
        border-radius:18px;
    }
    html[dir="rtl"] .site-header .nav {
        right:auto;
        left:var(--pad);
    }
    .site-header .nav > a,
    .site-header .nav-group > a,
    .site-header .language-current {
        min-height:40px;
        padding:9px 13px;
    }
    .site-header .nav-dropdown {
        margin-top:1px;
        padding:4px;
    }
    .site-header .nav-dropdown a,
    .site-header .language-dropdown button {
        min-height:38px;
        padding:8px 11px;
    }
}

/* Home quote: retain the desktop image treatment on mobile. */
@media(max-width:600px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll .quote-image-section {
        background-color:#07100c;
        background-image:
            linear-gradient(90deg,rgba(5,12,9,.88) 0%,rgba(5,12,9,.68) 48%,rgba(5,12,9,.08) 100%),
            url("/assets/quote-office-painted-complete.jpg");
        background-position:center,center 44%;
        background-size:cover,cover;
        background-repeat:no-repeat;
        color:var(--ink);
        box-shadow:none;
    }
    body.home-page.mobile-natural-scroll .quote-image-section .quote {
        padding:0;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
    }
    body.home-page.mobile-natural-scroll .quote-image-section .quote blockquote {
        color:#171b19;
        text-shadow:none;
    }
    body.home-page.mobile-natural-scroll .quote-image-section .quote .h2 {
        color:#f2f4f1;
        text-shadow:0 2px 30px rgba(0,0,0,.42);
    }
    html[dir="rtl"] body.home-page.mobile-natural-scroll
        .quote-image-section .quote {
        border:0;
        padding:0;
    }
}

/* Keep both Home carousel rows exactly the same size on SE-class short screens. */
@media(max-width:600px) and (max-height:700px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll
        :is(.home-capabilities-grid .editorial-card,.process-photo-grid .step) {
        flex:0 0 min(82vw,360px);
        width:min(82vw,360px);
        height:clamp(300px,46vh,320px);
        min-height:clamp(300px,46vh,320px);
    }
}

/* On SE-sized portrait phones, make the second Home row match the first exactly. */
@media(max-width:600px) and (max-height:700px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll .process-photo-grid .step,
    body.home-page.mobile-natural-scroll .process-photo-grid .step:nth-child(2) {
        min-height:230px;
        padding:18px;
        border:1px solid transparent;
        border-radius:26px;
        background:#101713;
        color:#f2f5f3;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step:nth-child(even) {
        background:#142019;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step-num {
        margin:0 !important;
        color:#63e6ad;
        font-size:12px;
        line-height:1;
        letter-spacing:.08em;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step h3 {
        min-height:2.16em;
        margin:20px 0 7px;
        color:#f2f5f3;
        font-size:clamp(21px,6.2vw,23px);
        line-height:1.08;
        text-wrap:balance;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step p {
        flex:0;
        max-width:28ch;
        margin:0;
        color:#aeb9b3;
        font-size:12px;
        line-height:1.35;
    }
}
@media(max-width:600px) and (max-height:700px) {
    .page-card-stack .wain-product-section {
        padding-top:78px !important;
        padding-bottom:12px !important;
    }
    .wain-product-section .product-feature h2 {
        margin-bottom:6px;
        font-size:clamp(27px,7.6vw,31px) !important;
        line-height:1.01;
    }
    .wain-product-section .product-feature .wain-name-story {
        margin:-1px 0 6px;
        font-size:12.5px;
        line-height:1.28;
    }
    .wain-product-meta {
        gap:4px;
        margin-bottom:6px;
    }
    .wain-product-meta .status {
        padding:4px 9px;
        font-size:9px;
    }
    .wain-audience-grid,
    .wain-artifact-grid {
        gap:6px;
        margin-top:4px;
    }
    .mobile-wain-primary .wain-audience-block:first-child,
    .mobile-wain-secondary .wain-audience-block:nth-child(2) {
        min-height:76px;
        padding:11px 14px;
    }
    .wain-audience-block p {
        font-size:11.5px;
        line-height:1.35;
    }
    .wain-artifact-card {
        padding:8px;
    }
    .wain-artifact-eyebrow {
        margin-bottom:7px !important;
        font-size:9px !important;
    }
    .wain-device-frame {
        padding:8px;
    }
    .wain-interface-header {
        gap:8px;
        padding-bottom:7px;
    }
    .wain-avatar {
        flex-basis:46px;
        width:46px;
        height:46px;
    }
    .wain-interface-title strong {
        font-size:13px;
    }
    .wain-interface-title small {
        margin-top:2px;
        font-size:9.5px;
        line-height:1.25;
    }
    .wain-prompt-list {
        gap:4px;
        margin-top:7px;
    }
    .wain-prompt-list span {
        min-height:23px;
        padding:4px 8px;
        font-size:8.5px;
    }
    .wain-mobile-primary .wain-mobile-deck,
    .mobile-wain-primary .wain-mobile-deck {
        margin-top:5px;
    }
    .wain-mobile-slide {
        padding:10px;
    }
    .wain-mobile-slide .wain-audience-block {
        margin-bottom:8px;
    }
    .wain-mobile-slide .wain-artifact-eyebrow {
        padding-top:8px;
    }
    .solutions-diners-concierge-copy > p {
        font-size:11.5px;
        line-height:1.3;
    }
    .solutions-diners-chips {
        margin-top:8px;
    }
    .solutions-diners-chips span {
        min-height:30px;
        padding:4px 7px;
        font-size:8.5px;
    }
    .solutions-diners-caption {
        margin-top:6px;
        font-size:8.5px;
        line-height:1.3;
    }
    .wain-mobile-deck .service-deck-controls {
        margin-top:8px;
    }
}

/* Home only: use the first card row's visual treatment for the second row on portrait phones. */
@media(max-width:600px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll .process-photo-grid .step,
    body.home-page.mobile-natural-scroll .process-photo-grid .step:nth-child(2) {
        border-color:transparent;
        background:#101713;
        color:#f2f5f3;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step:nth-child(even) {
        background:#142019;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step-num {
        color:#63e6ad;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step h3 {
        color:#f2f5f3;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step p {
        color:#aeb9b3;
    }
}

html {
    scroll-behavior: smooth;
}

.service-card,
#wain {
    scroll-margin-top: 100px;
}
@media(min-width:801px) {
    #wain {
        scroll-margin-top:0;
    }
}

.service-card.service-anchor-focus {
    position: relative;
    z-index: 2;
    box-shadow: 0 0 0 2px rgba(72,224,162,.82), 0 16px 38px rgba(20,83,59,.2);
    transition: box-shadow 220ms ease;
}

/* Keep fixed-height mobile stack cards scrollable on shorter iPhones. */
@media(max-width:800px) {
    .page-card-stack .section,
    .page-card-stack .band {
        overflow-x:hidden !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior-y:contain;
        touch-action:pan-y;
    }
    .page-card-stack .site-footer {
        overflow-x:hidden !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior-y:contain;
        touch-action:pan-y;
    }
    .page-card-stack :is(.section,.band,.site-footer)::-webkit-scrollbar {
        width:5px;
    }
    .page-card-stack :is(.section,.band,.site-footer)::-webkit-scrollbar-thumb {
        border-radius:99px;
        background:rgba(72,224,162,.48);
    }
    .page-card-stack :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid) {
        touch-action:pan-x;
    }
    .page-card-stack :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid)::-webkit-scrollbar {
        height:5px;
    }
    .page-card-stack :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid)::-webkit-scrollbar-thumb {
        border-radius:99px;
        background:rgba(72,224,162,.48);
    }
}

/* Phones use full-screen sections in normal document flow across the whole site. */
html.mobile-natural-scroll {
    scroll-snap-type:none;
}
body.mobile-natural-scroll {
    overflow-x:hidden;
    overflow-y:visible;
}
body.mobile-natural-scroll .site-header {
    position:absolute;
}
body.mobile-natural-scroll main {
    display:block;
    position:relative;
    height:auto;
    min-height:0;
    overflow:visible;
}
body.mobile-natural-scroll main > section {
        position:relative !important;
        top:auto !important;
        right:auto !important;
        bottom:auto !important;
        left:auto !important;
        inset:auto !important;
        width:100% !important;
        height:100vh !important;
        height:100svh !important;
        min-height:100vh !important;
        min-height:100svh !important;
        max-height:100vh !important;
        max-height:100svh !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior-y:auto;
        scroll-snap-align:none;
        scroll-snap-stop:normal;
        touch-action:pan-y;
        isolation:auto !important;
        z-index:auto !important;
        transform:none !important;
        translate:none !important;
        contain:none !important;
        clip-path:none !important;
        border-radius:0 !important;
        box-shadow:none !important;
}
body.mobile-natural-scroll main > :is(.hero,.page-hero) {
    overflow-x:hidden !important;
    overflow-y:auto !important;
}
@media(max-width:600px) {
    body.mobile-natural-scroll .site-header,
    body.mobile-natural-scroll.footer-in-view .site-header {
        position:fixed;
        opacity:1;
        visibility:visible;
        transform:none;
        pointer-events:auto;
    }
    body.mobile-natural-scroll :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid) {
        scrollbar-width:none;
    }
    body.mobile-natural-scroll :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid)::-webkit-scrollbar {
        display:none;
    }
    body.mobile-natural-scroll :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid) > .reveal {
        opacity:1;
        transform:none;
    }
    .phone-carousel-indicator {
        --carousel-progress:0;
        --carousel-thumb-width:25%;
        position:relative;
        width:100%;
        height:5px;
        margin-top:7px;
        border-radius:99px;
        overflow:hidden;
        background:rgba(17,22,20,.12);
    }
    .phone-carousel-indicator[hidden] {
        display:none;
    }
    .phone-carousel-indicator span {
        position:absolute;
        top:0;
        bottom:0;
        left:calc(var(--carousel-progress) * (100% - var(--carousel-thumb-width)));
        width:var(--carousel-thumb-width);
        border-radius:inherit;
        background:rgba(31,157,107,.78);
    }
    html[dir="rtl"] .phone-carousel-indicator span {
        right:calc(var(--carousel-progress) * (100% - var(--carousel-thumb-width)));
        left:auto;
    }
}
body.mobile-natural-scroll main > .site-footer {
        position:relative !important;
        top:auto !important;
        right:auto !important;
        bottom:auto !important;
        left:auto !important;
        inset:auto !important;
        width:100% !important;
        height:100vh !important;
        height:100svh !important;
        min-height:100vh !important;
        min-height:100svh !important;
        max-height:100vh !important;
        max-height:100svh !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior-y:auto;
        scroll-snap-align:none;
        scroll-snap-stop:normal;
        touch-action:pan-y;
        isolation:auto !important;
        z-index:auto !important;
        transform:none !important;
        translate:none !important;
        contain:none !important;
        clip-path:none !important;
        border-radius:0 !important;
        box-shadow:none !important;
}

/* Keep every full-screen section comfortable on short phones such as iPhone SE. */
@media(max-width:600px) and (max-height:700px) {
    :root {
        --section-start:64px;
        --section-end:80px;
    }

    body.mobile-natural-scroll main > :is(.section,.band) {
        padding-top:var(--section-start) !important;
        padding-bottom:var(--section-end) !important;
    }

    body.mobile-natural-scroll main > :is(.section,.band) .section-head {
        margin-bottom:14px;
    }
    body.mobile-natural-scroll main > :is(.section,.band) .section-head .h2 {
        font-size:clamp(27px,8vw,32px);
        line-height:1;
    }
    body.mobile-natural-scroll main > :is(.section,.band) .section-head p {
        margin-top:8px;
        font-size:12px;
        line-height:1.35;
    }

    body.mobile-natural-scroll :is(
        .home-capabilities-grid .editorial-card,
        .what-we-do-cards .list-card,
        .process-photo-grid .step,
        .building-lessons-grid .list-card
    ) {
        min-height:230px;
        padding:18px;
    }
    body.mobile-natural-scroll :is(
        .home-capabilities-grid .editorial-card h3,
        .what-we-do-cards .list-card h3,
        .process-photo-grid .step h3,
        .building-lessons-grid h3
    ) {
        margin:20px 0 7px;
        font-size:20px;
        line-height:1.04;
    }
    body.mobile-natural-scroll :is(
        .home-capabilities-grid .editorial-card p,
        .what-we-do-cards .list-card p,
        .process-photo-grid .step p,
        .building-lessons-grid .list-card p
    ) {
        font-size:12px;
        line-height:1.35;
    }
    body.mobile-natural-scroll main > section:has(.home-capabilities-grid) > .wrap {
        height:auto !important;
        min-height:0 !important;
    }
    body.mobile-natural-scroll main > section:has(.home-capabilities-grid) {
        overflow-y:hidden !important;
    }
    body.mobile-natural-scroll .building-lessons-head {
        margin-bottom:10px;
    }
    body.mobile-natural-scroll .building-lessons-head .h2 {
        margin-bottom:7px;
        font-size:29px;
        line-height:1;
    }
    body.mobile-natural-scroll .building-lessons-intro {
        font-size:11.5px;
        line-height:1.3;
    }
    body.mobile-natural-scroll .building-lessons-close {
        padding-top:7px;
    }
    body.mobile-natural-scroll .building-lessons-close a {
        margin-top:8px;
    }

    body.mobile-natural-scroll .where-to-start-copy .h2 {
        margin-top:6px;
        font-size:30px !important;
        line-height:.98;
    }
    body.mobile-natural-scroll .where-to-start-body {
        margin-top:14px;
    }
    body.mobile-natural-scroll .where-to-start-body p {
        font-size:14px;
        line-height:1.4;
    }
    body.mobile-natural-scroll .where-to-start-link {
        margin-top:20px;
    }

    body.mobile-natural-scroll #services-cards > .wrap > p {
        margin-bottom:8px;
        font-size:11px;
        line-height:1.25;
    }
    body.mobile-natural-scroll #services-cards .service-card {
        min-height:0;
        padding:8px 16px;
    }
    body.mobile-natural-scroll #services-cards .service-card .panel-index {
        margin-bottom:3px;
    }
    body.mobile-natural-scroll #services-cards .service-card .h3 {
        margin-bottom:3px;
        font-size:16px;
    }
    body.mobile-natural-scroll #services-cards .service-card > p {
        font-size:10.5px;
        line-height:1.16;
    }
    body.mobile-natural-scroll #services-cards .service-deliverables {
        gap:2px;
        margin:3px 0 4px;
        padding-top:3px;
    }
    body.mobile-natural-scroll #services-cards .service-deliverables p {
        font-size:9.3px;
        line-height:1.12;
    }
    body.mobile-natural-scroll #services-cards .service-deliverables strong {
        font-size:8px;
    }
    body.mobile-natural-scroll #services-cards .btn {
        padding:6px 12px;
        font-size:9px;
    }

    body.mobile-natural-scroll .services-evidence-panel {
        padding:15px 16px;
    }
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading {
        margin-bottom:10px;
    }
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading .h2 {
        font-size:27px !important;
    }
    body.mobile-natural-scroll .services-evidence-metric {
        padding:9px 0;
    }
    body.mobile-natural-scroll .services-evidence-label {
        min-height:20px;
        margin-bottom:4px;
        padding:3px 8px;
        font-size:8px;
    }
    body.mobile-natural-scroll .services-evidence-value {
        margin-bottom:4px;
        font-size:34px;
    }
    body.mobile-natural-scroll .services-evidence-metric p {
        font-size:11.5px;
        line-height:1.3;
    }
    body.mobile-natural-scroll .services-evidence-source {
        margin-top:4px;
        font-size:8px;
    }
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-result {
        padding-top:9px;
        font-size:12px;
        line-height:1.3;
    }

    body.mobile-natural-scroll .engagement-flow.phone-card-deck {
        gap:12px;
    }
    body.mobile-natural-scroll .engagement-flow.phone-card-deck .engagement-heading .eyebrow {
        margin-bottom:7px;
    }
    body.mobile-natural-scroll .engagement-flow.phone-card-deck .engagement-heading .h2 {
        font-size:30px;
        line-height:1;
    }
    body.mobile-natural-scroll .engagement-flow.phone-card-deck .engage-card {
        min-height:225px;
        padding:18px;
    }
    body.mobile-natural-scroll .engagement-flow.phone-card-deck .engage-card h3 {
        min-height:0;
        margin:18px 0 8px;
        font-size:24px;
    }
    body.mobile-natural-scroll .engagement-flow.phone-card-deck .engage-card p {
        font-size:12px;
        line-height:1.35;
    }

    body.mobile-natural-scroll #contact-studio {
        padding-top:52px !important;
        padding-bottom:80px !important;
    }
    body.mobile-natural-scroll #contact-studio .studio-contact-wrap {
        gap:12px;
    }
    body.mobile-natural-scroll #contact-studio .contact-split-info > h2 {
        margin-bottom:12px !important;
        font-size:25px !important;
    }
    body.mobile-natural-scroll #contact-studio .inquiry-categories {
        gap:12px;
    }
    body.mobile-natural-scroll #contact-studio .studio-form-container {
        padding:8px;
    }
    body.mobile-natural-scroll #contact-studio .studio-field input,
    body.mobile-natural-scroll #contact-studio .studio-field textarea {
        min-height:38px;
        padding:15px 9px 3px;
    }
    body.mobile-natural-scroll #contact-studio .studio-field textarea {
        min-height:46px;
        max-height:46px;
    }
    body.mobile-natural-scroll #contact-studio .studio-submit {
        min-height:36px;
    }

    body.mobile-natural-scroll main > .site-footer {
        padding:88px 0 50px !important;
        overflow:hidden !important;
    }
    body.mobile-natural-scroll .site-footer .footer-card-wrap {
        display:block !important;
        height:auto;
        padding:0 !important;
    }
    body.mobile-natural-scroll .site-footer .footer-meta {
        margin-top:8px;
        line-height:1.5;
    }
    body.mobile-natural-scroll .site-footer .fc-description {
        margin-top:10px;
        font-size:10px;
        line-height:1.45;
    }
    body.mobile-natural-scroll .site-footer .footer-nav {
        margin-top:14px;
        gap:12px 18px;
    }
    body.mobile-natural-scroll .site-footer .fc-links {
        margin-top:18px;
    }
    body.mobile-natural-scroll .site-footer .fc-col {
        gap:7px;
    }
    body.mobile-natural-scroll .site-footer .fc-col strong {
        margin-bottom:2px;
        font-size:8px;
    }
    body.mobile-natural-scroll .site-footer .fc-col a {
        font-size:9.5px;
        line-height:1.3;
    }
    body.mobile-natural-scroll .site-footer .fc-contact {
        margin-top:12px;
    }
    body.mobile-natural-scroll .site-footer .fc-contact p {
        font-size:15px;
    }
    body.mobile-natural-scroll .site-footer .fc-location {
        margin-top:10px;
        padding-top:10px;
    }
    body.mobile-natural-scroll .site-footer .fc-location-item {
        gap:6px;
    }
    body.mobile-natural-scroll .site-footer .fc-bottom {
        gap:5px;
        margin-top:4px;
        padding-top:8px;
        font-size:8px;
    }
    body.mobile-natural-scroll .site-footer .copyright {
        margin-top:18px;
        padding-top:12px;
    }
    body.mobile-natural-scroll #why-not-generic {
        padding-top:56px !important;
    }
}

@media(max-width:600px) {
    body.mobile-natural-scroll .site-footer .footer-card-wrap {
        padding-left:max(20px,env(safe-area-inset-left)) !important;
        padding-right:max(20px,env(safe-area-inset-right)) !important;
    }
}

/*
 * Portrait-phone page rhythm
 * --------------------------
 * The card-stack treatment is useful at larger breakpoints, but on a portrait
 * phone every page section should contribute its actual content height to one
 * continuous document. Keep the phone header fixed and horizontal card decks
 * swipeable; release the vertical section frames and stack decoration.
 */
@media (max-width:600px) and (orientation:portrait) {
    html.mobile-natural-scroll,
    body.mobile-natural-scroll {
        width:100%;
        max-width:100vw;
        overflow-x:hidden;
        overflow-x:clip;
        overflow-y:auto;
    }

    body.mobile-natural-scroll .site-header {
        width:100vw;
        max-width:100%;
    }

    body.mobile-natural-scroll main {
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    body.page-card-stack.mobile-natural-scroll main > section {
        /* Remain a containing block for section artwork and gradient
           pseudo-elements while opting out of sticky card stacking. */
        position:relative !important;
        inset:auto !important;
        width:100% !important;
        max-width:100vw !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        z-index:auto !important;
        box-shadow:none !important;
        transform:none !important;
        padding-top:80px !important;
        padding-bottom:80px !important;
    }

    /* Opening frames clear the fixed header without becoming viewport-sized
       scroll boxes. */
    body.page-card-stack.mobile-natural-scroll main > :is(.hero,.page-hero) {
        min-height:0 !important;
        overflow-x:hidden !important;
        overflow-y:visible !important;
        padding-top:158px !important;
        padding-bottom:80px !important;
    }

    body.page-card-stack.mobile-natural-scroll main > .band {
        padding-top:80px !important;
        padding-bottom:80px !important;
    }

    /* Horizontal previews remain independently swipeable within the page. */
    body.mobile-natural-scroll main > section
        :is(.bento,.list-grid,.steps,.contact-grid,.building-lessons-grid) {
        overflow-x:auto !important;
        overflow-y:hidden !important;
        touch-action:pan-x;
        overscroll-behavior-x:contain;
    }

    /* A multi-screen legal article cannot meet the shared 12% reveal
       threshold inside a phone viewport, so keep it readable immediately. */
    body.mobile-natural-scroll .legal-content .reveal {
        opacity:1 !important;
        transform:none !important;
    }

    /* Do not turn the generated footer into a second viewport. */
    body.mobile-natural-scroll > .site-footer,
    body.mobile-natural-scroll main > .site-footer,
    body.page-card-stack.stacked-footer.mobile-natural-scroll main > .site-footer {
        position:relative !important;
        inset:auto !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        overflow:visible !important;
        z-index:auto !important;
        box-shadow:none !important;
        transform:none !important;
        padding-top:80px !important;
        padding-bottom:80px !important;
    }
}

/* Give Home card titles a comfortable, consistent two-line setting on portrait phones. */
@media(max-width:600px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll .home-capabilities-grid .editorial-card h3,
    body.home-page.mobile-natural-scroll .process-photo-grid .step h3 {
        min-height:2.16em;
        font-size:clamp(21px,6.2vw,23px);
        line-height:1.08;
        text-wrap:balance;
    }
    html:not([dir="rtl"]) body.home-page.mobile-natural-scroll
        .home-capabilities-grid .editorial-card:nth-child(1) h3 {
        max-width:16ch;
    }
    html:not([dir="rtl"]) body.home-page.mobile-natural-scroll
        .home-capabilities-grid .editorial-card:nth-child(2) h3 {
        max-width:12ch;
    }
    html:not([dir="rtl"]) body.home-page.mobile-natural-scroll
        .home-capabilities-grid .editorial-card:nth-child(3) h3 {
        max-width:13ch;
    }
    html:not([dir="rtl"]) body.home-page.mobile-natural-scroll
        .home-capabilities-grid .editorial-card:nth-child(4) h3 {
        max-width:15ch;
    }
}

/* Match second-row text placement and type exactly to the first row on short phones.
   Keep this final so older compact-phone rules cannot override it. */
@media(max-width:600px) and (max-height:700px) and (orientation:portrait) {
    body.home-page.mobile-natural-scroll .process-photo-grid .step h3 {
        min-height:2.08em;
        margin:calc(clamp(48px,8vh,64px) - 2px) 0 10px;
        font-size:clamp(22px,1.75vw,26px);
        line-height:1.08;
        text-wrap:balance;
    }
    body.home-page.mobile-natural-scroll .process-photo-grid .step p {
        flex:0;
        max-width:28ch;
        margin:0;
        font-size:14px;
        line-height:1.45;
    }
}

/* Match the Approach card row to the first Home card row on portrait phones.
   Keep this final so compact-phone rules cannot override it. */
@media(max-width:600px) and (orientation:portrait) {
    body.mobile-natural-scroll .what-we-do-cards .list-card {
        flex:0 0 min(82vw,360px);
        width:min(82vw,360px);
        min-height:clamp(275px,46vh,350px);
        height:auto;
        padding:18px;
        border:1px solid transparent;
        border-radius:26px;
    }
    body.mobile-natural-scroll .what-we-do-cards .panel-index {
        justify-content:flex-start;
        gap:4px;
        color:#63e6ad !important;
        font-size:12px;
        line-height:1;
        letter-spacing:.08em;
    }
    body.mobile-natural-scroll .what-we-do-cards .panel-index span:first-child::after {
        content:" /";
    }
    body.mobile-natural-scroll .what-we-do-cards .list-card h3 {
        min-height:2.08em;
        margin:clamp(48px,8vh,64px) 0 10px;
        font-size:clamp(22px,1.75vw,26px);
        line-height:1.08;
        text-wrap:balance;
    }
    html:not([dir="rtl"]) body.mobile-natural-scroll
        .what-we-do-cards .list-card:nth-child(1) h3 {
        max-width:14ch;
    }
    html:not([dir="rtl"]) body.mobile-natural-scroll
        .what-we-do-cards .list-card:nth-child(2) h3 {
        max-width:12ch;
    }
    html:not([dir="rtl"]) body.mobile-natural-scroll
        .what-we-do-cards .list-card:nth-child(3) h3 {
        max-width:14ch;
    }
    html:not([dir="rtl"]) body.mobile-natural-scroll
        .what-we-do-cards .list-card:nth-child(4) h3 {
        max-width:14ch;
    }
    body.mobile-natural-scroll .what-we-do-cards .list-card p {
        flex:0;
        max-width:28ch;
        margin:0;
        font-size:14px;
        line-height:1.45;
    }
}
@media(max-width:600px) and (max-height:700px) and (orientation:portrait) {
    body.mobile-natural-scroll .what-we-do-cards .list-card {
        height:clamp(300px,46vh,320px);
        min-height:clamp(300px,46vh,320px);
    }
}

/* On non-Services phone pages, every major section matches the full-viewport hero.
   Content that exceeds a short visible viewport remains reachable inside its section. */
@media(max-width:600px) {
    body.mobile-natural-scroll:not(:has(.hero-services))
        :is(main > section, body > section) {
        height:100vh !important;
        height:100svh !important;
        min-height:100vh !important;
        min-height:100svh !important;
        max-height:100vh !important;
        max-height:100svh !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        overscroll-behavior-y:contain;
        -webkit-overflow-scrolling:touch;
    }
    body.mobile-natural-scroll:not(:has(.hero-services))
        main > :is(.hero,.page-hero):first-child {
        overflow:hidden !important;
    }
}

/* Solutions: wAIno for diners */
.solutions-diners {
    background:#f2f3f1;
    color:#171b19;
}
.solutions-diners > .wrap {
    width:100%;
}
.solutions-diners-intro {
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
    column-gap:clamp(48px,6vw,92px);
    align-items:end;
    margin-bottom:clamp(28px,4vh,46px);
}
.solutions-diners-kicker {
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
}
.solutions-diners-kicker .eyebrow {
    margin:0;
}
.solutions-diners-kicker .status {
    margin:0;
    padding:7px 13px;
    border:1px solid rgba(99,230,173,.45);
    border-radius:999px;
    background:rgba(7,9,8,.35);
    color:#63e6ad;
    font-size:11px;
    line-height:1;
    white-space:nowrap;
}
.solutions-diners-intro .eyebrow {
    margin-bottom:0;
    color:#18865d;
}
.solutions-diners-intro .h2 {
    max-width:820px;
    margin:0;
    font-size:clamp(38px,4.8vw,68px);
}
.solutions-diners-argument {
    max-width:620px;
    margin:0;
    color:#535c56;
    font-family:Georgia,'Times New Roman',serif;
    font-size:clamp(16px,1.3vw,20px);
    font-style:italic;
    line-height:1.48;
}
.solutions-diners-body {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);
    gap:clamp(24px,3vw,44px);
    align-items:start;
}
.solutions-diners-planning,
.solutions-diners-concierge {
    min-width:0;
}
.solutions-diners-index {
    margin:0 0 12px;
    color:#18865d;
    font-size:10px;
    font-weight:800;
    letter-spacing:.16em;
    line-height:1;
    text-transform:uppercase;
}
.solutions-diners-body h3 {
    margin:0 0 14px;
    font-size:clamp(23px,2vw,31px);
    line-height:1.05;
    letter-spacing:-.05em;
}
.solutions-diners-body > article > p:not(.solutions-diners-index),
.solutions-diners-cards p {
    margin:0;
    color:#59625d;
    font-size:clamp(13px,1vw,15px);
    line-height:1.5;
}
.solutions-diners-needs {
    grid-column:2;
    grid-row:1 / span 2;
}
.solutions-diners-needs > h3 {
    margin-bottom:16px;
}
.solutions-diners-cards {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.solutions-diners-cards article {
    min-width:0;
    min-height:190px;
    padding:clamp(18px,2vw,26px);
    border:1px solid rgba(23,27,25,.12);
    border-radius:20px;
    background:rgba(255,255,255,.42);
}
.solutions-diners-cards h4 {
    min-height:2.1em;
    margin:0 0 18px;
    font-size:clamp(16px,1.35vw,20px);
    line-height:1.05;
    letter-spacing:-.035em;
}
.solutions-diners-concierge {
    padding-top:clamp(22px,3vh,34px);
    border-top:1px solid rgba(23,27,25,.13);
}
.solutions-diners-chips {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:18px;
}
.solutions-diners-chips span {
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:7px 12px;
    border:1px solid rgba(24,134,93,.28);
    border-radius:999px;
    background:rgba(24,134,93,.06);
    color:#26302b;
    font-size:11px;
    font-weight:600;
    line-height:1.25;
}
@media(min-width:801px) and (max-height:800px) {
    .solutions-diners-intro {
        margin-bottom:24px;
    }
    .solutions-diners-kicker {
        margin-bottom:12px;
    }
    .solutions-diners-kicker .status {
        padding:5px 10px;
        font-size:9.5px;
    }
    .solutions-diners-intro .h2 {
        font-size:clamp(36px,3.8vw,50px);
    }
    .solutions-diners-argument {
        font-size:14px;
        line-height:1.4;
    }
    .solutions-diners-body {
        gap:26px;
    }
    .solutions-diners-body h3 {
        margin-bottom:9px;
        font-size:23px;
    }
    .solutions-diners-body > article > p:not(.solutions-diners-index),
    .solutions-diners-cards p {
        font-size:11.5px;
        line-height:1.38;
    }
    .solutions-diners-cards article {
        min-height:150px;
        padding:16px;
    }
    .solutions-diners-cards h4 {
        margin-bottom:12px;
        font-size:16px;
    }
    .solutions-diners-concierge {
        padding-top:16px;
    }
    .solutions-diners-chips {
        margin-top:10px;
    }
    .solutions-diners-chips span {
        min-height:28px;
        padding:5px 9px;
        font-size:9.5px;
    }
}
@media(max-width:800px) {
    .solutions-diners-intro,
    .solutions-diners-body {
        display:block;
    }
    .solutions-diners-intro {
        margin-bottom:34px;
    }
    .solutions-diners-kicker {
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
        margin-bottom:25px;
    }
    .solutions-diners-kicker .status {
        white-space:normal;
    }
    .solutions-diners-intro .h2 {
        margin-bottom:28px;
        font-size:clamp(34px,10vw,44px);
    }
    .solutions-diners-argument {
        max-width:none;
        font-size:17px;
    }
    .solutions-diners-needs,
    .solutions-diners-concierge {
        margin-top:38px;
    }
    .solutions-diners-cards {
        grid-template-columns:1fr;
        gap:12px;
    }
    .solutions-diners-cards article {
        min-height:0;
        padding:22px 20px;
    }
    .solutions-diners-cards h4 {
        min-height:0;
        margin-bottom:16px;
        font-size:20px;
    }
    .solutions-diners-body > article > p:not(.solutions-diners-index),
    .solutions-diners-cards p {
        font-size:15px;
    }
    .solutions-diners-concierge {
        padding-top:32px;
    }
    .solutions-diners-chips {
        display:grid;
    }
    .solutions-diners-chips span {
        width:max-content;
        max-width:100%;
    }
}
html[lang="ar"][dir="rtl"] .solutions-diners-intro,
html[lang="ar"][dir="rtl"] .solutions-diners-body,
html[lang="ar"][dir="rtl"] .solutions-diners-cards,
html[lang="ar"][dir="rtl"] .solutions-diners-chips {
    direction:rtl;
}
html[lang="ar"][dir="rtl"] .solutions-diners-kicker {
    direction:rtl;
    justify-content:flex-start;
}

/* Carry the wAIno product section's visual language into the diner story. */
.solutions-diners {
    background-color:#090d0b;
    background-image:
      linear-gradient(90deg,rgba(7,9,8,.92) 0%,rgba(7,9,8,.72) 48%,rgba(7,9,8,.38) 100%),
      linear-gradient(180deg,rgba(7,9,8,.12),rgba(7,9,8,.5)),
      url("/assets/wain-dining-background-full.jpg");
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover,cover,cover;
    color:#f2f5f3;
}
.solutions-diners .reveal {
    opacity:1;
    transform:none;
}
.solutions-diners-intro .eyebrow,
.solutions-diners-index {
    color:#63e6ad;
}
.solutions-diners .solutions-diners-planning h3 {
    color:#63e6ad;
}
.solutions-diners-intro .h2,
.solutions-diners-body h3,
.solutions-diners-cards h4 {
    color:#f2f5f3;
}
.solutions-diners-argument,
.solutions-diners-body > article > p:not(.solutions-diners-index),
.solutions-diners-concierge-copy > p:not(.solutions-diners-index),
.solutions-diners-cards p {
    color:#c0cbc4;
}
.solutions-diners-cards article {
    border-color:rgba(99,230,173,.28);
    background:rgba(7,9,8,.58);
    box-shadow:0 18px 44px rgba(0,0,0,.18);
    backdrop-filter:blur(8px);
}
.solutions-diners-concierge {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(130px,170px);
    grid-column:1 / -1;
    gap:16px;
    align-items:end;
    border-top-color:rgba(99,230,173,.24);
}
.solutions-diners-needs {
    grid-row:auto;
}
.solutions-diners-concierge-copy {
    min-width:0;
}
.solutions-diners-concierge-copy h3 {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:8px;
}
.solutions-diners-concierge-copy h3 bdi {
    color:#63e6ad;
    font-family:Tahoma,Arial,sans-serif;
    font-size:.78em;
    font-weight:700;
    letter-spacing:0;
}
.solutions-diners-waino {
    display:block;
    width:100%;
    height:auto;
    align-self:end;
    filter:drop-shadow(0 22px 24px rgba(0,0,0,.32));
}
.solutions-diners-chips span {
    border-color:rgba(99,230,173,.3);
    background:rgba(99,230,173,.08);
    color:#dce5df;
}
html[lang="ar"][dir="rtl"] .solutions-diners {
    background-image:
      linear-gradient(90deg,rgba(7,9,8,.38) 0%,rgba(7,9,8,.72) 52%,rgba(7,9,8,.92) 100%),
      linear-gradient(180deg,rgba(7,9,8,.12),rgba(7,9,8,.5)),
      url("/assets/wain-dining-background-full.jpg");
}
html[lang="ar"][dir="rtl"] .solutions-diners-concierge-copy h3 {
    justify-content:flex-start;
}
@media(max-width:800px) {
    .solutions-diners {
        background-image:
          linear-gradient(180deg,rgba(7,9,8,.75),rgba(7,9,8,.88)),
          url("/assets/wain-dining-background-full.jpg");
        background-position:58% center;
        background-size:cover,cover;
    }
    .solutions-diners-concierge {
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:22px;
    }
    .solutions-diners-waino {
        width:min(70vw,260px);
        margin:0 auto -2px;
    }
}

/* Compact diner interface: keep the complete product story inside the right column. */
.solutions-diners-body {
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
}
.solutions-diners-needs {
    display:grid;
    grid-column:2;
    gap:26px;
    overflow:visible;
}
.solutions-diners-summary,
.solutions-diners-concierge {
    min-width:0;
    border:1px solid rgba(99,230,173,.28);
    border-radius:18px;
    background:rgba(7,9,8,.68);
    box-shadow:0 18px 44px rgba(0,0,0,.18);
    backdrop-filter:blur(8px);
}
.solutions-diners-summary {
    padding:15px 18px;
}
.solutions-diners-summary .solutions-diners-index {
    margin-bottom:8px;
}
.solutions-diners-summary > p:last-child,
.solutions-diners-concierge-copy > p,
.solutions-diners-caption {
    margin:0;
    color:#c0cbc4;
    font-size:12px;
    line-height:1.4;
}
.solutions-diners-concierge {
    position:relative;
    display:block;
    grid-column:auto;
    padding:15px 18px 14px;
    border-top:1px solid rgba(99,230,173,.28);
    overflow:visible;
}
.solutions-diners-concierge > .solutions-diners-index {
    margin-bottom:10px;
}
.solutions-diners-concierge-copy {
    min-height:74px;
    padding-inline-end:144px;
}
.solutions-diners-concierge-copy h3 {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:7px;
    margin:0 0 5px;
    color:#f2f5f3;
    font-size:17px;
    line-height:1.1;
    letter-spacing:-.025em;
}
.solutions-diners-concierge-copy h3 bdi {
    color:#63e6ad;
    font-family:Tahoma,Arial,sans-serif;
    font-size:.82em;
    font-weight:700;
    letter-spacing:0;
}
.solutions-diners-waino {
    position:absolute;
    z-index:1;
    top:-22px;
    right:-14px;
    width:132px;
    height:132px;
    object-fit:contain;
    filter:drop-shadow(0 12px 16px rgba(0,0,0,.28));
}
.solutions-diners-chips {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    margin-top:10px;
}
.solutions-diners-chips span {
    min-height:30px;
    padding:5px 9px;
    font-size:9.5px;
}
.solutions-diners-caption {
    margin-top:9px;
    color:#9eaaa3;
    font-size:9.5px;
}
html[lang="ar"][dir="rtl"] .solutions-diners-waino {
    right:auto;
    left:-14px;
}
@media(min-width:801px) and (max-height:800px) {
    .solutions-diners-summary {
        padding:12px 15px;
    }
    .solutions-diners-summary > p:last-child,
    .solutions-diners-concierge-copy > p {
        font-size:10.5px;
        line-height:1.32;
    }
    .solutions-diners-concierge {
        padding:12px 15px 11px;
    }
    .solutions-diners-concierge-copy {
        min-height:82px;
        padding-inline-end:136px;
    }
    .solutions-diners-concierge-copy h3 {
        font-size:15px;
    }
    .solutions-diners-waino {
        top:-22px;
        right:-12px;
        width:126px;
        height:126px;
    }
    html[lang="ar"][dir="rtl"] .solutions-diners-waino {
        right:auto;
        left:-12px;
    }
    .solutions-diners-chips {
        margin-top:7px;
    }
    .solutions-diners-chips span {
        min-height:24px;
        padding:3px 7px;
        font-size:8.5px;
    }
    .solutions-diners-caption {
        margin-top:6px;
        font-size:8.5px;
    }
}
@media(max-width:800px) {
    .solutions-diners-needs {
        display:grid;
        margin-top:38px;
        gap:22px;
    }
    .solutions-diners-summary {
        padding:16px;
    }
    .solutions-diners-summary > p:last-child,
    .solutions-diners-concierge-copy > p {
        font-size:13px;
    }
    .solutions-diners-concierge {
        display:block;
        margin-top:0;
        padding:16px;
    }
    .solutions-diners-concierge-copy {
        min-height:118px;
        padding-inline-end:122px;
    }
    .solutions-diners-waino {
        position:absolute;
        top:14px;
        right:0;
        width:132px;
        height:132px;
        margin:0;
    }
    html[lang="ar"][dir="rtl"] .solutions-diners-waino {
        right:auto;
        left:0;
    }
    .solutions-diners-chips {
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:7px;
        margin-top:11px;
    }
    .solutions-diners-chips span {
        width:auto;
        min-height:34px;
        padding:6px 8px;
        font-size:9px;
    }
}

/* Preserve the reference heading rhythm and clearer label spacing on portrait phones. */
@media(max-width:600px) and (orientation:portrait) {
    .services-evidence-panel .services-evidence-heading .eyebrow,
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading .eyebrow {
        margin-bottom:25px;
    }
    .services-evidence-panel .services-evidence-heading,
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading {
        margin-bottom:32px;
    }
    .services-evidence-label,
    body.mobile-natural-scroll .services-evidence-label {
        margin-bottom:21px;
    }
    .services-evidence-metric + .services-evidence-metric,
    body.mobile-natural-scroll .services-evidence-metric + .services-evidence-metric {
        border-top:0;
    }
}

/* Final short-phone wAIno fit overrides must follow every component rule. */
@media(max-width:600px) and (max-height:620px) and (orientation:portrait) {
    .page-card-stack .wain-product-section {
        padding-top:78px !important;
        padding-bottom:8px !important;
    }
    .page-card-stack .wain-product-section .product-feature {
        padding:4px 0 !important;
    }
    .wain-product-meta {
        gap:3px;
        margin-bottom:4px;
    }
    .wain-product-meta .eyebrow {
        margin:0;
        white-space:nowrap;
        font-size:7px;
        letter-spacing:.14em;
        line-height:1.2;
    }
    .wain-product-meta .status {
        padding:3px 8px;
        font-size:8px;
        line-height:1.2;
    }
    .wain-product-section .product-feature h2 {
        margin-bottom:3px;
        font-size:23px !important;
        line-height:.98;
    }
    .wain-product-section .product-feature .wain-name-story {
        margin:0 0 4px;
        font-size:10.5px;
        line-height:1.2;
    }
    .mobile-wain-primary .wain-mobile-deck {
        margin-top:3px;
    }
    .wain-mobile-slide {
        padding:8px;
        border-radius:15px;
    }
    .wain-mobile-slide .wain-audience-block {
        margin-bottom:6px;
    }
    .wain-mobile-slide .wain-audience-block h3 {
        margin-bottom:3px;
        font-size:10px;
        line-height:1.1;
    }
    .wain-mobile-slide .wain-audience-block p {
        font-size:10.5px;
        line-height:1.25;
    }
    .wain-mobile-slide .wain-artifact-eyebrow {
        margin-bottom:5px !important;
        padding-top:6px;
        font-size:8px !important;
        line-height:1.1;
    }
    .solutions-diners-concierge-copy {
        min-height:104px;
        padding-inline-end:116px;
    }
    .solutions-diners-concierge-copy h3 {
        margin-bottom:3px;
        font-size:15px;
    }
    .solutions-diners-concierge-copy > p {
        font-size:10.5px;
        line-height:1.22;
    }
    .solutions-diners-waino {
        top:10px;
        width:126px;
        height:126px;
    }
    .solutions-diners-chips {
        gap:5px;
        margin-top:5px;
    }
    .solutions-diners-chips span {
        min-height:26px;
        padding:3px 6px;
        font-size:7.8px;
        line-height:1.15;
    }
    .solutions-diners-caption {
        margin-top:4px;
        font-size:7.5px;
        line-height:1.2;
    }
    .wain-mobile-deck .service-deck-controls {
        margin-top:5px;
    }
    .wain-mobile-deck .service-deck-button {
        width:38px;
        height:38px;
    }
}

/* Concierge examples: a larger mascot beside a single vertical prompt list. */
.wain-shared-concierge .solutions-diners-concierge-copy {
    min-height:0;
    padding:0;
}
.wain-shared-concierge .wain-concierge-examples {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(110px,36%);
    align-items:center;
    gap:clamp(10px,2vw,24px);
    margin-top:10px;
}
.wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
    position:static;
    display:block;
    width:100%;
    height:auto;
    max-width:220px;
    margin:0;
    object-fit:contain;
    justify-self:center;
}
@media(min-width:801px) {
    .wain-shared-concierge .wain-concierge-examples {
        position:static;
        grid-template-columns:minmax(0,1fr) minmax(0,46%);
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
        position:absolute;
        top:auto;
        inset-inline-end:16px;
        bottom:12px;
        width:calc(46% - 15px);
        max-width:192px;
    }
}
@media(min-width:801px) and (max-height:800px) {
    .wain-shared-concierge .wain-concierge-examples {
        margin-top:6px;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
        max-width:172px;
    }
    html[lang="ar"][dir="rtl"] .wain-product-section .product-feature h2 {
        margin-bottom:6px;
    }
    html[lang="ar"][dir="rtl"] .wain-product-section .wain-audience-block {
        padding-block:6px;
    }
}
@media(min-width:801px) and (max-height:720px) {
    .page-card-stack #wain .product-feature h2 {
        margin-bottom:5px;
        font-size:clamp(30px,3.5vw,42px);
        line-height:.98;
    }
    .page-card-stack #wain .wain-name-story {
        margin-bottom:4px;
    }
    .page-card-stack #wain .wain-audience-grid {
        margin-top:4px;
    }
    .page-card-stack #wain .wain-artifact-grid {
        margin-top:1px;
    }
    .page-card-stack #wain .wain-shared-concierge .solutions-diners-chips {
        gap:5px;
    }
    .page-card-stack #wain .wain-shared-concierge .solutions-diners-chips span {
        padding:5px 9px;
        font-size:10px;
    }
}
@media(min-width:801px) and (max-height:749px),
       (min-width:801px) and (max-width:1023px) and (min-height:801px) and (max-height:894px),
       (min-width:1450px) and (min-height:801px) and (max-height:904px) {
    .page-card-stack main > #wain.wain-product-section {
        position:relative !important;
        height:auto !important;
        min-height:100svh !important;
        max-height:none !important;
        padding-bottom:48px !important;
        overflow:visible !important;
    }
}
@media(min-width:801px) and (min-height:801px) and (max-height:894px) {
    .page-card-stack #wain .product-feature h2 {
        margin-bottom:3px !important;
        font-size:clamp(30px,3.5vw,40px) !important;
        line-height:.98 !important;
    }
    .page-card-stack #wain .wain-name-story {
        margin-bottom:4px;
    }
    .page-card-stack #wain .wain-audience-grid {
        margin-top:4px;
    }
    .page-card-stack #wain .wain-artifact-grid {
        margin-top:1px;
    }
    .wain-shared-concierge .wain-concierge-examples {
        margin-top:6px;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
        max-width:182px;
    }
}
@media(min-width:1450px) and (min-height:801px) and (max-height:904px) {
    .page-card-stack main > #wain.wain-product-section {
        min-height:calc(100svh + 12px) !important;
    }
}
.wain-shared-concierge .wain-concierge-examples .solutions-diners-chips {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    min-width:0;
    margin:0;
}
.wain-shared-concierge .wain-concierge-examples .solutions-diners-chips span {
    display:flex;
    width:100%;
    min-width:0;
    min-height:34px;
    padding:7px 12px;
    font-size:11px;
    line-height:1.25;
}
@media(min-width:801px) {
    .page-card-stack #wain .wain-shared-concierge .wain-concierge-examples .solutions-diners-chips span {
        height:36px;
        min-height:36px;
        padding:4px 9px;
        align-items:center;
        font-size:clamp(9px,.9vw,11px);
    }
}
@media(max-width:600px) {
    .wain-shared-concierge .wain-concierge-examples {
        display:block;
        position:relative;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-chips {
        position:relative;
        z-index:2;
        width:70%;
        align-items:flex-start;
        gap:5px;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-chips span {
        width:100%;
        max-width:100%;
        height:44px;
        min-height:44px;
        padding:5px 8px;
        align-items:center;
        font-size:9px;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
        position:absolute;
        z-index:1;
        top:auto;
        right:-26px;
        bottom:-4px;
        left:auto;
        width:min(54%,190px);
        max-width:none;
    }
    html[lang="ar"][dir="rtl"] .wain-shared-concierge .wain-concierge-examples .solutions-diners-waino {
        right:auto;
        left:-26px;
    }
}
@media(max-width:600px) and (max-height:620px) and (orientation:portrait) {
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-chips {
        gap:4px;
    }
    .wain-shared-concierge .wain-concierge-examples .solutions-diners-chips span {
        height:34px;
        min-height:34px;
        padding:4px 6px;
        font-size:8px;
    }
}
@media(max-width:600px) and (max-height:700px) and (orientation:portrait) {
    .wain-mobile-deck .service-deck-controls {
        grid-template-columns:36px minmax(0,1fr) 36px;
        gap:9px;
        width:min(100%,220px);
        margin-top:5px;
    }
    .wain-mobile-deck .service-deck-button {
        width:36px;
        height:36px;
    }
    .wain-mobile-deck .service-deck-progress {
        gap:4px;
    }
    .wain-mobile-deck .service-deck-count {
        font-size:9px;
    }
    .wain-mobile-deck .service-deck-track {
        height:3px;
    }
}

/* Final mobile sizing exception: this section grows instead of scrolling internally. */
@media(max-width:600px) {
    #wain.wain-product-section {
        scroll-margin-top:0;
        height:auto !important;
        min-height:100svh !important;
        max-height:none !important;
        overflow:visible !important;
        overflow-x:visible !important;
        overflow-y:visible !important;
        overscroll-behavior:visible !important;
        touch-action:auto !important;
    }
}

/* Compact evidence section after removing citation blocks. */
@media(max-width:800px) {
    .page-card-stack .services-evidence {
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        padding-top:76px !important;
        padding-bottom:42px !important;
        overflow:visible !important;
    }
    .services-evidence > .wrap {
        height:auto;
    }
    .services-evidence-panel .services-evidence-heading,
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading {
        margin-bottom:18px;
    }
    .services-evidence-panel .services-evidence-heading .eyebrow,
    body.mobile-natural-scroll .services-evidence-panel .services-evidence-heading .eyebrow {
        margin-bottom:10px;
    }
    .services-evidence-metric,
    body.mobile-natural-scroll .services-evidence-metric {
        padding:12px 0;
    }
    .services-evidence-panel .services-evidence-grid {
        grid-template-columns:1fr;
    }
    .services-evidence-metric + .services-evidence-metric,
    body.mobile-natural-scroll .services-evidence-metric + .services-evidence-metric {
        border-top:1px solid rgba(23,27,25,.12);
        border-left:0;
    }
    .services-evidence-metric:nth-child(odd),
    body.mobile-natural-scroll .services-evidence-metric:nth-child(odd) {
        padding-left:0;
        border-left:0;
    }
    .services-evidence-metric:nth-child(even),
    body.mobile-natural-scroll .services-evidence-metric:nth-child(even) {
        padding-right:0;
    }
    .services-evidence-editorial .services-evidence-statement,
    body.mobile-natural-scroll .services-evidence-editorial .services-evidence-statement {
        font-size:10.5px;
        line-height:1.3;
    }
}
