@charset "UTF-8";
:root{--ink:#172f37;--muted:#4d646a;--paper:#f7f8f3;--line:#ccd7ce;--accent:#dfead4;--orange:#ffc69f;--error:#93330e;--white:#fff; font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid #a84912;outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.demo{background:var(--ink);color:#fff;display:flex;gap:18px;align-items:center;justify-content:center;padding:10px 24px;font-size:.78rem;letter-spacing:.02em}.demo strong{color:var(--orange);white-space:nowrap}header{max-width:1248px;padding:26px 40px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-size:1.6rem;font-weight:800;letter-spacing:-1px;text-decoration:none;display:inline-flex;align-items:center;gap:10px}.mark{background:var(--ink);color:var(--paper);width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-size:1.5rem}nav{display:flex;align-items:center;gap:28px;font-size:.9rem}nav a{text-decoration:none}nav a[aria-current=page]{text-decoration:underline}.account-link{border:1px solid var(--line);border-radius:30px;padding:9px 18px}.menu{display:none}main{max-width:1248px;margin:0 auto;padding:32px 40px 80px;min-height:65vh}main:focus{outline:none}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:bold;color:var(--muted);margin:0 0 18px}.badge{display:inline-flex;background:var(--accent);padding:5px 12px;border-radius:20px;font-size:.72rem;font-weight:bold;letter-spacing:.03em}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:62px;align-items:center;padding:26px 0 54px}h1{font-size:clamp(2.3rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.055em;font-weight:600;margin:22px 0}h1 span{color:#557c59}h2{font-size:1.6rem;line-height:1.25;letter-spacing:-.025em;margin:0 0 16px}h3{font-size:1.05rem;line-height:1.3;margin:0 0 12px}p{margin:0 0 18px}.lead{font-size:1.13rem;color:var(--muted);max-width:650px;line-height:1.7}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px}.button{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:6px;text-decoration:none;padding:13px 21px;display:inline-flex;align-items:center;justify-content:center;gap:18px;font-weight:600;font-size:.94rem;line-height:1.4}.button.secondary{color:var(--ink);background:transparent;border-color:#7d9390}.button:disabled{cursor:not-allowed;background:#e2e7e2;color:#586963;border-color:#c5cec6}.text-link{font-weight:600;font-size:.9rem}.fine{font-size:.8rem;color:var(--muted)}.hero .fine{margin-top:15px}.portfolio-art{background:#e4ebde;border-radius:24px;padding:30px;transform:rotate(1deg);border:1px solid #d0ddc7}.art-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;font-size:.8rem}.stack-card{background:#fff;border:1px solid #d1dccb;border-radius:12px;padding:22px;margin-bottom:12px}.stack-card p{font-size:.84rem;margin:0;color:var(--muted)}.stack-card .label{font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;display:block;margin-bottom:5px;color:var(--muted)}.stack-card.dark{background:var(--ink);color:white;border:none}.stack-card.dark p,.stack-card.dark .label{color:#c6dbd3}.site-dots{display:flex;gap:6px;margin-top:20px}.site-dots span{width:33px;height:30px;background:#eff2e9;border:1px solid #d6dfd2;border-radius:5px;display:grid;place-items:center;font-size:.75rem}.boundary{display:flex;align-items:center;gap:10px;font-size:.75rem;margin:18px 0}.boundary:before,.boundary:after{content:'';height:1px;background:#aebea6;flex:1}.strip{padding:27px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.strip p{margin:0;font-size:.86rem;color:var(--muted)}.strip strong{display:block;margin-bottom:7px}.page-title{max-width:800px;margin:16px 0 36px}.page-title h1{font-size:clamp(2.3rem,4vw,3.4rem)}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.card{padding:28px;background:white;border:1px solid var(--line);border-radius:12px}.card.tint{background:var(--accent)}.card ul{padding-left:20px;margin:0}.card li{margin:9px 0}.notice{background:#fff0e4;border-left:4px solid #b55820;padding:20px 24px;margin:26px 0;border-radius:0 8px 8px 0}.notice p:last-child{margin-bottom:0}.notice strong{display:block;margin-bottom:8px}.layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:30px;align-items:start}.form-card{max-width:760px}.field{margin:24px 0}.field label{display:block;font-weight:600;margin-bottom:8px}.field .hint{font-size:.85rem;color:var(--muted);margin-bottom:10px}input,select{padding:12px;border:1px solid #82988a;border-radius:5px;background:#fff;color:var(--ink);width:100%;min-height:48px}input{max-width:160px}[aria-invalid=true]{border:2px solid var(--error)}.error{color:var(--error);font-weight:600;font-size:.88rem;margin:8px 0}.error-summary{padding:18px;background:#fff0e4;border:2px solid var(--error);margin-bottom:20px}.error-summary ul{margin:0;padding-left:20px}.steps{display:flex;flex-wrap:wrap;gap:12px;font-size:.8rem;color:var(--muted);margin-bottom:26px}.steps b{color:var(--ink)}.summary{margin:0}.summary div{padding:15px 0;border-bottom:1px solid var(--line)}.summary dt{font-size:.8rem;color:var(--muted)}.summary dd{margin:4px 0 0;font-weight:600;overflow-wrap:anywhere}.state-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.state-buttons button{border:1px solid #82988a;border-radius:6px;padding:8px 12px;background:white}.state-buttons button[aria-pressed=true]{background:var(--ink);color:white}.state-result{background:#eff3ea;border:1px solid var(--line);padding:22px;border-radius:8px;min-height:120px}.number{display:block;font-size:.8rem;color:var(--muted);margin-bottom:15px}.empty{max-width:740px;padding:40px;background:#e9efe4;border:1px solid var(--line);border-radius:16px;margin:30px 0}.empty h1{font-size:2.6rem}footer{max-width:1168px;margin:auto;border-top:1px solid var(--line);padding:30px 0 35px;display:flex;gap:25px;justify-content:space-between;align-items:center}footer p{margin:0;font-size:.85rem}footer .brand{font-size:1.2rem}footer .fine{max-width:300px;font-size:.75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){header{padding:22px 26px}nav{gap:16px;font-size:.8rem}main{padding:20px 26px 50px}.hero{gap:28px}.portfolio-art{padding:20px}.layout{grid-template-columns:1fr}.hero h1{font-size:3.3rem}footer{margin:0 26px;flex-wrap:wrap}.grid{gap:16px}}
@media(max-width:650px){.demo{padding:10px 18px;align-items:flex-start;font-size:.7rem;gap:12px}header{padding:18px 20px;flex-wrap:wrap}.brand{font-size:1.4rem}.menu{display:block;border:1px solid #82988a;background:transparent;border-radius:5px;padding:8px 12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px 8px;font-size:.92rem}.account-link{border:none}main{padding:16px 20px 45px}.hero{grid-template-columns:1fr;padding:14px 0 35px;gap:35px}.hero h1{font-size:3.2rem}.portfolio-art{transform:none;padding:22px}.strip,.grid{grid-template-columns:1fr;gap:25px}.strip{padding:25px 0}.lead{font-size:1rem}.card{padding:22px}.page-title{margin-top:12px}.notice{padding:17px}.button{padding:12px 17px}.actions{align-items:stretch;gap:16px}.empty{padding:26px}.empty h1{font-size:2.1rem}footer{margin:0 20px;display:block}footer p{margin:12px 0}.page-title h1{font-size:2.6rem}}
footer{display:block}.footer-top,.footer-base{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-legal{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;padding:32px 0;align-items:start}.footer-legal h2{font-size:.9rem;margin:0 0 12px}.footer-legal a{display:block;padding:5px 0;font-size:.86rem}.footer-notice{padding:20px 0;border-top:1px solid var(--line);max-width:760px}.footer-base{padding-top:15px}.footer-base .fine{max-width:none}.footer-base a{font-size:.8rem}.legal-heading{max-width:900px;margin:40px 0}.legal-page h1{font-size:clamp(2.4rem,4vw,3.4rem);overflow-wrap:anywhere}.legal-page .breadcrumb{display:inline-block;margin-bottom:28px;font-size:.88rem}.legal-status{padding:20px 24px;background:var(--accent);border-radius:8px;max-width:850px}.legal-status p{margin:7px 0 0}.legal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:48px;align-items:start}.legal-contents{position:sticky;top:20px;max-height:85vh;overflow:auto;padding:20px;background:#eaf0e5;border-radius:8px}.legal-contents nav{display:block}.legal-contents h2{font-size:1rem}.legal-contents ol{padding-left:18px}.legal-contents a{font-size:.83rem;display:block;padding:4px 0}.legal-contents p{font-size:.8rem;margin-bottom:0}.legal-body{min-width:0;max-width:820px;overflow-wrap:anywhere}.legal-body h2{font-size:1.45rem;margin:38px 0 16px;scroll-margin-top:28px}.legal-body p,.legal-body li{line-height:1.8}.legal-body ul,.legal-body ol{padding-left:24px}.legal-body a{text-decoration:underline}.legal-body :first-child{margin-top:0}.legal-table{max-width:100%;overflow-x:auto;margin:24px 0}.legal-table table{border-collapse:collapse;width:100%;min-width:560px;font-size:.86rem}.legal-table th,.legal-table td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top;line-height:1.6}.legal-table th{background:var(--accent)}.legal-end{border-top:1px solid var(--line);padding-top:24px;margin-top:40px}.document-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.document-list>a{display:flex;justify-content:space-between;gap:20px;padding:22px;background:white;border:1px solid var(--line);border-radius:8px;text-decoration:none}.document-list strong,.document-list small{display:block}.document-list small{color:var(--muted);margin-top:8px;font-size:.9rem}.legal-context{margin-top:0}.legal-page h2:focus{outline:3px solid #a84912;outline-offset:6px}
@media(max-width:800px){.legal-layout{grid-template-columns:1fr;gap:30px}.legal-contents{position:static;max-height:none}.legal-contents ol{columns:2;column-gap:28px}.legal-contents li{break-inside:avoid}.footer-legal{gap:20px}.legal-heading{margin-top:30px}}
@media(max-width:650px){.footer-top,.footer-base{display:block}.footer-legal{grid-template-columns:1fr;padding:24px 0;gap:24px}.footer-legal a{padding:7px 0}.legal-contents ol{columns:1}.legal-page h1{font-size:2.35rem}.document-list{grid-template-columns:1fr}.legal-status{padding:18px}.legal-body h2{font-size:1.3rem}.legal-body p,.legal-body li{font-size:.97rem}.footer-notice{font-size:.82rem}}
@media print{header,footer,.demo,.skip,.legal-context,.legal-contents{display:none!important}main{max-width:none;padding:0}.legal-layout{display:block}.legal-body{max-width:none}.legal-status{background:none;border:1px solid #aaa}.legal-table{overflow:visible}.legal-table table{min-width:0}a{color:#000}.legal-body h2{break-after:avoid}}

.legal-contents ol{list-style:none;padding-left:0}
/* Keep the fit action near the mobile proposition without changing the layout. */
@media(max-width:650px){.hero h1{font-size:clamp(2.1rem,9.8vw,2.7rem)}}

/* Keep related cards distinct and avoid adding paragraph margins to card padding. */
.layout > aside > .card + .card{margin-top:22px}
.field select + .hint{margin-top:8px}
.card > p:last-child,.state-result > p:last-child{margin-bottom:0}
/* Align the footer with the content gutter between the desktop breakpoints. */
@media(min-width:901px){footer{width:calc(100% - 80px)}}

/* The enquiry journey stays readable from mobile to desktop. */
.journey{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.journey li{display:flex;gap:18px;padding:25px;background:#fff;border:1px solid var(--line);border-radius:12px}
.journey-number{font-size:.8rem;font-weight:700;letter-spacing:.12em;color:#557c59;flex:none}
.journey h2{font-size:1.2rem;margin-bottom:9px}
.journey p{margin:0;color:var(--muted)}
.footer-legal{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
@media(max-width:1050px){header{flex-wrap:wrap}.menu{display:block;border:1px solid #82988a;background:transparent;border-radius:5px;padding:8px 12px}header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}header nav.open{display:flex}header nav a{padding:12px 8px;font-size:.92rem}}
@media(max-width:800px){.journey{grid-template-columns:1fr}.footer-legal{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.footer-legal{grid-template-columns:1fr}}
.preview-notice{background:#fff0e4;border:2px solid #b55820;border-radius:8px;padding:13px 18px;margin:0 0 30px;display:flex;gap:14px;align-items:baseline;font-size:.88rem;line-height:1.5}
.preview-notice strong{white-space:nowrap;color:#783515}
.preview-notice span{color:#4d3a30}
@media(max-width:650px){.preview-notice{display:block}.preview-notice strong{display:block;margin-bottom:5px;white-space:normal}}
.scope-overview{margin:0 0 42px;scroll-margin-top:25px}
.scope-overview .section-heading{max-width:760px;margin-bottom:22px}
.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.scope-grid h3{font-size:1.15rem}
.scope-grid ul{padding-left:20px;margin:0}
.scope-grid li{margin:8px 0}
.scope-overview>.fine{max-width:900px;margin:18px 0 0}
.responsibility-details{margin:22px 0}
.scope-link{margin:16px 0 28px;font-weight:600}
.page-jump{margin:-15px 0 28px;font-weight:600}
#public-fit-form{scroll-margin-top:25px}
@media(max-width:950px){.scope-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.scope-grid{grid-template-columns:1fr}.scope-overview{margin-bottom:30px}}
.stack-card h2{font-size:1.05rem;line-height:1.3;letter-spacing:normal;margin:0 0 12px}
