:root{--paper:#b4df61;--lime:#c8f17c;--green:#245737;--deep:#173d28;--ink:#153622;--muted:#34512c;--line:#729c3d66}
body{background:#b4df61}
.site-header{background:#b4df61dc;backdrop-filter:blur(22px);border-bottom-color:#729c3d55;transition:box-shadow .3s}
.site-header.is-scrolled{box-shadow:0 8px 32px #24412318}
.hero{padding-top:74px;padding-bottom:92px}
.hero h1{font-size:clamp(52px,6.4vw,92px);line-height:1.02;letter-spacing:-.065em}
.hero .heading-green{color:#245737}
.heading-dot{color:#e5ffc0;text-shadow:0 0 24px #f1ffc580}
.hero-description{color:#173d28!important;font-weight:700}
.hero-detail{color:#34512c}
.hero-image-wrap{border-radius:150px 30px 30px 30px;border:1px solid #edfdd160;box-shadow:0 30px 65px #31511d25}
.hero-stamp{background:#d5f897;border-color:#b4df61;animation:largo-bob 6s ease-in-out infinite}
.route-ticket{background:#d0ee9c;border-color:#789e4f66;box-shadow:0 16px 35px #2b481b18}
.ticket-icon{background:#b5df6c}
.marquee-strip{background:#a4d34e;color:#183d28;border-block:1px solid #729c3d66;gap:44px}
.marquee-strip>*{animation:largo-ticker 18s linear infinite}
.service-card,.detail-image{background:#c9e995;border:1px solid #86ad4e75;border-radius:24px;box-shadow:0 6px 15px #24412308}
.service-card:hover{transform:translateY(-9px);box-shadow:0 24px 42px #24412320;border-color:#315d2b}
.service-card img,.detail-image img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.service-card:hover img,.detail-image:hover img{transform:translateY(-6px) rotate(-3deg) scale(1.04)}
.story-section,.future-section,.mission-section{background:#a7d650}
.story-art{background:#c7ed8a;border-radius:28px}
.partner-driver{background:#9acc46;color:#153622}
.partner-business{background:#c4e98b;color:#153622}
.partner-card{border:1px solid #729c3d66;border-radius:24px;transition:transform .3s,box-shadow .3s}
.partner-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #24412318}
.partner-driver p,.partner-business p,.partner-driver .eyebrow{color:#2d4b28!important}
.contact-banner{background:#9dce49;color:#153622;border-block:1px solid #729c3d66}
.contact-banner p,.contact-banner .eyebrow{color:#2d4b28}
.site-footer{background:#b4df61}
.inquiry-panel{background:#cae995;border-radius:24px;border-color:#86ad4e75}
.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{background:#e1f5bf!important;border-color:#90b466!important}
.service-tags span{background:#b2dc6b;color:#22492b}
.main-nav.is-open{background:#b4df61}
.button{border-radius:999px;transition:transform .25s,box-shadow .25s,background .25s}
.button-green,.button-dark{background:#1e492d;color:#f0ffda;box-shadow:0 8px 20px #24412318}
.button-green:hover,.button-dark:hover{background:#11331e;transform:translateY(-3px);box-shadow:0 15px 28px #24412325}
.button-lime{background:#dcf8af;color:#153622}
.reveal-ready{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready.is-visible{opacity:1;transform:none}
.hero-copy{animation:largo-enter .85s ease both}
.hero-art{animation:largo-enter 1.1s .12s ease both}
@keyframes largo-enter{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes largo-bob{0%,100%{transform:translateY(0) rotate(9deg)}50%{transform:translateY(-9px) rotate(3deg)}}
@keyframes largo-ticker{from{transform:translateX(0)}to{transform:translateX(-90px)}}
@media(max-width:700px){.hero{padding-top:42px;padding-bottom:65px}.hero h1{font-size:clamp(45px,10.7vw,72px);max-width:590px}.hero-image-wrap{border-radius:90px 24px 24px 24px}.service-card{border-radius:22px}.hero-detail{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
/* Supplied LarGo wordmark, framed around the artwork without altering the image. */
.brand .wordmark-window{display:block;position:relative;width:172px;height:64px;overflow:hidden;margin:0;font-size:0}
.brand img.largo-wordmark{position:absolute;max-width:none;width:202px;height:202px;left:-9px;top:-69px;border-radius:0;object-fit:contain;mix-blend-mode:multiply}
.brand .wordmark-window{mix-blend-mode:multiply}
@media(max-width:700px){.brand .wordmark-window{width:145px;height:55px}.brand img.largo-wordmark{width:171px;height:171px;left:-8px;top:-58px}}
.brand .wordmark-window{width:184px;height:66px;overflow:visible;mix-blend-mode:normal}
.brand img.largo-wordmark{position:static;display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;border:0;background:transparent;box-shadow:none}
@media(max-width:700px){.brand .wordmark-window{width:153px;height:55px}.brand img.largo-wordmark{position:static;width:100%;height:100%}}
/* Soft sage edition */
:root{--paper:#e5efdd;--lime:#d9edbd;--green:#355c43;--deep:#233e30;--ink:#243b2d;--muted:#52634f;--line:#c5d4bc}
body{background:#e5efdd;color:var(--ink)}
.site-header{background:#e5efdded;border-bottom-color:#c5d4bc99}
.main-nav.is-open{background:#e5efdd}
.hero h1{font-family:var(--font-body);font-weight:700;letter-spacing:-.055em;line-height:1.06}
h2,h3{font-weight:700;letter-spacing:-.04em;line-height:1.12}
.hero .heading-green{color:#527b4e}.heading-dot{color:#88aa6e;text-shadow:none}
p,.hero-detail{color:#52634f}.hero-description{color:#334d3a!important;font-weight:600}
.hero-stamp{background:#d8e9bf;border-color:#e5efdd}
.route-ticket{background:#f0f5e8;border-color:#cedbc3}.ticket-icon{background:#dcebcf}
.marquee-strip{background:#d6e5c8;color:#35513c;border-color:#c5d4bc}
.service-card,.detail-image{background:#f0f5e9;border-color:#d2dec9;box-shadow:0 8px 24px #334d3a08}
.story-section,.future-section,.mission-section{background:#dce8d2}
.story-art{background:#ccdfb9}
.partner-driver{background:#ccdfbb;color:#243b2d}.partner-business{background:#eaf1df;color:#243b2d}
.partner-card{border-color:#c5d4bc}
.contact-banner{background:#d2e2c3;color:#243b2d;border-color:#c5d4bc}
.contact-banner p,.contact-banner .eyebrow,.contact-banner-inner p{color:#435b40!important}
.site-footer{background:#e5efdd}
.inquiry-panel{background:#f0f5e9;border-color:#d2dec9}
.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{background:#f8fbf3!important;border-color:#c1d0b7!important}
.service-tags span{background:#d9e8cb;color:#35513c}
.button-green,.button-dark{background:#35543d;color:#f5faee;box-shadow:0 8px 20px #344c3110}
.button-green:hover,.button-dark:hover{background:#253e2c}.button-lime{background:#edf5df;color:#2c4831}
.eyebrow{letter-spacing:.14em}
.apps-section{padding:90px 0 80px;background:#e5efdd;overflow:hidden;border-top:1px solid var(--line)}
.apps-intro{text-align:center;max-width:660px;margin:auto}.apps-intro .eyebrow{justify-content:center;margin-bottom:22px}.apps-intro h2{font-size:clamp(38px,4.8vw,66px)}.apps-intro h2 span{color:#527b4e}.apps-intro>p:last-child{margin:22px auto 0;max-width:460px}
.apps-art{display:block;width:100%;height:auto;max-width:1000px;margin:40px auto 0;border:0;background:transparent;animation:largo-enter 1s ease both}
.apps-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;max-width:900px;margin:15px auto 0;text-align:center}.apps-grid article{padding:0 18px}.apps-status{font-size:10px;font-weight:700;letter-spacing:.14em;color:#527b4e}.apps-grid h3{font-size:32px;margin:12px 0}.apps-grid p{font-size:15px;max-width:350px;margin:auto;line-height:1.7}.apps-soon{display:inline-block;margin-top:20px;font-size:13px;font-weight:700;color:#46643d}.apps-grid .text-link{margin-top:15px}.apps-note{text-align:center;font-size:12px;margin:45px auto 0;max-width:500px}
@media(max-width:700px){.apps-section{padding:65px 0}.apps-grid{gap:14px}.apps-grid article{padding:0}.apps-grid h3{font-size:25px}.apps-grid p{font-size:13px}.apps-art{margin:30px auto 12px}.apps-status{font-size:8px}.apps-grid .text-link{font-size:11px}}
.app-color-label{display:block;font-size:10px;font-weight:700;letter-spacing:.1em;margin:0 0 14px;color:#47613e}.apps-art{object-fit:contain}

.operation-banner{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;background:#35543d;color:#f5faee;padding:10px 20px;text-align:center;font-size:12px;line-height:1.5}.operation-banner strong{font-size:13px;letter-spacing:.04em}.operation-banner .status-dot{background:#c9e6a9}.operation-banner>span:last-child{color:#e1ecd8}.mission-section .mission-grid{margin-top:32px}.mission-section .mission-grid p:last-child{line-height:1.85}
.largo-carousel{margin-top:36px}.largo-slide[hidden]{display:none!important}.largo-slide{animation:largo-enter .4s ease both}.largo-slide>img{display:block;width:100%;height:clamp(260px,40vw,560px);object-fit:contain;background:#f5f8f0;border-radius:22px}.slide-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 4px}.slide-caption h3{margin:10px 0}.slide-caption p{max-width:680px}.slide-caption .button{flex-shrink:0}.slide-controls{display:flex;gap:20px;align-items:center;justify-content:center}.slide-controls button{border:1px solid #a9bda0;color:#294831;background:#f0f5e9;width:48px;height:48px;border-radius:50%;font-size:22px}.slide-controls button:hover{background:#ccdfbb}.slide-counter{min-width:55px;text-align:center;font-weight:700}.slide-help{text-align:center;margin-top:15px;font-size:12px}@media(max-width:700px){.slide-caption{display:block;padding:20px 0}.slide-caption .button{margin-top:18px}.largo-slide>img{height:auto;aspect-ratio:16/9;border-radius:14px}.slide-caption h3{font-size:27px}}
/* Animated slideshow, matched to the page palette. */
.largo-carousel{background:var(--paper);border-radius:26px;overflow:hidden;touch-action:pan-y}
.largo-slide>img{background:var(--paper);mix-blend-mode:multiply;border-radius:0}
.largo-slide{animation:largo-slide-arrive .65s cubic-bezier(.22,.7,.25,1) both;transform-origin:center}
.largo-slide>img{animation:largo-image-arrive 1.1s cubic-bezier(.22,.7,.25,1) both}
.largo-slide .slide-caption{animation:largo-caption-arrive .7s .1s ease both}
.slide-controls button{transition:transform .2s,background .2s,box-shadow .2s}
.slide-controls button:hover{transform:translateY(-3px);box-shadow:0 7px 18px #35543d15}
.slide-controls button:active{transform:scale(.94)}
.slide-progress{height:3px;background:#cadbbf;border-radius:5px;overflow:hidden;margin-top:24px}
.slide-progress>span{display:block;height:100%;background:#527b4e;border-radius:5px;transition:width .55s ease}
@keyframes largo-slide-arrive{from{opacity:0;transform:translateX(var(--slide-from,24px))}to{opacity:1;transform:translateX(0)}}
@keyframes largo-image-arrive{from{opacity:.6;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@keyframes largo-caption-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.largo-slide,.largo-slide>img,.largo-slide .slide-caption{animation:none!important}.slide-progress>span,.slide-controls button{transition:none!important}}
