:root{--ink:#10172f;--ink-2:#1c2543;--orange:#ff5a1f;--orange-2:#ff7d4e;--cream:#f6efe5;--paper:#fffaf5;--white:#fffdf9;--muted:#68718a;--line:rgba(16,23,47,.16);--display:'Space Grotesk',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 var(--body)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.section-shell{padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2))}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;z-index:100;top:-60px;left:16px;background:var(--orange);color:var(--ink);padding:10px 14px;font-weight:800}.skip-link:focus{top:16px}.site-header{height:112px;padding:0 max(24px,calc((100vw - 1320px)/2));background:var(--ink);color:var(--white);display:flex;align-items:center;gap:34px;position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;align-items:center;width:132px;height:100%}.wordmark{width:116px;height:96px;display:block;object-fit:contain}.main-nav{margin-left:auto;display:flex;align-items:center;gap:29px}.main-nav a{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#cbd1e2;transition:color .2s}.main-nav a:hover{color:var(--white)}.header-cta{background:var(--orange);color:var(--ink);padding:13px 16px;font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;display:flex;align-items:center;gap:8px;transition:transform .2s,background .2s}.header-cta:hover{background:var(--orange-2);transform:translateY(-2px)}.live-dot{width:7px;height:7px;border-radius:50%;background:#aaff78;box-shadow:0 0 0 3px rgba(170,255,120,.2)}.menu-toggle{display:none}.hero{min-height:750px;background:var(--ink);color:var(--white);position:relative;overflow:hidden;display:flex;align-items:stretch}.hero-media{position:absolute;inset:0 0 0 38%;overflow:hidden}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-media-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(16,23,47,.92) 11%,rgba(16,23,47,.25) 65%,rgba(16,23,47,.2)),linear-gradient(0deg,rgba(16,23,47,.55),transparent 32%)}.hero-image-caption{position:absolute;right:35px;bottom:28px;display:flex;gap:26px;color:#fff;font-size:9px;letter-spacing:1.2px;text-transform:uppercase;opacity:.8}.hero-copy{width:100%;padding-top:64px;padding-bottom:84px;position:relative;z-index:2}.hero-topline{display:flex;justify-content:space-between;max-width:590px;color:#b7bfd4;font-size:9px;letter-spacing:1.5px;font-weight:700}.hero-mark{position:absolute;left:max(24px,calc((100vw - var(--max))/2));right:auto;top:88px;width:165px;height:165px;display:block;opacity:1}.hero-mark img{width:100%;height:100%;display:block;object-fit:contain}.eyebrow{margin:0 0 16px;color:var(--orange);font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}.eyebrow span{display:inline-block;width:25px;height:2px;background:currentColor;vertical-align:middle;margin-right:8px}.hero-copy .eyebrow{margin-top:214px}.eyebrow.light{color:#ff9b78}.hero h1,.section-intro h2,.story-copy h2,.locations-heading h2,.franchise-copy h2,.final-cta h2{font:700 clamp(42px,6vw,82px)/.96 var(--display);letter-spacing:-4px;margin:0}.hero h1 em,.section-intro h2 em,.story-copy h2 em,.locations-heading h2 em,.franchise-copy h2 em,.final-cta h2 em{font-style:normal;color:var(--orange)}.hero-lead{max-width:430px;margin:27px 0 29px;color:#d5d9e5;font-size:17px;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 19px;border:0;font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;transition:transform .2s,background .2s}.button span{font-size:18px;line-height:10px}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--orange);color:var(--ink);box-shadow:6px 6px 0 rgba(255,255,255,.9)}.button-primary:hover{background:var(--orange-2)}.text-link{color:var(--white);font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid var(--orange);padding-bottom:4px}.text-link span{color:var(--orange);font-size:19px;margin-left:4px}.hero-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:58px}.hero-badges span{border:1px solid rgba(255,255,255,.25);padding:7px 9px;color:#d2d6e2;font-size:9px;letter-spacing:.7px;text-transform:uppercase}.hero-badges span:nth-child(2){border-color:var(--orange);color:var(--orange)}.stats-bar{background:var(--orange);color:var(--ink);display:grid;grid-template-columns:repeat(3,1fr) minmax(220px,.85fr);padding:22px max(24px,calc((100vw - var(--max))/2));gap:20px;align-items:center}.stats-bar>div{display:flex;align-items:center;gap:11px;border-right:1px solid rgba(16,23,47,.25)}.stats-bar strong{font:700 36px/1 var(--display)}.stats-bar span{font-size:10px;line-height:1.15;text-transform:uppercase;letter-spacing:.8px}.stats-bar a{justify-self:end;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.stats-bar a span{font-size:19px;margin-left:7px;color:var(--ink)}.services{padding-top:120px;padding-bottom:120px}.section-intro,.locations-heading{display:grid;grid-template-columns:1fr .58fr;gap:80px;align-items:end}.section-intro h2,.locations-heading h2{font-size:clamp(43px,5.3vw,74px)}.section-intro>p,.locations-heading>p{max-width:420px;margin:0 0 7px;color:var(--muted);font-size:15px;line-height:1.7}.service-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:13px;margin-top:62px}.service-card{padding:0;min-height:420px;background:var(--cream);display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s,background .2s}.service-card:hover{transform:translateY(-6px);box-shadow:8px 8px 0 var(--orange)}.service-card-main{background:var(--ink);color:var(--white)}.service-image{height:190px;position:relative;overflow:hidden;flex-shrink:0;background:var(--ink)}.service-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,23,47,.58),transparent 60%)}.service-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86);transition:transform .45s ease}.service-card:hover .service-image img{transform:scale(1.06)}.service-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}.service-index{font:700 12px var(--display);color:var(--orange);letter-spacing:1px}.service-icon{margin-top:18px;color:var(--orange);font-size:37px;line-height:1}.service-card h3{font:700 32px/1 var(--display);letter-spacing:-1.5px;margin:18px 0 10px}.service-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:0;max-width:260px}.service-card-main p{color:#c5cadb}.service-card a{margin-top:auto;padding-top:22px;color:var(--orange-deep);font-size:10px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.service-card-main a{color:var(--orange)}.tools-strip{margin-top:14px;min-height:214px;display:grid;grid-template-columns:280px 1fr;background:var(--ink);color:var(--white);overflow:hidden}.tools-strip img{width:100%;height:100%;min-height:214px;object-fit:cover;display:block;filter:saturate(.85)}.tools-strip div{padding:35px 40px;display:flex;flex-direction:column;justify-content:center}.tools-strip span{color:var(--orange);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.4px}.tools-strip strong{font:700 30px/1.05 var(--display);letter-spacing:-1px;margin-top:14px}.brand-story{background:var(--ink);color:var(--white);position:relative;overflow:hidden}.brand-story:before{content:'THE BARBER EXPRESS  ·  THE BARBER EXPRESS  ·  THE BARBER EXPRESS  ·';position:absolute;left:-3%;right:-3%;top:25px;transform:rotate(-2deg);padding:10px 0;background:var(--orange);color:var(--ink);font:700 9px var(--display);letter-spacing:2px;white-space:nowrap;text-align:center}.story-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:125px;padding-bottom:125px}.story-image{min-height:500px;position:relative;overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.85);opacity:.88}.story-stamp{position:absolute;right:21px;bottom:22px;border:1px solid var(--orange);padding:17px;color:var(--orange);font:700 10px/1.2 var(--display);letter-spacing:1.2px}.story-copy{align-self:center}.story-copy h2{font-size:clamp(42px,5vw,70px)}.story-copy>p:not(.eyebrow){max-width:510px;color:#ccd2e2;font-size:16px;line-height:1.75;margin:28px 0 33px}.principles{border-top:1px solid rgba(255,255,255,.16)}.principles span{display:block;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16);color:#eef0f6;font-size:12px;font-weight:700}.principles b{display:inline-block;width:33px;color:var(--orange)}.locations{padding-top:120px;padding-bottom:125px}.locations-heading h2{font-size:clamp(43px,5.3vw,74px)}.map-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-top:60px}.map-card{background:var(--ink);color:var(--white);padding:21px;min-height:630px;position:relative;overflow:hidden}.map-card:after{content:'';position:absolute;right:-130px;bottom:-170px;width:390px;height:390px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.025);pointer-events:none}.map-card-top,.panel-label{display:flex;justify-content:space-between;color:#afb7cd;font-size:9px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase}.map-stage{position:relative;width:min(520px,100%);height:520px;margin:14px auto 0}.map-stage img{width:100%;height:100%;object-fit:contain;display:block;filter:grayscale(1) invert(1) opacity(.72)}.map-stage:before{content:'';position:absolute;inset:8% 11%;background:radial-gradient(circle at 55% 45%,rgba(255,90,31,.16),transparent 38%);pointer-events:none}.map-pin{position:absolute;width:29px;height:29px;border:2px solid var(--ink);border-radius:50%;background:var(--orange);color:var(--ink);font:700 8px var(--display);box-shadow:0 0 0 4px rgba(255,90,31,.17);transition:transform .2s,background .2s;z-index:2}.map-pin:hover,.map-pin.is-active{transform:scale(1.3);background:var(--white)}.pin-pa{left:59%;top:31%}.pin-ma{left:73%;top:37%}.pin-ce{left:82%;top:39%}.pin-pe{left:80%;top:48%}.pin-pi{left:73%;top:47%}.pin-sp{left:65%;top:71%}.map-legend{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.15);padding-top:14px;color:#afb7cd;font-size:10px;letter-spacing:.6px;text-transform:uppercase}.map-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--orange);margin-right:7px}.map-legend small{font-size:9px}.locations-panel{background:var(--cream);padding:25px;min-height:630px}.state-switcher{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:19px 0 21px}.state-button{border:1px solid transparent;background:transparent;color:var(--ink);padding:8px 11px;font-size:10px;font-weight:800;letter-spacing:.7px}.state-button:hover,.state-button.is-active{background:var(--ink);color:var(--white)}.state-button-new small{color:var(--orange-deep);font-size:7px;margin-left:3px}.state-detail{margin-top:30px}.state-detail h3{font:700 35px/1 var(--display);letter-spacing:-1.5px;margin:0 0 7px}.state-detail>p{color:var(--muted);font-size:13px;margin:0 0 24px}.state-unit{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:14px 0}.state-unit strong{font:600 13px var(--display)}.state-unit span{font-size:11px;color:var(--muted)}.state-unit a{color:var(--orange-deep);font-size:10px;font-weight:800;text-transform:uppercase;white-space:nowrap}.state-badge{display:inline-block;background:var(--orange);color:var(--ink);font-size:8px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:5px 7px;margin-bottom:14px}.location-note{font-size:10px;line-height:1.55;color:var(--muted);margin:27px 0 0}.franchise{background:var(--orange);color:var(--ink);display:grid;grid-template-columns:.78fr 1.22fr;min-height:610px}.franchise-visual{position:relative;background:var(--ink);color:var(--white);overflow:hidden;min-height:610px;padding:44px;display:flex;flex-direction:column;justify-content:end}.franchise-visual:before{content:'';position:absolute;left:-150px;top:-180px;width:520px;height:520px;border:1px solid rgba(255,255,255,.22);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.03),0 0 0 130px rgba(255,255,255,.03)}.franchise-visual img{position:absolute;top:38px;left:38px;width:150px;height:150px;object-fit:contain}.franchise-visual p{position:relative;margin:0;color:var(--orange);font:700 48px/.94 var(--display);letter-spacing:-2px}.franchise-number{position:absolute;right:-12px;bottom:-60px;color:rgba(255,255,255,.07);font:700 260px/.8 var(--display);letter-spacing:-18px}.franchise-copy{padding-top:115px;padding-bottom:110px}.franchise-copy .section-shell{padding-left:0;padding-right:max(24px,calc((100vw - var(--max))/2))}.franchise-copy h2{font-size:clamp(43px,5.5vw,75px)}.franchise-copy h2 em{color:var(--white)}.franchise-copy>p:not(.eyebrow){max-width:500px;color:#5a301f;font-size:15px;line-height:1.7;margin:27px 0 26px}.franchise-form{max-width:620px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.franchise-form label:last-of-type{grid-column:1/-1}.franchise-form label span{display:block;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px}.franchise-form input{width:100%;background:rgba(255,255,255,.17);border:1px solid rgba(16,23,47,.55);color:var(--ink);padding:13px 12px;outline:none;font-size:13px}.franchise-form input:focus{background:var(--white);box-shadow:4px 4px 0 var(--ink)}.franchise-form input::placeholder{color:#74351f}.button-light{margin-top:7px;background:var(--ink);color:var(--white);box-shadow:5px 5px 0 var(--white)}.form-note{display:block;max-width:600px;margin-top:18px;color:#74351f;font-size:10px}.final-cta{text-align:center;padding-top:125px;padding-bottom:125px}.final-cta h2{font-size:clamp(48px,6vw,82px);margin:0 0 35px}.site-footer{background:var(--ink);color:var(--white)}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;padding-top:48px;padding-bottom:43px}.footer-logo{width:170px}.footer-logo img{display:block;width:100%;height:auto}.footer-main>p{justify-self:center;color:#b7bfd3;font-size:12px}.footer-links{justify-self:end;display:flex;flex-direction:column;gap:8px;text-align:right}.footer-links a{color:#c9cedd;font-size:11px}.footer-links a:last-child{color:var(--orange);font-weight:800;text-transform:uppercase}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:16px;padding-bottom:16px;display:flex;justify-content:space-between;color:#aeb7ce;font-size:10px;letter-spacing:.8px;text-transform:uppercase}.footer-bottom a{color:var(--white)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.main-nav{gap:16px}.header-cta{padding:11px 12px}.hero-media{inset:0 0 0 28%}.hero-copy{padding-top:48px}.hero h1{font-size:clamp(42px,7vw,68px)}.hero-mark{right:calc(100% - 560px)}.section-intro,.locations-heading{gap:40px}.map-layout{grid-template-columns:1fr}.map-card,.locations-panel{min-height:auto}.franchise{grid-template-columns:1fr}.franchise-visual{min-height:400px}.franchise-copy{padding-top:80px;padding-bottom:85px}.franchise-copy .section-shell{padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2))}.footer-main{grid-template-columns:1fr auto}.footer-main>p{grid-column:1/-1;grid-row:2;justify-self:start}}@media(max-width:680px){.section-shell{padding-left:20px;padding-right:20px}.site-header{height:90px;padding:0 20px}.brand{width:92px}.wordmark{width:82px;height:76px}.menu-toggle{display:flex;margin-left:auto;border:0;background:none;width:34px;height:30px;padding:4px;flex-direction:column;justify-content:center;gap:6px}.menu-toggle i{height:2px;width:22px;background:var(--white);transition:transform .2s}.menu-toggle[aria-expanded=true] i:first-of-type{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-of-type{transform:translateY(-4px) rotate(-45deg)}.main-nav{display:none;position:absolute;left:0;right:0;top:90px;background:var(--ink);padding:19px 20px 23px;flex-direction:column;align-items:flex-start;gap:16px;border-top:1px solid rgba(255,255,255,.1)}.main-nav.is-open{display:flex}.header-cta{display:none}.hero{min-height:740px;display:block}.hero-media{inset:34% 0 0 0}.hero-media-shade{background:linear-gradient(0deg,rgba(16,23,47,.82),rgba(16,23,47,.08) 70%),linear-gradient(90deg,rgba(16,23,47,.23),rgba(16,23,47,.23))}.hero-copy{padding-top:38px;padding-bottom:46px}.hero-topline{font-size:8px}.hero-mark{position:static;width:142px;height:142px;margin-top:26px}.hero-copy .eyebrow{margin-top:22px}.hero h1{font-size:clamp(41px,12.5vw,57px);letter-spacing:-2.7px}.hero-lead{font-size:15px;margin:21px 0 24px}.hero-badges{margin-top:33px}.hero-image-caption{right:15px;bottom:16px;gap:12px;font-size:7px}.stats-bar{grid-template-columns:1fr 1fr;padding:18px 20px;gap:12px}.stats-bar>div{border:0}.stats-bar>div:nth-child(3){display:none}.stats-bar a{display:none}.stats-bar strong{font-size:29px}.stats-bar span{font-size:9px}.services,.locations{padding-top:77px;padding-bottom:78px}.section-intro,.locations-heading{display:block}.section-intro>p,.locations-heading>p{margin-top:23px;font-size:14px}.section-intro h2,.locations-heading h2{font-size:44px;letter-spacing:-2.5px}.service-grid{grid-template-columns:1fr;gap:10px;margin-top:39px}.service-card{min-height:430px;padding:0}.service-image{height:175px}.service-body{padding:20px 22px 24px}.service-icon{margin-top:18px}.service-card h3{font-size:28px}.tools-strip{grid-template-columns:1fr;min-height:0}.tools-strip img{height:170px;min-height:0}.tools-strip div{padding:25px 22px 28px}.tools-strip strong{font-size:26px}.story-inner{display:block;padding-top:93px;padding-bottom:80px}.story-image{min-height:340px}.story-copy{padding-top:49px}.story-copy h2{font-size:44px;letter-spacing:-2.5px}.story-copy>p:not(.eyebrow){font-size:15px}.locations-heading h2{font-size:44px}.map-layout{margin-top:39px}.map-card{padding:16px;min-height:0}.map-stage{height:390px}.map-pin{width:26px;height:26px;font-size:7px}.locations-panel{padding:20px}.state-detail h3{font-size:32px}.state-unit{align-items:flex-start;flex-wrap:wrap}.state-unit a{margin-left:31px}.franchise-visual{min-height:350px;padding:25px}.franchise-visual img{top:25px;left:25px;width:120px;height:120px}.franchise-visual p{font-size:39px}.franchise-number{font-size:180px;bottom:-42px}.franchise-copy{padding-top:65px;padding-bottom:78px}.franchise-copy h2{font-size:44px;letter-spacing:-2.5px}.franchise-form{grid-template-columns:1fr}.franchise-form label:last-of-type{grid-column:auto}.button-light{width:calc(100% - 5px)}.final-cta{padding-top:80px;padding-bottom:80px}.final-cta h2{font-size:49px;letter-spacing:-2.5px}.footer-main{grid-template-columns:1fr;padding-top:35px;padding-bottom:30px}.footer-main>p{grid-column:auto;grid-row:auto;justify-self:start}.footer-links{justify-self:start;text-align:left}.footer-bottom{flex-wrap:wrap;gap:9px;padding-left:20px;padding-right:20px}.footer-bottom span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.service-card,.header-cta,.map-pin{transition:none}}

/* Revisão de mídia — logomarca oficial e seis serviços fotografados. */
:root { --orange-deep: #a83813; }
section[id] { scroll-margin-top: 124px; }
.brand { width: 112px; flex-shrink: 0; }
.wordmark { width: auto; height: 96px; max-width: 112px; object-fit: contain; }
.hero-mark img,
.franchise-visual img,
.footer-logo img { object-fit: contain; }
.service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.service-card { min-height: 440px; }
.service-image { height: 235px; }
.service-image img { object-position: center; }
.service-body { padding: 25px 26px 28px; }
.service-index { font-size: 10px; letter-spacing: 1.25px; }
.service-card h3 { margin: 22px 0 12px; font-size: 30px; line-height: 1.06; }
.service-card p { max-width: none; }
.service-card a { line-height: 1.5; }
.service-card:nth-child(5) { background: #e9e2d7; }
.service-card:nth-child(6) { background: var(--ink-2); color: var(--white); }
.service-card:nth-child(6) p { color: #c5cadb; }
.service-card:nth-child(6) a { color: var(--orange); }
.service-card-main a { color: var(--orange); }
.service-card a:focus-visible,
button:focus-visible,
a:focus-visible { outline: 3px solid var(--orange-2); outline-offset: 4px; }
.tools-strip { margin-top: 22px; }
.hero-media img { filter: saturate(.85); }
.hero-image-caption { opacity: .85; }
.footer-logo { width: 130px; }
.footer-logo img { max-height: 145px; width: auto; max-width: 100%; }
@media (min-width: 681px) and (max-width: 900px) {
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-image { height: 230px; }
}
@media (max-width: 680px) {
  section[id] { scroll-margin-top: 100px; }
  .brand { width: 92px; }
  .wordmark { width: auto; height: 76px; max-width: 92px; }
  .hero-mark { width: 142px; height: auto; aspect-ratio: 1966 / 2000; }
  .hero-mark img { height: auto; }
  .hero-media { inset: 34% 0 0; }
  .hero-media-shade {
    background: linear-gradient(0deg, rgba(16,23,47,.88), rgba(16,23,47,.35) 70%),
                linear-gradient(180deg, var(--ink), transparent 38%);
  }
  .service-grid { grid-template-columns: 1fr; gap: 20px; }
  .service-card { min-height: 0; }
  .service-image { height: auto; aspect-ratio: 4 / 3; }
  .service-body { padding: 24px 24px 28px; min-height: 230px; }
  .service-card h3 { font-size: 30px; }
  .service-card p { font-size: 14px; }
  .service-card a { font-size: 10px; }
  .hero-badges span { color: #fff; background: rgba(16,23,47,.75); }
  .hero-badges span:nth-child(2) { color: #ff9b78; }
  .tools-strip { margin-top: 20px; }
  .story-image { height: 380px; min-height: 0; }
  .map-stage { height: auto; aspect-ratio: 1; }
  .hero-topline { flex-wrap: wrap; gap: 10px; }
  .stats-bar { grid-template-columns: 1fr 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .service-image img { transition: none; }
}

.stats-bar > div:nth-child(3) strong {
  font-size: clamp(17px, 2.2vw, 28px);
  letter-spacing: -.7px;
}

/* Logomarca ilustrada completa confirmada pelo cliente; conservar proporção e arte. */
.brand { width: 124px; flex-shrink: 0; }
.brand-logo { display: block; width: 106px; height: 108px; max-width: 100%; object-fit: contain; }
.hero-mark { width: 165px; height: 165px; aspect-ratio: 1966 / 2000; top: 88px; }
.hero-mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.hero-copy .eyebrow { margin-top: 214px; }
.franchise-visual img { width: 150px; height: 150px; max-width: calc(100% - 76px); object-fit: contain; }
.footer-logo { width: 130px; }
.footer-logo img { width: auto; height: auto; max-height: 145px; max-width: 100%; object-fit: contain; }
@media (min-width: 681px) and (max-width: 900px) {
  .brand { width: 116px; }
  .brand-logo { width: 100px; height: 102px; }
  .hero-mark { width: 155px; height: 158px; }
}
@media (max-width: 680px) {
  .brand { width: 92px; }
  .brand-logo { width: 76px; height: 78px; max-width: 100%; }
  .hero-mark { position: static; width: 142px; height: 145px; aspect-ratio: 1966 / 2000; margin-top: 26px; }
  .hero-mark img { width: 100%; height: 100%; }
  .hero-copy .eyebrow { margin-top: 22px; }
  .franchise-visual img { top: 25px; left: 25px; width: 120px; height: 122px; max-width: calc(100% - 50px); }
}

.service-offer { margin-top: 18px; padding: 22px 28px; display: flex; align-items: center; justify-content: space-between; gap: 18px; background: var(--ink); color: var(--white); }
.service-offer > div { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.service-offer span { color: var(--orange); font-size: 9px; font-weight: 800; letter-spacing: 1.3px; text-transform: uppercase; }
.service-offer strong { font: 700 16px/1.35 var(--display); }
.service-offer i { color: var(--orange); font-style: normal; padding: 0 4px; }
.service-offer small { max-width: 245px; color: #c5cadb; font-size: 9px; line-height: 1.5; text-align: right; }
@media (max-width: 680px) {
  .service-offer { align-items: flex-start; flex-direction: column; gap: 12px; padding: 21px 20px; }
  .service-offer > div { align-items: flex-start; flex-direction: column; gap: 9px; }
  .service-offer strong { font-size: 15px; }
  .service-offer small { text-align: left; }
}


/* Landing de parcerias: duas jornadas, captura clara e canais de contato explícitos. */
.franchise { grid-template-columns: .62fr 1.38fr; }
.franchise-visual { min-height: 720px; }
.franchise-visual img { width: 150px; height: 153px; }
.franchise-visual p { font-size: 44px; }
.franchise-copy { padding-top: 76px; padding-bottom: 74px; }
.franchise-copy .eyebrow.light { color: var(--ink); }
.franchise-copy .eyebrow.light span { background: var(--ink); }
.franchise-copy h2 { max-width: 820px; font-size: clamp(35px, 3.7vw, 54px); line-height: 1.02; letter-spacing: -2.6px; }
.franchise-copy h2 span { display: inline-block; margin-top: 4px; color: var(--ink); font-size: .72em; letter-spacing: -1.6px; }
.franchise-copy > .partner-intro { max-width: 700px; margin: 20px 0 21px; color: #512c1d; font-size: 14px; line-height: 1.65; }
.partner-tracks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 20px 0 25px; }
.partner-track { min-height: 255px; padding: 20px 18px; display: flex; flex-direction: column; background: var(--paper); color: var(--ink); border-top: 4px solid var(--ink); }
.partner-track-dark { background: var(--ink); color: var(--white); border-top-color: var(--white); }
.partner-track .partner-label { margin: 0 0 13px; color: var(--orange-deep); font-size: 8px; font-weight: 800; letter-spacing: 1.2px; }
.partner-track-dark .partner-label { color: var(--orange); }
.partner-track h3 { margin: 0 0 9px; font: 700 21px/1.08 var(--display); letter-spacing: -.7px; }
.partner-track > p:not(.partner-label) { margin: 0 0 15px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.partner-track-dark > p:not(.partner-label) { color: #cbd1e2; }
.partner-track a { margin-top: auto; color: var(--orange-deep); font-size: 9px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.partner-track-dark a { color: var(--orange); }
.franchise-form { max-width: none; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin-top: 8px; }
.partner-form-heading { grid-column: 1 / -1; display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; margin: 0 0 2px; }
.partner-form-heading strong { font: 700 22px/1.1 var(--display); letter-spacing: -.6px; }
.partner-form-heading span { color: #512c1d; font-size: 11px; }
.franchise-form .form-wide { grid-column: 1 / -1; }
.franchise-form select, .franchise-form textarea { width: 100%; background: rgba(255,255,255,.17); border: 1px solid rgba(16,23,47,.55); color: var(--ink); padding: 12px; outline: none; font: 13px var(--body); }
.franchise-form textarea { min-height: 82px; resize: vertical; }
.franchise-form select:focus, .franchise-form textarea:focus { background: var(--white); box-shadow: 4px 4px 0 var(--ink); }
.franchise-form select option { color: var(--ink); }
.franchise-form button { grid-column: 1 / -1; justify-self: start; }
.form-note { max-width: 650px; color: #512c1d; font-size: 10px; line-height: 1.55; }
.whatsapp-option { margin: 14px 0 0; color: #512c1d; font-size: 11px; }
.whatsapp-option a { margin-left: 5px; color: var(--ink); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.final-actions { display: flex; justify-content: center; align-items: center; gap: 20px; flex-wrap: wrap; }
.button-instagram { background: var(--ink); color: var(--white); box-shadow: 6px 6px 0 rgba(16,23,47,.12); }
.button-instagram:hover { background: var(--ink-2); }
@media (max-width: 900px) {
  .franchise { grid-template-columns: 1fr; }
  .franchise-visual { min-height: 340px; }
  .franchise-copy { padding-top: 64px; padding-bottom: 68px; }
  .franchise-copy h2 { font-size: clamp(38px, 6.2vw, 54px); }
}
@media (max-width: 680px) {
  .franchise-visual { min-height: 290px; padding: 25px; }
  .franchise-visual img { top: 23px; left: 23px; width: 116px; height: 119px; }
  .franchise-visual p { font-size: 34px; }
  .franchise-number { right: -4px; bottom: -34px; font-size: 170px; }
  .franchise-copy { padding-top: 52px; padding-bottom: 58px; }
  .franchise-copy h2 { font-size: clamp(32px, 9vw, 43px); line-height: 1.02; letter-spacing: -2.2px; }
  .franchise-copy h2 span { font-size: .69em; letter-spacing: -1.2px; }
  .partner-tracks { grid-template-columns: 1fr; gap: 10px; margin-top: 18px; }
  .partner-track { min-height: 0; padding: 19px 18px; }
  .partner-track h3 { font-size: 22px; }
  .partner-track > p:not(.partner-label) { font-size: 12px; }
  .franchise-form { grid-template-columns: 1fr; gap: 10px; }
  .franchise-form .form-wide, .franchise-form button, .partner-form-heading { grid-column: 1; }
  .franchise-form button { justify-self: stretch; width: calc(100% - 5px); }
  .partner-form-heading { align-items: flex-start; flex-direction: column; gap: 4px; }
  .whatsapp-option { line-height: 1.6; }
  .final-actions { flex-direction: column; align-items: stretch; gap: 14px; }
  .final-actions .button { width: calc(100% - 6px); }
}


.partner-proof { display: flex; gap: 25px; align-items: center; flex-wrap: wrap; padding: 20px 0 16px; border-bottom: 1px solid rgba(16,23,47,.28); }
.partner-proof span { display: flex; flex-direction: column; font-size: 11px; font-weight: 600; }
.partner-proof strong { font: 700 44px/1 var(--display); letter-spacing: -2px; }
.partner-proof p { margin: 0; font-size: 12px; line-height: 1.5; color: #512c1d; }
.franchise-form input, .franchise-form select, .franchise-form textarea { font-size: 16px; }
.franchise-form label > span { font-size: 12px; }
@media (max-width: 680px) {
  .partner-proof { gap: 20px; }
  .partner-proof strong { font-size: 38px; }
  .partner-proof p { font-size: 11px; }
}

/* Capa com imagem real: fotografia íntegra, sem texto cobrindo a marca na parede. */
.hero {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  min-height: 0;
  align-items: stretch;
}
.hero-copy {
  padding-top: 44px;
  padding-right: 42px;
  padding-bottom: 58px;
  min-width: 0;
}
.hero-topline { max-width: 540px; gap: 20px; line-height: 1.6; }
.hero-mark {
  position: static;
  width: 138px;
  height: 140px;
  margin: 26px 0 28px;
}
.hero-copy .eyebrow { margin-top: 0; }
.hero h1 { font-size: clamp(46px, 4.5vw, 72px); line-height: 1.01; letter-spacing: -3px; }
.hero-lead { max-width: 450px; font-size: 16px; }
.hero-badges { margin-top: 34px; }
.hero-media {
  position: relative;
  inset: auto;
  margin: 32px 32px 32px 0;
  background: #1c2543;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-self: center;
  border-bottom: 4px solid var(--orange);
}
.hero-media img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  aspect-ratio: 3 / 4;
  filter: none;
}
.hero-image-caption {
  position: static;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  padding: 14px 16px;
  background: #1c2543;
  color: #d2d8e9;
  font-size: 8px;
  line-height: 1.5;
  letter-spacing: 1px;
  opacity: 1;
}
@media (min-width: 1600px) {
  .hero { grid-template-columns: minmax(0, 1fr) minmax(0, 620px); }
  .hero-media { margin-right: max(32px, calc((100vw - 1440px) / 2)); }
}
@media (min-width: 681px) and (max-width: 1024px) {
  .hero { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); }
  .hero-copy { padding-right: 28px; }
  .hero h1 { font-size: clamp(40px, 5vw, 52px); letter-spacing: -2.5px; }
  .hero-topline { flex-direction: column; gap: 4px; }
  .hero-mark { margin: 20px 0; width: 118px; height: 120px; }
  .hero-media { margin: 24px 24px 24px 0; }
  .hero-image-caption { padding: 12px; }
}
@media (max-width: 680px) {
  .hero { display: flex; flex-direction: column; }
  .hero-copy { padding: 28px 20px 30px; }
  .hero-topline { font-size: 7px; gap: 8px; flex-direction: row; }
  .hero-mark { width: 110px; height: 112px; margin: 20px 0 23px; }
  .hero h1 { font-size: clamp(38px, 10.8vw, 58px); letter-spacing: -2.4px; line-height: 1.02; }
  .hero-lead { font-size: 15px; margin-top: 20px; }
  .hero-actions { gap: 20px; }
  .hero-badges { margin-top: 28px; }
  .hero-media { margin: 0 20px 26px; width: calc(100% - 40px); align-self: stretch; }
  .hero-media img { height: auto; object-fit: contain; }
  .hero-image-caption { font-size: 7px; padding: 11px 12px; }
}

/* História e propósito — conteúdo do onboarding e imagens do acervo da marca. */
.story-inner {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 70px;
  align-items: center;
  padding-top: 122px;
  padding-bottom: 60px;
}
.story-copy h2 { font-size: clamp(44px, 4.5vw, 64px); line-height: 1.01; letter-spacing: -2.8px; }
.story-copy > p:not(.eyebrow) { margin: 24px 0 0; font-size: 15px; line-height: 1.75; }
.brand-meaning { display: flex; gap: 28px; margin-top: 32px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.2); }
.brand-meaning > div { flex: 1; }
.brand-meaning strong { display: block; color: var(--orange); font: 700 21px/1.1 var(--display); }
.brand-meaning span { display: block; color: #c9d0e2; font-size: 12px; line-height: 1.6; margin-top: 9px; }
.history-kiosk { margin: 0; min-width: 0; }
.history-image-frame { padding: 10px; border: 1px solid rgba(255,255,255,.2); background: var(--ink-2); }
.history-kiosk img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.history-kiosk figcaption { padding: 17px 0 0; color: #c1c9dc; font-size: 11px; line-height: 1.6; }
.history-kiosk figcaption span { display: block; margin-bottom: 3px; color: #ff9b78; font-size: 9px; font-weight: 800; letter-spacing: 1.3px; }
.story-evolution { padding-bottom: 82px; }
.story-path { display: flex; list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.2); }
.story-path li { flex: 1; min-width: 0; padding: 30px 28px 0 0; }
.story-path li + li { padding-left: 28px; border-left: 1px solid rgba(255,255,255,.15); }
.path-index { color: #ff9b78; font-size: 9px; font-weight: 800; letter-spacing: 1.3px; }
.story-path h3 { font: 700 23px/1.15 var(--display); letter-spacing: -.8px; margin: 14px 0 12px; }
.story-path p { color: #c5cee1; font-size: 13px; line-height: 1.65; margin: 0; max-width: 340px; }
.brand-purpose { background: var(--cream); padding-top: 92px; padding-bottom: 90px; }
.purpose-heading h2 { max-width: 1060px; margin: 0; font: 700 clamp(35px, 4.1vw, 58px)/1.07 var(--display); letter-spacing: -2.6px; }
.purpose-heading h2 em { color: var(--orange-deep); font-style: normal; }
.purpose-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 70px; align-items: start; margin-top: 50px; }
.journey-photo { margin: 0; padding: 9px; background: var(--ink); color: var(--white); }
.journey-photo img { display: block; width: 100%; height: auto; object-fit: contain; }
.journey-photo figcaption { font-size: 11px; line-height: 1.6; padding: 15px 13px 8px; color: #d4daea; }
.purpose-copy > div + div { margin-top: 28px; padding-top: 25px; border-top: 1px solid var(--line); }
.purpose-label { display: block; font-size: 9px; font-weight: 800; letter-spacing: 1.3px; color: var(--orange-deep); }
.purpose-copy h3 { margin: 12px 0; font: 700 26px/1.15 var(--display); letter-spacing: -.8px; }
.purpose-copy p { margin: 0; color: #536078; font-size: 14px; line-height: 1.7; }
.purpose-values { display: flex; gap: 28px; border-top: 1px solid var(--line); margin-top: 48px; padding-top: 25px; }
.purpose-values > div { flex: 1; min-width: 0; }
.purpose-values span { color: var(--orange-deep); font: 700 12px/1 var(--display); }
.purpose-values strong { display: block; font: 700 16px/1.2 var(--display); letter-spacing: -.3px; margin: 12px 0 8px; }
.purpose-values p { color: #536078; font-size: 12px; line-height: 1.65; margin: 0; }
.purpose-link { display: inline-flex; align-items: center; gap: 22px; margin-top: 38px; padding-bottom: 6px; border-bottom: 1px solid var(--orange-deep); font-size: 11px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; }
.purpose-link span { font-size: 18px; color: var(--orange-deep); }
@media (min-width: 681px) and (max-width: 1024px) {
  .story-inner, .purpose-layout { gap: 32px; }
  .story-copy h2 { font-size: 45px; }
  .story-path li { padding-right: 18px; }
  .story-path li + li { padding-left: 18px; }
  .story-path h3 { font-size: 20px; }
  .purpose-values { gap: 20px; }
}
@media (max-width: 680px) {
  .story-inner { display: flex; flex-direction: column; gap: 34px; padding-top: 88px; padding-bottom: 36px; }
  .story-copy { padding-top: 0; align-self: stretch; }
  .story-copy h2 { font-size: clamp(39px, 10.5vw, 49px); letter-spacing: -2.2px; }
  .story-copy > p:not(.eyebrow) { font-size: 14px; margin-top: 22px; }
  .brand-meaning { gap: 18px; margin-top: 26px; }
  .brand-meaning strong { font-size: 20px; }
  .brand-meaning span { font-size: 11px; }
  .history-kiosk { width: 100%; }
  .history-image-frame { padding: 7px; }
  .history-kiosk figcaption { padding-top: 13px; }
  .story-evolution { padding-bottom: 52px; }
  .story-path { flex-direction: column; }
  .story-path li { padding: 24px 0; }
  .story-path li + li { padding-left: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.15); }
  .story-path li:last-child { padding-bottom: 0; }
  .story-path h3 { font-size: 23px; }
  .story-path p { max-width: none; }
  .brand-purpose { padding-top: 58px; padding-bottom: 60px; }
  .purpose-heading h2 { font-size: clamp(31px, 8.8vw, 40px); letter-spacing: -1.8px; line-height: 1.1; }
  .purpose-layout { grid-template-columns: 1fr; gap: 30px; margin-top: 30px; }
  .purpose-copy h3 { font-size: 24px; }
  .purpose-copy p { font-size: 14px; }
  .purpose-values { flex-wrap: wrap; gap: 28px 22px; margin-top: 32px; padding-top: 24px; }
  .purpose-values > div { flex: 0 0 calc(50% - 11px); }
  .purpose-values strong { font-size: 15px; }
  .purpose-values p { font-size: 11px; }
  .purpose-link { font-size: 10px; line-height: 1.6; gap: 14px; margin-top: 32px; }
}

/* Direção da capa conforme a referência: foto em fundo integral, fading da direita para a esquerda. */
.hero {
  display: block;
  min-height: 750px;
  background: var(--ink);
  position: relative;
  overflow: hidden;
}
.hero-copy {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 750px;
  padding-top: 64px;
  padding-bottom: 80px;
}
.hero-topline { max-width: 590px; }
.hero-mark {
  position: absolute;
  left: max(24px,calc((100vw - var(--max))/2));
  right: auto;
  top: 88px;
  width: 165px;
  height: 165px;
  margin: 0;
}
.hero-copy .eyebrow { margin-top: 214px; }
.hero h1 { font-size: clamp(42px,6vw,82px); line-height: .96; letter-spacing: -4px; }
.hero-lead { max-width: 430px; font-size: 17px; }
.hero-media {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 22%;
  display: block;
  align-self: auto;
  width: auto;
  height: auto;
  margin: 0;
  overflow: hidden;
  background: var(--ink-2);
  border: 0;
  border-bottom: 4px solid var(--orange);
}
.hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center 55%;
  filter: none;
}
.hero-media-shade {
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg,
      rgba(16,23,47,1) 0%,
      rgba(16,23,47,.99) 10%,
      rgba(16,23,47,.92) 26%,
      rgba(16,23,47,.72) 52%,
      rgba(16,23,47,.25) 82%,
      rgba(16,23,47,.12) 100%),
    linear-gradient(0deg,rgba(16,23,47,.44),transparent 38%);
  pointer-events: none;
}
.hero-image-caption {
  position: absolute;
  z-index: 2;
  right: 28px;
  bottom: 22px;
  left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px 20px;
  max-width: calc(100% - 56px);
  padding: 0;
  background: transparent;
  color: rgba(255,255,255,.82);
  font-size: 8px;
  line-height: 1.5;
  letter-spacing: 1px;
  opacity: 1;
}
@media (min-width: 681px) and (max-width: 1024px) {
  .hero { min-height: 700px; }
  .hero-copy { min-height: 700px; padding-top: 48px; padding-bottom: 58px; padding-right: 28px; }
  .hero-media { inset: 0 0 0 25%; }
  .hero-mark { top: 72px; width: 145px; height: 148px; }
  .hero-copy .eyebrow { margin-top: 188px; }
  .hero h1 { font-size: clamp(40px,6vw,60px); letter-spacing: -2.8px; }
  .hero-topline { max-width: 500px; }
  .hero-image-caption { right: 18px; bottom: 16px; }
}
@media (max-width: 680px) {
  .hero { min-height: 0; display: block; }
  .hero-copy { min-height: 0; padding: 28px 20px 48px; }
  .hero-topline { max-width: none; font-size: 7px; line-height: 1.5; gap: 8px; }
  .hero-mark { position: static; width: 110px; height: 112px; margin: 20px 0 23px; }
  .hero-copy .eyebrow { margin-top: 0; }
  .hero h1 { font-size: clamp(38px,10.8vw,58px); letter-spacing: -2.4px; line-height: 1.02; }
  .hero-lead { max-width: 390px; font-size: 15px; margin-top: 20px; }
  .hero-actions { gap: 20px; }
  .hero-badges { margin-top: 28px; }
  .hero-media { inset: 31% 0 0; border-bottom-width: 3px; }
  .hero-media img { object-position: center 57%; }
  .hero-media-shade {
    background: linear-gradient(180deg,
      rgba(16,23,47,1) 0%,
      rgba(16,23,47,.97) 16%,
      rgba(16,23,47,.84) 36%,
      rgba(16,23,47,.48) 64%,
      rgba(16,23,47,.30) 82%,
      rgba(16,23,47,.68) 100%);
  }
  .hero-image-caption { right: 12px; bottom: 12px; justify-content: flex-end; gap: 5px 12px; max-width: calc(100% - 24px); font-size: 7px; }
}

/* Crescimento da rede: lojas completas em destaque; acervo de quiosque como imagem secundária. */
.story-gallery { position: relative; align-self: center; min-width: 0; }
.store-gallery-photo { margin: 0; padding: 10px; border: 1px solid rgba(255,255,255,.18); background: var(--ink-2); color: var(--white); }
.store-gallery-photo .history-image-frame { padding: 0; border: 0; background: transparent; }
.store-gallery-photo img { display: block; width: 100%; height: auto; aspect-ratio: 878 / 1021; object-fit: contain; }
.store-gallery-photo figcaption { padding: 14px 8px 5px; color: #c1c9dc; font-size: 10px; line-height: 1.55; }
.store-gallery-photo figcaption span { display: block; margin-bottom: 4px; color: #ff9b78; font-size: 9px; font-weight: 800; letter-spacing: 1.2px; }
.story-kiosk-inset { position: relative; width: min(58%, 310px); margin: 18px 0 0 auto; padding: 7px; border: 1px solid rgba(255,255,255,.2); background: var(--ink); box-shadow: 0 14px 35px rgba(0,0,0,.3); }
.story-kiosk-inset img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.story-kiosk-inset figcaption { padding: 9px 3px 2px; color: #d0d6e6; font-size: 8px; line-height: 1.4; letter-spacing: .7px; text-transform: uppercase; }
.story-kiosk-inset figcaption span { color: #ff9b78; font-weight: 800; }

/* Próxima unidade anunciada sem incluí-la na contagem de lojas abertas. */
.locations-upcoming { display: flex; align-items: center; gap: 17px; margin-top: 28px; padding: 16px 20px; border-left: 5px solid var(--orange); background: var(--ink); color: var(--white); }
.locations-upcoming .upcoming-tag { color: var(--orange); font-size: 9px; font-weight: 800; letter-spacing: 1.3px; }
.locations-upcoming strong { font: 700 20px/1.15 var(--display); }
.locations-upcoming > span:not(.upcoming-tag) { color: #c8d0e1; font-size: 12px; }
.state-detail .state-summary { display: grid; grid-template-columns: minmax(0,1fr) minmax(112px,140px) max-content; align-items: center; gap: 10px; }
.state-summary > span { justify-self: start; white-space: nowrap; }
.state-summary > a { justify-self: end; }
.state-coming-soon { border-top-color: var(--orange); background: rgba(255,90,31,.06); }
.state-coming-soon > div { display: flex; flex-direction: column; gap: 2px; }
.state-coming-soon .coming-soon-label { color: var(--orange-deep); font-size: 9px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; white-space: nowrap; }
@media (max-width: 680px) {
  .story-gallery { width: 100%; }
  .store-gallery-photo { padding: 7px; }
  .store-gallery-photo figcaption { padding: 12px 6px 4px; font-size: 9px; }
  .story-kiosk-inset { width: 60%; margin: 16px 0 0 auto; }
  .locations-upcoming { align-items: flex-start; flex-wrap: wrap; gap: 7px 12px; margin-top: 22px; padding: 15px 15px; }
  .locations-upcoming .upcoming-tag { flex-basis: 100%; }
  .locations-upcoming strong { font-size: 18px; }
  .locations-upcoming > span:not(.upcoming-tag) { align-self: center; }
  .state-detail .state-summary { grid-template-columns: minmax(0,1fr) 9ch; gap: 4px 10px; }
  .state-summary > a { grid-column: 1 / -1; justify-self: start; margin-left: 0; }
}
