@import url('bootstrap-icons.min.css');
@font-face{font-family:BootstrapIcons;src:url('../fonts/bootstrap-icons.woff2') format('woff2')}
:root{--ink:#14232c;--muted:#53646c;--paper:#f6f5f1;--white:#fff;--navy:#0b2632;--teal:#087a75;--lime:#b9de53;--coral:#ef7656;--line:#d9e0dd;--soft:#e9f2ef;--shadow:0 18px 50px rgba(11,38,50,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}a{color:var(--teal);text-decoration-thickness:1.5px;text-underline-offset:3px}a:hover{color:#035d59}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-4rem;z-index:9999;background:var(--lime);padding:.7rem 1rem;color:var(--navy);font-weight:800}.skip-link:focus{top:1rem}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:800;color:var(--teal);margin-bottom:1rem}.eyebrow::before{content:"";width:26px;height:2px;background:currentColor}.section-pad{padding:6.5rem 0}.section-title{font-size:clamp(2rem,4vw,3.55rem);letter-spacing:-.05em;line-height:1.04;max-width:14ch;margin:0 0 1rem}.lead-copy{font-size:1.1rem;color:var(--muted);max-width:61ch}.site-header{background:rgba(246,245,241,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(20,35,44,.08);position:sticky;top:0;z-index:1000}.navbar{min-height:78px}.brand{font-weight:900;font-size:1.35rem;letter-spacing:-.06em;color:var(--navy)!important;text-decoration:none;display:flex;align-items:center;gap:.62rem}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--navy);position:relative;overflow:hidden}.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:var(--lime);border-radius:99px}.brand-mark:before{width:23px;height:7px;transform:rotate(-43deg);top:15px;left:6px}.brand-mark:after{width:7px;height:7px;top:7px;left:20px}.nav-link{font-size:.95rem;font-weight:700;color:var(--ink)!important;padding:.8rem 1rem!important;text-decoration:none}.nav-link:hover{color:var(--teal)!important}.contact-link{background:var(--navy);color:white!important;border-radius:999px;padding:.72rem 1.12rem!important;min-height:44px;display:inline-flex;align-items:center;margin-left:.3rem}.contact-link:hover{background:var(--teal)!important}.navbar-toggler{min-height:44px;min-width:44px;border:0}.hero{padding:5.8rem 0 4.3rem;background:linear-gradient(125deg,#f6f5f1 0%,#e8f2ed 100%);position:relative}.hero h1{font-weight:900;font-size:clamp(3rem,7vw,6.6rem);line-height:.91;letter-spacing:-.075em;max-width:10.8ch;margin:0 0 1.4rem}.hero .accent{color:var(--teal)}.hero-card{position:relative;min-height:470px;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);margin-top:1rem;background:var(--navy)}.hero-card img{width:100%;height:100%;min-height:470px;object-fit:cover;opacity:.88}.hero-note{position:absolute;bottom:18px;left:18px;right:18px;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border-radius:16px;padding:1rem 1.15rem;font-size:.88rem;font-weight:750;line-height:1.4}.hero-note i{color:var(--coral);margin-right:.45rem}.hero-cta{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem}.btn{font-weight:800;min-height:48px;padding:.7rem 1.22rem;border-radius:999px;font-size:1rem}.btn-primary{background:var(--teal);border-color:var(--teal)}.btn-primary:hover,.btn-primary:focus{background:#056864;border-color:#056864}.btn-outline-dark{border:2px solid var(--navy);color:var(--navy)}.btn-outline-dark:hover{background:var(--navy)}.disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.disclosure .container{padding-top:1rem;padding-bottom:1rem}.disclosure p{margin:0;color:#405158;font-size:.93rem}.disclosure i{color:var(--teal);margin-right:.45rem}.metric{padding:1.4rem;border-left:1px solid var(--line)}.metric strong{font-size:2rem;display:block;letter-spacing:-.06em}.metric span{font-size:.84rem;font-weight:700;color:var(--muted)}.role-panel{background:var(--navy);color:white;border-radius:26px;padding:clamp(1.4rem,4vw,3rem)}.role-panel .section-title{max-width:15ch}.role-panel .eyebrow{color:var(--lime)}.role-item{border-top:1px solid rgba(255,255,255,.22);padding:1.1rem 0;display:flex;gap:1rem}.role-item i{color:var(--lime);font-size:1.3rem}.role-item p{color:#d5e0dc;margin:.2rem 0 0;font-size:.94rem}.photo-card{height:100%;min-height:340px;border-radius:26px;overflow:hidden;position:relative}.photo-card img{width:100%;height:100%;object-fit:cover}.photo-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(11,38,50,.88));padding:3rem 1.3rem 1.1rem;color:#fff;font-weight:750}.fit-shell{background:white;border:1px solid var(--line);border-radius:26px;padding:clamp(1.2rem,4vw,2.5rem);box-shadow:0 8px 20px rgba(20,35,44,.04)}.fit-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:1.6rem 0}.fit-option{border:1.5px solid var(--line);min-height:92px;padding:.85rem;border-radius:15px;background:white;text-align:left;font-weight:800;color:var(--ink);transition:.2s}.fit-option:hover,.fit-option.active{border-color:var(--teal);background:#e9f6f3;transform:translateY(-2px)}.fit-option i{display:block;font-size:1.35rem;color:var(--teal);margin-bottom:.25rem}.fit-result{background:var(--soft);border-left:4px solid var(--teal);padding:1rem 1.1rem;border-radius:0 12px 12px 0;min-height:83px}.fit-result strong{display:block}.workflow{background:#e7efeb}.step-card{background:white;height:100%;padding:1.55rem;border-radius:19px;border:1px solid transparent;transition:.2s}.step-card:hover{border-color:#abcac3;transform:translateY(-4px)}.step-no{width:36px;height:36px;display:grid;place-items:center;background:var(--lime);border-radius:50%;font-size:.86rem;font-weight:900;color:var(--navy);margin-bottom:1.2rem}.step-card h3{font-size:1.16rem;font-weight:850}.step-card p{color:var(--muted);font-size:.94rem;margin:0}.competency{border-top:1px solid var(--line);padding:1.18rem 0}.competency:last-child{border-bottom:1px solid var(--line)}.competency h3{font-size:1.1rem;margin:0;font-weight:850}.competency p{margin:.3rem 0 0;color:var(--muted);font-size:.94rem}.competency .tag{font-size:.75rem;border-radius:99px;background:#dff0eb;color:#075d59;padding:.34rem .65rem;font-weight:800;white-space:nowrap}.timeline{position:relative;padding-left:1.2rem;border-left:2px solid #b7d4ce}.timeline-item{padding:0 0 1.7rem 1.5rem;position:relative}.timeline-item:before{content:"";position:absolute;left:-.55rem;top:.25rem;width:1rem;height:1rem;border-radius:50%;background:var(--coral);border:3px solid var(--paper)}.timeline-item:last-child{padding-bottom:0}.timeline-item h3{font-size:1.05rem;font-weight:850}.timeline-item p{font-size:.93rem;color:var(--muted);margin:0}.sticky-photo{position:sticky;top:105px;border-radius:26px;overflow:hidden}.sticky-photo img{width:100%;height:530px;object-fit:cover}.quote-card{background:#f9dfd7;padding:1.6rem;border-radius:20px;position:relative}.quote-card:before{content:"“";font-family:Georgia,serif;font-size:5rem;line-height:.5;color:var(--coral);display:block;margin-bottom:.45rem}.quote-card p{font-weight:750;font-size:1.05rem;margin-bottom:1rem}.quote-card small{color:#5f5651}.review-board{background:var(--navy);border-radius:27px;padding:clamp(1.3rem,4vw,2.8rem);color:white}.review-board .eyebrow{color:var(--lime)}.review-board h2{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.05em}.review-row{border-top:1px solid rgba(255,255,255,.18);padding:1rem 0;display:grid;grid-template-columns:1.1fr .75fr 1.55fr;gap:1rem;font-size:.92rem}.review-row strong{color:var(--lime)}.review-row span{color:#d7e4e1}.review-row:last-child{border-bottom:1px solid rgba(255,255,255,.18)}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.portfolio-tile{height:200px;border-radius:18px;overflow:hidden;position:relative}.portfolio-tile img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.portfolio-tile:hover img{transform:scale(1.05)}.portfolio-tile span{position:absolute;bottom:.75rem;left:.75rem;background:white;border-radius:99px;color:var(--navy);font-size:.76rem;font-weight:800;padding:.35rem .6rem}.check-card{background:#fff;border:1px solid var(--line);border-radius:25px;padding:clamp(1.3rem,4vw,2.3rem)}.check-progress{height:11px;background:#e6eeeb;border-radius:99px;overflow:hidden}.check-progress span{display:block;height:100%;background:var(--teal);width:0;transition:width .3s}.form-check{padding:1rem 0 1rem 2rem;border-bottom:1px solid var(--line);min-height:54px}.form-check:last-of-type{border-bottom:0}.form-check-input{width:1.25rem;height:1.25rem;margin-left:-2rem;margin-top:.18rem;cursor:pointer}.form-check-label{font-weight:680;cursor:pointer}.check-summary{font-size:.91rem;color:var(--muted)}.faq-wrap{max-width:850px;margin:auto}.accordion-item{border:0;border-bottom:1px solid var(--line);background:transparent}.accordion-button{background:transparent!important;box-shadow:none!important;color:var(--navy)!important;font-size:1.08rem;font-weight:850;padding:1.3rem .1rem;min-height:65px}.accordion-body{padding:.1rem .2rem 1.45rem;color:var(--muted)}.contact-section{background:linear-gradient(135deg,#0b2632,#104452);color:white}.contact-section .eyebrow{color:var(--lime)}.contact-section .lead-copy{color:#d3e0dd}.contact-form{background:white;color:var(--ink);border-radius:24px;padding:clamp(1.2rem,3vw,2rem)}.form-label{font-weight:750}.form-control,.form-select{min-height:48px;border:1.5px solid #b8c7c2;font-size:16px}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 .22rem rgba(8,122,117,.16)}textarea.form-control{min-height:112px}.form-status{min-height:26px;font-size:.92rem;font-weight:700}.form-status.success{color:#057269}.form-status.error{color:#a52d1e}.secondary-contact{font-size:.9rem;color:#c6d8d4;margin-top:1rem}.secondary-contact a{color:var(--lime)}.site-footer{background:#071c25;color:#d1dedb;padding:3.6rem 0 1.5rem}.site-footer .brand{color:white!important}.site-footer h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-weight:900}.site-footer a{color:#d1dedb;text-decoration:none}.site-footer li a{min-height:44px;display:inline-flex;align-items:center}.site-footer a:hover{text-decoration:underline;color:white}.footer-line{border-top:1px solid rgba(255,255,255,.14);margin-top:2.5rem;padding-top:1.2rem;font-size:.82rem}.legal-page{padding:5rem 0}.legal-content{max-width:850px}.legal-content h1{font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.06em;font-weight:900}.legal-content h2{margin-top:2.4rem;font-size:1.35rem;font-weight:900}.legal-content p,.legal-content li{color:var(--muted)}.not-found{min-height:70vh;display:grid;place-items:center;text-align:center}.not-found h1{font-size:clamp(5rem,17vw,12rem);font-weight:900;letter-spacing:-.11em;color:var(--teal);line-height:.85}.not-found p{max-width:45ch;margin:1rem auto 1.7rem;color:var(--muted)}
@media(max-width:991.98px){.navbar-collapse{padding:1rem 0}.nav-link{padding:.75rem 0!important}.contact-link{margin:.35rem 0 0;justify-content:center}.hero{padding-top:4rem}.hero-card,.hero-card img{min-height:400px}.sticky-photo{position:static;margin-top:2rem}.sticky-photo img{height:340px}}@media(max-width:767.98px){.section-pad{padding:4.2rem 0}.hero h1{font-size:clamp(3rem,15vw,4.8rem)}.hero-card,.hero-card img{min-height:330px}.metric{border-left:0;border-top:1px solid var(--line);padding:1rem}.fit-options{grid-template-columns:1fr}.review-row{grid-template-columns:1fr;gap:.22rem}.review-row span:before{content:"Signal: ";color:#8ca9a4;font-weight:700}.portfolio-tile{height:155px}.site-footer{padding-top:3rem}}@media(max-width:390px){.hero-cta .btn{width:100%}.section-title{font-size:2rem}.portfolio-grid{gap:.7rem}.portfolio-tile{height:125px}.hero-note{font-size:.8rem}}

/* Responsive hardening: content stays inside Bootstrap gutters without relying on global overflow masking. */
.site-header,.hero,.disclosure,.section-pad,.contact-section,.site-footer{min-width:0}
.hero h1,.section-title,.lead-copy,.review-row span,.footer-line,.secondary-contact{overflow-wrap:anywhere}
@media(max-width:575.98px){main .row.g-5{--bs-gutter-x:1.5rem}.hero-cta .btn{max-width:100%;white-space:normal}.review-row{grid-template-columns:1fr;gap:.4rem}.contact-link{margin-left:0}}

.footer-email{display:inline!important;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
