:root{--ink:#0a2821;--forest:#103f34;--green:#1a6a53;--lime:#d9e66b;--gold:#d6a62c;--sand:#f5f0e5;--paper:#fffdf8;--muted:#66746f;--line:#dce3dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.08;margin:0 0 .75rem}h1{font-size:clamp(3rem,7vw,6.5rem);letter-spacing:-.06em}h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.045em}h3{font-size:1.3rem}a{color:inherit;text-decoration:none}p{color:var(--muted)}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(255,253,248,.94);backdrop-filter:blur(14px);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(12,52,42,.08)}.brand{display:flex;gap:.7rem;align-items:center;font:800 1.15rem/1 Manrope}.brand small{display:block;font:600 .65rem/1.4 'DM Sans';letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:var(--lime);font:800 1.4rem Manrope}.site-header nav{display:flex;align-items:center;gap:2rem;font-weight:600}.site-header nav a:hover{color:var(--green-ink)}.nav-pill{border:1px solid var(--ink);padding:.55rem 1rem;border-radius:99px}.nav-toggle{display:none;background:none;border:0;font-size:1.5rem}.hero{min-height:calc(100vh - 84px);background:var(--forest);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden}.hero-content{padding:8vw 4vw 6vw 7vw;position:relative;z-index:2}.hero h1 em{color:var(--lime);font-style:normal}.hero p{max-width:600px;color:#d0ddd8;font-size:1.18rem}.eyebrow{display:block;font-size:.72rem;letter-spacing:.22em;font-weight:800;color:var(--lime);margin-bottom:1.4rem}.eyebrow.dark{color:var(--green)}.hero-actions{display:flex;gap:1rem;margin:2.2rem 0 4rem}.button{display:inline-flex;justify-content:center;align-items:center;padding:.85rem 1.3rem;border:0;border-radius:8px;font:700 .9rem 'DM Sans';cursor:pointer}.button.primary{background:var(--lime);color:var(--ink)}.button.ghost{border:1px solid #77958a;color:#fff}.button.light{background:#fff;color:var(--ink)}.button.wide{width:100%}.hero-stats{display:flex;gap:2.5rem;color:#a9beb7;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.hero-stats b{display:block;color:#fff;font:800 1.6rem Manrope}.hero-art{position:relative;background:linear-gradient(155deg,#e8bd47,#d77932 50%,#183e35 51%);overflow:hidden}.sun{position:absolute;width:48%;aspect-ratio:1;border-radius:50%;background:#ffe9a5;top:12%;left:26%;box-shadow:0 0 100px #ffd36c}.river{position:absolute;width:160%;height:55%;background:var(--forest);bottom:-17%;left:-24%;border-radius:50% 50% 0 0;transform:rotate(-8deg)}.hero-card{position:absolute;right:8%;bottom:10%;width:220px;padding:1.3rem;background:rgba(255,255,255,.92);color:var(--ink);border-radius:14px;box-shadow:0 20px 60px #08251d66}.hero-card span,.hero-card small{display:block;font-size:.72rem;color:var(--muted)}.hero-card strong{display:block;font:800 1.2rem Manrope;margin:.3rem 0 1.2rem}.section{padding:7rem 7vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:end}.intro p{font-size:1.2rem}.routes-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;padding-top:0}.route-card{padding:2rem 1.5rem;min-height:350px;background:var(--sand);border-top:5px solid var(--route);display:flex;flex-direction:column;transition:.3s}.route-card:hover{transform:translateY(-8px);background:#fff;box-shadow:0 20px 50px #14382c1a}.route-number{font:800 3rem Manrope;color:#c5cec9}.route-card p{font-size:.9rem}.route-card small{margin-top:auto;color:var(--muted)}.route-card b{margin-top:1.2rem;color:var(--green-ink)}.map-section{background:var(--ink);color:#fff;display:grid;grid-template-columns:.35fr .65fr;min-height:650px}.map-copy{padding:6rem 4vw}.map-copy p{color:#b9cbc4}.legend{display:grid;gap:.7rem;margin-top:2.5rem;font-size:.78rem}.legend span{display:flex;align-items:center;gap:.7rem}.legend i{width:10px;height:10px;border-radius:50%}#map{min-height:650px;z-index:1}.map-popup{display:grid;gap:.25rem}.map-popup small{color:#66746f}.map-popup a{color:var(--green-ink);font-weight:700;margin-top:.25rem}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:2.5rem}.section-heading>a{color:var(--green);font-weight:700}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}.product-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.product-image{height:240px;display:block;background:linear-gradient(135deg,#326e59,#e5b943);background-size:cover;background-position:center;padding:1rem}.product-image span{background:#fff;padding:.35rem .65rem;border-radius:99px;font-size:.7rem;font-weight:800;text-transform:uppercase}.product-card>div{padding:1.4rem}.product-card small{color:var(--green);font-weight:700}.product-card p{font-size:.9rem}.product-meta{border-top:1px solid var(--line);padding-top:1rem;display:flex;justify-content:space-between;font-size:.82rem}.product-meta b{color:var(--green)}.cta{margin:0 7vw 7rem;padding:4rem;background:var(--forest);color:#fff;border-radius:18px;display:flex;align-items:center;justify-content:space-between}.cta p{color:#c8d8d2}.page-hero,.detail-hero{padding:7rem 7vw;background:var(--forest);background-size:cover;background-position:center;color:#fff}.page-hero p,.detail-hero p{color:#cad9d4;max-width:700px;font-size:1.2rem}.page-hero h1,.detail-hero h1{font-size:clamp(3rem,6vw,5.2rem)}.route-hero{border-bottom:8px solid var(--route)}.filters{display:grid;grid-template-columns:1fr 240px auto;gap:1rem;margin-bottom:3rem}.filters input,.filters select,.booking-card input,.booking-card textarea,.login-card input{width:100%;padding:.85rem;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit}.detail-hero{min-height:520px;display:flex;align-items:end;background-size:cover;background-position:center}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:6vw;padding:5rem 7vw}.detail-copy{font-size:1.08rem}.breadcrumbs{color:var(--green-ink);font-size:.82rem;margin-bottom:3rem}.include-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:3rem 0}.include-grid>div{background:var(--sand);padding:1.5rem;border-radius:12px}.booking-card{align-self:start;position:sticky;top:110px;padding:2rem;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 60px #0d332819}.booking-card h2{font-size:2rem}.booking-card h2 small{font-size:.7rem}.booking-card label{font-size:.85rem;font-weight:700}.booking-card p{margin:.8rem 0}.booking-card ul.errorlist{color:#a32d2d;font-size:.8rem}.mini-map{height:380px;border-radius:14px;margin-top:2rem}.place-link{color:var(--green);font-weight:800}.source-note{font-size:.8rem}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.place-card{min-height:330px;background:linear-gradient(135deg,#1f6851,#e1b63d);background-size:cover;background-position:center;color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:end;border-radius:14px}.place-card p{color:#dbe8e2}.success{max-width:680px;margin:8rem auto;text-align:center;padding:3rem}.success>span{width:72px;height:72px;border-radius:50%;background:var(--lime);display:grid;place-items:center;margin:auto;font-size:2rem}.success>a{display:block;width:max-content;margin:1rem auto}.panel{padding:4rem 6vw 7rem;background:#f3f5f1;min-height:80vh}.panel-head{display:flex;justify-content:space-between}.text-button{background:none;border:0;color:var(--green-ink);font:700 1rem 'DM Sans';cursor:pointer}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2.5rem 0}.kpi-grid div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.5rem}.kpi-grid span{display:block;color:var(--muted)}.kpi-grid b{font:800 2.6rem Manrope}.panel-grid{display:grid;grid-template-columns:1fr 280px;gap:1.5rem}.panel-grid>section,.quick-actions{background:#fff;padding:1.5rem;border-radius:14px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:1rem;border-top:1px solid var(--line)}th{font-size:.72rem;text-transform:uppercase;color:var(--muted)}td small{display:block;color:var(--muted)}.status{background:#eef3d5;padding:.3rem .6rem;border-radius:99px;font-size:.72rem}.quick-actions{display:flex;flex-direction:column;gap:.8rem}.quick-actions a{padding:.8rem;background:var(--sand);border-radius:8px;font-weight:700}.login-shell{min-height:70vh;display:grid;grid-template-columns:1fr 420px;gap:8vw;align-items:center;padding:6rem 10vw;background:var(--sand)}.login-shell h1{font-size:3.8rem}.login-card{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 25px 70px #0a28211a}.login-card label{display:block;font-weight:700;margin-bottom:1rem}.error{color:#a32d2d}footer{padding:4rem 7vw;background:#071e19;color:#fff;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}footer div{display:flex;flex-direction:column}footer p,footer span{color:#aabdb5}
@media(max-width:980px){.routes-grid{grid-template-columns:repeat(2,1fr)}.product-grid,.place-grid{grid-template-columns:repeat(2,1fr)}.map-section{grid-template-columns:1fr}.map-copy{padding:4rem 7vw}.detail-layout{grid-template-columns:1fr}.booking-card{position:static}.panel-grid{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.hero-art{min-height:480px}.intro{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;padding:1.5rem;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.nav-toggle{display:block}.hero-content{padding:5rem 7vw}.hero-stats{gap:1rem;flex-wrap:wrap}.hero-art{min-height:360px}.routes-grid,.product-grid,.place-grid{grid-template-columns:1fr}.routes-grid{padding-left:7vw;padding-right:7vw}.route-card{min-height:280px}.section{padding:4rem 7vw}.filters{grid-template-columns:1fr}.cta{margin:0 4vw 4rem;padding:2rem;display:block}.cta .button{margin-top:1rem}.detail-layout{padding:3rem 5vw}.include-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}.login-shell{padding:4rem 6vw}.login-shell h1{font-size:2.7rem}footer{grid-template-columns:1fr}}

