/* V9 — A walking route through L’Âne Veggie. All maps are decorative. */
:root{--trail-line:#76937d;--mono:'Courier New',monospace}
html{scroll-padding-top:24px}
.wrap{max-width:1360px}
.button,.tabs button,.segmented button{border-radius:999px}
.button{padding:16px 25px;font-weight:500;transition:background .18s,color .18s}
.button:hover{transform:none}
.button.outline:hover{background:var(--green);color:var(--paper)}
.button.light:hover{background:var(--paper);border-color:var(--paper)}
.eyebrow{font-family:var(--mono);font-weight:400;font-size:.73rem;letter-spacing:.12em}
.site-header{height:116px;display:grid;grid-template-columns:1fr auto 1fr;gap:30px;padding:10px 5%;border-bottom-color:var(--green)}
.site-header nav{margin:0;gap:28px}
.site-header nav a{font-size:.8rem}
.site-header .brand{justify-content:center}
.site-header .brand img{width:88px;height:94px}
.header-end{display:flex;justify-content:flex-end;align-items:center;gap:28px;min-width:0}
.bag-link{white-space:nowrap;padding:11px 17px}
.trail-hero{background:var(--green);color:var(--paper);position:relative;overflow:hidden}
.trail-hero-inner{display:grid;grid-template-columns:1.12fr 1fr;gap:4%;max-width:1440px;margin:auto;min-height:660px;padding:72px 6% 62px;align-items:center}
.trail-hero-copy{position:relative;z-index:1}
.trail-hero h1{font-size:clamp(3.7rem,6.6vw,6.3rem);line-height:1;letter-spacing:-.055em;margin-bottom:28px}
.trail-hero h1 em{color:var(--lime);font-weight:400}
.trail-hero p{max-width:440px;font-size:.96rem;line-height:1.75;margin-bottom:27px;color:var(--paper)}
.trail-hero .eyebrow{color:var(--lime)}
.trail-hero .text-button{color:var(--paper)}
.trail-hero .hero-note{color:#d3dcc5;margin-top:25px}
.trail-map{position:relative;min-height:470px;display:grid;place-items:center;isolation:isolate}
.trail-map:before{content:'';position:absolute;inset:-80px -130px;background:url('assets/contours.svg') center/contain no-repeat;opacity:.58;z-index:-1;pointer-events:none}
.trail-map img{width:90%;max-width:420px;height:400px;object-fit:contain;transform:rotate(-4deg)}
.map-caption{position:absolute;bottom:1px;left:12%;font-family:var(--serif);font-style:italic;font-size:1.45rem;line-height:1.25;color:var(--lime);transform:rotate(-6deg)}
.map-pin{position:absolute;top:18px;right:0;font-family:var(--mono);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;display:flex;gap:10px;align-items:center}
.map-pin:before{content:'';width:11px;height:11px;background:var(--lime);border:5px solid var(--green);outline:1px solid var(--lime);border-radius:50%}
.trail-start{display:flex;justify-content:space-between;align-items:center;gap:22px;border-top:1px solid #627768;padding:22px 6%;font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;max-width:1440px;margin:auto}
.trail-start button{background:none;border:0;padding:0;color:var(--lime);font:inherit;min-height:30px;text-align:left}
.trail-start span{color:#d3dcc5}
.trail-walk{position:relative;overflow:hidden;padding:105px 6% 78px}
.trail-section-head{position:relative;text-align:center;max-width:730px;margin:0 auto 50px}
.trail-section-head h2{font-size:clamp(2.8rem,4.4vw,4.4rem);margin-bottom:25px}
.trail-section-head p{font-size:.94rem;max-width:470px;margin:0 auto;line-height:1.7}
.trail-stages{position:relative;max-width:1000px;margin:0 auto;padding:0;list-style:none}
.trail-track{position:absolute;top:0;left:50%;width:140px;height:1320px;transform:translateX(-50%);pointer-events:none;color:var(--trail-line);overflow:visible}
.trail-stage{display:grid;grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr);align-items:center;height:330px;position:relative}
.stage-copy{grid-column:1;grid-row:1;max-width:360px;justify-self:start}
.stage-copy h3{font-family:var(--serif);font-size:clamp(2.2rem,3.2vw,3.1rem);font-weight:400;letter-spacing:-.04em;line-height:1.05;margin:0 0 19px}
.stage-copy p{font-size:.88rem;line-height:1.75;margin-bottom:17px}
.stage-copy .eyebrow{margin-bottom:14px;color:var(--muted)}
.stage-copy a{display:inline-block;font-size:.82rem;padding:9px 0}
.stage-number{grid-column:2;grid-row:1;justify-self:center;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--green);border-radius:50%;background:var(--paper);font-family:var(--mono);font-size:.95rem;z-index:1}
.stage-illustration{grid-column:3;grid-row:1;justify-self:center;display:flex;align-items:center;justify-content:center;width:265px;height:255px;position:relative}
.stage-illustration:before{content:'';position:absolute;inset:20px;border-radius:50%;background:var(--lime)}
.stage-illustration img{position:relative;width:230px;height:235px;object-fit:contain}
.trail-stage:nth-of-type(even) .stage-copy{grid-column:3;justify-self:end}
.trail-stage:nth-of-type(even) .stage-illustration{grid-column:1}
.trail-stage:nth-of-type(even) .stage-illustration:before{background:#dde3c6;border-radius:48% 55% 46% 53%;transform:rotate(-12deg)}
.trail-destination{max-width:1000px;margin:0 auto;text-align:center;padding-top:22px}
.trail-destination:before{content:'';display:block;width:1px;height:44px;background:var(--trail-line);margin:0 auto 28px}
.trail-destination p{font-size:.8rem;color:var(--muted);margin:16px 0 0}
.trail-pantry{padding:85px 0 90px;background:#e9e9d1;border-top:1px solid #bcc8aa;border-bottom:1px solid #bcc8aa}
.trail-pantry .section-heading{margin-bottom:46px;align-items:center}
.trail-pantry .section-heading h2{font-size:clamp(2.8rem,4.4vw,4.4rem)}
.product-visual{background:#eee9d8;border:1px solid #b4bda7;border-radius:120px 120px 12px 12px;aspect-ratio:1.25}
.product-visual:before{display:none}
.product-visual .tiny-label{border:1px solid var(--line);border-radius:99px;top:auto;bottom:14px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:6px 10px}
.product-visual img{margin-top:-18px;height:185px;width:72%}
.product-card:hover .product-visual img{transform:translateY(-5px)}
.product-card h3{font-family:var(--serif);font-size:1.3rem;min-height:2.8em;line-height:1.3}
.mini-nutrients{border-top:1px solid #b4bda7;padding-top:15px;margin-top:16px}
.mini-nutrients strong{font-family:var(--mono);font-size:1.1rem;letter-spacing:-.05em}
.mini-nutrients span{line-height:1.4}
.card-bottom{gap:12px;flex-wrap:wrap}
.trail-camp{background:var(--green);color:var(--paper);position:relative;overflow:hidden;padding:88px 6%}
.trail-camp-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.35fr 1fr;gap:80px;align-items:center;position:relative}
.trail-camp h2{font-size:clamp(2.7rem,4.7vw,4.5rem);color:var(--lime);margin-bottom:25px}
.trail-camp p{font-size:.9rem;max-width:540px}
.trail-camp .micro{color:#d3dcc5;font-size:.76rem;margin-top:19px}
.trail-camp-art{position:relative;isolation:isolate;display:grid;place-items:center}
.trail-camp-art:before{content:'';position:absolute;inset:-100px;background:url('assets/contours.svg') center/contain no-repeat;opacity:.6;z-index:-1}
.trail-camp img{width:300px;height:300px;object-fit:contain;transform:rotate(5deg)}
.trail-feedback{padding:90px 6% 98px;background:var(--lime);text-align:center}
.trail-feedback h2{font-size:clamp(2.7rem,4.3vw,4.2rem);margin-bottom:24px}
.trail-feedback p{max-width:440px;margin:0 auto 28px}
.page-head{position:relative;padding:64px 0 42px;isolation:isolate}
.page-head:before{content:'';position:absolute;right:-2%;top:0;width:340px;height:250px;background:url('assets/contours.svg') center/contain no-repeat;opacity:.32;z-index:-1;pointer-events:none}
.page-head h1{max-width:900px}
.page-head p{font-size:.95rem}
.subnav{border:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:38px;padding:0;position:relative}
.subnav:before{content:'';height:1px;background:var(--line);position:absolute;top:20px;left:5%;right:5%;z-index:-1}
.subnav a{border:0;padding:0 10px 12px 0;display:flex;align-items:center;gap:12px;font-size:.79rem}
.subnav a>span:last-child{background:var(--paper);padding:8px 10px 8px 0}
.subnav .route-marker{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--green);border-radius:50%;background:var(--paper);font-family:var(--mono);font-size:.74rem}
.subnav a.active .route-marker{background:var(--green);color:var(--lime)}
.subnav a.active{font-weight:600}
.summary-board{border-radius:130px 130px 12px 12px;padding:40px 30px 30px}
.summary-board>.eyebrow,.summary-board h3{text-align:center}
.summary-board>img{height:165px;width:165px;margin:0 auto 20px}
.day-side,.choice,.profile-panel,.gpx-result,.notice{border-radius:12px}
input,select,textarea{border-radius:8px}
.catalogue-layout .product-visual img{height:145px}
.catalogue-layout .product-card h3{font-size:1.15rem}
.catalogue-layout .mini-nutrients strong{font-size:1.03rem}
.product-stage{border-radius:45% 45% 12px 12px;background:#e5e8d2;border:1px solid var(--line)}
.product-stage:before{display:none}
.product-title h1{font-size:clamp(2.5rem,4vw,4.3rem)}
.story-left{background:url('assets/contours.svg') center/contain no-repeat}
.site-footer{padding-top:55px;padding-bottom:65px;border-color:var(--green);max-width:1360px}
.site-footer img{width:84px;height:84px}
.site-footer a{line-height:1.6}
.guide-grid article{border-radius:12px}
@media(min-width:1600px){.trail-hero-inner{min-height:730px}.trail-map img{max-width:465px;height:440px}}
@media(max-width:1100px){
 .site-header{gap:22px;padding-left:4%;padding-right:4%}.site-header nav,.header-end{gap:18px}.site-header nav a{font-size:.73rem}.bag-link{padding:10px 13px;font-size:.77rem}
 .trail-hero-inner{min-height:610px;gap:2%;padding-left:5%;padding-right:5%}.trail-hero h1{font-size:clamp(3.6rem,7vw,5.2rem)}.trail-map img{height:340px}.trail-map{min-height:420px}.map-pin{font-size:.58rem}
 .trail-stage{grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr)}.stage-illustration{width:235px}.stage-illustration img{width:215px}.stage-copy h3{font-size:2.6rem}.trail-camp-inner{gap:35px}
 .subnav a{gap:8px;font-size:.73rem}.subnav a>span:last-child{padding-right:7px}.subnav .route-marker{width:36px;height:36px}.subnav:before{top:18px}
}
@media(max-width:760px){
 .site-header{height:98px;padding:7px 5%;grid-template-columns:1fr auto 1fr;gap:12px}.site-header nav{display:none}.site-header .brand{grid-column:2;grid-row:1}.site-header .brand img{width:77px;height:84px}.header-end{grid-column:3;grid-row:1}.mobile-menu{display:block;grid-column:1;grid-row:1;justify-self:start;width:42px;height:42px;font-size:1.4rem;border:1px solid var(--green);border-radius:50%;background:none}.bag-link{font-size:.75rem;padding:10px 12px;gap:6px}.bag-link>span:first-child{display:none}#mobile-drawer{top:98px}
 .trail-hero-inner{grid-template-columns:1fr;padding:48px 7% 20px;gap:15px;min-height:0}.trail-hero h1{font-size:clamp(3.25rem,11.5vw,4.8rem);max-width:600px;margin-bottom:23px}.trail-hero .eyebrow{font-size:.63rem;margin-bottom:24px}.trail-hero p{font-size:.91rem;max-width:460px;margin-bottom:23px}.trail-hero .actions{gap:12px 24px}.trail-hero .button{font-size:.81rem;padding:15px 22px}.trail-hero .hero-note{font-size:.7rem;margin-top:20px}
 .trail-map{min-height:335px;width:100%;max-width:410px;margin:auto}.trail-map img{height:310px;width:85%}.trail-map:before{inset:-40px -45px}.map-pin{top:25px;right:0;font-size:.6rem}.map-caption{font-size:1.16rem;bottom:0;left:0}.trail-start{padding:19px 7%;font-size:.62rem;letter-spacing:.04em}.trail-start span{max-width:140px;text-align:right;line-height:1.5}
 .trail-walk{padding:64px 6% 55px}.trail-section-head{margin-bottom:36px;text-align:left}.trail-section-head h2{font-size:2.7rem;line-height:1.06}.trail-section-head p{margin:0;font-size:.86rem}.trail-section-head .eyebrow{font-size:.65rem}
 .trail-track{display:none}.trail-stages:before{content:'';position:absolute;top:18px;bottom:75px;left:19px;border-left:1px dashed var(--trail-line)}.trail-stage{height:auto;min-height:285px;grid-template-columns:40px minmax(0,1fr);column-gap:23px;padding:0 0 42px;align-items:start}.stage-number{grid-column:1;grid-row:1;width:39px;height:39px;font-size:.75rem;margin-top:1px}.stage-copy,.trail-stage:nth-of-type(even) .stage-copy{grid-column:2;grid-row:1;justify-self:stretch;max-width:none;padding-top:3px;position:relative;z-index:1}.stage-copy .eyebrow{font-size:.6rem;margin-bottom:10px;padding-right:85px;min-height:22px}.stage-copy h3{font-size:2.15rem;max-width:calc(100% - 75px);margin-bottom:19px}.stage-copy p{font-size:.83rem;line-height:1.7;margin-bottom:9px}.stage-copy a{font-size:.78rem}.stage-illustration,.trail-stage:nth-of-type(even) .stage-illustration{grid-column:2;grid-row:1;justify-self:end;width:91px;height:105px;align-self:start;margin-top:-10px}.stage-illustration:before{inset:15px 2px 5px}.stage-illustration img{width:90px;height:105px}.trail-destination{padding-top:0;text-align:left;padding-left:63px}.trail-destination:before{display:none}.trail-destination p{font-size:.74rem}.trail-destination .button{font-size:.8rem;padding:15px 20px}
 .trail-pantry{padding:58px 0 60px}.trail-pantry .section-heading{align-items:flex-start;gap:20px;margin-bottom:30px}.trail-pantry .section-heading h2{font-size:2.8rem}.trail-pantry .section-heading .text-button{font-size:.78rem}.trail-pantry .product-grid{grid-template-columns:1fr;gap:38px;max-width:460px;margin:auto}.trail-pantry .product-visual{aspect-ratio:1.35;border-radius:150px 150px 12px 12px}.trail-pantry .product-visual img{height:220px}.trail-pantry .product-card h3{min-height:0;font-size:1.45rem}.trail-pantry .mini-nutrients strong{font-size:1.15rem}.trail-pantry .mini-nutrients span{font-size:.7rem}
 .trail-camp{padding:60px 7% 28px}.trail-camp-inner{grid-template-columns:1fr;gap:20px}.trail-camp h2{font-size:2.8rem}.trail-camp p{font-size:.86rem}.trail-camp .eyebrow{font-size:.65rem}.trail-camp-art{max-width:260px;justify-self:center}.trail-camp img{height:235px;width:235px}.trail-camp-art:before{inset:-55px}.trail-camp .button{font-size:.8rem;padding:15px 20px}.trail-feedback{padding:60px 7%}.trail-feedback h2{font-size:2.8rem}.trail-feedback p{font-size:.88rem}
 .page-head{padding:38px 0 30px}.page-head:before{width:150px;height:150px;opacity:.22;right:-4%}.page-head h1{font-size:clamp(2.65rem,9.5vw,4rem)}.page-head p{font-size:.86rem}.subnav{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:26px}.subnav:before{left:18px;right:18px;top:17px}.subnav a{flex-direction:column;align-items:flex-start;gap:8px;padding:0 3px 4px;font-size:.65rem;line-height:1.35}.subnav .route-marker{width:34px;height:34px;font-size:.66rem}.subnav a>span:last-child{padding:0;background:transparent}.summary-board{border-radius:100px 100px 12px 12px;margin-top:15px}.summary-board>img{height:155px;width:155px}
 .mini-nutrients{grid-template-columns:1.15fr 1fr 1fr}.mini-nutrients>div:last-child{display:block}.trail-pantry .product-card:nth-child(3){display:block}.summary-board>img{float:none}
 .catalogue-layout .product-card h3{font-size:1rem}.catalogue-layout .product-visual{border-radius:80px 80px 8px 8px}.catalogue-layout .product-visual .tiny-label{font-size:.52rem;padding:5px 6px;bottom:8px;max-width:94%;white-space:normal;text-align:center}.catalogue-layout .product-visual img{height:110px;margin-top:-18px}.catalogue-layout .mini-nutrients strong{font-size:.9rem}.catalogue-layout .card-bottom .button{padding:10px;font-size:.65rem}.product-stage{border-radius:120px 120px 12px 12px}
 .site-footer{padding-top:40px;padding-bottom:95px}.mobile-dock{border-top-color:var(--green);border-radius:0}.mobile-dock a.active{background:var(--green);color:var(--lime)}
}

@media(max-width:480px){.catalogue-layout .product-grid{grid-template-columns:1fr;gap:35px}.catalogue-layout .product-visual{aspect-ratio:1.4;border-radius:120px 120px 12px 12px}.catalogue-layout .product-visual img{height:190px}.catalogue-layout .product-visual .tiny-label{font-size:.63rem;padding:6px 10px;bottom:14px}.catalogue-layout .product-card h3{min-height:0;font-size:1.35rem}.catalogue-layout .mini-nutrients strong{font-size:1.15rem}.catalogue-layout .mini-nutrients span{font-size:.7rem}.catalogue-layout .card-bottom{flex-direction:row;align-items:center}.catalogue-layout .card-bottom .button{font-size:.77rem;width:auto;padding:12px 18px}}
@media(max-width:370px){.trail-hero h1{font-size:3.15rem}.stage-copy h3{font-size:1.85rem;max-width:calc(100% - 55px)}.stage-illustration,.trail-stage:nth-of-type(even) .stage-illustration{width:75px}.stage-illustration img{width:75px}.trail-stage{column-gap:17px}.trail-destination{padding-left:57px}.trail-destination .button{padding:14px 16px}.site-header{gap:7px}.bag-link{padding:10px;font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.button,.product-visual img{transition:none}.product-card:hover .product-visual img{transform:none}}
@media print{.trail-hero,.trail-camp{background:transparent;color:var(--ink)}.trail-hero h1 em,.trail-camp h2{color:var(--ink)}.trail-map:before,.trail-camp-art:before,.page-head:before{display:none}.trail-start{display:none}}
