@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#193346;--teal:#167f84;--deep:#11686e;--pale:#eaf5f1;--paper:#fbfcfa;--cream:#fff9ee;--line:#dbe8e4;--muted:#566b73}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.65}a{color:inherit}h1,h2,h3{font-family:Manrope,system-ui,sans-serif;line-height:1.17;letter-spacing:-.045em}h1{font-size:clamp(2.65rem,5.5vw,5.2rem);margin:17px 0 25px}h2{font-size:clamp(1.9rem,3vw,3.05rem);margin:12px 0 22px}h3{font-size:1.3rem;margin:10px 0}p{margin:0 0 17px}.wrap{width:min(1150px,calc(100% - 48px));margin:auto}.narrow{max-width:800px}.skip{position:absolute;top:-80px;left:15px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:50;background:rgba(251,252,250,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navrow{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:25px}.brand{text-decoration:none;font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.045em;font-size:1.25rem;white-space:nowrap}.brand small{display:block;font-size:.6rem;letter-spacing:.23em;text-transform:uppercase;line-height:.8;margin-left:44px;color:var(--teal)}.brand-mark{color:var(--teal);font-size:1.7rem;margin-right:6px}.header nav{display:flex;align-items:center;gap:25px}.header nav a{text-decoration:none;font-weight:700;font-size:.89rem}.header nav a:hover,.header nav a.current{color:var(--teal)}.navcta{background:var(--ink);color:#fff!important;padding:12px 19px;border-radius:50px}.menu{display:none}.hero{background:linear-gradient(118deg,#eff8f4 0%,#f5faf7 58%,#fff8ed 100%);overflow:hidden}.hero-grid{min-height:620px;display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center;padding:82px 0 90px}.hero-text{position:relative;z-index:2}.hero h1 em{font-style:normal;color:var(--teal)}.eyebrow{font-size:.74rem;letter-spacing:.17em;font-weight:800;color:var(--teal)}.dot{display:inline-block;width:8px;height:8px;background:#e5b44c;border-radius:50%;margin-right:7px}.lead{font-size:1.15rem;max-width:620px;color:#4c626a;line-height:1.8}.actions,.route-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;text-decoration:none;border-radius:100px;padding:14px 22px;font:700 .92rem 'DM Sans',sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #14394420}.primary{background:var(--teal);color:white}.secondary{border:1px solid #9bb8b5;background:white;color:var(--ink)}.dark{background:var(--ink);color:white}.light{background:white;color:var(--ink)}.small{font-size:.78rem;color:#64777d;margin-top:20px}.hero-art{height:450px;position:relative;display:grid;place-items:center}.orb{position:absolute;border-radius:50%;filter:blur(2px);animation:float 9s ease-in-out infinite}.orb-one{height:390px;width:390px;background:#d5ebe5;top:22px;left:4%}.orb-two{height:270px;width:270px;background:#ffe8c4;bottom:0;right:-4%;animation-delay:-3s}.illustration{position:relative;z-index:1;width:min(440px,100%);min-height:315px;border:1px solid #ffffffb9;border-radius:34px;background:#ffffffdd;box-shadow:0 28px 80px #214d4d18;padding:40px 25px;display:flex;flex-direction:column;justify-content:space-around;transform:rotate(-2deg)}.bubble{font-weight:700;padding:17px 20px;border-radius:20px;font-size:clamp(.9rem,1.5vw,1.12rem);max-width:92%}.bubble-a{background:#e5f3ee;align-self:flex-start}.bubble-b{background:#fdf0d8;align-self:flex-end}.heart{font-size:2.8rem;color:#e8a65c;text-align:center;line-height:1}.ill-caption{text-align:center;font-weight:800;color:var(--deep);font-size:.85rem}.ill-caption span{color:#d6a84e;margin:0 8px}.section{padding:92px 0}.section.alt{background:#f0f7f4}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.inline-link{font-weight:800;color:var(--teal);text-decoration:none}.inline-link:hover{text-decoration:underline}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service{border:1px solid var(--line);background:white;padding:30px 24px;border-radius:22px;min-height:255px}.service p{color:var(--muted);font-size:.94rem}.ico{height:52px;width:52px;border-radius:16px;background:var(--pale);display:grid;place-items:center;font-size:1.7rem;color:var(--teal)}.routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.route{padding:42px;border-radius:26px;border:1px solid var(--line)}.route.free{background:#e6f4ef}.route.paid{background:#fff8eb}.route h3{font-size:1.7rem}.route p{color:#4e636a}.route .button{margin-top:13px}.route-icon{font-size:2rem;color:var(--teal);margin-bottom:15px}.tag{font-size:.72rem;letter-spacing:.13em;font-weight:800;color:var(--deep)}.statement{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.statement p{font-size:1.1rem;color:var(--muted)}.bottomcta{padding:70px 0;background:#196c70;color:white;text-align:center}.bottomcta h2{margin-bottom:12px}.bottomcta p{color:#e3f2ef}.pageintro{background:linear-gradient(125deg,#eaf6f1,#fff9ef);padding:95px 0 85px}.pageintro h1{font-size:clamp(2.6rem,5vw,4.5rem)}.compact{margin-top:55px}.disclaimer{padding:20px 25px;background:#f4f6f4;border-radius:16px;font-size:.85rem;color:#526a70;margin-top:35px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.values article{background:white;padding:30px;border-radius:20px}.values span{font-size:.8rem;color:var(--teal);font-weight:800}.enquiry-routes{align-items:start}.enquiry-routes .route{scroll-margin-top:100px}.enquiry-routes h2{font-size:1.75rem;margin:12px 0 20px}.enquiry-form{display:grid;gap:15px;margin-top:30px}.enquiry-form label{display:grid;gap:6px;font-size:.85rem;font-weight:800}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{border:1px solid #cbd9d4;border-radius:12px;padding:12px 14px;font:inherit;width:100%;background:white;color:var(--ink)}.enquiry-form :focus-visible{outline:3px solid #90c7c3}.enquiry-form button{justify-self:start}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.prose{font-size:1.06rem}.prose h2{font-size:1.65rem;margin-top:38px}.footer{background:#173847;color:white;padding:65px 0 25px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer p,.footer .fine{color:#bdd2d4}.footer a{text-decoration:none}.footgrid>div:not(:first-child){display:flex;flex-direction:column;gap:10px}.footgrid strong{margin-bottom:10px}.fine{border-top:1px solid #ffffff22;margin-top:48px;padding-top:25px;font-size:.78rem}.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes float{50%{transform:translateY(-17px)}}@media(max-width:1050px){.services-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{gap:20px}.header nav{gap:15px}}@media(max-width:780px){.wrap{width:min(100% - 34px,1150px)}.navrow{min-height:70px}.menu{display:block;border:1px solid var(--line);background:white;border-radius:12px;padding:8px 12px;font-weight:700;color:var(--ink)}.header nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--paper);padding:20px 25px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:62px 0 35px}.hero-art{height:320px}.orb-one{width:280px;height:280px}.orb-two{width:210px;height:210px}.illustration{min-height:260px;max-width:390px}.section{padding:65px 0}.section-head{align-items:start;flex-direction:column}.routes,.statement,.contactgrid{grid-template-columns:1fr;gap:20px}.statement{gap:5px}.values{grid-template-columns:1fr}.footgrid{grid-template-columns:1fr 1fr;gap:30px}.footgrid>div:first-child{grid-column:1/-1}.pageintro{padding:65px 0}.route{padding:30px}}@media(max-width:480px){.services-grid{grid-template-columns:1fr}.hero h1{font-size:2.75rem}.button{width:100%}.route-actions .inline-link{padding:8px}.illustration{padding:22px 16px}.footgrid{grid-template-columns:1fr}.footgrid>div:first-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* Official KCS logo */
.brand{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}
.brand-logo{display:block;width:100px;height:76px;object-fit:contain;object-position:center}
.navrow{min-height:94px}
@media(max-width:780px){.brand-logo{width:78px;height:62px}.navrow{min-height:76px}.header nav{top:75px}}
