:root {
  --brand-primary: #54212d;
  --brand-gold: #d1ad68;
  --category-accent: #54212d;
  --category-accent-dark: #3f1721;
  --outer: #e3ded8;
  --surface: #fbf9f4;
  --surface-soft: #f1ede6;
  --sage-soft: #f1e3e0;
  --sage: #9d6b70;
  --sage-dark: var(--brand-primary);
  --ink: #252220;
  --muted: #6c6560;
  --accent: var(--category-accent);
  --accent-dark: var(--category-accent-dark);
  --line: rgba(33, 30, 28, .14);
  --white: #fffdf9;
  --shadow: 0 22px 50px rgba(70, 38, 33, .12);
  --serif: "Lora", Georgia, serif;
  --sans: "Raleway", Arial, sans-serif;
}
body[data-passport="cafe"]{--category-accent:#9b211c;--category-accent-dark:#741713}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--outer);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip-link{position:fixed;z-index:1000;top:-70px;left:18px;padding:11px 16px;background:var(--white);border-radius:4px}.skip-link:focus{top:18px}
.site-canvas{width:min(1500px,calc(100% - 28px));margin:14px auto;overflow:hidden;border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}
.site-header{position:relative;z-index:30;height:88px;display:flex;align-items:center;padding:0 clamp(22px,5vw,76px)}
.nav-inner{width:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;gap:12px;min-width:245px}.brand-symbol{flex:0 0 auto;width:48px;height:48px}.brand strong,.brand small{display:block}.brand strong{font-family:var(--sans);font-size:17px;font-weight:700;line-height:1.1}.brand small{margin-top:5px;color:var(--muted);font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}
.desktop-nav{display:flex;align-items:center;gap:28px}.desktop-nav a{position:relative;padding:10px 0;font-size:12px;font-weight:600}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--accent);transition:right .2s}.desktop-nav a:hover::after,.desktop-nav a.active::after{right:0}.desktop-nav .nav-button{padding:11px 17px;border-radius:5px;color:var(--white);background:var(--accent)}.desktop-nav .nav-button::after{display:none}.desktop-nav .nav-button:hover{background:var(--accent-dark)}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:5px;background:transparent;align-items:center;justify-content:center;cursor:pointer}.menu-toggle svg{width:24px;height:24px}.mobile-nav{display:none}
.hero{min-height:680px}.home-hero{display:grid;grid-template-columns:1.02fr .98fr;padding:34px clamp(24px,5vw,76px) 46px}.hero-copy{align-self:center;padding:50px 3vw 50px 0}.kicker{margin:0 0 18px;color:var(--sage-dark);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em}.hero h1,.page-hero h1,.simple-page-head h1,.business-hero h1{margin:0;font-family:var(--serif);font-size:clamp(54px,5.7vw,88px);font-weight:600;line-height:1.04;letter-spacing:0}.hero h1 em{color:var(--accent);font-style:normal}.lead{max-width:680px;margin:28px 0 0;color:var(--muted);font-size:16px;line-height:1.8}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border:0;border-radius:5px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button svg{width:19px;height:19px}.button-primary{color:var(--white);background:var(--accent)}.button-primary:hover{background:var(--accent-dark)}.button-light{border:1px solid var(--line);background:var(--surface)}.button-light:hover{background:var(--white)}.button-dark{color:var(--white);background:var(--sage-dark)}.full-button{width:100%}
.micro-features{display:flex;flex-wrap:wrap;gap:22px;margin-top:38px}.micro-features span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:600;text-transform:uppercase}.micro-features svg{width:22px;height:22px;color:var(--sage-dark)}
.hero-product{position:relative;min-height:590px;display:grid;place-items:center;overflow:hidden;border-radius:7px;background:var(--sage-soft)}.product-backdrop{position:absolute;width:78%;aspect-ratio:1;border-radius:48% 52% 39% 61% / 52% 37% 63% 48%;background:#c5d1c1;transform:rotate(-8deg)}.hero-product>img{position:relative;width:min(390px,64%);height:auto;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 28px 26px rgba(52,39,25,.2));transform:rotate(2deg)}.product-note{position:absolute;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:6px;background:rgba(255,253,248,.92);box-shadow:0 12px 28px rgba(42,56,40,.12);font-size:9px;line-height:1.4;text-transform:uppercase;letter-spacing:.08em}.product-note svg{width:27px;height:27px;color:var(--sage-dark)}.product-note strong{font-family:var(--serif);font-size:18px;text-transform:none}.note-top{right:7%;top:15%}.note-bottom{left:7%;bottom:14%}.note-bottom>strong{color:var(--accent);font-size:28px}
.feature-bar{display:grid;grid-template-columns:repeat(4,1fr);margin:0 clamp(24px,5vw,76px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.feature-bar article{display:flex;align-items:center;gap:16px;min-height:130px;padding:22px;border-right:1px solid var(--line)}.feature-bar article:last-child{border-right:0}.large-icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;color:var(--sage-dark);background:var(--sage-soft)}.large-icon svg{width:28px;height:28px}.feature-bar h2{margin:0;font-family:var(--serif);font-size:21px}.feature-bar p{margin:3px 0 0;color:var(--muted);font-size:11px}
.section{padding:100px clamp(24px,5vw,76px)}.section-title{max-width:760px}.section-title.centered{margin:0 auto;text-align:center}.section-title h2,.achievement-copy h2,.map-teaser-copy h2,.organizers-copy h2,.qr-copy h2,.contact-intro h2{margin:0;font-family:var(--serif);font-size:clamp(42px,4.8vw,68px);line-height:1.1}.section-title>p:last-child{color:var(--muted)}.centered-link{display:flex;width:max-content;margin:34px auto 0}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:52px;padding-top:34px;border-top:1px solid var(--line)}.intro-columns p{margin:0;color:var(--muted)}.intro-columns .intro-highlight{color:var(--ink);font-family:var(--serif);font-size:24px;line-height:1.5}.how-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;background:var(--sage-soft);border-radius:7px}.how-strip article{position:relative;min-height:250px;padding:30px;border-right:1px solid rgba(56,83,70,.15)}.how-strip article:last-child{border-right:0}.how-strip article>span{position:absolute;right:22px;top:18px;color:rgba(56,83,70,.25);font-family:var(--serif);font-size:28px}.how-strip svg{width:38px;height:38px;color:var(--sage-dark)}.how-strip h3{margin:48px 0 8px;font-family:var(--serif);font-size:25px}.how-strip p{margin:0;color:var(--muted);font-size:12px}.inline-link{display:inline-flex;align-items:center;gap:9px;margin-top:32px;color:var(--sage-dark);font-size:12px;font-weight:700;border-bottom:1px solid currentColor}.inline-link svg{width:17px;height:17px}
.achievement{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:var(--surface-soft)}.achievement-photo{height:550px;overflow:hidden;border-radius:7px}.achievement-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.achievement-copy{max-width:580px}.benefit-list{list-style:none;margin:34px 0 0;padding:0}.benefit-list li{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid var(--line)}.benefit-list li>span{color:var(--accent);font-family:var(--serif)}.benefit-list strong{font-family:var(--serif);font-size:20px}.benefit-list p{margin:3px 0 0;color:var(--muted);font-size:12px}
.partners-section{background:var(--surface)}.logo-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:52px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.logo-grid div{min-height:130px;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:#879087;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.logo-grid div::before{content:"";width:50px;height:50px;border-radius:50%;border:1px dashed #aeb6ad;margin-right:12px}.logo-grid div{grid-auto-flow:column;justify-content:center}
.map-teaser{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center;background:var(--sage-soft)}.map-teaser-copy p:not(.kicker){color:var(--muted)}.map-preview{position:relative;min-height:430px;overflow:hidden;border-radius:7px;background:#c5d2c1}.map-preview::before{content:"";position:absolute;inset:9%;border:1px solid rgba(56,83,70,.18);border-radius:48% 52% 62% 38% / 44% 34% 66% 56%;transform:rotate(-7deg)}.map-line{position:absolute;height:2px;background:rgba(56,83,70,.35);transform-origin:left}.line-one{width:40%;left:18%;top:58%;transform:rotate(-18deg)}.line-two{width:34%;left:46%;top:46%;transform:rotate(24deg)}.line-three{width:28%;left:32%;top:30%;transform:rotate(28deg)}.map-dot{position:absolute;width:20px;height:20px;border:6px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:0 5px 15px rgba(45,61,43,.25)}.dot-one{left:18%;top:51%}.dot-two{left:47%;top:32%}.dot-three{right:17%;top:57%}.map-label{position:absolute;padding:7px 10px;border-radius:4px;background:var(--surface);font-size:10px;font-weight:700}.label-one{left:12%;top:61%}.label-two{right:13%;top:68%}
.organizers-teaser{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.organizers-copy p:not(.kicker){color:var(--muted)}.organizer-logos{min-height:310px;display:grid;place-items:center;padding:48px;border-radius:7px;background:var(--white)}.organizer-logos img{width:100%;height:auto;object-fit:contain}
.page-hero{min-height:620px;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;padding:45px clamp(24px,5vw,76px) 70px}.page-hero h1{font-size:clamp(50px,5.2vw,80px)}.page-hero-copy .button{margin-top:26px}.page-hero-image{height:500px;display:grid;place-items:center;border-radius:7px;background:var(--sage-soft)}.page-hero-image img{width:min(330px,70%);height:auto;object-fit:contain;mix-blend-mode:multiply}.facts-row{display:grid;grid-template-columns:repeat(4,1fr);padding-top:0;padding-bottom:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts-row>div{padding:32px 20px;border-right:1px solid var(--line);text-align:center}.facts-row>div:last-child{border-right:0}.facts-row strong,.facts-row span{display:block}.facts-row strong{font-family:var(--serif);font-size:27px}.facts-row span{margin-top:4px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.two-column-story{display:grid;grid-template-columns:1fr .85fr;gap:90px}.story-body p{margin:0 0 22px;color:var(--muted)}
.journey-section{background:var(--sage-soft)}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px}.journey-grid article{position:relative;min-height:270px;padding:32px;border-right:1px solid rgba(56,83,70,.16)}.journey-grid article:last-child{border-right:0}.journey-grid span{position:absolute;right:24px;color:rgba(56,83,70,.25);font-family:var(--serif);font-size:30px}.journey-grid svg{width:42px;height:42px;color:var(--sage-dark)}.journey-grid h3{margin:55px 0 8px;font-family:var(--serif);font-size:28px}.journey-grid p{color:var(--muted);font-size:12px}.qr-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.qr-visual{min-height:520px;display:grid;place-items:center;border-radius:7px;background:var(--surface-soft)}.qr-card{width:280px;height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;border-radius:7px;background:var(--white);box-shadow:var(--shadow);text-align:center}.qr-card svg{width:145px;height:145px;color:var(--sage-dark)}.qr-card span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.qr-copy p{color:var(--muted)}.simple-checks{list-style:none;padding:0;margin:26px 0}.simple-checks li{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px;font-weight:600}.simple-checks svg{width:20px;height:20px;color:var(--accent)}.categories-section{background:var(--surface-soft)}.category-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:45px}.category-list span{min-height:54px;display:flex;align-items:center;gap:10px;padding:13px 18px;border:1px solid var(--line);border-radius:5px;background:var(--surface);font-size:12px;font-weight:600}.category-list svg{width:25px;height:25px;color:var(--sage-dark)}.faq-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 2px;list-style:none;font-family:var(--serif);font-size:20px;font-weight:600;cursor:pointer}.accordion summary::-webkit-details-marker{display:none}.accordion summary svg{width:22px;height:22px}.accordion details[open] summary svg{transform:rotate(45deg)}.accordion details p{margin:-2px 0 24px;color:var(--muted);font-size:13px}
.simple-page-head{max-width:960px;padding:75px clamp(24px,5vw,76px) 60px}.simple-page-head h1{font-size:clamp(52px,6vw,88px)}.simple-page-head>p:last-child{max-width:730px;color:var(--muted)}.map-page-layout{display:grid;grid-template-columns:380px 1fr;min-height:680px;margin:0 clamp(24px,5vw,76px) 70px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.location-panel{padding:26px;background:var(--white)}.filter-row{display:flex;gap:6px}.filter{min-height:42px;padding:8px 13px;border:1px solid var(--line);border-radius:4px;background:transparent;font-size:10px;font-weight:700;cursor:pointer}.filter.active{color:var(--white);background:var(--sage-dark)}.location-status{display:flex;gap:11px;margin-top:24px;padding:17px;border-radius:5px;background:var(--sage-soft)}.status-dot{flex:0 0 9px;width:9px;height:9px;margin-top:7px;border-radius:50%;background:var(--accent)}.location-status strong{font-family:var(--serif);font-size:16px}.location-status p{margin:2px 0 0;color:var(--muted);font-size:10px}.location-list{min-height:400px;display:grid;place-items:center}.empty-location{text-align:center}.empty-location svg{width:52px;height:52px;color:var(--sage)}.empty-location h2{margin:18px 0 5px;font-family:var(--serif);font-size:26px}.empty-location p{max-width:270px;margin:0;color:var(--muted);font-size:11px}.map-wrap{position:relative;min-height:680px}.map-wrap #sales-map{height:100%;min-height:680px;background:#d9e2d6}.map-legend{position:absolute;z-index:500;left:18px;bottom:18px;display:flex;align-items:center;gap:14px;padding:10px 13px;border-radius:4px;background:rgba(255,253,248,.94);box-shadow:0 6px 20px rgba(42,56,40,.14);font-size:9px}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{width:8px;height:8px;border-radius:50%;background:var(--accent)}.sale-types{background:var(--sage-soft)}.sale-type-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px}.sale-type-grid article{padding:34px;border-right:1px solid rgba(56,83,70,.16)}.sale-type-grid article:last-child{border-right:0}.sale-type-grid svg{width:40px;height:40px;color:var(--sage-dark)}.sale-type-grid h3{margin:36px 0 8px;font-family:var(--serif);font-size:24px}.sale-type-grid p{color:var(--muted);font-size:12px}
.business-hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:45px clamp(24px,5vw,76px) 65px}.business-hero-copy{align-self:center}.business-hero h1{font-size:clamp(52px,5.5vw,82px)}.business-hero-copy .button{margin-top:26px}.business-hero-visual{min-height:520px;overflow:hidden;border-radius:7px;background:var(--sage-soft)}.business-hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.business-value{background:var(--surface-soft)}.value-lines{margin-top:48px;border-top:1px solid var(--line)}.value-lines article{display:grid;grid-template-columns:50px 60px 1fr;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}.value-lines article>span{font-family:var(--serif);color:var(--accent)}.value-lines svg{width:34px;height:34px;color:var(--sage-dark)}.value-lines h3{margin:0;font-family:var(--serif);font-size:24px}.value-lines p{margin:3px 0;color:var(--muted);font-size:12px}.eligibility{background:var(--surface)}.contact-business{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;background:var(--sage-soft)}.contact-intro p:not(.kicker){color:var(--muted)}.contact-direct{display:grid;gap:10px;margin-top:30px}.contact-direct span{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600}.contact-direct svg{width:20px;height:20px;color:var(--accent)}.business-form{padding:38px;border-radius:7px;background:var(--white)}.field,.field-row{margin-bottom:18px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field label{display:block;margin-bottom:7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid var(--line);border-radius:4px;color:var(--ink);background:var(--surface)}.field textarea{resize:vertical}.consent{display:flex;gap:10px;align-items:flex-start;margin:8px 0 20px;color:var(--muted);font-size:10px}.consent input{width:18px;height:18px;accent-color:var(--accent)}.form-note{min-height:20px;margin:10px 0 0;color:var(--sage-dark);font-size:11px;text-align:center}
.organizers-banner{margin:10px clamp(24px,5vw,76px) 0;padding:45px 8%;border-radius:7px;background:var(--white)}.organizers-banner img{width:100%;height:100px;object-fit:contain}.organizer-list{padding-top:70px}.organizer-list article{display:grid;grid-template-columns:80px 1fr;gap:30px;padding:45px 0;border-top:1px solid var(--line)}.organizer-list article>span{color:var(--accent);font-family:var(--serif);font-size:25px}.organizer-list article>div{display:grid;grid-template-columns:.65fr 1fr;gap:55px;align-items:start}.organizer-list h2{margin:0;font-family:var(--serif);font-size:38px}.organizer-list article>div>p:last-child{margin:0;color:var(--muted)}.vision-block{display:grid;grid-template-columns:1fr .7fr;gap:80px;background:var(--sage-soft)}.vision-block h2{margin:0;font-family:var(--serif);font-size:clamp(42px,4.8vw,68px);line-height:1.1}.vision-block>div:last-child>p{color:var(--muted)}.vision-block .button{margin-top:20px}
.site-footer{padding:65px clamp(24px,5vw,76px) 24px;color:var(--white);background:var(--sage-dark)}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1fr;gap:50px}.footer-brand .brand-mark{border:1px solid rgba(255,255,255,.6);background:transparent}.footer-brand small{color:rgba(255,255,255,.6)}.footer-about{max-width:320px;margin-top:20px;color:rgba(255,255,255,.6);font-size:11px}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-links strong{margin-bottom:5px;color:#d9e5d5;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.footer-links a{color:rgba(255,255,255,.68);font-size:11px}.footer-links a:hover{color:var(--white)}.footer-links a.contact-link{display:flex;align-items:center;gap:7px}.contact-link svg{width:16px;height:16px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.45);font-size:8px;text-transform:uppercase;letter-spacing:.09em}
.reveal{opacity:0;transform:translateY(12px);transition:opacity .4s ease,transform .4s ease}.reveal.visible{opacity:1;transform:none}
.leaflet-control-zoom a{color:var(--ink)!important}.leaflet-control-attribution{font-size:8px!important}
.leaflet-tile-pane{filter:grayscale(1) sepia(.08) contrast(.92) brightness(1.04)}
@media(max-width:1050px){.site-canvas{width:calc(100% - 18px);margin:9px auto}.desktop-nav{display:none}.menu-toggle{display:flex;position:relative;z-index:32}.mobile-nav{position:fixed;z-index:31;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;color:var(--ink);background:var(--surface);opacity:0;pointer-events:none;transition:opacity .2s}.mobile-nav.open{opacity:1;pointer-events:auto}.mobile-nav a{font-family:var(--serif);font-size:30px}.mobile-nav .nav-button{margin-top:15px;padding:12px 18px;border-radius:5px;color:var(--white);background:var(--accent);font-family:var(--sans);font-size:12px}.home-hero,.page-hero,.business-hero,.achievement,.map-teaser,.organizers-teaser,.qr-section,.contact-business,.vision-block{grid-template-columns:1fr}.hero-copy{padding:30px 0}.hero-product{min-height:560px}.feature-bar{grid-template-columns:1fr 1fr}.feature-bar article:nth-child(2){border-right:0}.feature-bar article:nth-child(-n+2){border-bottom:1px solid var(--line)}.intro-columns,.two-column-story,.faq-section{grid-template-columns:1fr;gap:40px}.how-strip,.journey-grid{grid-template-columns:1fr 1fr}.how-strip article:nth-child(2),.journey-grid article:nth-child(2){border-right:0}.how-strip article:nth-child(-n+2),.journey-grid article:nth-child(-n+2){border-bottom:1px solid rgba(56,83,70,.16)}.achievement-photo{height:430px}.logo-grid{grid-template-columns:repeat(2,1fr)}.map-teaser{gap:45px}.map-preview{min-height:360px}.organizers-teaser{gap:45px}.page-hero-image{height:460px}.facts-row{grid-template-columns:1fr 1fr}.facts-row>div:nth-child(2){border-right:0}.facts-row>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.map-page-layout{grid-template-columns:1fr;margin-bottom:50px}.location-panel{order:2}.map-wrap,.map-wrap #sales-map{min-height:500px}.location-list{min-height:260px}.sale-type-grid{grid-template-columns:1fr}.sale-type-grid article{border-right:0;border-bottom:1px solid rgba(56,83,70,.16)}.business-hero-visual{min-height:380px}.contact-business{gap:50px}.organizer-list article>div{grid-template-columns:1fr;gap:18px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:650px){body{background:var(--surface)}.site-canvas{width:100%;margin:0;border-radius:0;box-shadow:none}.site-header{height:78px}.brand{min-width:0}.brand strong{font-size:17px}.brand small{display:none}.brand-mark{width:42px;height:42px}.home-hero{padding-top:12px}.hero h1,.page-hero h1,.simple-page-head h1,.business-hero h1{font-size:47px}.lead{font-size:14px}.hero-product{min-height:440px}.hero-product>img{width:min(290px,68%)}.product-note{font-size:7px}.product-note strong{font-size:15px}.note-bottom>strong{font-size:23px}.micro-features{gap:14px}.micro-features span{font-size:8px}.feature-bar{margin:0 18px;grid-template-columns:1fr}.feature-bar article{min-height:100px;border-right:0;border-bottom:1px solid var(--line)!important}.section{padding:72px 22px}.section-title h2,.achievement-copy h2,.map-teaser-copy h2,.organizers-copy h2,.qr-copy h2,.contact-intro h2{font-size:42px}.intro-columns{margin-top:34px}.how-strip,.journey-grid{grid-template-columns:1fr}.how-strip article,.journey-grid article{min-height:220px;border-right:0;border-bottom:1px solid rgba(56,83,70,.16)!important}.achievement{gap:38px}.achievement-photo{height:310px}.logo-grid{grid-template-columns:1fr 1fr}.logo-grid div{min-height:105px;grid-auto-flow:row;gap:6px;text-align:center}.logo-grid div::before{margin:0}.map-preview{min-height:300px}.organizer-logos{min-height:220px;padding:28px}.page-hero{padding-top:20px;gap:25px}.page-hero-image{height:400px}.facts-row{padding-left:18px;padding-right:18px}.facts-row strong{font-size:22px}.two-column-story{gap:35px}.qr-visual{min-height:430px}.category-list span{width:100%}.faq-section{gap:30px}.simple-page-head{padding-top:45px}.map-page-layout{margin:0 14px 40px}.map-wrap,.map-wrap #sales-map{min-height:420px}.location-panel{padding:18px}.filter-row{overflow:auto}.sale-type-grid article{padding:30px 0}.business-hero{padding-top:20px}.business-hero-visual{min-height:290px}.value-lines article{grid-template-columns:32px 45px 1fr;gap:12px}.business-form{padding:24px 18px}.field-row{grid-template-columns:1fr}.organizers-banner{margin-inline:18px;padding:24px}.organizers-banner img{height:72px}.organizer-list article{grid-template-columns:42px 1fr;gap:12px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px 24px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Red editorial palette: all supporting tones are neutral or derived from the passport red. */
.product-backdrop{border:1px solid rgba(132,35,31,.1);background:#e5ccc6}
.hero-product>img{filter:drop-shadow(0 28px 26px rgba(70,38,33,.2))}
.product-note{background:rgba(255,253,249,.94);box-shadow:0 12px 28px rgba(70,38,33,.12)}
.feature-bar{position:relative;z-index:4;margin:-34px clamp(42px,7vw,110px) 0;border:1px solid var(--line);border-radius:7px;background:var(--white);box-shadow:0 16px 34px rgba(70,38,33,.08)}
.how-strip article,.journey-grid article{border-color:rgba(132,35,31,.14)}
.how-strip article>span,.journey-grid span{color:rgba(132,35,31,.24)}
.logo-grid div{color:#837b76}.logo-grid div::before{border-color:#b8aaa5}
.map-preview{background:#e5d4cf}.map-preview::before{border-color:rgba(132,35,31,.18)}
.map-line{background:rgba(132,35,31,.32)}.map-dot{box-shadow:0 5px 15px rgba(70,38,33,.2)}
.map-wrap #sales-map{background:#eee4df}
.map-legend{background:rgba(255,253,249,.95);box-shadow:0 6px 20px rgba(70,38,33,.12)}
.footer-links strong{color:#f2d8d5}

@media(min-width:821px) and (max-width:1050px){
  .home-hero{grid-template-columns:.95fr 1.05fr;gap:28px;padding-top:24px}
  .hero-copy{padding:28px 0}.hero h1{font-size:clamp(48px,6vw,62px)}
  .hero-product{min-height:520px}.hero-product>img{width:min(340px,65%)}
}
@media(max-width:650px){.feature-bar{margin:-22px 18px 0}}

/* Interactive passport */
.passport-3d{--rotate-x:0deg;--rotate-y:0deg;position:relative;z-index:2;width:min(390px,64%);perspective:1100px;cursor:grab}
.page-hero-image .passport-3d{width:min(330px,70%)}
.passport-3d:active{cursor:grabbing}.passport-book{position:relative;aspect-ratio:389/506;transform-style:preserve-3d;transform:rotateX(var(--rotate-x)) rotateY(var(--rotate-y)) rotateZ(2deg);transition:transform .28s ease-out,filter .28s ease-out;filter:drop-shadow(0 28px 26px rgba(70,38,33,.2))}.passport-3d.is-tilting .passport-book{transition:transform .08s linear;filter:drop-shadow(16px 30px 25px rgba(70,38,33,.24))}.passport-cover-crop{position:absolute;z-index:2;inset:0;overflow:hidden;border-radius:2px 18px 18px 2px;background:#921d18;transform:translateZ(8px)}.passport-cover-crop img{position:absolute;width:164.8%;max-width:none;height:auto;left:-32.4%;top:-24.1%;mix-blend-mode:normal}.passport-pages{position:absolute;z-index:1;inset:5px -10px 5px 8px;border-radius:2px 17px 17px 2px;background:repeating-linear-gradient(90deg,#fffdf9 0,#fffdf9 2px,#ded4cd 3px);box-shadow:7px 8px 14px rgba(70,38,33,.18);transform:translateZ(-5px)}.passport-book::after{content:"";position:absolute;z-index:3;top:2%;bottom:2%;left:2px;width:9px;border-radius:2px;background:linear-gradient(90deg,rgba(66,10,8,.55),rgba(255,255,255,.15),transparent);transform:translateZ(10px);pointer-events:none}

/* Passport journey */
.passport-steps{grid-template-columns:repeat(5,1fr)}.passport-steps article{min-height:275px}.passport-steps h3{font-size:23px}
.registration-note{display:grid;grid-template-columns:68px .9fr 1.1fr;gap:26px;align-items:center;margin-top:28px;padding:28px 30px;border:1px solid rgba(132,35,31,.14);border-radius:7px;background:var(--white)}.registration-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;color:var(--white);background:var(--accent)}.registration-icon svg{width:30px;height:30px}.registration-note .kicker{margin-bottom:7px}.registration-note h3{margin:0;font-family:var(--serif);font-size:23px;line-height:1.35}.registration-note>p{margin:0;color:var(--muted);font-size:12px}

/* Partner marquee without a white container */
.organizer-logos{min-height:250px;overflow:hidden;padding:34px 0;background:transparent}.logo-marquee{width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.logo-track{display:flex;align-items:center;gap:80px;width:max-content;animation:partner-marquee 24s linear infinite}.logo-track img{flex:0 0 auto;width:760px;height:auto;object-fit:contain}.logo-marquee:hover .logo-track{animation-play-state:paused}@keyframes partner-marquee{to{transform:translateX(calc(-50% - 40px))}}
.footer-partners{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;margin-top:48px;padding:24px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}.footer-partners span{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.footer-partners img{width:min(760px,100%);height:auto;filter:grayscale(1) brightness(0) invert(1);opacity:.72}

.feature-bar article,.how-strip article{transition:background .22s ease}.feature-bar article:hover,.how-strip article:hover{background:rgba(155,33,28,.035)}.achievement-photo img{transition:transform .6s ease}.achievement-photo:hover img{transform:scale(1.025)}

@media(max-width:1050px){.passport-3d{width:min(340px,65%)}.passport-steps{grid-template-columns:repeat(2,1fr)}.passport-steps article:last-child{grid-column:1/-1}.registration-note{grid-template-columns:68px 1fr}.registration-note>p{grid-column:2}.logo-track img{width:680px}}
@media(max-width:650px){.passport-3d{width:min(290px,68%)}.passport-steps{grid-template-columns:1fr}.passport-steps article:last-child{grid-column:auto}.registration-note{grid-template-columns:1fr;padding:24px}.registration-note>p{grid-column:auto}.organizer-logos{min-height:180px}.logo-track{gap:50px;animation-duration:18s}.logo-track img{width:600px}.footer-partners{grid-template-columns:1fr;gap:14px}.footer-partners img{width:100%}}
@media(prefers-reduced-motion:reduce){.logo-track{animation:none}.passport-book{transform:none!important}.achievement-photo img{transition:none}.achievement-photo:hover img{transform:none}}

/* Keep product labels above the 3D scene at every tilt angle. */
.hero-product .product-note{z-index:8;pointer-events:none;isolation:isolate}

/* The source strip includes an obsolete fourth logo; crop it non-destructively. */
.partner-strip-crop{display:block;flex:0 0 auto;width:760px;aspect-ratio:970/244;overflow:hidden}
.logo-track .partner-strip-crop img{display:block;width:133.92%;max-width:none;height:auto;object-fit:initial}
.organizer-banner-crop{width:min(970px,100%);aspect-ratio:970/244;overflow:hidden;margin:auto}
.organizers-banner .organizer-banner-crop img{display:block;width:133.92%;max-width:none;height:auto!important;object-fit:initial}
.footer-partner-crop{width:min(760px,100%);aspect-ratio:970/244;overflow:hidden}
.footer-partners .footer-partner-crop img{display:block;width:133.92%;max-width:none;height:auto;filter:grayscale(1) brightness(0) invert(1);opacity:.72}

@media(max-width:1050px){.partner-strip-crop{width:680px}}
@media(max-width:650px){.partner-strip-crop{width:600px}.footer-partner-crop{width:100%}}

/* Legal information */
.legal-head{padding-bottom:36px}.legal-status{display:inline-flex;align-items:center;gap:9px;margin-top:20px;padding:10px 13px;border:1px solid rgba(132,35,31,.18);border-radius:4px;color:var(--sage-dark);background:var(--sage-soft);font-size:11px;font-weight:700}.legal-status svg{width:18px;height:18px}.legal-review-note{display:grid;grid-template-columns:52px 1fr;gap:20px;max-width:1100px;margin:0 clamp(24px,5vw,76px);padding:24px 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.legal-review-note>svg{width:38px;height:38px;color:var(--accent)}.legal-review-note h2{margin:0 0 5px;font-family:var(--serif);font-size:24px}.legal-review-note p{max-width:850px;margin:0;color:var(--muted);font-size:13px}.legal-layout{display:grid;grid-template-columns:220px minmax(0,760px);justify-content:center;gap:76px;align-items:start}.legal-nav{position:sticky;top:24px;display:flex;flex-direction:column;padding-left:20px;border-left:1px solid var(--line)}.legal-nav strong{margin-bottom:14px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.legal-nav a{padding:7px 0;color:var(--muted);font-size:12px}.legal-nav a:hover{color:var(--accent)}.legal-content{min-width:0}.legal-section{scroll-margin-top:32px;padding:0 0 52px;margin-bottom:52px;border-bottom:1px solid var(--line)}.legal-section:last-child{margin-bottom:0}.legal-section .kicker{margin-bottom:11px}.legal-section h2{margin:0 0 26px;font-family:var(--serif);font-size:clamp(34px,4vw,50px);line-height:1.12}.legal-section h3{margin:30px 0 8px;font-family:var(--serif);font-size:20px}.legal-section p,.legal-section li{color:var(--muted);font-size:15px;line-height:1.8}.legal-section strong{color:var(--ink)}.legal-section ul{display:grid;gap:8px;margin:18px 0;padding-left:22px}.legal-section a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.legal-references>a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid var(--line);font-size:13px;font-weight:700;text-decoration:none}.legal-references>a svg{flex:0 0 auto;width:18px;height:18px}
@media(max-width:1050px){.legal-layout{grid-template-columns:1fr;gap:48px}.legal-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 24px}.legal-nav strong{grid-column:1/-1}}
@media(max-width:650px){.legal-review-note{grid-template-columns:1fr;margin:0 22px;padding:22px 0}.legal-layout{padding-top:55px}.legal-nav{grid-template-columns:1fr}.legal-section{padding-bottom:40px;margin-bottom:40px}.legal-section p,.legal-section li{font-size:16px}.legal-status{align-items:flex-start}}

/* Viajes Sensoriales master brand. Passport editions only override category tokens. */
.footer-brand .brand-symbol{filter:drop-shadow(0 6px 14px rgba(0,0,0,.14))}
@media(max-width:650px){.brand-symbol{width:42px;height:42px}.brand strong{font-size:16px}}
