/* Runhanda visual refinement. Typography and colour only. */
@font-face{font-family:Montserrat;src:url('assets/montserrat-variable.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Caveat;src:url('assets/caveat-variable.ttf') format('truetype');font-style:normal;font-weight:400 700;font-display:swap}
:root{--navy:#0a2b43;--ink:#0a2b43;--sky:#dcebf5;--pale:#f0f5f9;--orange:#d6a64f;--white:#fff;--line:rgba(10,43,67,.22);--display:'Barlow Condensed',Arial,sans-serif;--hand:Caveat,cursive;--body:Montserrat,Arial,sans-serif;--deep:#061b2d;--gold:#d6a64f;--gold-light:#e8c477;--night-gradient:radial-gradient(ellipse at 88% 10%,rgba(40,100,133,.4),transparent 62%),linear-gradient(135deg,#0a2b46 0%,#0a2740 45%,#061b2d 100%)}
body{color:var(--ink);background:#fff;font-family:var(--body)}
h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.012em;line-height:1.04}
h3{font-family:var(--display);font-weight:700}
.hero h1{font-family:var(--display);font-weight:700;letter-spacing:-.015em;line-height:1.01}
.hero h1>span{font-weight:700}
.mobile-menu a,.mobile-subnav summary,.business-facts strong,.comparison-toggle>span:first-child,.step-number,.footer-wordmark,.numbered-list>li::before,.rh-expand__status strong{font-family:var(--display);font-weight:700;letter-spacing:0}
.mobile-subnav div a,.mobile-subnav div a:last-child,.mobile-menu>a:last-child{font-family:var(--body);font-weight:600}
h2 em{font-family:inherit;font-weight:inherit;font-style:normal}
.expansion h2 em,.customization h2 em{font-family:var(--hand);font-weight:700;font-style:normal;letter-spacing:-.025em;color:var(--gold-light);line-height:1.04}
.footer .footer-brand h3{font-family:var(--hand);font-weight:700;color:var(--gold-light);letter-spacing:-.015em;line-height:1.15}
.footer-wordmark{font-family:var(--display);font-weight:700;letter-spacing:.01em;color:#fff}

/* Continuous dark blue surfaces, balanced by light information areas. */
.site-header{background:#071f34;color:#fff}
.site-header .brand img{filter:brightness(0) invert(1)}
.desktop-nav a::after{background:var(--gold-light)}
.nav-dropdown>div{background:linear-gradient(135deg,#123b57,#071e33);color:#fff;box-shadow:0 18px 34px rgba(2,12,23,.28)}
.nav-dropdown>div a::after{background:var(--gold-light)}
.mobile-menu{background:var(--night-gradient);color:#fff}
.mobile-menu>a:last-child{background:linear-gradient(115deg,#e7bf6f,#d2a04c);color:var(--deep)}
.breadcrumbs{background:#0a2b46;color:#fff}
.hero,.page-intro{background:var(--night-gradient);color:#fff}
.hero-image-note{color:#fff;background:linear-gradient(transparent,rgba(3,20,35,.92))}
.business-facts{background:#061b2d;color:#fff}
.business-facts strong{color:var(--gold-light)}
.expansion,.customization{background:var(--night-gradient);color:#fff}
.process{background:radial-gradient(ellipse at 5% 10%,#174562 0%,transparent 60%),linear-gradient(145deg,#0a2b46,#061b2d);color:#fff}
.process-card{background:#fff;color:var(--ink);box-shadow:0 -8px 35px rgba(1,12,23,.18)}
.process-card:nth-child(even){background:linear-gradient(130deg,#16415d,#09273e);color:#fff}
.step-number{color:#835b1b}
.process-card:nth-child(even) .step-number{color:var(--gold-light)}
.applications,.faq,.help-links,.page-section.sky,.page-section.pale{background:#f0f5f9;color:var(--ink)}
.series-brief,.biz-config-summary-section,.biz-gallery-story,.biz-detail-feature{background:linear-gradient(120deg,#e1edf5,#f2f7fa);color:var(--ink)}
.resource-note{background:#e7f0f6;color:var(--ink)}
.cta-band,.footer,.page-section.navy{background:var(--night-gradient);color:#fff}
.footer-bottom{border-color:rgba(220,235,245,.28)}
.footer a:hover{color:var(--gold-light)}
.footer a.button:hover{color:#fff}
.footer .brand{color:#fff}

/* Buttons retain their existing dimensions and motion. */
.button-orange,.button-blue{background:linear-gradient(115deg,#e7bf6f 0%,#d2a04c 100%);color:var(--deep);--hover:#143c58;--hover-text:#fff}
.button-dark{background:linear-gradient(120deg,#15415f,#08263e);color:#fff;--hover:#d6a64f;--hover-text:#061b2d}
.button-outline{border-color:#173e59;color:var(--ink);--hover:#123b57;--hover-text:#fff}
.button-outline-white{border-color:#a7c3d8;color:#fff;--hover:#e7bf6f;--hover-text:#061b2d}
:is(.hero,.page-intro,.cta-band,.page-section.navy,.process,.contact-page) .button-outline{border-color:#aac9df;color:#fff;--hover:#e7bf6f;--hover-text:#061b2d}
:is(.hero,.page-intro,.cta-band,.page-section.navy,.process,.contact-page) .button-outline:hover{color:var(--hover-text)}
:is(.hero,.page-intro,.cta-band,.page-section.navy) .button-dark{border-color:#8caec6}
.button:hover{color:var(--hover-text)}
.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-color:#be852b}
:is(.site-header,.mobile-menu,.page-intro,.hero,.expansion,.customization,.process,.cta-band,.footer,.contact-page) :focus-visible{outline-color:#f0cc83}
::selection{background:#e7bf6f;color:#061b2d}
.product-open{background:linear-gradient(125deg,#e7bf6f,#d2a04c);color:#061b2d}
.square-button{border-color:#173e59;color:var(--ink)}
.square-button:hover:not(:disabled){background:#123b57;color:#fff}
.comparison-toggle:hover .comparison-label,.faq-list summary:hover{color:#795319}
.text-link:hover{color:inherit}
.product-rail{scrollbar-color:#173e59 #e6eff6}
.jump-nav a,.jump-nav button{border-color:#173e59;color:var(--ink)}
.jump-nav a:hover,.jump-nav button:hover,.jump-nav button[aria-pressed=true]{background:linear-gradient(120deg,#164563,#08263e);color:#fff}
.page-intro .jump-nav a{color:#fff;border-color:#a7c3d8}
.page-intro .jump-nav a:hover{background:#e7bf6f;color:#061b2d}

/* Dark section content has explicit readable surfaces and selected states. */
.config-visual{background:#e9f2f8;color:var(--ink)}
.config-caption{color:var(--ink)}
.customization .config-caption h3{color:var(--ink)}
.config-tabs button{color:#fff;border-color:rgba(220,235,245,.32)}
.config-tabs button:hover,.config-tabs button[aria-selected=true]{background:rgba(220,235,245,.12);color:#fff}
.config-tabs button[aria-selected=true] span,.config-tabs button[aria-selected=true] b{color:var(--gold-light)}
.factory-tabs button:hover,.factory-tabs button[aria-pressed=true]{background:#e3eef5;color:var(--ink)}
.factory-tabs button[aria-pressed=true]{border-color:#174765}
.photo-zoom-label,.plan-drawing .photo-zoom-label{background:linear-gradient(115deg,#163f5b,#08273e);color:#fff}
.biz-gallery-zoom{background:#fff;color:var(--ink)}
.resource-image-button{background:#fff;color:var(--ink);border-color:#8faabd}
.resource-image-button:hover{border-color:#173e59}
.resource-image-button:hover>span{color:#173e59}
.resource-facts div{border-color:#b3c8d7}
.resource-number{color:#315e7e}
.page-intro .resource-number{color:var(--gold-light)}
.resource-checklist input{accent-color:#123b57}
.resource-checklist input:checked+span{color:#164565}
.resource-checklist input:focus-visible{outline-color:#be852b}
.series-documents article{border-color:#2a5774}
thead{background:#e5eff6;color:var(--ink)}
th,td{border-color:rgba(10,43,67,.23)}
.page-section.navy table{color:#fff}
.page-section.navy th,.page-section.navy td{border-color:rgba(220,235,245,.32)}

/* Keep the original drawing colours distinct from its dark presentation. */
.rh-expand{--rh-expand-sky:#d7e8f2;--rh-expand-navy:#0a2b43;--rh-expand-orange:#d6a64f;color:var(--ink)}
.expansion .rh-expand{color:#fff}
.expansion .rh-expand__motion-cues{stroke:#e8c477}
.expansion .rh-expand__states{border-color:#aac8db}
.expansion .rh-expand__state{color:#fff}
.expansion .rh-expand__state+.rh-expand__state{border-left-color:#aac8db}
.expansion .rh-expand__state[aria-pressed=true]{background:#e6bf72;color:#061b2d}
.expansion .rh-expand__state:hover{background:#dbeaf4;color:#061b2d}
.expansion .rh-expand__play{color:#fff}
.expansion .rh-expand__play svg{fill:#e8c477}
.expansion .rh-expand__range{color:#fff;accent-color:#e8c477}
.expansion .rh-expand__range::-webkit-slider-runnable-track{background:linear-gradient(to right,#e8c477 0 var(--rh-expand-progress),#6e97b2 var(--rh-expand-progress) 100%)}
.expansion .rh-expand__range::-moz-range-track{background:#6e97b2}
.expansion .rh-expand__range::-moz-range-progress{background:#e8c477}
.expansion .rh-expand__range::-webkit-slider-thumb{background:#fff;border-color:#0a2b43}
.expansion .rh-expand__range::-moz-range-thumb{background:#fff;border-color:#0a2b43}

/* Shared configuration tools and the inquiry keep light, clear controls. */
.biz-config-fields select,.biz-config-fields input,.biz-config-choices button{background:#fff;color:var(--ink);border-color:#52748e}
.biz-config-fields input::placeholder{color:#294d68}
.biz-config-side a{color:var(--ink)}
.biz-config-choices button:hover{background:#e5eff6;color:var(--ink)}
.biz-config-choices button[aria-pressed=true]{background:linear-gradient(120deg,#174763,#09283f);color:#fff}
.biz-config-choices button:focus-visible,.biz-gallery-filters button:focus-visible{outline-color:#be852b}
.biz-config-summary,.biz-config-scope,.biz-config-mobile-nav{border-color:#8faec3}
.biz-gallery-filters button{background:#fff;color:var(--ink);border-color:#52748e}
.biz-gallery-filters button[aria-pressed=true]{background:linear-gradient(120deg,#174763,#09283f);color:#fff}
.biz-gallery-filters button:hover{background:#dcebf5;color:var(--ink)}
.contact-page{background:var(--night-gradient);color:#fff}
#inquiry-form,.send-review{background:#fff;color:var(--ink)}
#inquiry-form .button-outline,.send-review .button-outline{border-color:#173e59;color:var(--ink);--hover:#123b57;--hover-text:#fff}
#inquiry-form .button-outline:hover,.send-review .button-outline:hover{color:#fff}
.form-progress li,.buyer-types label,.review-details,#source-context,.send-review pre,.config-choice-summary{background:#e9f1f7;color:var(--ink)}
.form-progress li[aria-current=step]{background:linear-gradient(120deg,#174763,#09283f);color:#fff}
.buyer-types label:has(input:checked){background:#dcebf5;color:var(--ink);border-color:#173e59}
.buyer-types input,.consent input{accent-color:#123b57}
.field input,.field select,.field textarea{color:var(--ink);background:#fff;border-color:#52748e}
.field input::placeholder,.field textarea::placeholder{color:#335873}
.form-error{background:#fff0de;color:#743c09}
dialog,.image-viewer{background:#fff;color:var(--ink)}
.image-viewer::backdrop{background:rgba(3,18,31,.9)}
.viewer-close{background:#fff;color:var(--ink);border-color:#173e59}
.viewer-close:hover{background:#e7bf6f;color:#061b2d}
.viewer-canvas,#viewer-image{background:#f0f5f9}
.skip-link{background:#e7bf6f;color:#061b2d}
#inquiry-form :focus-visible,.send-review :focus-visible,.config-visual :focus-visible,.process-card:nth-child(odd) :focus-visible{outline-color:#1b587c}
@media(max-width:600px){tbody th{background:#fff;color:var(--ink)}.page-section.navy tbody th{background:#123951;color:#fff}}

/* Requested body typography. Existing local display faces are the approved alternatives. */
body{font-family:var(--body);font-weight:400}
body *{font-family:inherit!important;font-weight:inherit!important}
h1,h2,h3,h4,h5,h6,.form-step legend,.brand,.business-facts strong,.comparison-toggle>span:first-child,.step-number,.footer-wordmark,.rh-expand__status strong,.resource-number{font-family:var(--display)!important;font-weight:700!important}
.expansion h2 em,.customization h2 em,.footer .footer-brand h3{font-family:var(--hand)!important;font-weight:600!important}
.numbered-list>li::before{font-family:var(--display);font-weight:700}

/* The homepage opens on a single photograph, with navigation layered above it. */
.home-page .site-header{position:fixed;inset:0 0 auto;background:transparent;transition:background .25s,box-shadow .25s}
.home-page .site-header.is-scrolled,.home-page .site-header:has(.menu-toggle[aria-expanded=true]){background:rgba(6,27,45,.97);box-shadow:0 8px 30px rgba(2,14,24,.12)}
.home-page .hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100svh;padding:calc(var(--header) + 64px) var(--gutter) 130px;background:var(--deep);overflow:hidden}
.home-page .hero-content{width:100%;max-width:1200px;text-align:center;z-index:2}
.home-page .hero h1{font-size:clamp(68px,7vw,112px);line-height:1.02;letter-spacing:-.015em;text-wrap:balance;text-shadow:0 3px 28px rgba(2,15,26,.3)}
.home-page .hero h1>span{font-size:1em}
.home-page .hero-intro{display:flex;flex-direction:column;align-items:center;gap:30px;margin:28px 0 0;text-align:center}
.home-page .hero-intro>p{max-width:780px;font-size:21px;line-height:1.55;text-wrap:balance;text-shadow:0 2px 14px rgba(2,15,26,.5)}
.home-page .hero-actions{justify-content:center;gap:16px;width:auto}
.home-page .hero-actions .button{flex:0 1 auto;min-height:60px;padding:15px 26px;gap:26px;border-radius:999px;font-size:18px;text-shadow:none}
.home-page .hero-actions .button-outline{background:rgba(6,27,45,.35);border-color:rgba(255,255,255,.85)}
.home-page .hero-image{position:absolute;inset:0;z-index:0;aspect-ratio:auto;border-radius:0;margin:0;overflow:hidden;background:var(--deep)}
.home-page .hero-image picture{position:absolute;inset:0}
.home-page .hero-image picture img{object-fit:cover;object-position:44% 50%;transform:scale(1.035);transform-origin:44% 50%}
.home-page .hero-image::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(4,21,36,.53) 0%,rgba(4,21,36,.30) 22%,rgba(4,21,36,.51) 51%,rgba(4,21,36,.37) 74%,rgba(4,21,36,.72) 100%)}
.home-page .hero-image-note{z-index:1;inset:auto 0 0;padding:24px var(--gutter);background:none;font-size:17px;min-height:92px}
.home-page .hero-image-note>a{gap:20px}
@media(min-width:1600px){.home-page .hero h1{font-size:120px}}
@media(max-width:900px){.home-page .hero{padding-top:calc(var(--header) + 54px);padding-bottom:132px}.home-page .hero h1{font-size:clamp(62px,8.7vw,80px)}.home-page .hero-intro>p{font-size:20px;max-width:650px}.home-page .hero-image-note>span{max-width:245px}}
@media(max-width:600px){.home-page .hero{padding:calc(var(--header) + 40px) 22px 110px}.home-page .hero h1{font-size:clamp(46px,12vw,66px);line-height:1.04;letter-spacing:-.015em}.home-page .hero-intro{gap:26px;margin-top:24px}.home-page .hero-intro>p{font-size:18px;line-height:1.55;max-width:370px}.home-page .hero-actions{width:100%;max-width:340px;flex-direction:column;gap:12px}.home-page .hero-actions .button{width:100%;min-height:56px;font-size:17px;padding:14px 23px}.home-page .hero-image-note{display:flex;justify-content:center;padding:18px 22px;min-height:80px}.home-page .hero-image-note>a{font-size:17px;max-width:none;justify-content:center;gap:18px}.home-page .hero-image picture img{object-position:44% 50%}.home-page .hero-image::after{background:linear-gradient(180deg,rgba(4,21,36,.50),rgba(4,21,36,.42) 26%,rgba(4,21,36,.64) 64%,rgba(4,21,36,.76))}}
@media(max-height:600px) and (min-width:601px){.home-page .hero{padding-top:calc(var(--header) + 28px);padding-bottom:90px}.home-page .hero h1{font-size:clamp(50px,6.5vw,76px)}.home-page .hero-intro{gap:20px;margin-top:18px}.home-page .hero-intro>p{font-size:18px}.home-page .hero-image-note{min-height:72px;padding-block:14px}}
@media(max-width:360px) and (max-height:700px){.home-page .hero{padding-top:calc(var(--header) + 16px);padding-bottom:76px}.home-page .hero h1{font-size:40px}.home-page .hero-intro{margin-top:18px;gap:16px}.home-page .hero-intro>p{font-size:17px;line-height:1.45;text-wrap:wrap}.home-page .hero-actions{gap:10px}.home-page .hero-actions .button{min-height:52px;padding-block:12px}}
@media(max-height:500px) and (min-width:601px){.home-page .hero{padding-top:calc(var(--header) + 14px);padding-bottom:70px}.home-page .hero h1{font-size:clamp(42px,5.8vw,58px)}.home-page .hero-intro{margin-top:12px;gap:14px}.home-page .hero-intro>p{font-size:17px;line-height:1.4}.home-page .hero-actions .button{min-height:50px;padding-block:12px}.home-page .hero-image-note>span,.home-page .hero-image-note>a{max-width:none}}
@media(prefers-reduced-motion:reduce){.home-page .site-header{transition:none}.home-page .hero-image picture img{transform:none!important}}
