@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,400;1,9..144,500&family=Public+Sans:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');
:root{--ink:#0a0f16;--ink-2:#111a24;--ink-3:#182432;--paper:#eee7d8;--paper-2:#e4dbc7;--brass:#c89a3d;--brass-light:#e6c778;--ember:#b8502f;--ember-light:#e08355;--sage:#6d7a56;--sage-light:#a5b287;--ice:#6f93a8;--text-hi:#f4efe2;--text-mid:#b9c0cb;--text-dim:#7c8695;--line:rgba(244,239,226,.14);--line-soft:rgba(244,239,226,.08);--serif:'Fraunces',serif;--sans:'Public Sans',sans-serif;--mono:'JetBrains Mono',monospace;--max:1240px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--text-hi);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}::selection{background:var(--brass);color:var(--ink)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--max);margin:auto;padding:0 40px}.section{padding:110px 0}.section-tight{padding:78px 0}.dark{background:var(--ink)}.dark-2{background:var(--ink-2)}.paper{background:var(--paper);color:var(--ink)}.paper-2{background:var(--paper-2);color:var(--ink)}.ember-bg{background:linear-gradient(180deg,var(--ink),#1a120c)}.sage-bg{background:linear-gradient(180deg,var(--ink),#10160f)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.stagger>*{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.stagger.in>*{opacity:1;transform:none}.stagger.in>*:nth-child(2){transition-delay:.07s}.stagger.in>*:nth-child(3){transition-delay:.14s}.stagger.in>*:nth-child(4){transition-delay:.21s}.stagger.in>*:nth-child(5){transition-delay:.28s}.stagger.in>*:nth-child(6){transition-delay:.35s}.stagger.in>*:nth-child(7){transition-delay:.42s}.stagger.in>*:nth-child(8){transition-delay:.49s}
header{position:fixed;top:0;left:0;right:0;z-index:100;padding:22px 0;border-bottom:1px solid transparent;transition:background .35s,padding .35s,border-color .35s}header.scrolled{background:rgba(10,15,22,.92);backdrop-filter:blur(12px);padding:14px 0;border-color:var(--line)}.navrow{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:1.28rem;font-weight:600;letter-spacing:.02em}.logo-mark{width:34px;height:34px;border:1.5px solid var(--brass);display:grid;place-items:center;color:var(--brass-light);font:500 .8rem var(--mono)}nav ul{list-style:none;display:flex;gap:30px;align-items:center}nav a,.drop-btn{font:500 .76rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-mid);padding:5px 0;position:relative;background:none;border:0;cursor:pointer}.drop-btn{font-weight:500}.nav-link:after,.drop-btn:after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--brass);transition:.3s}.nav-link:hover:after,.drop-btn:hover:after{width:100%}.nav-link:hover,.drop-btn:hover{color:var(--text-hi)}.nav-cta{border:1px solid var(--brass);padding:10px 17px!important;color:var(--brass-light)!important}.nav-cta:hover{background:var(--brass);color:var(--ink)!important}.nav-cta:after{display:none}.dropdown{position:relative}.drop-menu{display:none;position:absolute;top:28px;left:-18px;min-width:255px;background:#0d141d;border:1px solid var(--line);padding:10px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.dropdown:hover .drop-menu,.dropdown:focus-within .drop-menu{display:block}.drop-menu a{display:block;padding:12px 10px;font-size:.7rem}.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}.burger span{display:block;width:24px;height:1.5px;background:var(--text-hi);margin:5px 0}.mobile-menu{position:fixed;inset:0;z-index:220;background:var(--ink);transform:translateY(-100%);transition:transform .42s cubic-bezier(.2,.7,.2,1);padding:96px 30px 40px;overflow:auto}.mobile-menu.open{transform:none}.mobile-menu a{font:500 1.75rem var(--serif);display:block;padding:14px 0;border-bottom:1px solid var(--line-soft)}.mobile-close{position:absolute;right:26px;top:24px;background:none;border:0;color:var(--text-hi);font-size:2rem;cursor:pointer}
.hero{min-height:100vh;display:flex;align-items:center;padding:145px 0 82px;background:radial-gradient(ellipse 900px 500px at 82% 8%,rgba(200,154,61,.13),transparent 60%),radial-gradient(ellipse 700px 500px at 10% 90%,rgba(111,147,168,.1),transparent 60%),var(--ink);position:relative;overflow:hidden}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,black,transparent 75%)}.hero-inner{position:relative;z-index:1;width:100%}.eyebrow{font:500 .7rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--brass-light);display:flex;align-items:center;gap:12px;margin-bottom:18px}.eyebrow .dash{width:28px;height:1px;background:var(--brass)}.hero-title,.page-title,.section-title{font-family:var(--serif);font-weight:500;letter-spacing:-.015em}.hero-title{font-size:clamp(2.8rem,6.4vw,6.1rem);line-height:.98;max-width:14ch}.hero-title em,.section-title em,.page-title em{font-weight:400;font-style:italic;color:var(--brass-light)}.hero-sub{max-width:600px;color:var(--text-mid);font-size:1.07rem;line-height:1.72;font-weight:300;margin-top:30px}.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:38px}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;text-transform:uppercase;letter-spacing:.09em;font-weight:600;font-size:.77rem;border:1px solid transparent;transition:.28s;cursor:pointer;background:none}.btn-primary{background:var(--brass);color:var(--ink)}.btn-primary:hover{background:var(--brass-light);transform:translateY(-2px)}.btn-ghost{border-color:var(--line);color:var(--text-hi)}.btn-ghost:hover{border-color:var(--brass);color:var(--brass-light)}.btn-ember{background:var(--ember);color:var(--text-hi)}.btn-ember:hover{background:var(--ember-light);color:var(--ink)}.btn-sage{background:var(--sage);color:var(--text-hi)}.btn-sage:hover{background:var(--sage-light);color:var(--ink)}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:78px}.stat{padding:24px 26px 5px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat-num{font:500 2.15rem var(--serif);color:var(--brass-light)}.stat-label{font:.68rem var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--text-dim);margin-top:5px}
.page-hero{padding:175px 0 92px;background:radial-gradient(ellipse 800px 420px at 80% 10%,rgba(200,154,61,.12),transparent 62%),var(--ink);border-bottom:1px solid var(--line)}.page-title{font-size:clamp(2.6rem,5.6vw,5rem);line-height:1;max-width:15ch}.lead{max-width:720px;font-size:1.06rem;line-height:1.75;color:var(--text-mid);font-weight:300;margin-top:25px}.section-head{max-width:720px;margin-bottom:56px}.section-title{font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.08}.paper .section-title,.paper-2 .section-title{color:var(--ink)}.paper .eyebrow,.paper-2 .eyebrow{color:var(--ember)}.paper .eyebrow .dash,.paper-2 .eyebrow .dash{background:var(--ember)}.section-desc{font-size:1rem;line-height:1.72;color:var(--text-mid);font-weight:300;margin-top:18px}.paper .section-desc,.paper-2 .section-desc{color:#4b4b43}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:58px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px}.copy p{font-size:1.02rem;line-height:1.78;color:var(--text-mid);font-weight:300;margin-bottom:18px}.paper .copy p,.paper-2 .copy p{color:#3e3e37}.copy p:first-child.lede{font:400 1.27rem/1.55 var(--serif);color:inherit}.rule-list{border-top:1px solid currentColor}.rule-row{display:flex;justify-content:space-between;gap:24px;padding:20px 0;border-bottom:1px solid rgba(127,127,127,.25);align-items:baseline}.rule-row strong{font:500 1.17rem var(--serif)}.rule-row span{font:.66rem var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.62;text-align:right}
.route-wrap{overflow-x:auto}.route-svg{display:block;min-width:920px;width:100%;height:auto}.route-line{stroke-dasharray:1100;stroke-dashoffset:1100;transition:stroke-dashoffset 2s cubic-bezier(.2,.7,.2,1)}.route-wrap.in .route-line{stroke-dashoffset:0}.route-node{opacity:0;transform-origin:center;transition:opacity .35s,transform .35s;transform:scale(.6)}.route-wrap.in .route-node{opacity:1;transform:scale(1)}.route-wrap.in .route-node:nth-of-type(2){transition-delay:.25s}.route-wrap.in .route-node:nth-of-type(3){transition-delay:.4s}.route-legend{display:flex;gap:28px;flex-wrap:wrap;margin-top:25px;font:.69rem var(--mono);color:var(--text-dim)}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:7px}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.portfolio-card{background:var(--ink-2);padding:30px 26px;min-height:245px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:background .35s}.portfolio-card:hover{background:var(--ink-3)}.portfolio-card .num{font:.68rem var(--mono);color:var(--text-dim);transition:.3s}.portfolio-card:hover .num{transform:translateY(-3px);color:var(--brass-light)}.portfolio-card h3{font:500 1.32rem/1.25 var(--serif);margin-bottom:9px}.portfolio-card p{font-size:.83rem;line-height:1.55;color:var(--text-mid);font-weight:300}.portfolio-card .meta{font:.65rem var(--mono);color:var(--brass-light);margin-top:18px}.soon{position:absolute;top:18px;right:18px;background:var(--brass-light);color:var(--ink);padding:4px 9px;border-radius:20px;font:.59rem var(--mono);letter-spacing:.09em;text-transform:uppercase}
.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.tag{border:1px solid var(--line);padding:7px 12px;font:.64rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mid)}.tabs{display:flex;border-bottom:1px solid var(--line);gap:24px;overflow:auto}.tab{background:none;border:0;border-bottom:2px solid transparent;color:var(--text-dim);padding:13px 0;font:.69rem var(--mono);text-transform:uppercase;white-space:nowrap;cursor:pointer}.tab.active{color:var(--ember-light);border-bottom-color:var(--ember)}.loc-item{display:none;grid-template-columns:28px 1fr auto;gap:15px;padding:19px 0;border-bottom:1px solid var(--line-soft);align-items:baseline}.loc-item.show{display:grid}.loc-idx{font:.68rem var(--mono);color:var(--text-dim)}.loc-name{font:500 1.05rem var(--serif)}.loc-addr{font-size:.79rem;color:var(--text-mid);margin-top:4px}.loc-tag{font:.62rem var(--mono);text-transform:uppercase;color:var(--brass-light)}
.team{display:grid;gap:1px;background:rgba(0,0,0,.14);border:1px solid rgba(0,0,0,.14)}.team-member{display:grid;grid-template-columns:.75fr 1.25fr;background:var(--paper);min-height:420px}.team-member:nth-child(even){grid-template-columns:1.25fr .75fr}.team-member:nth-child(even) .team-photo{order:2}.team-photo{min-height:420px;overflow:hidden;background:#d8cfbd}.team-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.02);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.team-member:hover .team-photo img{transform:scale(1.025)}.team-copy{padding:50px;display:flex;flex-direction:column;justify-content:center}.role{font:.67rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ember);margin-bottom:12px}.team-copy h3{font:500 2rem var(--serif);margin-bottom:18px}.team-copy p{color:#44443d;line-height:1.72;font-weight:300}.photo-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#d9cfbc,#b7aa90);color:#5c5547;font:500 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase}
.values{border-top:1px solid rgba(0,0,0,.16)}.value{border-bottom:1px solid rgba(0,0,0,.16)}.value button{width:100%;display:grid;grid-template-columns:60px 1fr auto;gap:20px;align-items:center;text-align:left;padding:24px 0;background:none;border:0;color:var(--ink);cursor:pointer}.value-num{font:.68rem var(--mono);color:#83745d}.value-name{font:500 1.45rem var(--serif)}.value-plus{font:300 1.4rem var(--sans)}.value-copy{max-height:0;overflow:hidden;transition:max-height .45s ease}.value.open .value-copy{max-height:130px}.value-copy p{padding:0 0 24px 80px;color:#4c4c44;line-height:1.65;max-width:720px}.founder{display:grid;grid-template-columns:.8fr 1.2fr;min-height:570px}.founder-img{background:#141c25;overflow:hidden}.founder-img img{width:100%;height:100%;object-fit:cover}.founder-quote{padding:70px;background:#111922;display:flex;flex-direction:column;justify-content:center}.quote-mark{font:400 7rem/1 var(--serif);color:var(--brass);opacity:.45}.founder-quote blockquote{font:400 clamp(1.7rem,3vw,2.7rem)/1.35 var(--serif)}.founder-quote cite{font:.68rem var(--mono);text-transform:uppercase;color:var(--brass-light);font-style:normal;margin-top:30px;letter-spacing:.08em}
.brand-row{display:grid;grid-template-columns:190px 1fr;gap:44px;padding:45px 0;border-top:1px solid var(--line);align-items:start}.brand-row:last-child{border-bottom:1px solid var(--line)}.brand-badge{aspect-ratio:1;background:var(--paper);display:grid;place-items:center;padding:25px;overflow:hidden}.brand-badge img{width:100%;height:100%;object-fit:contain}.brand-badge.textual{background:var(--ink-2);border:1px solid var(--line);font:600 2rem var(--serif);color:var(--brass-light);text-align:center}.brand-copy h2{font:500 2rem var(--serif);margin-bottom:12px}.brand-copy p{color:var(--text-mid);line-height:1.7;font-weight:300;max-width:780px}.brand-copy .meta{margin-top:14px;font:.66rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--brass-light)}
.franchise-cards{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(0,0,0,.14);border:1px solid rgba(0,0,0,.14)}.fr-card{padding:46px;background:var(--paper);min-height:330px;display:flex;flex-direction:column;justify-content:space-between}.fr-card h3{font:500 1.8rem var(--serif);margin-bottom:16px}.fr-card p{color:#4b4b43;line-height:1.7;font-weight:300}.text-link{display:inline-flex;gap:8px;align-items:center;font:.7rem var(--mono);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--brass);padding-bottom:4px;margin-top:30px}.timeline{position:relative;margin-top:30px}.timeline:before{content:'';position:absolute;left:22px;top:8px;bottom:8px;width:1px;background:rgba(0,0,0,.18)}.timeline-item{display:grid;grid-template-columns:46px 1fr;gap:24px;padding:0 0 42px;position:relative}.timeline-num{width:46px;height:46px;border:1px solid #b49a63;background:var(--paper);display:grid;place-items:center;font:.66rem var(--mono);color:#7b6743;z-index:1}.timeline-item h3{font:500 1.4rem var(--serif);margin:6px 0 10px}.timeline-item p{color:#4b4b43;line-height:1.68;font-weight:300;max-width:760px}.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.adv{background:var(--ink-2);padding:34px 28px;min-height:220px}.adv .num{font:.64rem var(--mono);color:var(--brass-light)}.adv h3{font:500 1.28rem var(--serif);margin:28px 0 10px}.adv p{font-size:.86rem;line-height:1.62;color:var(--text-mid);font-weight:300}
.jobs-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filter-btn{border:1px solid var(--line);background:none;color:var(--text-mid);padding:10px 14px;font:.65rem var(--mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.filter-btn.active{background:var(--brass);color:var(--ink);border-color:var(--brass)}.job-row{display:grid;grid-template-columns:1.4fr .8fr .7fr auto;gap:22px;align-items:center;padding:23px 0;border-top:1px solid var(--line)}.job-row:last-of-type{border-bottom:1px solid var(--line)}.job-title{font:500 1.2rem var(--serif)}.job-meta{font-size:.8rem;color:var(--text-mid)}.job-link{font:.65rem var(--mono);text-transform:uppercase;color:var(--brass-light)}.empty-state{border:1px solid var(--line);padding:52px;max-width:760px}.empty-state h3{font:500 1.65rem var(--serif);margin-bottom:12px}.empty-state p{color:var(--text-mid);line-height:1.7;font-weight:300}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font:.64rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.paper .field label{color:#6d6659}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:var(--ink-2);color:var(--text-hi);padding:14px 13px;font:400 .92rem var(--sans);outline:none;border-radius:0}.paper .field input,.paper .field textarea,.paper .field select{background:rgba(255,255,255,.22);border-color:rgba(0,0,0,.18);color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--brass)}.field textarea{min-height:145px;resize:vertical}.form-note{font-size:.75rem;line-height:1.55;color:var(--text-dim);margin-top:14px}.form-status{display:none;margin-top:14px;padding:12px 14px;border:1px solid var(--brass);color:var(--brass-light);font-size:.82rem}.form-status.show{display:block}.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}.contact-block{border-top:1px solid var(--line);padding:20px 0}.contact-block small{display:block;font:.62rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:7px}.contact-block a,.contact-block p{font:500 1.15rem var(--serif);line-height:1.45}
.legal{max-width:780px}.legal h2{font:500 1.75rem var(--serif);margin:42px 0 15px}.legal p,.legal li{color:#46463f;line-height:1.75;font-weight:300;margin-bottom:12px}.legal ul{padding-left:20px}.legal .updated{font:.64rem var(--mono);text-transform:uppercase;color:#7b715e;letter-spacing:.08em}.notice{padding:16px 18px;border-left:2px solid var(--brass);background:rgba(200,154,61,.08);color:var(--text-mid);font-size:.86rem;line-height:1.6;margin:25px 0}
footer{background:#070a0f;border-top:1px solid var(--line);padding:86px 0 38px}.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:44px}.foot-brand p{max-width:290px;color:var(--text-dim);font-size:.88rem;line-height:1.7;font-weight:300;margin-top:18px}.foot-col h4{font:.66rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--brass-light);margin-bottom:18px}.foot-col a,.foot-col p{display:block;color:var(--text-mid);font-size:.85rem;margin:10px 0;font-weight:300}.foot-col a:hover{color:var(--text-hi)}.foot-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:68px;padding-top:22px;border-top:1px solid var(--line);color:var(--text-dim);font-size:.73rem}.foot-bottom a{margin-left:18px}
@media(max-width:980px){nav#primary-nav{display:none}.burger{display:block}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.feature-grid,.grid-2,.contact-grid{grid-template-columns:1fr}.grid-3,.adv-grid{grid-template-columns:1fr 1fr}.team-member,.team-member:nth-child(even){grid-template-columns:1fr 1fr}.founder{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr 1fr}.brand-row{grid-template-columns:150px 1fr}.job-row{grid-template-columns:1fr 1fr}.job-link{text-align:left}}
@media(max-width:700px){.wrap{padding:0 22px}.section{padding:80px 0}.section-tight{padding:60px 0}.hero{min-height:auto;padding:135px 0 64px}.stat-strip{grid-template-columns:1fr 1fr}.stat{padding:18px 14px;border-bottom:1px solid var(--line)}.page-hero{padding:145px 0 70px}.portfolio-grid,.grid-3,.grid-4,.adv-grid,.franchise-cards{grid-template-columns:1fr}.team-member,.team-member:nth-child(even),.founder{grid-template-columns:1fr}.team-member:nth-child(even) .team-photo{order:0}.team-photo{min-height:390px}.team-copy{padding:34px 26px}.founder-img{min-height:460px}.founder-quote{padding:44px 28px}.brand-row{grid-template-columns:1fr}.brand-badge{max-width:170px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.foot-grid{grid-template-columns:1fr}.job-row{grid-template-columns:1fr;gap:6px}.empty-state{padding:34px 24px}.route-wrap{margin-right:-22px}.value button{grid-template-columns:40px 1fr auto}.value-copy p{padding-left:60px}.loc-item{grid-template-columns:24px 1fr}.loc-tag{grid-column:2}.hero-sub,.lead{font-size:.98rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.stagger>*{opacity:1;transform:none;transition:none}.route-line{stroke-dashoffset:0;transition:none}.route-node{opacity:1;transform:none;transition:none}*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* --- final production additions --- */
.header-logo-img{width:34px;height:34px;object-fit:contain;display:none}
.hero-kicker{display:flex;gap:12px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid var(--line);max-width:850px}.hero-kicker span{font:.66rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.hero-kicker span:not(:last-child)::after{content:'·';margin-left:12px;color:var(--brass)}
.industry-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.industry{background:var(--ink-2);padding:32px 24px;min-height:170px}.industry small{font:.62rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brass-light)}.industry h3{font:500 1.25rem var(--serif);margin-top:45px}.industry p{font-size:.8rem;line-height:1.55;color:var(--text-mid);margin-top:8px;font-weight:300}
.portfolio-logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.portfolio-logo-card{background:var(--ink-2);min-height:330px;padding:26px;display:flex;flex-direction:column;transition:background .35s}.portfolio-logo-card:hover{background:var(--ink-3)}.logo-well{height:138px;background:var(--paper);display:grid;place-items:center;padding:18px;margin-bottom:26px;overflow:hidden}.logo-well img{width:100%;height:100%;object-fit:contain}.portfolio-logo-card h3{font:500 1.3rem var(--serif);margin-bottom:9px}.portfolio-logo-card p{font-size:.83rem;line-height:1.58;color:var(--text-mid);font-weight:300}.portfolio-logo-card .meta{font:.62rem var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--brass-light);margin-top:auto;padding-top:20px}.portfolio-logo-card .arrow{transition:transform .3s;display:inline-block}.portfolio-logo-card:hover .arrow{transform:translateX(4px)}
.brand-hero{display:grid;grid-template-columns:1fr .72fr;gap:60px;align-items:center}.brand-hero-logo{background:var(--paper);padding:28px;max-width:270px}.brand-hero-logo img{width:100%;aspect-ratio:1;object-fit:contain}.brand-hero-image{position:absolute;right:0;top:0;bottom:0;width:42%;overflow:hidden;opacity:.36;mask-image:linear-gradient(to left,black,transparent)}.brand-hero-image img{width:100%;height:100%;object-fit:cover}
.feature-logo{width:150px;height:150px;background:var(--paper);padding:18px;display:grid;place-items:center;margin-bottom:28px}.feature-logo img{width:100%;height:100%;object-fit:contain}.feature-grid-final{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:start}.feature-photo{min-height:430px;overflow:hidden}.feature-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.feature-photo:hover img{transform:scale(1.025)}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.testimonial{border-top:1px solid var(--brass);padding-top:22px}.testimonial blockquote{font:400 1.12rem/1.62 var(--serif);font-style:italic}.testimonial cite{display:block;margin-top:18px;font:.65rem var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);font-style:normal}
.logo-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.vendor-logo{background:var(--paper);height:165px;padding:22px;display:grid;place-items:center}.vendor-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:saturate(.85)}
.photo-triptych{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:1px;background:var(--line)}.photo-triptych figure{min-height:420px;overflow:hidden}.photo-triptych img{width:100%;height:100%;object-fit:cover}
.info-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.info-columns h3{font:500 1.55rem var(--serif);margin-bottom:12px}.info-columns p{line-height:1.72;color:var(--text-mid);font-weight:300}.paper .info-columns p{color:#4a4a43}
.apply-band{display:flex;justify-content:space-between;gap:40px;align-items:end}.apply-band .section-head{margin-bottom:0}.brand-row .brand-copy ul{margin:18px 0 0 18px;color:var(--text-mid);font-weight:300;line-height:1.7}.brand-row .brand-copy li{margin:6px 0}.brand-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.media-poster{max-width:760px;margin:auto;background:var(--paper);padding:28px}.media-poster img{width:100%;height:auto}.media-note{text-align:center;max-width:700px;margin:32px auto 0;color:var(--text-mid);line-height:1.7;font-weight:300}
.contact-intro{font:400 1.25rem/1.6 var(--serif);margin-bottom:28px}.form-status{display:block;border:0;padding:0;margin-top:12px;color:var(--text-dim)}
.social-placeholder{opacity:.55;pointer-events:none}
.active-nav{color:var(--text-hi)!important}.active-nav:after{width:100%!important}
@media(max-width:1040px){.industry-grid{grid-template-columns:repeat(3,1fr)}.portfolio-logo-grid{grid-template-columns:repeat(2,1fr)}.brand-hero-image{width:35%}.logo-rail{grid-template-columns:repeat(4,1fr)}}
@media(max-width:780px){.industry-grid,.portfolio-logo-grid,.testimonial-grid,.info-columns{grid-template-columns:1fr}.feature-grid-final{grid-template-columns:1fr}.logo-rail{grid-template-columns:repeat(2,1fr)}.photo-triptych{grid-template-columns:1fr}.photo-triptych figure{min-height:300px}.apply-band{align-items:start;flex-direction:column}.brand-hero-image{display:none}.hero-kicker span{width:100%}.hero-kicker span:not(:last-child)::after{display:none}}


/* ============================================================
   2026 V2 — immersive scroll storytelling
   ============================================================ */
.hero-enter{opacity:0;transform:translateY(24px);animation:heroEnter .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--d,0s)}
@keyframes heroEnter{to{opacity:1;transform:none}}
.home-hero{min-height:100svh}.hero-contours{position:absolute;inset:0;pointer-events:none;opacity:.3;transform:translateY(var(--parallax-y,0px))}.hero-contours svg{width:100%;height:100%}.hero-contours path{fill:none;stroke:rgba(230,199,120,.18);stroke-width:1.2;stroke-dasharray:8 12;animation:contourDrift 18s linear infinite}@keyframes contourDrift{to{stroke-dashoffset:-120}}
.scroll-cue{margin-top:70px;display:flex;align-items:center;gap:13px;color:var(--text-dim);font:.64rem var(--mono);letter-spacing:.12em;text-transform:uppercase}.scroll-cue i{width:42px;height:1px;background:var(--line);position:relative;overflow:hidden}.scroll-cue i:after{content:'';position:absolute;inset:0;background:var(--brass);transform:translateX(-100%);animation:scrollCue 2s ease-in-out infinite}@keyframes scrollCue{50%{transform:translateX(0)}100%{transform:translateX(100%)}}
.home-scroll-story{background:var(--ink);padding:110px 0 80px}.home-story-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px;align-items:start}.home-story-sticky{position:sticky;top:140px;min-height:420px}.story-thread{height:150px;width:1px;background:var(--line);margin:42px 0 0 4px;position:relative;overflow:hidden}.story-thread span{display:block;width:100%;height:100%;background:var(--brass);transform-origin:top;transform:scaleY(var(--story-progress,0))}.home-story-steps{padding-top:18px}.home-story-step{min-height:68vh;padding:54px 0;border-top:1px solid var(--line);opacity:.28;transform:translateX(26px);transition:opacity .45s ease,transform .45s ease}.home-story-step.active{opacity:1;transform:none}.home-story-step small{font:.68rem var(--mono);letter-spacing:.13em;color:var(--brass-light)}.home-story-step h3{font:500 clamp(2rem,4vw,3.65rem)/1.05 var(--serif);max-width:13ch;margin:18px 0}.home-story-step p{max-width:580px;color:var(--text-mid);font-size:1.02rem;line-height:1.75;font-weight:300}.reverse-feature>*:first-child{order:1}.reverse-feature>*:last-child{order:2}.parallax-media img{transform:translateY(var(--media-y,0px)) scale(1.08);will-change:transform}
.franchise-hero{min-height:92svh;display:flex;align-items:flex-end;padding:155px 0 80px;position:relative;overflow:hidden;background:var(--ink)}.franchise-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.035);filter:saturate(.82);transition:transform 8s ease}.franchise-hero:hover .franchise-hero-bg{transform:scale(1.065)}.franchise-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,15,22,.06),rgba(10,15,22,.64));pointer-events:none}.franchise-hero-content{position:relative;z-index:2}.franchise-brand-mark{width:120px;height:120px;background:rgba(238,231,216,.96);padding:13px;display:grid;place-items:center;margin-bottom:28px}.franchise-brand-mark img{width:100%;height:100%;object-fit:contain}.pizza-hero .page-title{max-width:12ch}.cannabis-hero .page-title{max-width:13ch}.why-premium{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.12)}.dark .why-premium,.cannabis-cards{background:var(--line);border-color:var(--line)}.why-premium article{background:var(--paper);padding:36px 30px;min-height:245px}.dark .why-premium article,.cannabis-cards article{background:var(--ink-2)}.why-premium span{font:.66rem var(--mono);letter-spacing:.08em;color:var(--ember)}.cannabis-cards span{color:var(--sage-light)}.why-premium h3{font:500 1.35rem var(--serif);margin:46px 0 11px}.why-premium p{font-size:.88rem;line-height:1.7;color:#4b433b;font-weight:300}.dark .why-premium p,.cannabis-cards p{color:var(--text-mid)}
.ingredient-story{position:relative;background:#f1e7d9;color:#241811;min-height:320vh;padding:0}.cannabis-story{background:#0d1510;color:var(--text-hi)}.ingredient-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:start}.story-copy{padding:120px 0}.story-copy>.section-title{color:inherit;max-width:13ch}.pizza-story .story-copy>.section-title em{color:var(--ember)}.story-stages{margin-top:65px}.story-stages article{min-height:62vh;padding:34px 0;border-top:1px solid rgba(36,24,17,.15);opacity:.25;transition:opacity .45s,transform .45s;transform:translateX(20px)}.cannabis-story .story-stages article{border-color:var(--line)}.story-stages article.active{opacity:1;transform:none}.story-stages small{font:.66rem var(--mono);letter-spacing:.13em;color:var(--ember)}.cannabis-story .story-stages small{color:var(--sage-light)}.story-stages h3{font:500 clamp(1.7rem,3vw,2.7rem)/1.1 var(--serif);margin:14px 0}.story-stages p{max-width:520px;line-height:1.72;color:#55483e;font-weight:300}.cannabis-story .story-stages p{color:var(--text-mid)}.story-visual{height:320vh}.sticky-visual{position:sticky;top:0;height:100vh;display:grid;place-items:center;overflow:hidden}.visual-caption{position:absolute;left:0;right:0;top:110px;display:flex;justify-content:space-between;align-items:center;font:.63rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#7d6b5e}.visual-caption b{font-weight:500}.cannabis-visual .visual-caption{color:var(--text-dim)}
.pizza-svg{width:min(92%,610px);overflow:visible;filter:drop-shadow(0 30px 35px rgba(80,40,10,.14))}.pizza-layer{transform-box:fill-box;transform-origin:center;will-change:transform,opacity}.pizza-dough{opacity:calc(.1 + var(--pizza-dough,0)*.9);transform:scale(calc(.72 + var(--pizza-dough,0)*.28)) rotate(calc((1 - var(--pizza-dough,0))*-10deg))}.pizza-sauce{opacity:var(--pizza-sauce,0);transform:scale(var(--pizza-sauce,0))}.pizza-cheese{opacity:var(--pizza-cheese,0);transform:scale(calc(.75 + var(--pizza-cheese,0)*.25))}.pizza-toppings{opacity:var(--pizza-toppings,0);transform:scale(calc(.65 + var(--pizza-toppings,0)*.35)) rotate(calc((1 - var(--pizza-toppings,0))*8deg))}.pizza-finish{opacity:var(--pizza-finish,0)}.pizza-steam{opacity:var(--pizza-steam,0);transform:translateY(calc((1 - var(--pizza-steam,0))*26px))}.pizza-shadow{opacity:calc(.15 + var(--pizza-dough,0)*.55)}
.plant-svg{width:min(88%,560px);overflow:visible;filter:drop-shadow(0 30px 55px rgba(0,0,0,.28))}.plant-stem{stroke-dasharray:460;stroke-dashoffset:calc(460 * (1 - var(--plant-stem,0)))}.leaf-group,.bud-cluster,.pistils,.plant-glow{transform-box:fill-box;transform-origin:center;will-change:transform,opacity}.leaf-a{opacity:var(--plant-leaf-a,0);transform:scale(calc(.62 + var(--plant-leaf-a,0)*.38))}.leaf-b{opacity:var(--plant-leaf-b,0);transform:scale(calc(.62 + var(--plant-leaf-b,0)*.38))}.bud-cluster{opacity:var(--plant-bud,0);transform:scale(calc(.55 + var(--plant-bud,0)*.45)) translateY(calc((1 - var(--plant-bud,0))*28px))}.pistils{opacity:var(--plant-bloom,0);transform:scale(calc(.55 + var(--plant-bloom,0)*.45))}.plant-glow{opacity:calc(var(--plant-bloom,0)*.24);transform:scale(calc(.75 + var(--plant-bloom,0)*.35))}
.process-timeline{position:relative;max-width:900px}.timeline-line{position:absolute;left:30px;top:0;bottom:0;width:1px;background:var(--line)}.timeline-line i{display:block;width:100%;height:100%;background:var(--ember);transform:scaleY(var(--timeline-progress,0));transform-origin:top}.timeline-step{display:grid;grid-template-columns:62px 1fr;gap:25px;padding:32px 0 48px;position:relative}.timeline-step>span{width:60px;height:60px;background:var(--ink);border:1px solid var(--line);display:grid;place-items:center;font:500 .72rem var(--mono);color:var(--ember-light);z-index:1}.timeline-step h3{font:500 1.4rem var(--serif);margin:7px 0 8px}.timeline-step p{color:var(--text-mid);line-height:1.72;font-weight:300;max-width:650px}.format-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(36,24,17,.14);border:1px solid rgba(36,24,17,.14)}.format-grid article{background:var(--paper);padding:44px;min-height:270px}.format-icon{width:56px;height:56px;border:1px solid var(--ember);display:grid;place-items:center;font:.7rem var(--mono);color:var(--ember);margin-bottom:55px}.format-grid h3{font:500 1.55rem var(--serif);margin-bottom:10px}.format-grid p{line-height:1.72;color:#4b433b;font-weight:300}.franchise-support{align-items:start}.support-list{border-top:1px solid rgba(36,24,17,.18)}.support-list>div{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid rgba(36,24,17,.14)}.support-list b{font:500 1.16rem var(--serif)}.support-list span{color:#554d43;line-height:1.6;font-weight:300}.dark-support{border-color:var(--line)}.dark-support>div{border-color:var(--line)}.dark-support span{color:var(--text-mid)}
.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 0;background:none;border:0;color:var(--text-hi);font:500 1.12rem var(--serif);text-align:left;cursor:pointer}.faq-q span{font:400 1.4rem var(--mono);color:var(--brass-light);transition:transform .3s}.faq-item.open .faq-q span{transform:rotate(45deg)}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}.faq-a p{overflow:hidden;color:var(--text-mid);line-height:1.72;font-weight:300;padding-right:50px}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-item.open .faq-a p{padding-bottom:24px}.pizza-cta{background:linear-gradient(120deg,#f0e0cd,#f5eee4);color:#241811}.pizza-cta .section-title{color:#241811}.pizza-cta .section-desc{color:#55483e}.cannabis-cta{background:linear-gradient(120deg,#10190f,#182115 55%,var(--ink))}
.experience-editorial{display:flex;flex-direction:column;gap:1px;background:rgba(36,24,17,.12)}.experience-row{display:grid;grid-template-columns:1.08fr .92fr;min-height:520px;background:var(--paper)}.experience-row.reverse .experience-media{order:2}.experience-media{overflow:hidden}.experience-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.experience-row.in .experience-media img{transform:scale(1.02)}.experience-copy{padding:70px 60px;display:flex;flex-direction:column;justify-content:center}.experience-copy small{font:.65rem var(--mono);letter-spacing:.13em;color:var(--sage)}.experience-copy h3{font:500 clamp(2rem,3vw,3rem)/1.08 var(--serif);margin:18px 0}.experience-copy p{font-size:1rem;line-height:1.75;color:#4b4b43;font-weight:300}.candidate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(36,24,17,.14);border:1px solid rgba(36,24,17,.14)}.candidate-grid article{background:var(--paper);padding:34px 26px;min-height:255px}.candidate-grid span{font:.66rem var(--mono);color:var(--sage)}.candidate-grid h3{font:500 1.3rem var(--serif);margin:52px 0 10px}.candidate-grid p{line-height:1.65;color:#4b4b43;font-size:.88rem;font-weight:300}
@media(max-width:980px){.home-story-grid,.ingredient-grid{grid-template-columns:1fr}.home-story-sticky{position:relative;top:auto;min-height:0;margin-bottom:20px}.story-thread{display:none}.home-story-step{min-height:auto;opacity:1;transform:none;padding:44px 0}.ingredient-story,.cannabis-story{min-height:auto;padding:90px 0}.story-copy{padding:0}.story-stages article{min-height:auto;opacity:1;transform:none;padding:32px 0}.story-visual{height:auto;order:-1}.sticky-visual{position:relative;top:auto;height:auto;min-height:620px}.visual-caption{top:28px}.why-premium,.candidate-grid{grid-template-columns:repeat(2,1fr)}.experience-row,.experience-row.reverse{grid-template-columns:1fr}.experience-row.reverse .experience-media{order:0}.experience-media{min-height:390px}.reverse-feature>*:first-child,.reverse-feature>*:last-child{order:initial}}
@media(max-width:700px){.hero-enter{animation-duration:.7s}.home-hero{min-height:100svh}.scroll-cue{margin-top:44px}.why-premium,.candidate-grid,.format-grid{grid-template-columns:1fr}.why-premium article{min-height:210px}.sticky-visual{min-height:480px}.pizza-svg,.plant-svg{width:100%}.visual-caption{top:12px}.support-list>div{grid-template-columns:1fr;gap:7px}.timeline-step{grid-template-columns:50px 1fr}.timeline-line{left:24px}.timeline-step>span{width:48px;height:48px}.experience-copy{padding:42px 26px}.franchise-hero{min-height:88svh;padding:135px 0 64px}.franchise-brand-mark{width:95px;height:95px}.faq-a p{padding-right:0}.home-story-step h3{font-size:2.25rem}}
@media(prefers-reduced-motion:reduce){.hero-enter{opacity:1;transform:none;animation:none}.hero-contours path,.scroll-cue i:after{animation:none}.parallax-media img{transform:none}.pizza-dough,.pizza-sauce,.pizza-cheese,.pizza-toppings,.pizza-finish,.pizza-steam,.plant-stem,.leaf-group,.bud-cluster,.pistils,.plant-glow{transition:none}.home-story-step,.story-stages article{opacity:1;transform:none}}


/* ============================================================
   2026 V3 — polish + Lil Ava's scale story
   ============================================================ */
.team-member{color:var(--ink)}
.team-copy h3{color:var(--ink)!important}
.team-copy p{color:#44443d!important}

/* GK Mart upcoming wordmark */
.gkmart-well{width:100%;height:100%;min-height:150px;display:grid;place-items:center;background:linear-gradient(145deg,#f1eadc,#e2d5bb);position:relative;overflow:hidden}
.gkmart-well:before{content:'';position:absolute;inset:18px;border:1px solid rgba(36,24,17,.16)}
.gkmart-wordmark{font:600 clamp(1.35rem,2vw,2.15rem)/1 var(--serif);letter-spacing:.07em;color:#111922;position:relative;text-align:center}
.gkmart-wordmark small{display:block;margin-top:9px;font:500 .57rem var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.upcoming-tag{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font:500 .62rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-light)}
.upcoming-tag:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--brass)}

/* Scale metrics — graphical, not ordinary stat cards */
.scale-section{background:#111922;position:relative;overflow:hidden}
.scale-section:before{content:'';position:absolute;width:720px;height:720px;border:1px solid rgba(200,154,61,.08);border-radius:50%;right:-260px;top:-250px;box-shadow:0 0 0 90px rgba(200,154,61,.018),0 0 0 180px rgba(200,154,61,.012)}
.scale-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);position:relative;z-index:1}
.scale-metric{background:#0d131b;padding:42px 30px 36px;min-height:370px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;position:relative;overflow:hidden}
.metric-orbit{width:188px;height:188px;position:relative;display:grid;place-items:center;margin-bottom:26px}
.metric-orbit svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.metric-track{fill:none;stroke:rgba(244,239,226,.09);stroke-width:3}
.metric-ring{fill:none;stroke:var(--brass);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:439.82;stroke-dashoffset:439.82;transition:stroke-dashoffset 1.5s cubic-bezier(.2,.7,.2,1)}
.scale-metric:nth-child(2) .metric-ring{stroke:var(--ember-light)}
.scale-metric:nth-child(3) .metric-ring{stroke:var(--sage-light)}
.scale-metrics.in .metric-ring{stroke-dashoffset:var(--ring-end,40)}
.metric-value{font:500 3.15rem/1 var(--serif);color:var(--text-hi);letter-spacing:-.025em;position:relative}
.metric-static{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.metric-animated{display:inline-block}
.metric-label{font:500 .68rem/1.55 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-light);max-width:190px}
.scale-metric:nth-child(2) .metric-label{color:var(--ember-light)}
.scale-metric:nth-child(3) .metric-label{color:var(--sage-light)}
.metric-note{margin-top:10px;max-width:240px;color:var(--text-dim);font-size:.82rem;line-height:1.55}
.metric-spark{position:absolute;inset:auto 0 0;height:48px;opacity:.15;background:linear-gradient(90deg,transparent,rgba(200,154,61,.55),transparent);transform:translateX(-100%)}
.scale-metrics.in .metric-spark{animation:metricSweep 1.7s .15s ease both}
@keyframes metricSweep{to{transform:translateX(100%)}}

/* Real photographic pizza finish */
.pizza-stack{position:relative;width:min(620px,92%);aspect-ratio:1;display:grid;place-items:center}
.pizza-stack .pizza-svg{position:absolute;inset:0;width:100%;height:100%;transition:opacity .55s ease,filter .55s ease;opacity:calc(1 - (var(--pizza-real,0) * .72));filter:saturate(calc(1 - (var(--pizza-real,0) * .12)))}
.pizza-real-photo{position:absolute;width:73%;aspect-ratio:1;border-radius:50%;overflow:hidden;opacity:var(--pizza-real,0);transform:scale(calc(.84 + (var(--pizza-real,0) * .16))) rotate(calc((1 - var(--pizza-real,0)) * -5deg));transition:filter .2s linear;box-shadow:0 26px 70px rgba(74,38,18,.25);clip-path:circle(49% at 50% 50%);z-index:4}
.pizza-real-photo:after{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 10px rgba(135,73,28,.15),inset 0 0 35px rgba(0,0,0,.10);pointer-events:none}
.pizza-real-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.18);filter:saturate(1.13) contrast(1.04) sepia(.03)}
.pizza-real-badge{position:absolute;right:3%;bottom:11%;z-index:5;background:rgba(255,253,249,.92);color:#241811;border:1px solid rgba(36,24,17,.14);padding:10px 13px;font:500 .6rem var(--mono);letter-spacing:.11em;text-transform:uppercase;opacity:var(--pizza-real,0);transform:translateY(calc((1 - var(--pizza-real,0)) * 12px))}

/* South-to-north location journey */
.location-journey{position:relative;background:#f1e7d9;color:#241811;min-height:330vh;padding:0}
.location-journey-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.journey-copy{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;padding:92px 0}
.journey-copy .section-title{color:#241811;max-width:13ch}
.journey-copy .section-desc{color:#5b4d43;max-width:500px}
.journey-province-key{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px;font:500 .61rem var(--mono);letter-spacing:.09em;text-transform:uppercase;color:#75665b}
.journey-province-key span{display:flex;align-items:center;gap:7px}.journey-province-key i{width:7px;height:7px;border-radius:50%;display:block}.journey-province-key .ab i{background:var(--ember)}.journey-province-key .bc i{background:var(--brass)}.journey-province-key .nwt i{background:var(--sage)}
.journey-stage{height:330vh;position:relative}
.journey-sticky{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:minmax(250px,.82fr) 1.18fr;gap:34px;align-items:center}
.route-map{height:min(78vh,760px);width:100%;overflow:visible;filter:drop-shadow(0 18px 35px rgba(54,32,18,.08))}
.route-back{fill:none;stroke:rgba(36,24,17,.11);stroke-width:5;stroke-linecap:round}
.route-progress{fill:none;stroke:url(#routeGradient);stroke-width:5;stroke-linecap:round}
.route-dot{fill:#f1e7d9;stroke:#b68b47;stroke-width:3}
.route-dot.active{fill:#241811;stroke:#241811}
.route-marker-disc{fill:#fffaf2;stroke:#bd5a33;stroke-width:3}
.route-marker-crust{fill:#d78d3c}.route-marker-cheese{fill:#f0bf60}.route-marker-pep{fill:#ad3f2d}
.route-list{display:flex;flex-direction:column;justify-content:center;max-height:84vh;overflow:hidden;padding-right:4px}
.route-stop{display:grid;grid-template-columns:34px 1fr auto;gap:13px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(36,24,17,.10);opacity:.28;transform:translateX(15px);transition:opacity .28s ease,transform .28s ease,color .28s ease}
.route-stop.active{opacity:1;transform:none;color:#241811}
.route-stop.passed{opacity:.58;transform:none}
.route-stop .route-index{font:500 .59rem var(--mono);color:#9a7a57}
.route-stop strong{display:block;font:500 .98rem/1.2 var(--serif)}
.route-stop small{display:block;margin-top:3px;font:.57rem var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#8b7768}
.route-stop em{font:500 .52rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--ember);padding:4px 7px;font-style:normal;white-space:nowrap}
.route-stop[data-prov="NWT"] strong{color:#33422c}.route-stop[data-prov="BC"] strong{color:#745820}
.route-heading-kicker{margin-top:18px;font:500 .62rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ember)}

/* extra polish on franchise page */
.pizza-story .story-stages article.active h3{color:#7e321d}
.pizza-story .visual-caption{z-index:8}

@media(max-width:980px){
  .scale-metrics{grid-template-columns:1fr 1fr}.scale-metric:last-child{grid-column:1/-1}
  .location-journey{min-height:auto;padding:90px 0}.location-journey-grid{grid-template-columns:1fr}.journey-copy{position:relative;top:auto;height:auto;padding:0 0 44px}.journey-stage{height:auto}.journey-sticky{position:relative;top:auto;height:auto;grid-template-columns:.8fr 1.2fr}.route-map{height:720px}.route-list{max-height:none}
}
@media(max-width:700px){
  .scale-metrics{grid-template-columns:1fr}.scale-metric:last-child{grid-column:auto}.scale-metric{min-height:330px}
  .journey-sticky{grid-template-columns:115px 1fr;gap:16px}.route-map{height:760px}.route-stop{grid-template-columns:24px 1fr;padding:9px 0}.route-stop em{grid-column:2;justify-self:start}.route-stop strong{font-size:.9rem}
  .pizza-real-photo{width:76%}.pizza-real-badge{right:1%;bottom:6%}
}
@media(prefers-reduced-motion:reduce){.metric-ring{stroke-dashoffset:40!important;transition:none}.metric-spark{display:none}.pizza-real-photo{opacity:1;transform:none}.pizza-stack .pizza-svg{opacity:.15}.route-progress{stroke-dashoffset:0!important}.route-stop{opacity:1;transform:none}}


/* V4 — Northern Canada scenic route polish */
.route-visual-shell{position:relative;isolation:isolate;height:min(78vh,760px);display:grid;place-items:center;overflow:hidden;border-left:1px solid rgba(36,24,17,.06);border-right:1px solid rgba(36,24,17,.06)}
.route-visual-shell:before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(rgba(36,24,17,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(36,24,17,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,transparent,black 14%,black 86%,transparent)}
.journey-landscape{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.landscape-art{position:absolute;inset:0;width:100%;height:100%}
.scene-prairie{opacity:var(--scene-prairie,1);transition:opacity .18s linear}.scene-mountains{opacity:var(--scene-mountains,0);transition:opacity .18s linear}.scene-north{opacity:var(--scene-north,0);transition:opacity .18s linear}
.journey-coords{position:absolute;left:16px;top:16px;z-index:2;font:500 .48rem var(--mono);letter-spacing:.12em;color:rgba(70,54,40,.48);text-transform:uppercase}.journey-coords span{padding:0 6px;color:var(--ember)}
.journey-place-label{position:absolute;z-index:2;right:14px;font:500 .46rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:rgba(70,54,40,.44);border-right:1px solid rgba(70,54,40,.18);padding-right:8px;opacity:.85}.journey-place-south{bottom:8%}.journey-place-mid{top:47%}.journey-place-north{top:10%}
.aurora-ribbon{filter:blur(3px);animation:auroraDrift 8s ease-in-out infinite alternate}.aurora-2{animation-delay:-3s;animation-duration:10s}@keyframes auroraDrift{from{transform:translateX(-10px) skewX(-2deg)}to{transform:translateX(14px) skewX(3deg)}}
.route-map{position:relative;z-index:3;height:100%;max-height:760px}
.route-list{position:relative;z-index:4}
@media(min-width:981px){
  .journey-sticky{grid-template-columns:minmax(250px,.82fr) 1.18fr;gap:30px}
  .route-visual-shell{height:calc(100vh - 128px);max-height:720px}
  .route-map{height:100%;max-height:720px}
  .route-list{height:calc(100vh - 128px);max-height:720px;overflow:visible;justify-content:space-between;padding:5px 0}
  .route-stop{padding:4px 0;gap:11px;min-height:0}
  .route-stop strong{font-size:.90rem;line-height:1.08}.route-stop small{font-size:.49rem;margin-top:2px}.route-stop em{font-size:.46rem;padding:3px 6px}
}
@media(max-width:980px){.route-visual-shell{height:720px}.route-map{height:100%}}
@media(max-width:700px){.route-visual-shell{height:760px}.journey-place-label{display:none}.journey-coords{font-size:.42rem;left:8px;top:8px}}
@media(prefers-reduced-motion:reduce){.aurora-ribbon{animation:none}.scene-prairie,.scene-mountains,.scene-north{transition:none}}
