/* page-home — homepage-only styles (Atlas). Generated from the legacy
   cascade minus components.css, plus the rehomed hero-montage rules that
   previously existed only in critical.css. */
.on-dark em, .hero em, .founder-feature em, .eid em{ color: var(--gold); }
.stats-strip{
background: var(--band-steel);
border-top: 2px solid var(--line-black);
border-bottom: 2px solid var(--line-black);
display: grid;
grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 720px){.stats-strip{ grid-template-columns: repeat(2, 1fr); }}
.stats-strip__cell{
text-align: center;
padding: 2.5rem 1rem;
border-right: 1px solid rgba(24, 34, 38, 0.18);
}
.stats-strip__cell:last-child{ border-right: 0; }
@media (max-width: 720px){.stats-strip__cell:nth-child(2n){ border-right: 0; }.stats-strip__cell:nth-child(-n+2){ border-bottom: 1px solid rgba(24, 34, 38, 0.18); }}
.stats-strip__num{
font-family: var(--serif);
font-style: italic;
font-size: clamp(2.2rem, 4vw, 3rem);
line-height: 1;
color: var(--accent-marine);
margin-bottom: 0.5rem;
}
.stats-strip__label{
font-family: var(--display);
font-size: 11px;
font-weight: 600;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--ink-2);
}
.marquee{
background: var(--ink);
color: var(--paper);
padding: 0.9rem 0;
overflow: hidden;
border-top: 1px solid rgba(242, 251, 249, 0.06);
border-bottom: 1px solid rgba(242, 251, 249, 0.06);
}
.marquee-track{
display: flex;
gap: 3rem;
animation: marquee-scroll 40s linear infinite;
white-space: nowrap;
width: max-content;
}
.marquee-item{
font-family: var(--display);
font-size: 11px;
font-weight: 600;
letter-spacing: 0.22em;
text-transform: uppercase;
color: rgba(242, 251, 249, 0.82);
display: inline-flex;
align-items: center;
gap: 2rem;
}
.marquee-item::after{
content: "✦";
color: var(--gold);
font-size: 0.85rem;
margin-left: 2rem;
}
@keyframes marquee-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.hero{ position: relative; background: var(--cobalt-deep); color: var(--paper); text-align: center; padding: 88px 28px 72px; overflow: hidden; }
.hero::before{ content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 50% 0%, rgba(255,211,77,.16), transparent 60%); pointer-events: none; }
.hero-inner{ max-width: 1180px; margin: 0 auto; position: relative; }
.hero h1{ font-family: var(--serif); font-weight: 600; color: var(--paper); font-size: clamp(2.6rem,6.4vw,5rem); line-height: 1.02; letter-spacing: -.01em; margin: 0 auto 22px; max-width: 18ch; }
.hero h1 em{ color: var(--gold); font-style: italic; }
.hero-lede{ font-size: clamp(1.05rem,1.4vw,1.2rem); color: rgba(242,251,249,.85); max-width: 58ch; margin: 0 auto 32px; line-height: 1.55; }
.hero-actions{ display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.trust{ background: var(--paper); padding: 22px 28px; border-bottom: 1px solid var(--rule-cobalt); }
.trust-inner{ max-width: 1180px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 36px; justify-content: center; align-items: center; }
.trust-item{ display: flex; align-items: center; gap: 10px; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink-2); font-weight: 600; }
.trust-item svg{ flex: 0 0 auto; color: var(--gold); }
.story{ padding: 96px 28px; background: var(--cream-2); }
.story-inner{ max-width: 760px; margin: 0 auto; text-align: center; }
.story h2{ max-width: 22ch; margin: 0 auto 18px; }
.story h2 em{ color: var(--ottoman); font-style: italic; }
.story p{ font-size: 1.08rem; line-height: 1.7; max-width: 62ch; margin: 0 auto 18px; color: var(--ink-2); }
.story p strong{ color: var(--ink); font-weight: 600; }
.carry{ padding: 96px 28px; background: var(--cream-2); }
.carry-inner{ max-width: 1240px; margin: 0 auto; }
.card-num{ font-family: var(--display); font-size: 11px; font-weight: 600; letter-spacing: .28em; color: var(--ottoman); margin-bottom: 10px; }
@keyframes toast-in { from { opacity: 0; transform: translate(-50%, 8px); } to { opacity: 1; transform: translate(-50%, 0); } }
.story-split{max-width:1040px;display:grid;grid-template-columns:1.25fr .75fr;gap:54px;align-items:center;text-align:left;}
.story-split h2{margin:0 0 18px;max-width:none;}
.story-split p{margin:0 0 16px;max-width:54ch;}
.story-portrait{margin:0;position:relative;padding:13px;background-color:#0d6377;
background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='26'%20height='26'%3E%3Cg%20fill='none'%20stroke='%23ffd34d'%20stroke-width='1.3'%3E%3Cpath%20d='M13%200L26%2013L13%2026L0%2013Z'/%3E%3Cpath%20d='M13%206.5L19.5%2013L13%2019.5L6.5%2013Z'/%3E%3C/g%3E%3Cpath%20d='M13%2010L16%2013L13%2016L10%2013Z'%20fill='%23ffd34d'/%3E%3C/svg%3E");
background-size:26px 26px;border:1px solid var(--gold);}
.story-portrait img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;}
.story-portrait figcaption{background:var(--paper);padding:16px 18px;text-align:center;display:flex;flex-direction:column;gap:3px;}
.story-portrait figcaption strong{font-family:var(--serif);font-size:1.18rem;color:var(--ink);line-height:1.1;}
.story-portrait figcaption span{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ottoman);}
@media (max-width:780px){.story-split{grid-template-columns:1fr;gap:34px;text-align:center;}.story-split p{margin-left:auto;margin-right:auto;}.story-portrait{max-width:320px;margin:0 auto;}}
.need-route{margin-top:9px;font-size:.9rem;line-height:1.5;color:var(--tint-paper-mute,#cbb);}
.need-route a{color:var(--gold);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(255,211,77,.5);}
.trust-inner{gap:24px 48px;}
.trust-item{white-space:nowrap;}
@media (max-width:600px){.trust-inner{gap:16px 28px;}.trust-item{font-size:11px;letter-spacing:.14em;}}
.hero{padding:64px 28px 60px;}
.hero .hero-name{
font-family:var(--serif);font-weight:700;
font-size:clamp(3.4rem,9.4vw,6.8rem);line-height:.92;letter-spacing:-.026em;
background:linear-gradient(176deg,#ffffff 0%,#f6ead0 42%,#dcbd72 78%,#ffd34d 100%);
-webkit-background-clip:text;background-clip:text;
-webkit-text-fill-color:transparent;color:transparent;
filter:drop-shadow(0 2px 22px rgba(255,211,77,.20));
margin:0 auto 16px;max-width:none;text-wrap:balance;
}
.hero .hero-tagline{
font-family:var(--serif);font-style:italic;
font-size:clamp(1.5rem,3.1vw,2.4rem);line-height:1.18;
color:rgba(242,251,249,.94);margin:0 auto 38px;max-width:46ch;text-wrap:balance;
}
@media (min-width:760px){.hero .hero-tagline{max-width:34ch;}}
.hero .hero-tagline em{color:var(--accent-ink);font-style:italic;}
@keyframes heroKenBurns{0%{transform:scale(1.06) translate(0,0);}
}
.hero h1{margin-top:0;}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.4,0,.2,1),transform .9s cubic-bezier(.4,0,.2,1);}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}}
.sec-head{max-width:760px;margin:0 auto 56px;text-align:center;}
.sec-head h2 em{font-style:italic;color:var(--ottoman);}
.sec-head p{max-width:56ch;margin:14px auto 0;color:var(--ink-2);font-size:1.05rem;}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--rule-cobalt);background:var(--paper);}
.svc{padding:34px 30px;border-right:1px solid var(--rule-cobalt);border-bottom:1px solid var(--rule-cobalt);}
.svc:nth-child(3n){border-right:0;}
.svc:nth-last-child(-n+3){border-bottom:0;}
.svc .card-num{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.28em;color:var(--ottoman);text-transform:uppercase;}
.svc h3{font-family:var(--serif);font-size:1.5rem;margin:10px 0 10px;}
.svc h3 em{color:var(--ottoman);font-style:italic;}
.svc p{font-size:.96rem;color:var(--ink-2);line-height:1.6;margin:0;}
.svc .svc-ic{width:30px;height:30px;color:var(--gold);margin-bottom:18px;}
@media (max-width:860px){.svc-grid{grid-template-columns:repeat(2,1fr);}.svc:nth-child(3n){border-right:1px solid var(--rule-cobalt);}.svc:nth-child(2n){border-right:0;}.svc:nth-last-child(-n+3){border-bottom:1px solid var(--rule-cobalt);}.svc:nth-last-child(-n+2){border-bottom:0;}}
@media (max-width:540px){.svc-grid{grid-template-columns:1fr;}.svc{border-right:0!important;border-bottom:1px solid var(--rule-cobalt)!important;}.svc:last-child{border-bottom:0!important;}}
.work{padding:22px 28px 84px;background:var(--cream-2);}
.work-feat .card-num{font-family:var(--display);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);position:relative;}
.work-globe-top{display:flex;justify-content:center;align-items:center;margin:0 auto 14px;}
.work-globe-top canvas{display:block;}
#work .sec-head{margin-bottom:34px;}
@keyframes portfolioDrop{from{opacity:.2;transform:translateY(-8px);}to{opacity:1;transform:none;}}
.process{background:var(--band-sun);color:var(--ink);padding:96px 28px;position:relative;overflow:hidden;border-top:2px solid var(--line-black);}
.process::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(255,211,77,.30),transparent 58%);pointer-events:none;}
.process .sec-head h2{color:var(--ink);}
.process .sec-head h2 em{color:var(--accent-ink);}
.process .sec-head p{color:var(--ink-2);}
.survey .svy-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;}
@media (max-width:540px){.survey .svy-grid{grid-template-columns:1fr;}}
.svy-field{display:flex;flex-direction:column;padding:14px 0;border-bottom:1px solid var(--rule-cobalt);}
.svy-field.full{grid-column:1/-1;}
.svy-field label{font-family:var(--display);font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--cobalt);font-weight:700;margin-bottom:9px;}
.svy-field select,.svy-field input{background:transparent;border:0;color:var(--ink);font-family:var(--sans);font-size:1rem;padding:3px 0;outline:none;width:100%;}
.svy-field select{appearance:none;cursor:pointer;}
.form-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:32px;flex-wrap:wrap;}
.form-note{font-size:.84rem;color:var(--ink-3);max-width:36ch;font-style:italic;font-family:var(--serif);}
.form-success{display:none;padding:22px 0;color:var(--ottoman);font-family:var(--serif);font-style:italic;font-size:1.3rem;}
.form-success.show{display:block;}
.form-success.show + form{display:none;}
.contact{background:var(--band-aqua);color:var(--ink);padding:88px 28px;position:relative;overflow:hidden;border-top:2px solid var(--line-black);}
.contact::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 0%,rgba(255,211,77,.20),transparent 56%);pointer-events:none;}
.contact-grid{position:relative;max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:start;}
@media (max-width:820px){.contact-grid{grid-template-columns:1fr;gap:36px;}}
.contact h2{color:var(--ink);font-size:clamp(2rem,4vw,3rem);}
.contact h2 em{color:var(--accent-marine);font-style:italic;}
.contact-lede{color:var(--ink-2);font-size:1.08rem;line-height:1.6;max-width:44ch;margin:18px 0 0;}
.contact-lede a{color:var(--accent-ink);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(24,34,38,.35);}
.contact-lede a:hover{border-bottom-color:var(--accent-ink);}
.contact-meta{margin-top:30px;display:flex;flex-direction:column;gap:2px;}
.contact-meta a,.contact-meta span{font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--accent-ink);padding:6px 0;}
.contact-meta a:hover{color:var(--accent-marine);}
.cform{background:var(--surface-card);border:1.5px solid var(--line-black);border-radius:6px;padding:clamp(22px,3.4vw,34px);box-shadow:0 18px 44px rgba(24,34,38,.16),var(--pinline);}
.cform .svy-grid{display:grid;grid-template-columns:1fr;gap:38px;}
.cform .svy-field{border-bottom:0;padding:0;}
.cform .svy-field label{color:var(--accent-ink);}
.cform .svy-field input,.cform .svy-field textarea,.cform .svy-field select{background:var(--surface-input);border:1px solid var(--border-functional);border-radius:2px;color:var(--ink);font-size:1.04rem;padding:11px 13px;}
.cform .svy-field textarea{resize:vertical;min-height:104px;font-family:var(--sans);}
.cform .svy-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230c5a6d' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px;}
.cform .svy-field input::placeholder,.cform .svy-field textarea::placeholder{color:var(--ink-3);opacity:1;}
.cform .svy-field select option{color:var(--ink);}
.cform .svy-field input:focus,.cform .svy-field textarea:focus,.cform .svy-field select:focus{border-color:var(--surface-dark);box-shadow:0 0 0 2px rgba(20,163,184,.30);}
.cform .form-note{color:var(--ink-3);}
.cform .form-success{color:var(--ottoman);}
.faq{padding:96px 28px;background:var(--cream);}
.faq-list{max-width:880px;margin:0 auto;border-top:1px solid var(--rule-cobalt);}
.faq-item{border-bottom:1px solid var(--rule-cobalt);}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 4px;font-family:var(--serif);font-size:1.4rem;color:var(--ink);}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary em{color:var(--ottoman);font-style:italic;}
.faq-item .tog{font-family:var(--sans);font-size:1.6rem;color:var(--accent-ink);transition:transform var(--t-quick);flex:none;line-height:1;font-weight:300;}
.faq-item[open] .tog{transform:rotate(45deg);}
.faq-item p{margin:0;padding:0 4px 28px;color:var(--ink-2);max-width:68ch;font-size:1.04rem;line-height:1.7;}
.stats-strip__num{font-family:var(--serif);display:flex;align-items:center;justify-content:center;min-height:3.2rem;margin-bottom:.55rem;}
.stats-strip__num.is-word{font-style:italic;font-size:clamp(1.7rem,2.8vw,2.3rem);}
.pricing{
background:var(--paper);
padding:clamp(72px,9vw,120px) 0;
border-top:1px solid var(--rule-cobalt);
border-bottom:1px solid var(--rule-cobalt);
}
.price-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:18px;
}
.price-card{
background:#fff;
border:1px solid var(--rule-cobalt);
padding:26px;
box-shadow:0 18px 45px rgba(12,90,109,.08);
}
.price-kicker{
display:inline-block;
font-family:var(--display);
font-size:11px;
font-weight:700;
letter-spacing:.22em;
text-transform:uppercase;
color:var(--ottoman);
margin-bottom:16px;
}
.price-card h3{
font-family:var(--serif);
font-size:clamp(1.45rem,2.2vw,2rem);
line-height:1.08;
margin:0 0 18px;
}
.price-card .price{
font-family:var(--serif);
font-size:clamp(2rem,3.5vw,3rem);
color:var(--ottoman);
line-height:1;
margin-bottom:18px;
}
.price-card p{
margin:0 0 18px;
color:rgba(21,31,25,.74);
}
.price-card ul{
margin:22px 0 0;
padding:0;
list-style:none;
display:grid;
gap:10px;
}
.price-card li{
position:relative;
padding-left:22px;
color:rgba(21,31,25,.78);
}
.price-card li::before{
content:"";
position:absolute;
left:0;
top:.7em;
width:8px;
height:8px;
border-radius:50%;
background:var(--gold);
}
.pricing-note{
margin-top:24px;
padding:22px 24px;
background:rgba(255,211,77,.12);
border:1px solid rgba(255,211,77,.35);
color:var(--ink);
line-height:1.65;
}
@media (max-width:900px){.price-grid{grid-template-columns:1fr;}}
@media (max-width:700px){.pricing-note{font-size:.96rem;}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;transform:none;}}
.operator-proof h2,
.scope-guard h2{
font-family:var(--serif);
font-size:clamp(2.1rem,5vw,4.1rem);
line-height:.98;
letter-spacing:-.03em;
margin:0 0 20px;
}
.operator-proof h2 em,
.scope-guard h2 em{color:var(--surface-dark);font-style:italic;}
.price-card--starter{
border-style:dashed;
box-shadow:0 10px 30px rgba(12,90,109,.06);
}
.price-card--starter .price{
font-size:clamp(1.85rem,3vw,2.55rem);
}
.scope-guard{
background:var(--cream);
padding:clamp(58px,7vw,92px) 0;
border-bottom:1px solid var(--rule-cobalt);
}
.scope-guard__grid{
display:grid;
grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
gap:clamp(26px,5vw,54px);
align-items:start;
}
.scope-guard p{
max-width:54ch;
color:rgba(21,31,25,.74);
line-height:1.7;
}
.scope-list{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:12px;
}
.scope-list div{
position:relative;
background:#fff;
border:1px solid var(--rule-cobalt);
padding:16px 16px 16px 42px;
color:rgba(21,31,25,.78);
font-weight:700;
line-height:1.4;
box-shadow:0 10px 26px rgba(12,90,109,.05);
}
.scope-list div::before{
content:"";
position:absolute;
left:18px;
top:1.35em;
width:9px;
height:9px;
border-radius:50%;
background:var(--gold);
box-shadow:0 0 0 5px rgba(255,211,77,.14);
}
@media (max-width:900px){.operator-proof__grid,
.scope-guard__grid{grid-template-columns:1fr;}.scope-list{grid-template-columns:1fr;}}
@media (max-width:420px){.hero{padding-left:20px;padding-right:20px;}}
.wk-shot img,.story-portrait img,.hero-feature video{backface-visibility:hidden;}
@media (max-width:560px){.hero-actions{flex-direction:column;align-items:stretch;gap:12px;width:min(360px,100%);margin:0 auto;}}
.hero-name,.hero-tagline,.sec-head h2,.scope-guard h2,.svc h3,
.launch-card h3,.svc-detail h3{overflow-wrap:break-word;}
@media (max-width:600px){.hero{padding-left:20px;padding-right:20px;}.hero .hero-name{font-size:clamp(2.3rem,11vw,3.3rem);line-height:.96;}.hero .hero-tagline{font-size:clamp(1.12rem,5vw,1.55rem);max-width:92vw;}.hero .hero-lede{max-width:92vw;}.sec-head{padding-left:4px;padding-right:4px;}}
@media (max-width:420px){.hero .hero-name{font-size:clamp(2.05rem,12vw,2.9rem);}}
@keyframes tabIn{from{opacity:0;transform:translateY(10px);}
}
.tab-backbar{
background:var(--chrome-light);
border-bottom:2px solid var(--line-black);
}
.tab-backbar[hidden]{display:none;}
.tab-backbar__inner{
max-width:1180px;margin:0 auto;padding:11px 28px;
display:flex;align-items:center;gap:16px;
}
.tab-back{
display:inline-flex;align-items:center;gap:8px;
background:var(--accent-gold);
border:1.5px solid var(--line-black);
color:var(--line-black);
font-family:var(--display);font-size:11px;font-weight:800;
letter-spacing:.16em;text-transform:uppercase;
padding:9px 16px;border-radius:999px;cursor:pointer;
transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.tab-back span{font-size:15px;line-height:1;transform:translateY(-.5px);}
.tab-back:hover{background:#f2c53d;border-color:var(--line-black);transform:translateX(-2px);}
.tab-backbar__title{
font-family:var(--display);font-size:11px;font-weight:700;
letter-spacing:.22em;text-transform:uppercase;color:var(--accent-marine);
}
@media (max-width:560px){.tab-backbar__inner{padding:10px 18px;gap:12px;}.tab-backbar__title{display:none;}}
.launch{padding:clamp(54px,7vw,92px) 28px;background:var(--cream-2);border-top:1px solid var(--rule-cobalt);}
.launch-grid{
display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
max-width:1100px;margin:0 auto;
}
.launch-card{
position:relative;display:flex;flex-direction:column;gap:8px;
padding:26px 24px 22px;text-decoration:none;
background:var(--paper);border:1.5px solid var(--line-black);
box-shadow:0 14px 36px rgba(24,34,38,.08),var(--pinline);
transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
overflow:hidden;
}
.launch-card::before{
content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
background:var(--gold);transform:scaleY(0);transform-origin:top;
transition:transform .25s ease;
}
.launch-card:hover{transform:translateY(-4px);border-color:var(--line-black);box-shadow:0 22px 50px rgba(24,34,38,.14),var(--pinline);}
.launch-card:hover::before{transform:scaleY(1);}
.launch-card__num{
font-family:var(--display);font-size:11px;font-weight:700;
letter-spacing:.28em;color:var(--ottoman);font-variant-numeric:lining-nums tabular-nums;
}
.launch-card h3{font-family:var(--serif);font-size:1.5rem;margin:2px 0 2px;color:var(--ink);}
.launch-card p{font-size:.92rem;color:var(--ink-2);line-height:1.55;margin:0;flex:1;}
.launch-card__go{
margin-top:8px;font-family:var(--display);font-size:11px;font-weight:800;
letter-spacing:.2em;text-transform:uppercase;color:var(--ottoman);
}
.launch-card--cta{background:var(--accent-gold);border-color:var(--line-black);}
.launch-card--cta h3{color:#182226;}
.launch-card--cta p{color:rgba(24,34,38,.78);}
.launch-card--cta .launch-card__num,
.launch-card--cta .launch-card__go{color:#182226;}
@media (max-width:860px){.launch-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:540px){.launch-grid{grid-template-columns:1fr;}.launch{padding-left:20px;padding-right:20px;}}
.svc-detail{
margin-top:26px;background:var(--paper);
border:1px solid var(--rule-cobalt);
box-shadow:0 16px 42px rgba(12,90,109,.07);
padding:clamp(26px,4vw,44px);
}
.svc-detail__head{max-width:640px;margin:0 0 22px;}
.svc-detail__head h3{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.1rem);margin:8px 0 10px;}
.svc-detail__head h3 em{color:var(--ottoman);font-style:italic;}
.svc-detail__head p{color:var(--ink-2);line-height:1.6;margin:0;}
.svc-detail__steps{
list-style:none;counter-reset:dash;margin:0;padding:0;
display:grid;grid-template-columns:repeat(2,1fr);gap:14px 26px;
}
.svc-detail__steps li{
counter-increment:dash;position:relative;padding-left:42px;
color:var(--ink-2);line-height:1.55;font-size:.97rem;
}
.svc-detail__steps li::before{
content:counter(dash,decimal-leading-zero);
position:absolute;left:0;top:-2px;
font-family:var(--display);font-size:13px;font-weight:800;
color:var(--gold);font-variant-numeric:lining-nums tabular-nums;
border:1px solid rgba(255,211,77,.5);border-radius:8px;
width:28px;height:28px;display:grid;place-items:center;
}
.svc-detail__steps li strong{color:var(--ink);font-weight:700;}
@media (max-width:680px){.svc-detail__steps{grid-template-columns:1fr;}}
.tab-foot{
display:flex;gap:14px;justify-content:center;flex-wrap:wrap;
max-width:1180px;margin:0 auto;padding:clamp(36px,5vw,56px) 28px 8px;
}
.tab-page#tab-process .tab-foot,.tab-page#tab-contact .tab-foot{padding-top:8px;}
@media (max-width:560px){.tab-foot{flex-direction:column;align-items:stretch;width:min(360px,100%);}}
.svc .svc-demo{display:inline-block;margin-top:15px;font-family:var(--display);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ottoman);text-decoration:none;border-bottom:1px solid rgba(255,211,77,.55);padding-bottom:2px;transition:color .2s ease,border-color .2s ease;}
.svc .svc-demo:hover{color:var(--gold);border-color:var(--gold);}
.work-privacy{max-width:62ch;margin:14px auto 0;font-size:.9rem;line-height:1.5;color:var(--ink-3);font-style:italic;}
.tabrail{position:fixed;left:12px;top:50%;transform:translateY(-50%);z-index:95;display:flex;flex-direction:column;gap:5px;
background:rgba(12,90,109,.96);border:1px solid rgba(255,211,77,.42);border-radius:16px;padding:8px;
box-shadow:0 18px 44px rgba(12,90,109,.30);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:box-shadow .2s ease;}
.tabrail__toggle{display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;width:38px;height:32px;margin:0 auto 3px;background:none;border:0;cursor:pointer;border-radius:9px;}
.tabrail__toggle span{display:block;width:18px;height:2px;background:var(--gold);border-radius:2px;}
.tabrail__toggle:hover{background:rgba(255,211,77,.16);}
.tabrail__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;}
.tabrail__list a{display:flex;align-items:center;gap:11px;padding:9px;border-radius:11px;text-decoration:none;color:rgba(242,251,249,.85);font-family:var(--display);font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:background .18s,color .18s;}
.tabrail__ic{width:24px;min-width:24px;height:24px;text-align:center;color:var(--gold);font-size:15px;line-height:1;}
.tabrail__txt{max-width:0;opacity:0;overflow:hidden;transition:max-width .25s ease,opacity .2s ease;}
.tabrail__list a:hover{background:rgba(255,211,77,.16);color:#fff;}
.tabrail__list a.tab-current{background:rgba(255,211,77,.22);color:#fff;}
.tabrail__list a.tab-current .tabrail__ic{color:#ffd34d;}
.tabrail__cta{background:var(--gold);color:var(--cobalt-deep)!important;margin-top:3px;}
.tabrail__cta .tabrail__ic{color:var(--cobalt-deep);}
.tabrail__cta:hover{background:#ffd34d;color:var(--cobalt-deep)!important;}
@media (max-width:1100px){.tabrail{display:none;}}
@media (prefers-reduced-motion:reduce){.tabrail__txt{transition:none;}}
.global-contact{border-top:1px solid rgba(255,211,77,.3);}
.creds{max-width:1040px;margin:40px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:left;}
.creds__col{background:var(--paper);border:1.5px solid var(--line-black);border-radius:14px;padding:22px;box-shadow:0 12px 32px rgba(12,90,109,.06);}
.creds__h{font-family:var(--display);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--ottoman);margin:0 0 13px;}
.creds__list{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.creds__list li{position:relative;padding-left:18px;font-size:.92rem;color:var(--ink-2);line-height:1.45;}
.creds__list li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--gold);}
.creds-links{max-width:1040px;margin:22px auto 0;display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.creds-links a{font-family:var(--display);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ottoman);text-decoration:none;border:1px solid var(--rule-cobalt);border-radius:999px;padding:10px 17px;background:var(--paper);transition:border-color .2s,color .2s,background .2s;}
.creds-links a:hover{border-color:var(--gold);color:var(--gold);}
@media (max-width:820px){.creds{grid-template-columns:1fr;}}
.hero,.hero-inner{max-width:100%;}
.hero-inner{margin-left:auto;margin-right:auto;}
.hero .hero-name,.hero .hero-tagline,.hero .hero-lede{max-width:100%;overflow-wrap:break-word;}
.tab-page,.tab-page > section,.global-contact,.global-contact > section{max-width:100%;overflow-x:clip;}
@media (max-width:760px){.hero-inner{width:100%;}}
@media (max-width:600px){.hero .hero-name{font-size:clamp(1.8rem,9.5vw,2.5rem);line-height:.98;}.hero .hero-tagline{font-size:clamp(1.05rem,4.6vw,1.45rem);}}
@media (max-width:380px){.hero .hero-name{font-size:clamp(1.6rem,9vw,2.1rem);}}
.marquee{overflow:hidden;max-width:100%;}
@media (max-width:560px){.hero-actions{max-width:100%;}}
@media (max-width:560px){.tab-foot{width:100%;max-width:100%;box-sizing:border-box;padding-left:20px;padding-right:20px;}}
.pf-board{display:flex;flex-direction:column;gap:48px;}
.pf-sec__head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(255,211,77,.42);}
.pf-sec__eyebrow{font-family:var(--display);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--ottoman);font-weight:700;}
.pf-sec__note{font-size:.9rem;color:var(--ink-2);}
.pf-sec__count{margin-left:auto;font-family:var(--display);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);white-space:nowrap;}
.pf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;}
.pf-card{display:flex;flex-direction:column;text-decoration:none;background:var(--paper);border:1px solid rgba(12,90,109,.12);border-radius:5px;overflow:hidden;box-shadow:0 6px 18px rgba(12,90,109,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.pf-thumb{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--cobalt-deep);}
.pf-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s ease;}
.pf-body{display:flex;flex-direction:column;gap:7px;padding:13px 14px 15px;}
.pf-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.pf-tag{font-family:var(--display);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ottoman);font-weight:700;}
.pf-go{font-family:var(--sans);font-size:10px;letter-spacing:.03em;color:var(--ink-3);white-space:nowrap;}
.pf-title{font-family:var(--serif);font-size:1.05rem;line-height:1.18;color:var(--ink);}
.pf-title em{color:var(--ottoman);font-style:italic;}
.pf-card--locked .pf-go{color:var(--gold);}
.pf-desc{display:block;margin-top:4px;font-family:var(--sans);font-size:11.5px;line-height:1.45;color:var(--ink-3);}
@media (max-width:560px){.pf-grid{grid-template-columns:repeat(2,1fr);gap:12px;}.pf-title{font-size:.95rem;}.pf-body{padding:11px 11px 13px;}.pf-meta{flex-wrap:wrap;gap:2px 8px;}.pf-go{white-space:normal;}}
.pf-card--ill .pf-thumb{background:#f9eedc;}
.pf-card--ill .pf-thumb img{object-fit:contain;object-position:center;padding:4%;box-sizing:border-box;transform:none;}
.pf-title{font-size:1.14rem;}
.pf-tag{font-size:11px;}
.pf-go{font-size:11px;}
.hero-lede{font-size:1.18rem;line-height:1.55;}
.tl-nav-item.is-active{
background: var(--paper);
border-color: var(--brass);
color: var(--ink);
box-shadow: inset 4px 0 0 var(--sunset), 0 4px 12px -6px rgba(20, 163, 184, 0.35);
}
.tl-nav-item.is-active .tl-bronze{
border-color: var(--brass);
background: #fffbe6;
}
.work-feat,
.globe-showcase,
.story-portrait,
.hero-feature.video-frame{ background: var(--teal-deep) !important; color: var(--paper); }
.hero,
.hero-band{
background: linear-gradient(176deg, var(--paper) 0%, var(--parchment) 42%, var(--parchment-2) 80%, var(--brass) 100%) !important;
}
.hero .hero-name{
background: none !important;
-webkit-background-clip: border-box !important;
background-clip: border-box !important;
-webkit-text-fill-color: var(--ink) !important;
color: var(--ink) !important;
filter: none !important;
font-family: var(--font-display) !important;
font-weight: 500 !important;
letter-spacing: -0.02em !important;
}
.hero .hero-tagline{
color: var(--ink-soft) !important;
font-family: var(--font-display) !important;
font-style: italic;
max-width: 30ch;
margin-left: auto;
margin-right: auto;
}
.hero .hero-tagline em,
.hero .hero-tagline i{
color: var(--teal-deep) !important;
font-style: italic;
}
.hero .hero-lede,
.hero p{
color: var(--ink-soft) !important;
font-family: var(--font-body);
}
.tabrail__ic.tl-bronze-glyph{
display: inline-flex;
align-items: center;
justify-content: center;
width: 26px; height: 26px;
background: var(--paper);
border: 1px solid var(--brass);
border-radius: 4px;
box-shadow: inset 0 1px 0 rgba(255,246,219,0.7);
padding: 2px;
font-size: 0;
}
.tabrail__ic.tl-bronze-glyph svg{
width: 18px; height: 18px;
}
@media (min-width:1101px){.carry, .work{ padding-left: 96px !important; padding-right: 96px !important; }}
.hero-crest{display:flex;flex-direction:column;align-items:center;gap:16px;margin:0 0 20px;}
.hero-crest__logo{height:78px;width:auto;
filter:drop-shadow(0 3px 10px rgba(10,73,86,.28)) drop-shadow(0 0 22px rgba(53,181,201,.35));}
.hero-kicker{display:flex;align-items:center;justify-content:center;gap:16px;margin:0;
font-family:'Cinzel','Cormorant Garamond',Georgia,serif;font-weight:600;
font-size:.8rem;letter-spacing:.32em;text-transform:uppercase;
color:var(--brass);text-indent:.32em;}
.hero-kicker__rule{display:block;width:58px;height:1px;flex:none;
background:linear-gradient(90deg,transparent,var(--brass));}
.hero-kicker__rule:last-child{background:linear-gradient(270deg,transparent,var(--brass));}
.hero-kicker__dot{color:var(--brass-deep);}
.hero .hero-name{
font-family:'Cinzel','Cormorant Garamond',Georgia,serif !important;
font-weight:600 !important;
font-size:clamp(2.5rem,6.4vw,4.9rem);
line-height:1.05;letter-spacing:.015em !important;
text-wrap:balance;margin-bottom:10px;
}
.hero-orn{display:flex;align-items:center;justify-content:center;gap:14px;margin:2px auto 18px;}
.hero-orn span{display:block;width:110px;height:1px;
background:linear-gradient(90deg,transparent,rgba(20,163,184,.75));}
.hero-orn span:last-child{background:linear-gradient(270deg,transparent,rgba(20,163,184,.75));}
.hero-orn b{color:var(--brass-deep);font-size:.7rem;line-height:1;font-weight:400;}
.hero .hero-tagline{margin-bottom:34px;}
@media (max-width:640px){.hero-crest__logo{height:58px;}.hero-kicker{font-size:.7rem;letter-spacing:.24em;text-indent:.24em;gap:10px;flex-wrap:wrap;row-gap:4px;}.hero-kicker__rule{display:none;}.hero .hero-name{font-size:clamp(1.7rem,8.6vw,2.5rem);line-height:1.08;}.hero-orn span{width:64px;}}
/* rehomed from critical.css */
.hero-montage{ max-width: 1000px; margin: 12px auto 0px; display: grid; gap: 12px; }
.hero-montage a{ position: relative; display: block; border-radius: 13px; overflow: hidden; border: 1px solid var(--rule-cobalt,#c9b98a); box-shadow: rgba(12, 90, 109, 0.14) 0px 8px 26px; text-decoration: none; transition: transform 0.15s, box-shadow 0.15s; }
.hero-montage a:hover{ transform: translateY(-3px); box-shadow: rgba(12, 90, 109, 0.22) 0px 14px 34px; }
.hero-montage img{ display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.hm-feature{ aspect-ratio: 16 / 7; }
.hm-feature img{ object-position: 62% 42%; }
.hm-row{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.hm-tile{ aspect-ratio: 3 / 2; }
/* shot-dashboard is 1.75 in a 3/2 box, so cover trims 15% of its width. At
   desktop the 4-up row must keep one height, so bias the crop left: the
   business name and lead KPIs stay, only the last column gives way. */
.hm-tile:first-child img{ object-position: left center; }
@media (max-width: 640px){
  /* shot-dashboard is 1000x570 (1.75); the shared 3/2 box cropped 15% of its
     width under object-fit:cover, clipping the business name and KPI figures.
     Tiles stack single-column here, so a per-tile ratio costs no alignment. */
  .hm-tile:first-child{ aspect-ratio: 1.75; }
}
.hm-tag{ position: absolute; left: 11px; bottom: 11px; background: rgba(12, 90, 109, 0.88); color: rgb(243, 239, 228); font-family: var(--sans,system-ui,sans-serif); font-size: 11.5px; font-weight: 600; letter-spacing: 0.02em; padding: 6px 11px; border-radius: 999px; }
.hm-go{ position: absolute; right: 11px; top: 11px; background: var(--gold,#c9a24b); color: rgb(26, 18, 0); font-family: var(--sans,system-ui,sans-serif); font-size: 11px; font-weight: 700; padding: 5px 10px; border-radius: 999px; }
@media (max-width: 640px){
.hero-kicker { font-size: 0.7rem; letter-spacing: 0.24em; text-indent: 0.24em; gap: 4px 10px; flex-wrap: wrap; }
.hero .hero-name { font-size: clamp(1.7rem, 8.6vw, 2.5rem); line-height: 1.08; }
.hero-orn span { width: 64px; }
.hm-row { grid-template-columns: 1fr; }
.hm-feature { aspect-ratio: 16 / 10; }
.hm-feature img { object-position: center center; }
.hero-crest__logo { display: none; }
.hero-crest__logo { height: 58px; }
.hero-kicker__rule { display: none; }
}

/* ═══ tech-beach art direction (Atlas P4c) — all self-made SVG/CSS, zero
   external requests; decorative layers stay behind text and pass the
   contrast scan as non-text. ═══ */

/* horizon wash: warm sunset glow cresting over the parchment masthead */
.hero{
  background:
    radial-gradient(ellipse 640px 240px at 50% -80px, rgba(255,211,77,.38), rgba(255,211,77,0) 70%),
    linear-gradient(180deg, #fff6d6 0%, var(--surface-page) 38%);
}

/* wave rule: brass wave-line under the "Pick a tab" and testimonial heads */
.launch .sec-head::after,

/* card lift: portfolio cards only (launch cards own their pinline hover above) */
.pf-card{transition:transform .16s ease, box-shadow .16s ease;}
.pf-card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 14px 34px rgba(24,34,38,.14),
    0 0 0 1px var(--border-soft);
}

/* montage feature: brass postcard frame */
.hero-montage .hm-feature{
  outline:1px solid var(--border-soft);
  outline-offset:-6px;
}

/* dark sections: faint cream wave watermark riding the bottom edge */
.stats-strip,
.cform{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='18' viewBox='0 0 240 18'%3E%3Cpath d='M0 9 Q30 0 60 9 T120 9 T180 9 T240 9' fill='none' stroke='%23182226' stroke-opacity='.05' stroke-width='2.5'/%3E%3C/svg%3E");
  background-repeat:repeat-x;
  background-position:center bottom 10px;
}

@media (prefers-reduced-motion:reduce){
  .launch-card,.pf-card{transition:none;}
  .launch-card:hover,.pf-card:hover{transform:none;}
}

/* hero em: teal ocean italic per the approved design (7.0:1 on parchment) */
.hero .hero-name em{ color: var(--surface-dark); -webkit-text-fill-color: var(--surface-dark); }

/* v3: islamic star-and-cross frames, side-by-side testimonials (owner 08-16) */
.q-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch;}
@media (max-width:760px){.q-grid{grid-template-columns:1fr;}}
.q-frame{position:relative;background:#fff;border:1.5px solid var(--line-black);border-radius:6px;box-shadow:0 12px 30px rgba(24,34,38,.08),var(--pinline);padding:30px 26px 22px;margin:0;}
.q-frame::before{content:"";position:absolute;top:-15px;left:50%;width:30px;height:30px;margin-left:-15px;background:var(--pattern-seal) center/contain no-repeat;}
.q-frame blockquote{margin:0;font-family:var(--serif);font-size:1.05rem;color:var(--ink-2);}
.q-frame figcaption{margin-top:10px;font-size:.85rem;color:var(--ink-3);}
.q-frame figcaption strong{color:var(--ink);}
/* v3: uniform form rhythm (labels + boxes align across both columns) */
.cform .svy-field label{margin-bottom:10px;line-height:1.2;}
.cform .svy-field input,.cform .svy-field select{height:46px;}
.need-route{font-size:.8rem;color:var(--ink-3);margin:10px 0 0;line-height:1.55;font-style:italic;}
.need-route a{color:var(--accent-ink);}
.hero-orn b{color:var(--accent-marine);}

/* review fix: base outline:none suppressed the universal focus ring on the form */
.cform .svy-field input:focus-visible,.cform .svy-field select:focus-visible,.cform .svy-field textarea:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;}
