@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');
:root{--eco:#457a00;--eco-deep:#2f5700;--forest:#003d20;--sand:#e6dcbc;--deep:#083335;--ink:#003d20;--muted:#5f6d53;--paper:#f6f1e2;--card:#fdfaf0;--line:#e3dcc6;--soft:#efe8d0;--shadow:0 24px 70px rgba(8,51,53,.14)}
.dark{--eco:#86b447;--eco-deep:#a9c97e;--forest:#e6dcbc;--sand:#003d20;--deep:#052223;--paper:#083335;--card:#0c3d3d;--ink:#e6dcbc;--muted:#9db3a6;--line:#1d4a4a;--soft:#0a2c2b;--shadow:0 24px 70px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Poppins,'Arial Nova',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.page{min-height:calc(100vh - 100px)}
.site-header{position:fixed;inset:14px 0 auto;z-index:50}.header-inner{width:min(1240px,calc(100% - 32px));margin:auto;padding:8px 10px 8px 18px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--card) 84%,transparent);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.brand img{height:40px;width:auto}.logo-dark{display:none}.dark .logo-light{display:none}.dark .logo-dark{display:block}.main-nav{display:flex;gap:25px;font-size:13px;font-weight:700}.main-nav a{opacity:.78}.main-nav a:hover{opacity:1;color:var(--eco)}.header-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--card);color:var(--ink);cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:13px 18px;font-weight:800;transition:.2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn.small{padding:10px 15px}.btn.full{width:100%}.btn-primary{background:var(--forest);color:var(--sand);box-shadow:0 10px 30px rgba(0,61,32,.25)}.btn-ghost{background:var(--card);border:1px solid var(--line)}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800;letter-spacing:.04em}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.muted{color:var(--muted)}
.hero{width:min(1240px,calc(100% - 32px));margin:auto;padding:150px 0 100px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.hero-copy h1{font-size:clamp(48px,6.5vw,86px);line-height:.98;letter-spacing:-.065em;margin:25px 0}.hero-copy h1 em,.subhero h1 em{font-style:normal;color:var(--eco-deep)}.hero-copy p{font-size:18px;line-height:1.8;color:var(--muted);max-width:680px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.trust-row{display:flex;flex-wrap:wrap;gap:22px;color:var(--muted);font-size:12px;font-weight:600;margin-top:30px}.hero-visual{position:relative}.hero-photo{min-height:590px;border-radius:38px;background-size:cover;background-position:center;display:flex;align-items:end;padding:35px;color:#fff;box-shadow:var(--shadow)}.hero-photo>div{max-width:520px}.hero-photo span{color:var(--sand);font-size:11px;font-weight:800;letter-spacing:.2em}.hero-photo h2{font-size:42px;line-height:1.02;letter-spacing:-.045em;margin:10px 0}.hero-photo p{color:#fff9;line-height:1.6}.impact-float{position:absolute;left:-35px;bottom:30px;width:240px;background:color-mix(in srgb,var(--card) 90%,transparent);color:var(--ink);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow);backdrop-filter:blur(15px)}.impact-float small{display:block;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.13em}.impact-float strong{display:block;margin:6px 0;font-size:15px}.impact-float span{font-size:10px;color:var(--muted)}.progress{height:7px;border-radius:10px;background:var(--soft);overflow:hidden;margin:13px 0 8px}.progress i{display:block;width:78%;height:100%;background:var(--eco)}
.stats{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);width:min(1240px,calc(100% - 32px));margin:auto}.stats div{padding:35px 20px;text-align:center;border-right:1px solid var(--line)}.stats div:last-child{border:0}.stats b{font-size:56px;line-height:1;letter-spacing:-.08em}.stats span{display:block;margin-top:8px;color:var(--muted);font-size:12px;font-weight:700}.section{width:min(1240px,calc(100% - 32px));margin:auto;padding:100px 0}.section.alt{max-width:none;padding-inline:max(16px,calc((100vw - 1240px)/2));background:var(--soft)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section-head h2,.split h2,.restore-band h2{font-size:clamp(34px,4vw,54px);line-height:1;letter-spacing:-.05em;margin:12px 0 0}.section-head>a{color:var(--eco-deep);font-weight:800;font-size:13px}.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.category-grid a{border:1px solid var(--line);background:var(--card);border-radius:22px;padding:22px;min-height:150px;transition:.2s}.category-grid a:hover{transform:translateY(-4px);border-color:#8dcf9e}.category-grid span{display:block;font-size:25px;color:var(--eco);margin-bottom:30px}.category-grid b,.category-grid small{display:block}.category-grid small{color:var(--muted);font-size:11px;margin-top:4px;line-height:1.4}
.dark-section{background:var(--deep);color:#fff;padding:100px max(16px,calc((100vw - 1240px)/2))}.dark-section .section-head .eyebrow{color:#ffffff70}.dark-section .section-head a{color:var(--sand)}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.listing-card,.restore-card{display:block;overflow:hidden;border-radius:26px;background:var(--card);border:1px solid var(--line);transition:.25s}.listing-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.dark-section .listing-card{background:#0c262b;border-color:#ffffff12;color:#fff}.card-image{height:270px;background-size:cover;background-position:center;position:relative}.card-chip{position:absolute;left:16px;top:16px;border-radius:999px;padding:6px 10px;background:#ffffffdd;color:#0b2828;font-size:10px;font-weight:800}.card-body{padding:20px}.card-body .eyebrow{font-size:9px}.card-body h3{font-size:21px;letter-spacing:-.03em;margin:6px 0}.card-body p{color:var(--muted);font-size:12px;line-height:1.6;min-height:40px}.dark-section .card-body p{color:#ffffff70}.card-meta{display:flex;justify-content:space-between;gap:8px;padding-top:14px;margin-top:14px;border-top:1px solid var(--line);font-size:11px;font-weight:800}.dark-section .card-meta{border-color:#ffffff12}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split-photo{min-height:600px;border-radius:35px;background-size:cover;background-position:center}.split h2{margin:20px 0}.split>div:last-child>p,.restore-band p{color:var(--muted);line-height:1.8;font-size:16px}.feature-list{display:grid;gap:14px;margin-top:25px}.feature-list div{display:grid;grid-template-columns:28px 1fr;column-gap:10px}.feature-list small{grid-column:2;color:var(--muted);font-size:12px}.restore-band{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.restore-band p{max-width:580px}.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.impact-grid div{padding:24px;border:1px solid #ffffff12;background:#ffffff08;border-radius:24px}.impact-grid span{font-size:28px}.impact-grid b,.impact-grid small{display:block}.impact-grid b{margin-top:20px}.impact-grid small{color:#ffffff66;font-size:11px;margin-top:5px}
.subhero{width:min(1240px,calc(100% - 32px));margin:auto;padding:160px 0 70px}.subhero h1{font-size:clamp(48px,6vw,78px);letter-spacing:-.06em;line-height:1;margin:20px 0}.subhero p{max-width:700px;color:var(--muted);font-size:18px;line-height:1.7}.subhero.compact{padding-bottom:30px}.searchbar{display:flex;max-width:760px;margin-top:28px;gap:8px}.searchbar input,.form-grid input,.form-grid select,.carbon-form input{width:100%;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:15px;padding:13px 15px;outline:none}.filter-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.package-hero{width:min(1240px,calc(100% - 32px));margin:130px auto 0}.package-photo{height:600px;border-radius:38px;background-size:cover;background-position:center;display:flex;align-items:end;padding:45px;color:#fff}.package-photo h1{font-size:clamp(45px,6vw,76px);letter-spacing:-.06em;line-height:.95;margin:15px 0 10px}.package-photo p{max-width:680px;font-size:17px;color:#fffc}.package-layout{display:grid;grid-template-columns:1fr 370px;gap:70px}.package-layout h2{font-size:44px;letter-spacing:-.05em;margin:10px 0}.package-layout .lead{font-size:17px;line-height:1.8;color:var(--muted)}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 55px}.timeline{display:grid;gap:0;margin:20px 0 35px}.timeline>div{padding:18px 0 18px 25px;border-left:2px solid var(--line);position:relative}.timeline>div:before{content:'';position:absolute;left:-6px;top:22px;width:10px;height:10px;border-radius:50%;background:var(--eco)}.timeline p{color:var(--muted);line-height:1.6}.community-box{padding:25px;border-radius:24px;background:var(--soft)}.community-box p{color:var(--muted);line-height:1.7}.booking-card,.order-card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:25px;box-shadow:var(--shadow);height:max-content;position:sticky;top:105px}.price{font-size:30px;font-weight:800;letter-spacing:-.04em;margin:15px 0}.price small{font-size:12px;color:var(--muted)}.booking-card>p{color:var(--muted);font-size:12px;margin-bottom:22px}.booking-perks{display:grid;gap:9px;color:var(--muted);font-size:11px;margin-top:18px}.checkout{width:min(1100px,calc(100% - 32px));margin:145px auto 90px;display:grid;grid-template-columns:1.15fr .7fr;gap:50px}.checkout-main h1{font-size:48px;letter-spacing:-.05em;margin:15px 0 30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label,.carbon-form label{font-size:12px;font-weight:700;display:grid;gap:7px}.checkout-option{display:flex;justify-content:space-between;gap:20px;padding:20px;margin:20px 0;border:1px solid var(--line);border-radius:22px;background:var(--soft)}.checkout-option p{font-size:11px;color:var(--muted);max-width:520px}.amount{white-space:nowrap}.amount input{width:100px;border:0;background:transparent;color:var(--ink);font-weight:800}.order-image{height:180px;border-radius:18px;background-size:cover;background-position:center}.order-body{padding-top:18px}.order-body h3{font-size:22px;margin:8px 0}.order-body p{font-size:12px;color:var(--muted)}.order-line,.order-total{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid var(--line);font-size:12px}.order-total{margin-top:10px;font-size:14px}.order-total strong{font-size:20px}.confirmation{width:min(900px,calc(100% - 32px));margin:160px auto 100px;text-align:center}.success-icon{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 22px;border-radius:50%;background:var(--forest);color:var(--sand);font-size:30px;font-weight:900}.confirmation h1{font-size:clamp(40px,5vw,62px);letter-spacing:-.06em;line-height:1;margin:15px 0}.confirmation>p{color:var(--muted);line-height:1.7;max-width:680px;margin:0 auto}.confirmation-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:35px 0;text-align:left;border:1px solid var(--line);border-radius:22px;overflow:hidden}.confirmation-grid div{padding:18px;border-right:1px solid var(--line)}.confirmation-grid div:last-child{border:0}.confirmation-grid span,.confirmation-grid b{display:block}.confirmation-grid span{font-size:10px;color:var(--muted)}.confirmation-grid b{font-size:13px;margin-top:7px}.payment-box{padding:30px;border-radius:28px;background:var(--soft);text-align:left;margin-bottom:20px}.payment-box h2{font-size:30px;letter-spacing:-.04em}.payment-box p{color:var(--muted);line-height:1.6;font-size:13px}.payment-methods{display:flex;gap:8px;margin:18px 0}.payment-methods span{border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:11px}.restore-card .card-body{padding:24px}.restore-price{font-size:22px;font-weight:800;margin:18px 0 8px}.restore-price small{font-size:10px;color:var(--muted)}.impact-label{font-size:10px;color:var(--eco-deep);font-weight:800}.carbon-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px}.carbon-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.carbon-form small{font-size:9px;color:var(--muted)}.carbon-form .full{grid-column:1/-1}.carbon-result{border:1px solid var(--line);background:var(--card);border-radius:30px;padding:35px;box-shadow:var(--shadow)}.big-number{font-size:80px;line-height:1;font-weight:800;letter-spacing:-.08em;margin-top:18px}.carbon-result>p{color:var(--muted)}.offset-suggest{padding:18px;border-radius:20px;background:var(--soft);margin:25px 0}.offset-suggest b,.offset-suggest strong,.offset-suggest span{display:block}.offset-suggest strong{font-size:25px;margin:5px 0}.offset-suggest span{font-size:11px;color:var(--muted)}.empty{padding:50px;border:1px dashed var(--line);border-radius:25px;color:var(--muted)}.footer{border-top:1px solid var(--line);padding:35px max(16px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.footer div{display:flex;gap:15px}.footer strong{color:var(--ink)}.tablet-sidebar,.mobile-nav{display:none}
@media(max-width:1050px){.main-nav{gap:13px}.category-grid{grid-template-columns:repeat(3,1fr)}.cards-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr;gap:45px}.hero-photo{min-height:500px}.split,.restore-band,.carbon-layout{grid-template-columns:1fr}.package-layout{grid-template-columns:1fr}.booking-card{position:relative;top:auto}.checkout{grid-template-columns:1fr}.order-card{position:relative;top:auto;order:-1}}
@media(min-width:700px) and (max-width:1180px) and (orientation:landscape){.site-header{display:none}.tablet-sidebar{display:flex;position:fixed;z-index:60;inset:0 auto 0 0;width:92px;background:var(--deep);color:#fff;flex-direction:column;align-items:center;padding:18px 8px;gap:18px}.tablet-sidebar .brand img{width:58px;height:auto;object-fit:contain}.tablet-sidebar>a:not(.brand){display:flex;flex-direction:column;align-items:center;gap:5px;color:#ffffffaa;font-size:20px;padding:9px;border-radius:15px}.tablet-sidebar>a span{font-size:9px}.tablet-sidebar>a:hover{color:var(--sand);background:#ffffff08}.page{margin-left:92px}.hero,.section,.subhero,.package-hero,.stats{width:min(1120px,calc(100% - 48px))}.hero{padding-top:70px;grid-template-columns:1fr 1fr}.hero-copy h1{font-size:54px}.hero-photo{min-height:520px}.stats{grid-template-columns:repeat(4,1fr)}.footer{margin-left:92px}.mobile-nav{display:none!important}.category-grid{grid-template-columns:repeat(3,1fr)}.cards-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:699px){.site-header{inset:8px 0 auto}.header-inner{width:calc(100% - 16px);padding-left:13px}.main-nav,.header-actions .btn{display:none}.brand img{height:34px}.hero{padding-top:110px;width:calc(100% - 24px)}.hero-copy h1{font-size:52px}.hero-copy p{font-size:15px}.hero-photo{min-height:500px;border-radius:27px;padding:25px}.hero-photo h2{font-size:32px}.impact-float{left:12px;bottom:12px}.stats{width:calc(100% - 24px);grid-template-columns:1fr 1fr}.stats div{padding:25px 10px}.stats b{font-size:42px}.section,.subhero{width:calc(100% - 24px);padding:70px 0}.section-head{align-items:start;flex-direction:column;gap:8px}.section-head h2{font-size:38px}.category-grid,.cards-grid{grid-template-columns:1fr}.category-grid a{min-height:120px}.category-grid span{margin-bottom:20px}.dark-section{padding:70px 12px}.split{gap:30px}.split-photo{min-height:400px}.restore-band{gap:30px}.impact-grid{grid-template-columns:1fr}.subhero{padding-top:115px}.searchbar{flex-direction:column}.package-hero{width:calc(100% - 24px);margin-top:100px}.package-photo{height:500px;border-radius:27px;padding:25px}.package-photo h1{font-size:45px}.package-layout{width:calc(100% - 24px);padding-top:45px}.checkout{width:calc(100% - 24px);margin-top:110px}.checkout-main h1{font-size:40px}.form-grid,.carbon-form{grid-template-columns:1fr}.confirmation{margin-top:115px}.confirmation-grid{grid-template-columns:1fr 1fr}.confirmation-grid div:nth-child(2){border-right:0}.confirmation-grid div{border-bottom:1px solid var(--line)}.footer{flex-direction:column}.mobile-nav{display:flex;position:fixed;z-index:70;inset:auto 8px 8px;background:color-mix(in srgb,var(--card) 92%,transparent);border:1px solid var(--line);border-radius:20px;padding:7px;backdrop-filter:blur(18px);justify-content:space-around;box-shadow:var(--shadow)}.mobile-nav a{display:flex;flex-direction:column;align-items:center;font-size:18px;padding:4px 12px}.mobile-nav span{font-size:8px;color:var(--muted);font-weight:700}.footer{padding-bottom:100px}}

/* ==========================================================================
   Ecoexplore MVP extensions (appended to the supplied design system above).
   No build step: edit this file directly. Same tokens: --eco, --deep, --ink,
   --muted, --paper, --card, --line, --soft; dark mode via html.dark.
   ========================================================================== */
.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:var(--forest);color:var(--sand);padding:10px 14px;border-radius:12px;font-weight:800}.skip-link:focus{left:8px}
.ico{display:inline-block;vertical-align:-.18em;flex:none}
:focus-visible{outline:3px solid color-mix(in srgb,var(--eco) 70%,transparent);outline-offset:2px}
.ok-text{color:var(--eco-deep)}.dark .ok-text{color:var(--eco)}
.small{font-size:12px}.link{color:var(--eco-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}.dark .link{color:var(--eco)}
.main-nav a.active{opacity:1;color:var(--ink);box-shadow:inset 0 -2px 0 var(--eco)}
.icon-btn{display:inline-grid;place-items:center;padding:0}.icon-link{color:var(--ink)}
.theme-sun{display:none}.dark .theme-sun{display:inline-block}.dark .theme-moon{display:none}
.locale-switch{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--card)}.locale-switch a{font-size:11px;font-weight:800;padding:7px 9px;border-radius:999px;color:var(--muted)}.locale-switch a.on{background:var(--ink);color:var(--paper)}
.flash{width:min(1240px,calc(100% - 32px));margin:110px auto -80px;padding:14px 18px;border-radius:16px;font-size:13px;font-weight:600;position:relative;z-index:5}.flash-ok{background:color-mix(in srgb,var(--eco) 18%,var(--card));border:1px solid color-mix(in srgb,var(--eco) 45%,transparent)}.flash-err{background:color-mix(in srgb,#e5484d 14%,var(--card));border:1px solid color-mix(in srgb,#e5484d 40%,transparent)}
.checkout .flash,.auth-card .flash,.admin-wrap .flash{width:auto;margin:0 0 18px}
.sample-notice{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;margin:0 0 26px;border:1px dashed color-mix(in srgb,#d99a00 55%,var(--line));background:color-mix(in srgb,#ffc53d 10%,var(--card));border-radius:16px;font-size:12px;line-height:1.55;color:var(--ink)}.sample-notice .ico{color:#b07d00;margin-top:2px}
.section.tight{padding-top:20px;padding-bottom:70px}
.pill.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.pill.on-dark{color:#fff;border-color:#ffffff40;background:#ffffff14;backdrop-filter:blur(8px)}.small-pill{font-size:10px;padding:5px 9px}
.filter-row .pill:hover{border-color:var(--eco)}
.card-image.short{height:220px}.card-chip.sample{left:auto;right:16px;background:#ffc53dee;color:#3d2c00}
.dark .card-chip{background:#0b2025dd;color:#eff8f3}.dark .card-chip.sample{background:#ffc53dee;color:#3d2c00}
.listing-card .card-meta small{font-weight:600}
.impact-float{display:block}.impact-float:hover{border-color:var(--eco)}
.impact-grid a{display:block;padding:24px;border:1px solid #ffffff12;background:#ffffff08;border-radius:24px;transition:.2s}.impact-grid a:hover{transform:translateY(-3px)}.impact-grid a b{display:block;margin-top:20px}.impact-grid a small{display:block;color:#ffffff66;font-size:11px;margin-top:5px}
.impact-grid.light a{border-color:var(--line);background:var(--card);color:var(--ink)}.impact-grid.light a small{color:var(--muted)}.impact-grid .ico{color:var(--eco)}
.dark-section .impact-grid .ico{color:var(--sand)}
.package-photo.short{height:460px}.package-photo p .ico{color:var(--sand)}
.block-title{font-size:20px;letter-spacing:-.02em;margin:34px 0 12px}
.timeline b{font-size:15px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}
.check-list{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:13px;line-height:1.5}.check-list li{display:flex;gap:9px;align-items:flex-start}.check-list .ico{color:var(--eco);margin-top:2px}.muted-list{color:var(--muted)}
.community-box p .ico{color:var(--eco)}
.stack{display:grid;gap:12px}.field{display:grid;gap:7px;font-size:12px;font-weight:700}
.field input,.field select,.field textarea,.booking-card select,.booking-card input,.form-grid textarea,.carbon-form select,.admin-filter input,.admin-filter select{width:100%;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:15px;padding:13px 15px;outline:none;font:inherit}
.field textarea,.form-grid textarea{resize:vertical;min-height:90px}
.field input:focus,.form-grid input:focus,.form-grid textarea:focus,.carbon-form input:focus,.carbon-form select:focus,.field select:focus{border-color:var(--eco)}
.check{display:flex!important;gap:10px;align-items:flex-start;font-size:13px;font-weight:600;cursor:pointer}.check input{width:18px;height:18px;accent-color:var(--eco);margin-top:2px;flex:none}
.err{display:block;color:#d93036;font-size:11px;font-style:normal;font-weight:700}.dark .err{color:#ff8589}
.steps{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;gap:14px}.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;column-gap:14px;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--card)}.steps li:before{content:counter(s);grid-row:span 2;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--sand);font-weight:800}.steps span{color:var(--muted);font-size:12px;margin-top:4px}
.split.narrow{gap:50px;align-items:start}
.scroller{scroll-snap-type:x mandatory}
/* Carbon */
.carbon-form select{appearance:auto}.carbon-form .check{align-self:end;padding-bottom:12px}
.breakdown{display:grid;gap:10px;margin:22px 0}.breakdown>div{display:grid;grid-template-columns:90px 1fr 70px;gap:10px;align-items:center;font-size:12px}.breakdown b{text-align:right}.bar{height:8px;border-radius:8px;background:var(--soft);overflow:hidden}.bar i{display:block;height:100%;background:var(--eco);border-radius:8px}
.offset-suggest .btn{margin-top:12px}
.disclaimer{border:1px dashed color-mix(in srgb,#d99a00 55%,var(--line));background:color-mix(in srgb,#ffc53d 9%,var(--card));border-radius:18px;padding:16px;font-size:12px}.disclaimer p{color:var(--ink);line-height:1.6;margin:6px 0}.disclaimer small{color:var(--muted)}
.factors{border:1px solid var(--line);border-radius:20px;padding:18px 22px;background:var(--card)}.factors summary{cursor:pointer;font-weight:800}
.table{width:100%;border-collapse:collapse;font-size:12px}.table th,.table td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}.table th{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}
/* Checkout */
.stepper{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 22px;font-size:11px;font-weight:700;color:var(--muted)}.stepper li{display:flex;align-items:center;gap:6px;padding:6px 10px 6px 6px;border-radius:999px;border:1px solid var(--line)}.stepper span{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--soft);font-size:10px}.stepper li.on{color:var(--ink)}.stepper li.on span{background:var(--forest);color:var(--sand)}
.span-2{grid-column:1/-1}
.pay-options{display:grid;gap:10px}.pay-option{margin:0!important;align-items:center;justify-content:flex-start!important;cursor:pointer;background:var(--card)!important;transition:.15s}.pay-option input{width:18px;height:18px;accent-color:var(--eco);flex:none}.pay-option:has(input:checked){border-color:var(--eco);box-shadow:0 0 0 3px color-mix(in srgb,var(--eco) 25%,transparent)}.pay-option p{margin:3px 0 0}.pay-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--soft);flex:none}
.pay-note{display:flex;gap:9px;font-size:12px;line-height:1.6;color:var(--muted);margin:14px 0 22px}.pay-note .ico{color:var(--eco);margin-top:3px}
.terms{margin:10px 0}
.checkout-submit{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:24px}.mobile-total{display:none}
/* Confirmation */
.status-row{display:flex;justify-content:center;gap:8px;margin:-10px 0 24px}
.badge{display:inline-block;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:800;letter-spacing:.03em;border:1px solid var(--line);background:var(--soft);white-space:nowrap}
.badge-paid,.badge-confirmed,.badge-completed{background:color-mix(in srgb,var(--eco) 20%,var(--card));border-color:color-mix(in srgb,var(--eco) 45%,transparent)}
.badge-pending{background:color-mix(in srgb,#ffc53d 18%,var(--card));border-color:color-mix(in srgb,#d99a00 40%,transparent)}
.badge-failed,.badge-expired,.badge-cancelled{background:color-mix(in srgb,#e5484d 14%,var(--card));border-color:color-mix(in srgb,#e5484d 40%,transparent)}
.payment-methods{flex-wrap:wrap}.payment-methods label{border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:12px;cursor:pointer;display:flex;gap:6px;align-items:center;background:var(--card)}.payment-methods label:has(input:checked),.payment-methods label.on{border-color:var(--eco);box-shadow:0 0 0 3px color-mix(in srgb,var(--eco) 22%,transparent)}.payment-methods input{accent-color:var(--eco)}
.bank-box{margin-top:18px;padding:16px;border-radius:18px;background:var(--card);border:1px solid var(--line)}.bank-box p{margin:6px 0 0}
.hero-actions.center{justify-content:center}
/* Account */
.trip-list{display:grid;gap:10px}.trip-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;border:1px solid var(--line);border-radius:20px;background:var(--card);transition:.2s}.trip-row:hover{border-color:var(--eco)}.trip-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.trip-meta{display:flex;gap:12px;align-items:center;text-align:right}
/* Auth */
.auth-wrap{width:min(460px,calc(100% - 24px));margin:140px auto 90px}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.auth-card h1{font-size:34px;letter-spacing:-.04em;margin:10px 0 6px}.auth-card>p{font-size:13px;line-height:1.6;margin:0 0 22px}
.kuartal-btn{background:var(--deep);color:#fff;border:1px solid #ffffff1a}.dark .kuartal-btn{background:var(--sand);color:var(--forest)}.kuartal-btn .ico{color:var(--sand)}.dark .kuartal-btn .ico{color:var(--forest)}
.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;margin:18px 0}.divider:before,.divider:after{content:'';flex:1;height:1px;background:var(--line)}
.auth-links{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;font-size:12px;margin:20px 0 0}
/* Prose (about, legal) */
.prose{max-width:780px}.prose h2{font-size:24px;letter-spacing:-.03em;margin:30px 0 8px}.prose p{line-height:1.8;color:var(--muted)}
.progress.big{height:12px}
/* Admin */
.admin-wrap{padding-top:120px}.admin-h1{font-size:38px;letter-spacing:-.04em;margin:8px 0 18px}
.admin-nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:26px}.admin-nav a{padding:9px 14px;border-radius:999px;border:1px solid var(--line);font-size:12px;font-weight:800;background:var(--card)}.admin-nav a.on{background:var(--ink);color:var(--paper)}
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:10px}.admin-stats div{padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--card)}.admin-stats span{display:block;font-size:11px;color:var(--muted);font-weight:700}.admin-stats b{display:block;font-size:24px;margin-top:8px;letter-spacing:-.03em}
.admin-filter{display:flex;gap:8px;margin-bottom:16px;max-width:700px}
.pager{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:16px}
.admin-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.panel{padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--card)}.panel .block-title:first-child{margin-top:0}
.kv{display:grid;grid-template-columns:140px 1fr;gap:10px 14px;font-size:13px;margin:0}.kv dt{color:var(--muted);font-weight:700;font-size:11px}.kv dd{margin:0}
.events{list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:12px}.events li{padding:10px 12px;border-radius:12px;background:var(--soft)}.events code{display:block;margin-top:4px;font-size:10px;word-break:break-all;color:var(--muted)}
.admin-form{display:grid;gap:16px}.pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.top-gap{margin-top:24px}.danger{color:#d93036}
/* Footer */
.footer{flex-wrap:wrap;align-items:flex-start}.footer-brand{display:flex;flex-direction:column;gap:4px}.footer-links{display:flex;flex-wrap:wrap;gap:15px}.footer-links a:hover{color:var(--eco)}.footer-note{flex-basis:100%;margin:6px 0 0;font-size:10px;line-height:1.6;max-width:820px}
/* Tablet rail */
.tablet-sidebar .logo-light{display:none!important}.tablet-sidebar .logo-dark{display:block!important}
.sidebar-tools{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:8px}.sidebar-tools button,.sidebar-lang{width:44px;height:44px;border-radius:14px;border:1px solid #ffffff1f;background:#ffffff0a;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800;cursor:pointer}
.mobile-book-bar{display:none}
.impact-float{top:34px;bottom:auto}
.big-number small{font-size:16px;letter-spacing:0;color:var(--muted)}
@media(max-width:1050px){.admin-grid{grid-template-columns:1fr}.admin-stats{grid-template-columns:1fr 1fr}}
@media(min-width:700px) and (max-width:1180px) and (orientation:landscape){.flash{width:min(1120px,calc(100% - 48px));margin-top:30px;margin-bottom:-20px}.package-hero{margin-top:30px}.subhero{padding-top:70px}.checkout{margin-top:50px}.confirmation{margin-top:70px}.auth-wrap{margin-top:60px}.admin-wrap{padding-top:40px}.tablet-sidebar>a:not(.brand) .ico{width:22px;height:22px}}
@media(max-width:699px){
  .header-actions .locale-switch a{padding:6px 7px;font-size:10px}
  .impact-float{top:12px;bottom:auto;left:12px}
  .header-actions .btn-ghost{display:none}
  .flash{width:calc(100% - 24px);margin:80px auto -60px}
  .sample-notice{margin-bottom:18px}
  .two-col{grid-template-columns:1fr;gap:0}
  .scroller{display:flex;overflow-x:auto;gap:12px;margin-inline:-12px;padding:4px 12px 14px;scrollbar-width:none}.scroller::-webkit-scrollbar{display:none}.scroller>*{flex:0 0 84%;scroll-snap-align:start}
  .dark-section .scroller{margin-inline:-12px}
  .card-image{height:220px}.card-image.short{height:180px}
  .package-photo.short{height:380px}
  .mobile-nav a.on .ico,.mobile-nav a.on span{color:var(--eco)}
  .mobile-nav a .ico{width:20px;height:20px}
  body.has-book-bar .mobile-book-bar{display:flex;position:fixed;z-index:65;left:8px;right:8px;bottom:78px;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 18px;border-radius:20px;background:var(--deep);color:#fff;box-shadow:var(--shadow)}
  .mobile-book-bar small{display:block;font-size:10px;color:#ffffffa0}.mobile-book-bar b{font-size:18px;letter-spacing:-.03em}
  body.has-book-bar .footer{padding-bottom:170px}
  body.checkout-page .mobile-nav{display:none}
  body.checkout-page .footer{padding-bottom:110px}
  .checkout-submit{position:fixed;z-index:70;left:0;right:0;bottom:0;margin:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--card) 94%,transparent);backdrop-filter:blur(16px);border-top:1px solid var(--line);justify-content:space-between}
  .mobile-total{display:block}.mobile-total small{display:block;font-size:10px;color:var(--muted)}.mobile-total b{font-size:18px}
  .stepper{overflow-x:auto}
  .checkout-main h1{margin-bottom:10px}
  .order-card{padding:16px;display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}.order-card .order-image{height:96px;border-radius:14px}.order-card .order-body{padding-top:0}.order-card .order-body h3{font-size:16px;margin:4px 0}.order-card .order-line,.order-card .order-total{padding:8px 0}
  .status-row{margin-top:0}
  .confirmation h1{font-size:38px}
  .payment-box{padding:20px}
  .trip-row{flex-direction:column;align-items:flex-start}.trip-meta{width:100%;justify-content:space-between}
  .auth-wrap{margin-top:100px}.auth-card{padding:22px}
  .admin-wrap{padding-top:90px}.admin-stats{grid-template-columns:1fr}.pair{grid-template-columns:1fr}.kv{grid-template-columns:1fr}
  .breakdown>div{grid-template-columns:80px 1fr 60px}
  .big-number{font-size:60px}
  .carbon-result{padding:24px}
}

/* ==========================================================================
   Adventure skin — national-park field guide (2026-10).
   A design layer over the tokens above: same --eco/--deep palette, same
   Poppins. Adds topo textures, trail dashes, ticket cards, sticker buttons.
   Decorative only: no selectors move, light + dark both honoured.
   ========================================================================== */
body{--page-bg:var(--paper)}
.section.alt{--page-bg:var(--soft)}
.dark-section{--page-bg:var(--deep)}

/* Trail-dash eyebrows: a little dashed path leading into each section label */
.eyebrow{display:inline-flex;align-items:center;gap:9px}
.section-head .eyebrow::before,.subhero .eyebrow::before{content:'';width:24px;border-top:2px dashed color-mix(in srgb,var(--muted) 65%,transparent)}

/* Sticker buttons: hard offset shadow, tactile press */
.btn{transition:transform .18s,box-shadow .18s}
.btn-primary{box-shadow:0 3px 0 var(--deep),0 14px 30px rgba(0,61,32,.22)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 5px 0 var(--deep),0 18px 34px rgba(0,61,32,.28)}
.btn-primary:active{transform:translateY(1px);box-shadow:0 1px 0 var(--deep)}
.dark .btn-primary{box-shadow:0 3px 0 #000,0 14px 30px rgba(0,0,0,.22)}
.dark .btn-primary:hover{box-shadow:0 5px 0 #000,0 18px 34px rgba(0,0,0,.26)}
.btn-ghost{border:1.5px dashed color-mix(in srgb,var(--ink) 28%,transparent)}
.dark .btn-ghost{border-color:#ffffff2e}

/* Header: an enamel trail tag */
.header-inner{border:1.5px solid color-mix(in srgb,var(--ink) 13%,transparent)}
.brand img{height:44px;width:auto}
.dark .header-inner{border-color:#ffffff1f}

/* Topographic contours */
.hero{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='560' viewBox='0 0 560 560'%3E%3Cg fill='none' stroke='%23457a00' stroke-opacity='.13' stroke-width='1.5'%3E%3Cpath d='M280 60c150 0 235 90 235 220S430 500 280 500 45 410 45 280 130 60 280 60z'/%3E%3Cpath d='M285 115c115 0 180 70 180 165s-65 165-180 165-180-70-180-165 65-165 180-165z'/%3E%3Cpath d='M275 170c82 0 128 48 128 110s-46 110-128 110-128-48-128-110 46-110 128-110z'/%3E%3Cpath d='M280 225c48 0 76 24 76 55s-28 55-76 55-76-24-76-55 28-55 76-55z'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right -60px top 40px}
.dark-section{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='560' viewBox='0 0 560 560'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.05' stroke-width='1.5'%3E%3Cpath d='M280 60c150 0 235 90 235 220S430 500 280 500 45 410 45 280 130 60 280 60z'/%3E%3Cpath d='M285 115c115 0 180 70 180 165s-65 165-180 165-180-70-180-165 65-165 180-165z'/%3E%3Cpath d='M275 170c82 0 128 48 128 110s-46 110-128 110-128-48-128-110 46-110 128-110z'/%3E%3Cpath d='M280 225c48 0 76 24 76 55s-28 55-76 55-76-24-76-55 28-55 76-55z'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left -80px bottom -60px}

/* Hero photo: taped-in field photo */
.hero-photo{outline:2px dashed color-mix(in srgb,#ffffff 45%,transparent);outline-offset:-13px}

/* Rotating park stamp (markup lives in home.blade.php) */
.stamp{position:absolute;top:-30px;right:26px;width:116px;height:116px;z-index:4;transform:rotate(8deg);filter:drop-shadow(0 10px 22px rgba(8,51,53,.3))}
.stamp .stamp-bg{fill:var(--deep)}
.stamp text{font-family:Poppins,Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:3px;fill:var(--sand)}
.stamp .stamp-core{position:absolute;inset:0;display:grid;place-items:center;color:#86b447}
@keyframes stamp-spin{to{transform:rotate(360deg)}}
.stamp svg{animation:stamp-spin 24s linear infinite;transform-origin:center}

/* Field-journal impact card: washi tape + slight tilt */
.impact-float{transform:rotate(-1.4deg)}
.impact-float::before{content:'';position:absolute;top:-11px;left:26px;width:76px;height:22px;background:color-mix(in srgb,var(--eco) 55%,transparent);transform:rotate(-3deg);border-radius:2px}

/* Trail-marker category tiles */
.category-grid{counter-reset:tile}
.category-grid a{position:relative;border:1.5px solid var(--line);transition:transform .2s,box-shadow .2s,border-color .2s}
.category-grid a::after{counter-increment:tile;content:counter(tile,decimal-leading-zero);position:absolute;top:17px;right:19px;font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--muted)}
.category-grid a:hover{transform:translateY(-4px) rotate(-.6deg);border-color:color-mix(in srgb,var(--eco) 55%,var(--line));box-shadow:5px 5px 0 color-mix(in srgb,var(--ink) 10%,transparent)}
.category-grid span{width:47px;height:47px;display:grid;place-items:center;border:1.5px dashed color-mix(in srgb,var(--eco) 60%,transparent);border-radius:50%;margin-bottom:24px;color:var(--eco)}

/* Ticket-stub cards: perforation line + image zoom on hover */
.card-image{transition:transform .45s ease}
.listing-card:hover .card-image,.restore-card:hover .card-image{transform:scale(1.05)}
.listing-card,.restore-card{border-width:1.5px}
.card-meta{position:relative;border-top:0;padding-top:16px;margin-top:16px}
.card-meta::before{content:'';position:absolute;top:0;left:2px;right:2px;border-top:2px dashed color-mix(in srgb,var(--line) 90%,transparent)}

/* "See all" links become dashed trail tags */
.section-head>a{border:1.5px dashed color-mix(in srgb,var(--eco) 55%,transparent);border-radius:999px;padding:8px 15px;transition:.2s}
.dark-section .section-head>a{border-color:color-mix(in srgb,var(--sand) 55%,transparent);color:var(--sand)}
.dark-section .section-head>a:hover{background:color-mix(in srgb,var(--sand) 14%,transparent)}
.section-head>a:hover{background:color-mix(in srgb,var(--eco) 12%,transparent)}

/* Checklist badges: stamped circles */
.feature-list .ico{color:var(--sand);background:var(--forest);border-radius:50%;padding:4px}

/* Dashed trail timelines with map-pin dots (journey pages) */
.timeline>div{border-left:2px dashed color-mix(in srgb,var(--muted) 55%,transparent)}
.timeline>div:before{left:-10px;top:21px;width:14px;height:14px;background:var(--eco);border:3px solid var(--page-bg,var(--paper));border-radius:50%;box-shadow:0 0 0 1.5px color-mix(in srgb,var(--eco) 60%,transparent)}

/* Restoration progress: trail-blaze stripes */
.progress i{background:repeating-linear-gradient(45deg,var(--eco) 0 7px,color-mix(in srgb,var(--eco) 72%,var(--deep)) 7px 14px)}

/* Card chips sit like stickers */
.card-chip{transform:rotate(-2deg)}

/* Focus + inputs: crisp eco edge with a hard shadow */
.field input:focus,.field select:focus,.field textarea:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.carbon-form input:focus,.carbon-form select:focus,.booking-card input:focus,.booking-card select:focus,.searchbar input:focus{border-color:var(--eco);box-shadow:3px 3px 0 color-mix(in srgb,var(--eco) 32%,transparent)}

/* Footer: engraved park sign */
.footer{border-top:3px double color-mix(in srgb,var(--line) 85%,transparent)}

/* Stat numbers feel measured */
.stats b{font-variant-numeric:tabular-nums}

@media(max-width:699px){
  .stamp{width:88px;height:88px;top:-16px;right:12px}
  .brand img{height:36px}
  .hero{background-position:right -140px top 60px}
}

/* Itineraries: field-journal plan pages */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.add-itin{margin-top:14px;padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--line) 80%,transparent)}
.add-itin-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.add-itin-form select{flex:1;min-width:150px}
.itin-day{margin:22px 0 8px;display:flex;align-items:center;gap:10px}
.itin-day::after{content:"";flex:1;border-top:1px dashed color-mix(in srgb,var(--line) 80%,transparent)}
.itin-list{margin-bottom:6px}
.itin-stop{align-items:flex-start}
.itin-actions{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end}
.itin-edit{position:relative}
.itin-edit summary{cursor:pointer;list-style:none}
.itin-edit form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 65%,transparent)}
.itin-edit label{flex:1;min-width:110px}
.itin-edit .btn{white-space:nowrap}
@media(max-width:699px){
  .itin-actions{justify-content:flex-start}
}
