:root{color-scheme:light;--ink:#18241e;--pine:#15281f;--dark:#0f1f18;--paper:#f8f8f1;--lime:#d7ed9f;--muted:#415047;--line:#dce2d6;--max:1190px}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "Instrument Sans","PingFang SC","Microsoft YaHei",system-ui,sans-serif}
a{color:inherit;text-decoration:none}
a:focus-visible,summary:focus-visible{outline:3px solid #578040;outline-offset:4px}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{line-height:1.14;letter-spacing:-.032em}
h1{font-size:clamp(2.25rem,5.4vw,5rem);font-weight:730}
h2{font-size:clamp(1.6rem,3vw,2.7rem)}
h3{font-size:1.16rem}
p,li{overflow-wrap:anywhere}
p{margin-top:.9rem;color:var(--muted)}
.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}
.section{padding-block:64px}
.header{background:var(--dark);color:#f9faf4}
.nav-row,.footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:76px}
.brand{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.brand strong{font-size:1.95rem;line-height:1;letter-spacing:-.085em}
.brand span{font-size:.68rem;letter-spacing:.09em;color:var(--lime)}
.nav-row nav{display:flex;align-items:center;gap:clamp(10px,1.75vw,26px);flex-wrap:wrap;font-size:.9rem}
.nav-row nav a,.language{padding:5px 0}
.nav-row nav a[aria-current],.nav-row nav a:hover,.language:hover{color:var(--lime)}
.language{font-size:.85rem;white-space:nowrap}
.skip{position:fixed;left:10px;top:10px;z-index:5;transform:translateY(-200%);background:var(--lime);padding:10px}
.skip:focus{transform:translateY(0)}
.kicker{color:#4b682d;font-size:.79rem;font-weight:730;letter-spacing:.11em;text-transform:uppercase;margin:0 0 13px}
.lead{font-size:clamp(1rem,1.65vw,1.25rem);max-width:58ch}
.home-hero{background:var(--pine);color:#fff;padding:65px 0}
.home-hero .kicker,.fleet-banner .kicker{color:var(--lime)}
.home-hero .lead,.fleet-banner .lead{color:#dbe6db}
.hero-grid,.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5.5vw,82px)}
.hero-grid{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr)}
.photo{position:relative;min-width:0}
.photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:13px}
.photo figcaption{position:absolute;bottom:9px;right:9px;color:white;background:#102019dc;border-radius:4px;padding:2px 7px;font-size:.66rem}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.button,.link{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.button{min-height:45px;padding:9px 15px;border:1px solid transparent;border-radius:6px;background:var(--lime);color:#17261b;font-size:.88rem}
.button:hover{background:#e6f3c0}
.button.outline{border-color:#a0b2a6;background:transparent;color:white}
.button.outline:hover{background:#263e32}
.link{color:#305825;font-size:.9rem}
.link:hover{text-decoration:underline}
.scene-grid,.cards{display:grid;gap:18px;margin-top:22px}
.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.scene-grid article,.cards article,.sheet,.aside-note{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.scene-grid article .photo img{aspect-ratio:2.05/1;border-radius:0}
.scene-grid article>div{padding:20px}
.scene-grid .link,.split .link{margin-top:15px}
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards article{padding:17px}
.cards p,.scene-grid p{font-size:.94rem}
.band,.records-band{background:#edf1e4}
.band>.wrap,.records-band>.wrap{padding-block:63px}
.band .cards{grid-template-columns:1fr;gap:8px}
.band .cards article{padding:12px 14px}
.band .cards h3,.band .cards p{margin:0}
.help-strip{display:flex;align-items:center;justify-content:space-between;gap:20px}
.guide-heading,.support-heading{padding:54px 0 24px}
.guide-heading h1,.support-heading h1,.about-heading h1,.records-band h1{font-size:clamp(2.3rem,4.8vw,4.2rem)}
.guide-grid,.support-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(26px,5.2vw,73px)}
.support-grid{padding:10px 0 66px}
.timeline{counter-reset:stage;list-style:none;margin:0;padding:0}
.timeline li{position:relative;padding:20px 0 22px 53px;border-bottom:1px solid var(--line);counter-increment:stage}
.timeline li::before{content:counter(stage);position:absolute;left:0;top:20px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--lime);font-weight:750}
.timeline li h2{font-size:1.34rem}
.timeline li p{margin-top:.45rem}
.aside-note{margin-top:15px;padding:18px}
.aside-note ul{padding-left:20px}
.aside-note .link{margin-top:10px}
.fleet-banner{background:var(--pine);color:white;padding-top:56px}
.fleet-banner .wrap{padding-bottom:34px}
.fleet-banner>.photo img{border-radius:0;max-height:470px;object-position:center 55%}
.sheet{padding:20px}
.table-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:.93rem;text-align:left}
td,th{padding:10px 8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
th{background:#edf1e4}
.receipt{margin:0}
.receipt>div{display:grid;grid-template-columns:1fr auto;gap:9px;padding:9px 0;border-bottom:1px solid var(--line)}
.receipt dd{margin:0;font-weight:690;text-align:right}
.receipt>div:last-child{font-weight:750;font-size:1.08rem;border-bottom:0}
.faq h2{margin-bottom:15px}
.faq details{border-top:1px solid var(--line);padding:14px 0}
.faq summary{cursor:pointer;font-weight:700}
.faq details p{margin:.45rem 0 0}
.about-heading{padding-top:57px}
.narrow{max-width:760px}
.narrow h2:not(:first-child){margin-top:34px}
.narrow .link{margin-top:17px}
.footer{background:var(--dark);color:#edf5e9}
.footer .wrap{min-height:105px}
.footer .link{color:#e7efe5;margin-left:18px}
@media(max-width:900px){.wrap{width:calc(100% - 42px)}.nav-row{gap:12px}.nav-row nav{gap:8px 15px}.brand span{display:none}.band>.wrap,.records-band>.wrap,.section{padding-block:44px}}
@media(max-width:650px){
.wrap{width:calc(100% - 34px)}
.nav-row{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding-block:12px}
.nav-row nav{grid-column:1/-1;grid-row:2;font-size:.8rem;gap:2px 12px}
.language{grid-column:2;grid-row:1}
.brand span{display:inline}
.hero-grid,.split,.guide-grid,.support-grid,.scene-grid,.cards{grid-template-columns:minmax(0,1fr);gap:18px}
.home-hero,.section,.band>.wrap,.records-band>.wrap{padding-block:33px}
.guide-heading,.support-heading,.about-heading{padding-top:32px}
.fleet-banner{padding-top:34px}
.fleet-banner>.photo img{max-height:290px}
.help-strip{align-items:flex-start;flex-direction:column}
.support-grid{padding-bottom:35px}
.footer .wrap{flex-wrap:wrap;padding-block:18px;min-height:0}
.footer .link{margin:0 15px 0 0}
.sheet{padding:13px}
td,th{font-size:.82rem;padding:8px 5px}
}
.editor-grid,.editor-list{display:grid;gap:14px;margin-top:22px}
.editor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.editor-grid article{padding:18px;border-top:3px solid #91ad6d;background:white}
.editor-list article{display:grid;grid-template-columns:minmax(135px,.55fr) minmax(0,1fr);gap:14px;border-bottom:1px solid var(--line);padding:14px 0}
.editor-list article p{margin:0}
.editor-band{background:#eaf0e4}
.editor-band>.wrap{padding-block:60px}
.enquiry{border-top:1px solid var(--line)}
.footer .legal{min-height:auto;padding:12px 0 20px;border-top:1px solid #405247;font-size:.83rem;color:#d0ddd0}
.contact-heading{padding:55px 0 30px}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.65fr);gap:30px;align-items:start;padding-bottom:65px}
.contact-note{margin-top:0}.contact-note h2{font-size:1.55rem}.contact-note h3{margin-top:22px}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-fields .wide{grid-column:1/-1}
.form-fields label{display:grid;gap:5px;font-weight:650;font-size:.9rem}
.form-fields input,.form-fields select,.form-fields textarea{width:100%;border:1px solid #acb9a8;border-radius:6px;padding:9px;font:inherit;color:var(--ink);background:white}
.form-fields textarea{resize:vertical}
form .button{margin-top:15px;cursor:pointer;font-family:inherit}
form p#privacy{font-size:.86rem}
.contact-result{padding-block:70px}
.contact-result .button{margin-top:20px}
@media(max-width:650px){.editor-grid,.editor-list article,.contact-grid,.form-fields{grid-template-columns:1fr}.editor-band>.wrap{padding-block:33px}.contact-heading{padding:30px 0 18px}.contact-grid{gap:18px;padding-bottom:35px}.footer .legal{padding-top:10px}}
