:root{--navy:#071A22;--charcoal:#111719;--ivory:#F5F3EE;--gold:#B49A68;--muted:#5f6565;--line:#DDD9D0;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",system-ui,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--charcoal);background:#fff;-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.01em;color:var(--navy)}h1{font-size:clamp(2.6rem,6vw,4.5rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.4rem}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.narrow{max-width:760px}.section{padding:5rem 0}.bg-ivory{background:var(--ivory)}.bg-navy{background:var(--navy);color:#fff}.gold{color:var(--gold);display:inline-block}.gap-top{margin-top:3rem}.rule{display:block;width:2.5rem;height:1px;background:var(--gold);margin-bottom:1.25rem}.label{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.8rem}.on-dark{color:#fff}.on-dark-soft{color:#fffc}.on-dark-faint{color:#ffffffa6}.body-text{margin:1.4rem 0 2rem;color:var(--muted);line-height:1.9;max-width:36rem}.statement{font-size:1.15rem;line-height:1.95;color:var(--muted)}.huge{font-size:clamp(2.2rem,5vw,3.8rem);margin-bottom:1.5rem}.note{margin-top:1.5rem;font-size:.9rem;color:var(--muted)}.section-heading{max-width:42rem}.section-heading .intro{margin-top:1.2rem;color:var(--muted);line-height:1.9}.grid-2{display:grid;gap:3rem;grid-template-columns:1fr 1fr}.grid-2.center{align-items:center}.grid-4{display:grid;gap:2.5rem;grid-template-columns:repeat(4,1fr)}.stack>div+div{margin-top:3rem}.stack h2{font-size:2rem}.btn{display:inline-flex;align-items:center;gap:.6rem;min-height:48px;padding:.75rem 1.6rem;font-size:.85rem;letter-spacing:.04em;border:1px solid var(--gold);transition:background .25s,color .25s,border-color .25s}.btn-primary{background:var(--gold);color:var(--navy);font-weight:600}.btn-primary:hover{background:#c6ad7b}.btn-ghost{color:#fff;border-color:#ffffff73}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.btn-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.5rem}.link-arrow{display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:2px;font-size:.9rem;color:var(--navy);transition:color .2s;margin-top:.5rem}.link-arrow:hover{color:var(--gold)}.header{background:var(--navy);border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:50}.header-row{display:flex;align-items:center;justify-content:space-between;height:64px}.logo{display:flex;align-items:center;gap:1rem}.logo-mark{font-family:var(--serif);font-size:1.9rem;color:var(--gold);letter-spacing:.05em;line-height:1}.logo-text{font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:#ffffffe6}.nav-desktop{display:flex;gap:2.25rem}.navlink{position:relative;font-size:.85rem;padding:.5rem 0;color:#ffffffd9}.navlink:after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--gold);transition:width .3s}.navlink:hover:after,.navlink.active:after{width:100%}.navlink.active{color:#fff}.menu-btn{display:none;background:none;border:0;color:#fff;padding:.5rem;cursor:pointer}.nav-mobile{background:var(--navy);border-top:1px solid rgba(255,255,255,.1)}.nav-mobile .navlink{display:block;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.nav-mobile .navlink:after{display:none}.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(7,26,34,.8) 45%,rgba(7,26,34,.2) 100%)}.hero-content{position:relative;padding-top:9rem;padding-bottom:9rem}.hero h1{color:#fff;max-width:46rem}.hero-copy{margin-top:2rem;max-width:36rem;color:#fffc;line-height:1.9}.page-hero{background:var(--navy);color:#fff;padding:6rem 0}.page-hero h1{color:#fff;max-width:46rem}.page-hero p{margin-top:1.5rem;font-size:1.1rem;color:#ffffffbf;max-width:40rem;line-height:1.9}.photo-wrap{overflow:hidden}.photo{width:100%;height:100%;background-size:cover;background-position:center;background-color:var(--navy);transition:transform 1.2s ease}.photo-wrap:hover .photo{transform:scale(1.03)}.ratio-43{aspect-ratio:4/3}.banner{height:300px}.principle{border-left:1px solid var(--line);padding-left:1.75rem}.principle:first-child{border:0;padding-left:0}.principle p{margin-top:.8rem;font-size:.9rem;line-height:1.8;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:2rem}.service-grid li{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.8rem;background:#fff}.service-grid h3{margin-top:1.2rem;font-size:1.3rem;line-height:1.25}.service-grid p{margin-top:.8rem;font-size:.88rem;line-height:1.8;color:var(--muted)}.approach{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 3rem}.approach li{border-top:1px solid var(--line);padding-top:1.5rem}.approach .num{font-family:var(--serif);font-size:2rem;color:var(--gold)}.approach h3{font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-top:.4rem}.approach p{margin-top:.8rem;font-size:.9rem;line-height:1.8;color:var(--muted)}.approach.dark li{border-color:#fff3}.approach.dark h3{color:#fff}.approach.dark p{color:#ffffffb3}.cap-list{align-self:center}.cap-list li{display:flex;gap:.8rem;padding:1rem 0;border-bottom:1px solid var(--line);color:var(--navy)}.warning{display:flex;gap:1rem;border:1px solid rgba(180,154,104,.6);background:#ffffff08;padding:2rem}.warning h3{font-family:var(--sans);font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);line-height:1.6}.warning p{margin-top:.8rem;font-size:.9rem;line-height:1.8;color:#fffc}.big{font-size:clamp(2.2rem,5vw,3.4rem)}.lead{margin-top:1.5rem;line-height:1.9}.bg-navy .on-dark-faint{margin-top:1rem;line-height:1.9}.policy{margin-top:1.5rem;font-size:.9rem;line-height:1.8;color:#ffffffbf}.policy strong{color:#fff}.verify{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15)}.verify .btn{margin-top:1.5rem}.verify .on-dark-faint{font-size:.9rem}.serif-lg{font-family:var(--serif);font-size:1.7rem;color:#fff}.alert-box{border:1px solid var(--gold);background:var(--ivory);padding:2rem}.alert-box h2{font-size:1.9rem;margin:1rem 0 1.5rem}.alert-box ul{margin:.5rem 0 1.5rem;color:var(--muted)}.alert-box li{padding:.2rem 0}.contact-block{border:1px solid var(--line);background:#fff;padding:2.2rem}.contact-block .label{margin-top:1.2rem}.contact-block a{display:block;font-family:var(--serif);font-size:clamp(1.4rem,3vw,1.9rem);color:var(--navy);word-break:break-all;transition:color .2s}.contact-block a:hover{color:var(--gold)}.footer{background:var(--navy);color:#fffc}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;padding-top:3.5rem;padding-bottom:3.5rem}.footer-tag{margin-top:1.2rem;font-size:.85rem;line-height:1.9;color:#fff9}.footer-nav{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem}.footer-contact{font-size:.9rem;line-height:1.9}.footer-contact a,.footer-nav a{display:block;width:fit-content;transition:color .2s}.footer-contact a:hover,.footer-nav a:hover{color:var(--gold)}.footer-contact p{color:#fff9;margin-top:.6rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.2rem 0;font-size:.75rem;color:#ffffff80}.fade-in{animation:rise .9s ease both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (max-width:1024px){.nav-desktop{display:none}.menu-btn{display:block}.grid-4,.service-grid,.approach{grid-template-columns:repeat(2,1fr)}.principle{border:0;padding-left:0}}@media (max-width:768px){.section{padding:3.5rem 0}.grid-2,.footer-grid{grid-template-columns:1fr}.hero-content{padding-top:5rem;padding-bottom:5rem}.page-hero{padding:4rem 0}.logo-text{display:none}}@media (max-width:560px){.grid-4,.service-grid,.approach{grid-template-columns:1fr}.btn{width:100%;justify-content:center}.banner{height:200px}}
