:root{--ink:#183f39;--green:#164c43;--cream:#f7f7f0;--line:#dce3d7;--muted:#617369;--lime:#dceb9c;--serif:Georgia,'Times New Roman',serif;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--cream);line-height:1.6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:#426e45}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;border:1px solid var(--green);border-radius:7px;min-height:49px;padding:12px 21px;background:var(--green);color:white;text-decoration:none;font-size:14px;font-weight:600;cursor:pointer}button:hover,.button:hover{color:white;background:#236357}button:disabled{opacity:.6;cursor:wait}:focus-visible{outline:3px solid #a96826;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,5.1vw,73px);line-height:1.05;letter-spacing:-3.3px;font-weight:500;margin-bottom:25px}h2{font-size:clamp(32px,3.2vw,46px);line-height:1.12;letter-spacing:-1.6px;font-weight:500}h3{font-size:23px;letter-spacing:-.6px;line-height:1.25}em{font-family:var(--serif);font-weight:400;color:#5e7852}header,main,footer{max-width:1240px;margin:auto}header{display:flex;align-items:center;gap:35px;padding:25px 40px;border-bottom:1px solid var(--line)}header nav{display:flex;gap:25px;margin-left:auto}header nav a{font-size:13px;white-space:nowrap;text-decoration:none}header nav a[aria-current]{text-decoration:underline}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:750;font-size:30px;letter-spacing:-1.8px;text-decoration:none;line-height:1}.brand-mark{display:grid;place-items:center;width:35px;height:39px;font-size:24px;border-radius:12px 12px 12px 3px;background:var(--green);color:white;letter-spacing:-1px}.brand-dot{color:#8ba860;margin-left:-9px}.nav-cta{min-height:43px;padding:9px 16px;font-size:12px;gap:16px}.announcement{text-align:center;background:#e9eddb;font-size:11px;letter-spacing:.4px;padding:8px 16px}.announcement span{margin:0 8px}main{padding:0 40px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:#617658;margin-bottom:23px}.lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:540px}.quiet{font-size:12px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding:92px 0 96px}.hero-copy .lead{max-width:470px}.hero-actions{display:flex;gap:25px;align-items:center;margin:31px 0 16px}.text-link{display:inline-flex;gap:20px;align-items:center;font-size:13px;font-weight:600;text-decoration:none}.text-link:hover{text-decoration:underline}.live-dot{display:inline-block;background:#92aa65;border-radius:100%;width:7px;height:7px;margin-right:8px}.journey{background:#edf0e4;border:1px solid #d6ddcb;border-radius:18px;padding:28px 28px 0;position:relative;overflow:hidden}.journey-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;letter-spacing:1.2px;margin-bottom:32px;color:#5c7054}.example-label{border:1px solid #ccd4c0;border-radius:20px;padding:4px 9px;letter-spacing:0;font-size:9px;font-weight:400}.journey-stop{display:flex;gap:17px;position:relative;margin-bottom:25px;align-items:flex-start}.journey-stop p{font-size:11px;color:#617658;margin-bottom:4px}.journey-stop strong{font-size:14px;display:block;font-weight:600;margin-bottom:5px}.journey-stop div>span{display:block;font-size:11px;color:#697769}.stop-icon{z-index:1;display:grid;place-items:center;background:#f8f9f1;border:1px solid #bdcdae;border-radius:50%;min-width:33px;height:33px;font-size:10px;font-weight:700}.last .stop-icon{background:var(--green);color:white;border-color:var(--green)}.trip-blue{font-style:normal;background:#dfe7fa;color:#23478a;border-radius:4px;font-size:9px;padding:4px 7px;margin-left:9px;white-space:nowrap}.journey-line{position:absolute;left:44px;top:112px;bottom:143px;border-left:1px dashed #9caf8c}.journey-footer{margin:30px -28px 0;padding:23px 28px;background:#e0e8cf;display:flex;align-items:center;gap:15px}.small-mark{font-size:21px;font-weight:700;transform:rotate(-8deg)}.journey-footer p{font-size:12px;margin:0;line-height:1.5}.journey-footer strong{font-weight:500}.route-flower{font-size:47px;color:#8ca26a;line-height:1;margin-left:auto}.purpose{border-top:1px solid var(--line);padding:54px 0 70px}.purpose-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:40px}.purpose-heading h2{margin:0}.purpose-heading>p{color:var(--muted);font-size:16px;max-width:470px;margin:4px 0 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr)}.feature-grid article{border-left:1px solid var(--line);padding:9px 30px 3px}.feature-grid article:first-child{padding-left:0;border-left:0}.feature-number{display:block;font-size:10px;letter-spacing:1.3px;color:#738366;margin-bottom:24px}.feature-grid p{font-size:14px;color:var(--muted);max-width:290px}.feature-grid a{font-size:12px;font-weight:600;text-decoration:none}.statement{background:var(--green);color:#f6f6e8;border-radius:12px;display:grid;grid-template-columns:70px 1.1fr 1fr;gap:26px;padding:55px 45px;margin-bottom:70px}.statement .eyebrow{color:#bbcc9d}.statement h2{margin-bottom:0;font-size:48px}.statement h2 em{color:#d8e89f}.statement-symbol{font-size:56px;line-height:1}.statement-copy{align-self:center;font-size:14px;color:#d1ded2}.statement-copy p{max-width:340px}.statement-copy .text-link{color:#f1f4e6;margin-top:10px}.closing{text-align:center;padding:15px 0 80px}.closing h2{font-size:48px;margin-bottom:26px}.closing>p:last-child{font-size:11px;color:var(--muted);margin-top:16px}footer{padding:0 40px}.footer-top{border-top:1px solid var(--line);padding:43px 0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}.footer-top .brand{font-size:28px}.footer-top p{font-size:12px;color:var(--muted);margin-top:18px}.footer-top .eyebrow{margin:0 0 12px;font-size:9px}.footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:9px}.footer-top nav a,.footer-note a{font-size:12px;text-decoration:none}.footer-note{justify-self:end}.footer-note>p{margin-top:0;font-size:19px;color:var(--ink);line-height:1.4}.footer-note>span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;padding:17px 0 25px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.page-intro{padding:75px 0 55px;max-width:850px}.page-intro .lead{max-width:650px}.editorial{display:grid;grid-template-columns:1fr 1.4fr;gap:90px;border-top:1px solid var(--line);padding:50px 0}.editorial>div:last-child{font-size:16px;color:var(--muted)}.value-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;background:#ebefdf;padding:35px;border-radius:12px;margin:10px 0 60px}.value-strip h3{font-size:20px}.value-strip p{font-size:14px;color:var(--muted);margin-bottom:0}.early-note{max-width:740px;padding-bottom:75px}.early-note>p:not(.eyebrow){color:var(--muted)}.faq-list{max-width:850px;margin-bottom:50px}.faq-list details{border-top:1px solid var(--line);padding:20px 0;scroll-margin-top:20px}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;font-size:17px;font-weight:600;display:flex;justify-content:space-between;gap:20px;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{font-weight:400;font-size:24px;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:760px;margin:17px 30px 0 0;color:var(--muted);font-size:15px}.small-cta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:40px 0 70px;gap:25px}.small-cta h2{font-size:30px;margin:0}.pricing-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:0 0 80px;align-items:center}.price-card{border:1px solid #cbd7b7;border-radius:15px;background:#edf1df;padding:38px;max-width:490px}.price-card h2{font-size:55px;margin-bottom:25px}.price-line{font-size:20px;font-weight:600;margin-bottom:15px}.currency-list{display:flex;gap:10px;margin-bottom:25px}.currency-list span{border:1px solid #b9c8a2;padding:4px 12px;border-radius:20px;font-size:11px}.price-card>p:not(.eyebrow):not(.price-line){font-size:14px;color:var(--muted)}.price-card .button{margin-top:10px;width:100%}.steps{counter-reset:steps;list-style:none;padding:0;margin:32px 0}.steps li{padding-left:42px;position:relative;margin-bottom:24px}.steps li:before{counter-increment:steps;content:counter(steps,decimal-leading-zero);position:absolute;left:0;color:#819565;font-size:12px;top:3px}.steps strong{font-size:16px}.steps p{font-size:14px;color:var(--muted);margin-top:5px}.form-layout{display:grid;grid-template-columns:.85fr 1.25fr;gap:100px;padding-bottom:85px;align-items:start}.form-layout aside>p{max-width:330px;color:var(--muted);font-size:14px}.form-layout h2{font-size:34px}.aside-note{border-top:1px solid var(--line);padding-top:28px;max-width:340px;margin:35px 0}.aside-note .eyebrow{font-size:9px}.aside-note>p:not(.eyebrow){font-size:14px;color:var(--muted)}.enquiry-form{background:white;border:1px solid var(--line);border-radius:14px;padding:32px}.enquiry-form label{display:block;font-size:12px;font-weight:600;margin-bottom:18px}.enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea{display:block;width:100%;background:#fcfdf9;color:var(--ink);border:1px solid #c8d1c0;border-radius:6px;padding:11px 12px;margin-top:7px;min-height:44px;font-size:14px}.enquiry-form textarea{resize:vertical}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:17px}.enquiry-form .check{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;font-size:11px;font-weight:400;color:var(--muted)}.check input{width:17px;height:17px;margin:0;accent-color:var(--green);flex-shrink:0}.enquiry-form button{width:100%;margin-top:6px}.form-note{font-size:11px;color:var(--muted);line-height:1.6;margin:12px 0}.enquiry-form .trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}.form-errors{padding:14px;background:#fbeee5;color:#823d25;border-radius:6px;margin-bottom:20px;font-size:13px}.form-success{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;font-size:14px}.form-success p{font-size:13px;margin-top:10px;overflow-wrap:anywhere}.trial-seal{display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:30px;max-width:300px}.trial-seal strong{font-size:75px;line-height:1;letter-spacing:-5px;color:#6c8753}.trial-seal span{font-size:12px;line-height:1.5}.plain-list{padding:0;list-style:none;margin:25px 0;color:var(--muted);font-size:13px}.plain-list li{padding:7px 0}.plain-list li:before{content:'✓';margin-right:12px;color:#6b874f}.prose{max-width:770px;padding-bottom:70px;color:var(--muted)}.prose h2{font-size:24px;letter-spacing:-.5px;color:var(--ink);margin-top:32px}.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:15px;top:15px;padding:10px;background:white;z-index:10}[hidden]{display:none!important}@media(max-width:1000px){header{gap:20px}header nav{gap:17px}.hero{gap:35px}h1{letter-spacing:-2.4px}.hero-actions{gap:17px;flex-wrap:wrap}.journey{padding:22px 20px 0}.journey-footer{margin-left:-20px;margin-right:-20px}.journey-line{left:36px}.journey-top{font-size:8px}.journey-stop strong{font-size:12px}.statement{grid-template-columns:1fr 1fr;padding:35px}.statement-symbol{display:none}.form-layout{gap:50px}.pricing-layout{gap:50px}}@media(max-width:760px){header{padding:20px 24px;flex-wrap:wrap;justify-content:space-between;gap:18px}.brand{font-size:27px}header nav{order:3;width:100%;justify-content:space-between;margin:0;gap:12px}header nav a{font-size:12px}.nav-cta{font-size:10px;padding:8px 12px;gap:10px}main,footer{padding-left:24px;padding-right:24px}.announcement{font-size:9px;padding:8px 12px}.announcement span{margin:0 4px}.hero{grid-template-columns:1fr;padding:50px 0 55px;gap:35px}h1{font-size:49px;letter-spacing:-2.6px}.lead{font-size:16px}.hero .lead{max-width:500px}.journey{max-width:520px;width:100%;justify-self:center}.journey-stop strong{font-size:14px}.journey-top{font-size:9px}.hero-actions{margin-top:25px}.purpose{padding:35px 0 45px}.purpose-heading,.editorial{grid-template-columns:1fr;gap:22px}.purpose-heading p{font-size:14px}.feature-grid{grid-template-columns:1fr}.feature-grid article,.feature-grid article:first-child{padding:25px 0;border:0;border-top:1px solid var(--line)}.feature-number{margin-bottom:15px}.feature-grid p{max-width:500px}.statement{grid-template-columns:1fr;gap:25px;padding:30px;margin-bottom:40px}.statement h2{font-size:42px}.statement-copy p{max-width:500px}.closing{padding-bottom:50px}.closing h2{font-size:35px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-note{grid-column:1/-1;justify-self:start}.footer-note>p{font-size:17px}.footer-bottom{flex-wrap:wrap;font-size:9px}.footer-bottom>span:last-child{width:100%}.page-intro{padding:47px 0 35px}.page-intro h1{font-size:43px}.value-strip{grid-template-columns:1fr;gap:28px;padding:28px;margin-bottom:40px}.editorial{padding:35px 0}.small-cta{align-items:flex-start;flex-direction:column;padding-bottom:45px}.pricing-layout,.form-layout{grid-template-columns:1fr;gap:35px;padding-bottom:50px}.price-card{max-width:none;padding:28px}.price-card h2{font-size:48px}.pricing-details h2{font-size:35px}.form-layout aside>p{max-width:500px}.aside-note{max-width:none}.enquiry-form{padding:23px}.trial-seal{padding-bottom:20px;margin-bottom:25px}.field-pair{grid-template-columns:1fr;gap:0}.faq-list summary{font-size:15px}.faq-list details p{font-size:14px}.early-note{padding-bottom:45px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.owner-page main{padding-top:45px;padding-bottom:65px}.owner-login{max-width:600px;margin:10px auto 70px}.owner-login h1{font-size:52px}.owner-login details{margin-top:35px}.owner-login form{margin-top:20px}.owner-page label{display:block;font-size:13px;margin:15px 0}.owner-page input{display:block;width:100%;padding:12px;border:1px solid #bccbbb;border-radius:6px;background:white;min-height:45px;color:var(--ink);margin-top:7px}.owner-page .secondary{background:transparent;color:var(--green)}.owner-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.owner-heading h1{font-size:43px;margin-bottom:0}.owner-heading h2{font-size:28px;margin:0}.owner-settings{padding:30px;border:1px solid var(--line);border-radius:10px;background:#eef1e4;margin-bottom:50px}.owner-settings h2{font-size:28px}.owner-settings>p{font-size:13px}.owner-settings form{display:flex;gap:20px;align-items:end;max-width:700px;margin-bottom:15px}.owner-settings label{flex:1;margin:0}.owner-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.owner-actions a{font-size:13px}.enquiry-item{border-top:1px solid var(--line);padding:25px 0;overflow-wrap:anywhere}.enquiry-item>p{font-size:13px;white-space:pre-wrap}.enquiry-item>h3{margin-bottom:12px}.owner-page header>span{font-size:12px;margin-left:auto}@media(max-width:600px){.owner-heading,.owner-settings form{align-items:stretch;flex-direction:column}.owner-settings{padding:20px}.owner-heading h1{font-size:37px}.owner-login h1{font-size:43px}.owner-actions button{min-height:44px}}

.owner-schools{border:1px solid var(--line,#ccd7cd);border-radius:18px;padding:24px;margin:24px 0;background:#fff}.owner-school-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.owner-school-card{border:1px solid #d8e1d6;background:#f5f7f1;padding:18px;border-radius:12px;margin:12px 0;overflow-wrap:anywhere}.owner-school-card h3,.owner-school-card h4{margin:0 0 8px}.owner-school-card p{margin:6px 0;font-size:14px}.owner-school-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:end;margin:24px 0}.owner-school-form button,.owner-school-form h3{grid-column:1/-1}.owner-page select,.owner-page textarea{font:inherit;padding:12px;border:1px solid #b8cabc;border-radius:8px;background:#fff;width:100%;color:inherit}.owner-record-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}.owner-record-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;border-bottom:1px solid #d8e1d6}.owner-control-panel{padding:18px;background:#f5f7f1;border-radius:12px;margin:20px 0}.owner-search{display:flex;align-items:end;gap:12px;margin:18px 0}.owner-search label{flex:1}.owner-page nav{flex-wrap:wrap;margin:20px 0}#owner-school-detail:empty,#owner-invitation:empty{display:none}#owner-school-detail{border-top:2px solid #d8e1d6;padding-top:24px;margin-top:28px}#owner-invitation{padding:22px;background:#fff5d6;border-radius:12px;margin-top:22px}#owner-invitation button{margin:12px 12px 0 0}.owner-school-card form{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.owner-school-card form label{flex:1;min-width:150px}@media(max-width:640px){.owner-schools{padding:14px}.owner-school-form{grid-template-columns:1fr}.owner-search{align-items:stretch;flex-direction:column}.owner-heading{flex-wrap:wrap;gap:12px}}

.owner-route-stops,.owner-school-form>p,.owner-school-form>fieldset{grid-column:1/-1}.owner-route-stops .owner-record-row{flex-wrap:wrap;justify-content:flex-start}.owner-route-stops .owner-record-row span{flex:1;min-width:180px}.owner-school-form fieldset{border:1px solid #d8e1d6;border-radius:10px;padding:12px;display:flex;flex-wrap:wrap;gap:14px}.owner-school-form fieldset label{display:inline-flex;align-items:center;gap:8px}.owner-school-form fieldset input[type=checkbox]{width:auto}

/* Destination chooser: map data is loaded only after an explicit open action. */
.destination-map-editor,#location-map-host,.destination-advanced,.destination-step-title,.trip-route-preview{grid-column:1/-1;min-width:0}.destination-map-editor{padding:20px;border:1px solid #cedcd2;border-radius:16px;background:#f7faf5}.destination-map-editor h3{margin:10px 0 12px}.destination-map-editor p{font-size:14px;line-height:1.5}.destination-map-controls,.destination-radius-presets{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.destination-map-controls button,.destination-radius-presets button{min-height:46px;border-radius:10px;cursor:pointer}.destination-map-editor .destination-map-controls button{grid-column:auto}.destination-map-controls button:first-child{background:#174d45;color:white}.destination-map{position:relative;height:320px;width:100%;max-width:960px;overflow:hidden;border:2px solid #174d45;border-radius:12px;background:repeating-linear-gradient(0deg,#e9eee5 0px,#e9eee5 39px,#d4dfd0 40px);touch-action:none;cursor:crosshair}.destination-map:focus{outline:3px solid #cc7a24;outline-offset:2px}.destination-map-tiles,.destination-map-overlay{position:absolute;inset:0;pointer-events:none}.destination-map-tiles img{position:absolute;width:256px;height:256px;max-width:none;user-select:none}.destination-map-circle{position:absolute;box-sizing:border-box;border:3px solid #b65c19;border-radius:50%;background:rgba(225,136,52,.19)}.destination-map-pin{position:absolute;transform:translate(-50%,-50%);font-size:30px;line-height:1;color:#c44923;text-shadow:0 0 3px white;z-index:1}.destination-map-attribution{display:inline-block;font-size:12px;margin-bottom:8px}.destination-map-status{font-weight:600;min-height:20px}.destination-map-editor input[type=range]{display:block;padding:8px 0;width:100%;accent-color:#174d45;min-height:42px}.destination-map-editor output{display:block;font-size:24px;font-weight:700;color:#174d45}.destination-radius-presets button{background:#fff;color:#174d45;border:1px solid #9eb5aa;min-width:76px}.destination-advanced{padding:14px;margin:14px 0;border:1px solid #d8e1d6;border-radius:10px}.destination-advanced summary{cursor:pointer;font-weight:600}.destination-advanced label{margin-top:12px}.destination-advanced input,.destination-advanced select{width:100%;box-sizing:border-box}.trip-route-preview{padding:18px;background:#f2f7ef;border-radius:14px;border:1px solid #cddbc7}.trip-stop-preview{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:12px 0 0}.trip-stop-preview li{position:relative;flex:1;min-width:150px;background:#fff;border:1px solid #d4dfd0;border-radius:12px;padding:14px;display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center}.trip-stop-preview small{grid-column:2;font-size:13px;color:#5b716b}.trip-stop-number{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#174d45;color:white;font-weight:700}.trip-stop-preview li+li:before{content:'→';position:absolute;left:-14px;color:#174d45;font-weight:700}@media(max-width:640px){.destination-map-editor{padding:12px}.destination-map{height:280px}.destination-map-controls button{flex:1;min-width:130px}.trip-stop-preview{flex-direction:column}.trip-stop-preview li+li:before{content:'↓';left:24px;top:-16px}}

.owner-workspace-nav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.owner-workspace-nav button{min-width:130px}.owner-schools:has(#owner-school-directory[hidden]){margin-top:14px}#owner-school-directory[hidden]+#owner-school-detail{margin-top:0;padding-top:0;border-top:0}

.journey-summary{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.journey-summary p{padding:12px;border:1px solid #d4dfd0;border-radius:12px;background:#fff;font-size:16px;font-weight:650;margin:0}.journey-summary small{display:block;width:100%;font-size:13px}.trip-stop-preview li div{display:grid;gap:4px}.trip-stop-preview li div small{grid-column:auto}.journey-map-box{max-width:360px;margin:16px 0}.journey-map-frame{position:relative;width:100%;overflow:hidden;border:1px solid #cad9c5;border-radius:14px;background:#eaf1e4}.journey-map-canvas{position:relative;transform-origin:top left;background:repeating-linear-gradient(0deg,transparent 0px,transparent 43px,#d6e2cf 44px),repeating-linear-gradient(90deg,#edf3e7 0px,#edf3e7 59px,#d6e2cf 60px)}.journey-map-canvas>svg{position:absolute;inset:0;width:360px;height:220px}.journey-map-tiles{position:absolute;inset:0;pointer-events:none}.journey-map-tiles img{position:absolute;width:256px;height:256px;max-width:none}.journey-map-line{fill:none;stroke:#174d45;stroke-width:4;stroke-dasharray:8 5}.journey-map-start{fill:#174d45;stroke:white;stroke-width:3}.journey-map-finish{fill:#b65c19;stroke:white;stroke-width:3}.journey-map-stop{fill:#497c72;stroke:white;stroke-width:3}.journey-map-number{fill:white;font-size:12px;font-weight:750;text-anchor:middle}.journey-map-label{fill:#153d3a;font-size:15px;font-weight:750;text-anchor:middle;paint-order:stroke;stroke:#fff;stroke-width:4px}.journey-map-note{font-size:12px;margin:8px 0}.journey-map-box>a{display:block;font-size:12px;margin-top:8px}.journey-map-box button{min-height:44px;font-size:13px}

.destination-radius-presets button[aria-pressed=true]{background:#174d45;color:#fff;border-color:#174d45}.trip-route-preview{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:0 24px}.trip-route-preview>h3,.trip-route-preview>.trip-stop-preview{grid-column:1/-1}.trip-route-preview>.journey-summary{grid-column:2;grid-row:3;flex-direction:column;justify-content:flex-start;align-content:stretch}.trip-route-preview>.journey-map-box{grid-column:1;grid-row:3}.journey-summary p{font-size:18px}@media(max-width:640px){.trip-route-preview{display:block}.journey-summary p{font-size:16px}}
.library-showcase{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:60px 0 80px;border-top:1px solid var(--line)}.library-showcase>div>p:not(.eyebrow):not(.quiet){max-width:470px;color:var(--muted);font-size:16px}.library-showcase h2{font-size:clamp(38px,4vw,56px)}.library-showcase .quiet{margin-top:18px}.library-illustration{background:#e9eedf;border:1px solid #d0dac3;border-radius:20px;padding:28px;overflow:hidden}.library-illustration-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;font-weight:700}.book-spines{display:flex;align-items:end;justify-content:center;gap:10px;height:185px;border-bottom:8px solid #d2b275;margin:20px 0 24px}.book-spines span{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:2px;font-weight:700;background:#164c43;color:#f7f7f0;border-radius:4px 4px 0 0;width:52px;height:148px;border-top:9px solid #a9bd83}.book-spines span:nth-child(2){height:168px;background:#ce9f55;color:#173f38;border-color:#f0d28d}.book-spines span:nth-child(3){height:138px;background:#a7bb8a;color:#173f38;border-color:#6c8762}.book-spines span:nth-child(4){height:158px;background:#53796e;border-color:#9cbaa9}.book-confirmation{display:flex;gap:14px;align-items:center;padding:18px;background:var(--green);color:white;border-radius:12px}.book-confirmation>span{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;border:1px solid #9fb89b;font-size:22px}.book-confirmation strong,.book-confirmation div>span{display:block}.book-confirmation strong{font-size:15px}.book-confirmation div>span{font-size:12px;color:#dceb9c}.library-mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;font-size:11px;color:var(--muted)}.library-mini-stats strong{display:block;font-size:18px;color:var(--ink)}.library-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:center;padding:75px 0 85px}.library-hero .quiet{margin-top:22px;max-width:440px}.library-cover{background:var(--green);color:#f8f7e6;border-radius:18px;padding:32px 36px;min-height:470px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:16px 16px 0 #e3e9d4;position:relative;overflow:hidden}.library-cover-mark{font-size:28px;font-weight:700}.library-cover>span:nth-child(2){font-size:clamp(27px,3vw,38px);line-height:1.15;letter-spacing:-1px;z-index:1}.library-cover small{letter-spacing:3px;font-size:10px;color:#dceb9c}.cover-book{display:flex;gap:5px;align-self:end;transform:rotate(-12deg);margin:10px 10px 30px}.cover-book i{display:block;width:95px;height:105px;background:#dceb9c;border-radius:8px 25px 3px 8px;transform:skewY(12deg);border-bottom:9px solid #a8bd80}.cover-book i+i{transform:skewY(-12deg);border-radius:25px 8px 8px 3px;background:#f4edce}.library-role-section{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding:45px 0 75px}.library-role-grid{display:grid;gap:18px}.library-role-grid article{border-bottom:1px solid var(--line);padding-bottom:18px}.library-role-grid h3{font-size:22px;margin-bottom:9px}.library-role-grid p{margin-bottom:0;color:var(--muted);font-size:15px}.library-care{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#e9eedf;padding:40px;border-radius:14px;margin-bottom:35px}.library-care p{color:var(--muted);font-size:14px}.library-care h3{font-size:20px}.library-care>div:last-child{align-self:center}.library-care>div:last-child h3:not(:first-child){margin-top:30px}@media(max-width:1000px){header{gap:20px}header nav{gap:16px}.library-hero{gap:50px}.library-showcase{gap:45px}.library-cover{min-height:420px}.library-role-section{gap:35px}.library-care{gap:35px}}@media(max-width:760px){.library-hero,.library-showcase,.library-role-section,.library-care{grid-template-columns:1fr;gap:30px}.library-hero{padding:45px 0 60px}.library-hero h1{font-size:54px}.library-cover{max-width:480px;width:100%;min-height:400px;padding:28px}.library-showcase{padding:40px 0 55px}.library-illustration{padding:22px}.library-showcase h2{font-size:42px}.library-role-section{padding:30px 0 45px;gap:10px}.library-care{padding:25px;gap:20px}.library-care h2{font-size:32px}.library-care>div:last-child h3:first-child{margin-top:0}.book-spines{height:170px}.book-spines span:nth-child(2){height:155px}.library-role-section h2 br{display:none}}
.school-next{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:38px 0;margin:0 0 60px;align-items:center}.school-next h2{font-size:34px;margin:0}.school-next .eyebrow{margin-bottom:14px}.school-next>div:last-child>p{color:var(--muted);font-size:18px;max-width:420px}.school-next .text-link{font-size:13px}@media(max-width:760px){.school-next{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.school-next h2{font-size:30px}.school-next>div:last-child>p{font-size:17px}}
@media(max-width:760px){header nav a{min-height:44px;display:inline-flex;align-items:center}footer nav a{min-height:36px;display:inline-flex;align-items:center}}

.language-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.language-form label{margin:0;font-size:13px}.language-form select,.language-form button{width:auto;min-height:44px;margin:0;padding:8px 12px;font-size:16px}.language-form select{max-width:150px}header:has(.language-form){flex-wrap:wrap}.language-form button{font-size:13px}

header nav{min-width:0;flex-wrap:wrap;row-gap:8px}.transport-features h2{font-size:25px;line-height:1.2;letter-spacing:-.6px}
