:root{color-scheme:light;interpolate-size:allow-keywords;--ink:#173147;--ink-deep:#142f3b;--muted:#4b6170;--accent:#a8482d;--ground:#fcfbf8;--line:#d6dfe1;--field:#879ba6;--soft:#f1f4f2;--focus:#bd6239;--on-dark:#d1dce1;--sans:ui-sans-serif, system-ui, sans-serif;--serif:Georgia, serif}@view-transition{navigation: auto; }*,::before,::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100dvh;display:grid;grid-template:auto 1fr auto/minmax(0,1fr);background:var(--ground);color:var(--ink);font:1rem/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}body>main{min-width:0}::selection{background:#f1ccba;color:#172f43}[hidden]{display:none!important}a{color:inherit;text-underline-offset:.2em;&:hover{color:var(--accent)}}button,input,textarea,select{font:inherit;color:inherit}input,textarea{caret-color:var(--accent)}img,svg{max-width:100%;height:auto}h1,h2,h3{margin:0;font-weight:600;line-height:1.15;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word;hyphens:auto;hyphenate-limit-chars:10 4 4}h1,h2{font-family:var(--serif);font-weight:500}h1{max-width:18ch;font-size:clamp(2.55rem,5.3vw,5.2rem)}h2{font-size:clamp(1.9rem,3.4vw,3rem)}h3{font-size:1.35rem}p{margin:1rem 0;max-width:72ch;text-wrap:pretty}li{text-wrap:pretty}:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:4px}button:disabled{opacity:.65;cursor:wait}.icon{display:inline-block;width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.site-width{width:min(1240px,100% - 64px);margin-inline:auto}.section-space{padding-block:88px}.form-note{font-size:.8rem;line-height:1.65;color:var(--muted)}.section-intro{max-width:67ch;font-size:1.1rem;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:13px 23px;border:1px solid transparent;border-radius:6px;background:var(--ink);color:#fff;font-weight:600;line-height:1.5;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s;&:hover{background:var(--accent);color:#fff}}.button-secondary{border-color:var(--line);background:0 0;color:var(--ink);&:hover{border-color:var(--ink);background:var(--soft);color:var(--ink)}}.button-small{min-height:44px;padding:10px 17px;font-size:.85rem}.site-header{position:relative;z-index:30;border-bottom:1px solid var(--line);background:var(--ground);view-transition-name:site-header}.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:96px}.wordmark{display:flex;align-items:center;gap:18px;font-size:2.1rem;font-weight:700;line-height:1;letter-spacing:-.04em;text-decoration:none;span{max-width:10ch;font-size:.72rem;font-weight:500;line-height:1.4;letter-spacing:0;color:var(--muted)}}.desktop-nav{display:flex;align-items:center;gap:28px;a{font-size:.9rem;font-weight:600;text-decoration:none;text-underline-offset:8px;text-decoration-thickness:2px}a.active{text-decoration-line:underline;text-decoration-color:var(--accent)}}.header-actions{display:flex;align-items:center;gap:12px}.menu-button{anchor-name:--menu;display:none;align-items:center;gap:6px;padding:10px 12px;border:0;background:0 0;font-weight:600;cursor:pointer}.mobile-menu{position-anchor:--menu;position-area:bottom span-left;inset:auto;width:min(280px,100vw - 40px);margin:8px 0 0;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 30px #17314718;opacity:0;translate:0 -.4rem;transition:opacity .18s,translate .18s,overlay .18s allow-discrete,display .18s allow-discrete;&:popover-open{display:grid;gap:4px;opacity:1;translate:0;@starting-style{opacity: 0; translate: 0 -0.4rem; }}a{padding:9px;text-decoration:none;&.active{color:var(--accent);font-weight:600}}}.hero{padding-block:64px 76px;h1{max-width:13ch;font-size:clamp(2.8rem,5vw,4.8rem);hyphens:none}}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr)minmax(0,.85fr);gap:58px;align-items:start}.lead{color:var(--muted)}.hero .lead{max-width:54ch;margin-top:25px;font-size:1.17rem;line-height:1.75}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:26px}.hero-kicker{margin:0 0 18px;font-size:.8rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}.project-needs{margin:30px 0 0;padding-left:20px;font-size:.92rem;color:var(--muted);li{margin-block:10px}li::marker{color:var(--accent)}}.offer-section{padding-block:56px 64px;background:var(--soft);border-block:1px solid var(--line)}.deliverable-list{margin:0;display:grid;gap:0;> div{display:grid;grid-template-columns:minmax(0,.8fr)minmax(0,1.2fr);gap:48px;padding-block:25px;border-top:1px solid var(--line)}dt{display:flex;align-items:baseline;gap:24px;font-size:1.3rem;font-weight:650}dt span{font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--accent)}dd{margin:0;max-width:65ch;color:var(--muted)}}.followup-offer{border-left:1px solid #ffffff45;padding-left:36px;a{color:#fff}}.closing-invitation{text-align:center;p{margin-inline:auto}}.rule-section{border-top:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px;p{max-width:48ch;margin-bottom:0;color:var(--muted)}}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1.2fr)auto;gap:30px;align-items:start;padding:28px 0;border-bottom:1px solid var(--line);text-decoration:none;p{margin:0;font-size:.95rem;color:var(--muted)}.icon{width:1.25rem;height:1.25rem;margin-top:4px;transition:translate .18s}h2{font-family:inherit;font-size:1.35rem;font-weight:600}&:hover :is(h2, h3){text-decoration:underline;text-underline-offset:5px}&:hover .icon{translate:3px -3px}}.dark-section{background:var(--ink);color:#fff;p{color:var(--on-dark)}.button-secondary{border-color:#bac9ce;color:#fff;&:hover{background:#fff;color:var(--ink-deep)}}}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:72px;align-items:start}.reading-list{margin:0;padding:0;list-style:none;li{padding:22px 0;border-bottom:1px solid var(--line)}a{font-size:1.12rem;font-weight:600;text-decoration:none}p{margin:.5rem 0 0;font-size:.9rem;color:var(--muted)}}#guider details{summary{cursor:pointer;font-weight:600}ul{margin:.75rem 0 0;padding-left:1.25rem}li{margin:.35rem 0}}details{&::details-content{block-size:0;overflow:clip;transition:block-size .25s,content-visibility .25s allow-discrete}&[open]::details-content{block-size:auto}}.enquiry-panel{padding:32px;border:1px solid var(--line);border-radius:12px;background:#fff;h2{font-size:2rem}> p{font-size:.9rem;color:var(--muted)}form{display:grid;gap:18px;margin-top:24px}label{display:grid;gap:7px;font-size:.85rem;font-weight:600}}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;min-height:48px;padding:11px 12px;border:1px solid var(--field);border-radius:5px;background:#fff;color:var(--ink)}:is(input,textarea)::placeholder{color:#536773;opacity:1}.form-details{padding-block:14px;border-block:1px solid var(--line);summary{cursor:pointer;font-size:.85rem;font-weight:600}label{margin-top:16px}}.form-note{margin:0}.form-error{padding:14px;border:1px solid #b43b29;border-radius:5px;background:#fff0ed;color:#8c251d;font-size:.9rem}.service-lead{background:var(--soft)}.service-cta{margin-top:30px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px;font-size:.8rem;color:var(--muted)}.article-heading{padding-block:55px 35px;h1{max-width:24ch;font-size:clamp(2.3rem,4.5vw,4rem);overflow-wrap:anywhere}.lead{max-width:65ch;font-size:1.15rem}}.article-updated{font-size:.9rem;color:var(--muted)}.article-layout{display:grid;grid-template-columns:minmax(0,1fr)330px;gap:65px;align-items:start;padding-bottom:80px}.article-sidebar{position:sticky;top:25px;h2{font-family:var(--sans);font-size:1.1rem;font-weight:600}p{font-size:.9rem;color:var(--muted)}}.notice{padding:20px 24px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:.9rem}.content-prose{min-width:0;font-size:1.05rem;line-height:1.85;> :first-child{margin-top:0} :is(p, ul, ol) { max-width: 72ch; } p { margin: 0 0 1.3em; } :is(ul, ol) { margin: 0 0 1.3em; padding-left: 1.3em; } li { margin: 0.5em 0; } li::marker { color: var(--accent); } h2 { margin: 2.2em 0 0.7em; font-size: 1.8rem; overflow-wrap: anywhere; } h3 { margin: 1.9em 0 0.6em; font-size: 1.25rem; overflow-wrap: anywhere; } a { color: var(--accent); text-decoration: underline; &:hover { color: var(--ink); } } strong { font-weight: 650; } img { display: block; max-width: 100%; height: auto; } blockquote { margin: 1.5rem 0; padding-left: 1.25rem; border-left: 3px solid var(--accent); } .table-scroll { margin: 2rem 0; overflow-x: auto; scrollbar-color: var(--muted) var(--soft); } table { width: 100%; border-collapse: collapse; font-size: 0.9rem; font-variant-numeric: tabular-nums; } :is(th, td) { min-width: 9rem; padding: 14px 16px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; } th { background: var(--soft); font-weight: 600; }}.editorial-answer{margin:0 0 30px;padding:24px;border-radius:8px;background:var(--soft);.editorial-answer-title{margin:0 0 .5rem;font-size:.85rem;font-weight:600}p:last-child{margin:0}}.editorial-toc{margin-bottom:28px;padding:18px 0;border-block:1px solid var(--line);font-size:.9rem;summary{cursor:pointer;font-weight:600}ul{margin:10px 0}}.editorial-next{margin-top:42px;padding-top:12px;border-top:1px solid var(--line)}.editorial-next-grid{display:grid;gap:16px}.content-prose .editorial-next-card{display:grid;gap:7px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;&:hover .editorial-next-title{color:var(--accent)}}.editorial-next-title{font-weight:600}.editorial-next-why{font-size:.9rem;color:var(--muted)}.workflow-figure{margin:30px 0;img{width:100%}}@media(width < 37.5rem){.workflow-figure{max-width:23rem;margin-inline:auto;img{aspect-ratio:360/676}}}.calculator{margin:2.5rem 0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:1rem;line-height:1.6;header{padding:28px 28px 24px;background:var(--ink);color:#fff}.calculator-kicker{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#f1ccba}h2{margin:.5rem 0 0;font-size:clamp(1.6rem,3vw,2rem)}header p:last-child{margin:.75rem 0 0;font-size:.875rem;line-height:1.6;color:var(--on-dark)}}.calculator-body{display:grid}.calculator-fields{display:grid;align-content:start;gap:20px;padding:28px;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));label{display:grid;gap:7px;align-content:end;font-size:.85rem;font-weight:600}input{font-variant-numeric:tabular-nums}}.calculator-results{display:grid;align-content:start;gap:18px;padding:28px;background:var(--soft);> div + div{padding-top:18px;border-top:1px solid var(--line)}p{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}output{display:block;margin-top:6px;font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}output.primary{font-family:var(--serif);font-size:clamp(2rem,4vw,2.5rem);font-weight:600;line-height:1.1;color:var(--accent)}.calculator-note{padding:16px;border-radius:8px;background:#fff;font-size:.875rem;font-weight:400;letter-spacing:0;line-height:1.6;text-transform:none;color:var(--muted)}}@media(width >= 64rem){.calculator-body{grid-template-columns:1.2fr .8fr}}.not-found{> .icon{width:3rem;height:3rem;color:var(--accent);stroke-width:1.5}h1{margin-top:1.5rem}}.site-footer{padding-block:60px;border-top:1px solid var(--line);background:var(--ink);color:#fff;p{font-size:.85rem;color:var(--on-dark)}h2{margin-bottom:16px;font-family:var(--sans);font-size:1rem;font-weight:600}a{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:.85rem;text-decoration:none;&:hover{color:#fff;text-decoration:underline}}.wordmark{font-size:2.1rem}}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:65px;> :is(nav, div:last-child){display:flex;flex-direction:column;align-items:flex-start;gap:10px}}@media(width <= 1050px){.desktop-nav{display:none}.menu-button{display:inline-flex}.hero-grid{gap:40px}.article-layout{grid-template-columns:minmax(0,1fr)300px;gap:35px}}@media(width <= 800px){.site-width{width:calc(100% - 40px)}.header-row{min-height:80px;gap:10px}.wordmark{font-size:1.8rem;span{display:none}}.section-space{padding-block:55px}.hero{padding-block:28px 48px}.offer-section{padding-block:40px}.deliverable-list>div{grid-template-columns:minmax(0,1fr);gap:12px}.followup-offer{padding-left:0;border-left:0;border-top:1px solid #ffffff45;padding-top:28px}.hero-grid,.two-column,.article-layout{grid-template-columns:minmax(0,1fr);gap:35px}.article-sidebar{position:static}.footer-grid{grid-template-columns:1fr 1fr;gap:35px;> div:first-child{grid-column:1/-1}}.service-row{grid-template-columns:1fr auto;gap:12px;p{grid-area:2/1/3/-1}}.section-heading{display:block;p{margin-top:20px}}.article-heading{padding-block:35px}.content-prose{font-size:1rem}.enquiry-panel{padding:25px}.article-layout{padding-bottom:50px}.calculator header,.calculator-fields,.calculator-results{padding:22px}}@media(width <= 400px){.site-width{width:calc(100% - 32px)}.header-actions{gap:2px}.button-small{padding:10px 12px;font-size:.75rem}.menu-button{padding:10px 6px;font-size:.8rem}.hero-actions{display:grid}.footer-grid{grid-template-columns:1fr;> div:first-child{grid-column:auto}}h1{font-size:2.55rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::before,::after{transition:none!important;animation:none!important}@view-transition{navigation: none; }}@keyframes form-submit-guard-spin{to{rotate:1turn}}.form-submit-guard-spinner{box-sizing:border-box;display:inline-block;flex:none;width:1em;height:1em;margin-right:.5em;border:.14em solid;border-right-color:transparent;border-radius:50%;vertical-align:-.125em;animation:form-submit-guard-spin .65s linear infinite}.hub-content{max-width:88ch;margin-block:40px}.hub-index{margin-top:42px;padding-block:22px;border-top:1px solid var(--line);summary{cursor:pointer;font-weight:600;margin-bottom:20px}}