@font-face{font-family:DM;src:url('/assets/dm-sans-latin.woff2') format('woff2');font-weight:100 1000;font-display:swap}
:root{--canvas:#0b0c0e;--surface:#15171a;--surface-raised:#1d1f23;--bronze:#c19a6b;--bronze-hover:#d5b58b;--bronze-deep:#a37b4b;--gold:#dcc292;--gold-light:#ead4ae;--navy-deep:var(--canvas);--navy:var(--surface);--paper:var(--canvas);--soft:var(--surface-raised);--white:#f7f2e9;--ink:#f3efe8;--muted:#bcb5aa;--sand:var(--bronze);--sand-light:var(--bronze-hover);--cyan:var(--bronze-deep);--line:#35312b;--inverse-muted:var(--muted);--inverse-line:var(--line);--focus:#e0bd8b;--scrim:rgba(5,6,8,.92);--transparent:transparent;--gradient:linear-gradient(135deg,var(--gold),var(--bronze) 58%,var(--bronze-deep));--gradient-hover:linear-gradient(135deg,var(--gold-light),var(--bronze-hover) 58%,var(--bronze));--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--s20:80px;--s24:96px;--s32:128px;--text-hero:clamp(56px,6vw,80px);--text-page:clamp(36px,4.5vw,60px);--text-section:clamp(30px,3vw,42px);--text-card:24px;--text-lead:20px;--text-body:16px;--text-small:15px;--text-label:12px;--radius:4px;--radius-full:50%;--fast:150ms;--normal:240ms;--ease:cubic-bezier(.2,.8,.2,1);--shadow:0 24px 80px rgba(0,0,0,.45);--gutter:clamp(24px,4.5vw,64px);--container:1200px;--header-height:96px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:DM,Arial,sans-serif;font-size:var(--text-body);line-height:1.65;-webkit-font-smoothing:antialiased}
body:has(dialog[open]){overflow:hidden}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.15}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{border-radius:var(--radius)}
img{display:block;max-width:100%;object-fit:cover}
svg{display:block;flex-shrink:0}
a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
::selection{background:var(--sand);color:var(--navy-deep)}
.container{width:calc(100% - var(--gutter)*2);max-width:var(--container);margin-inline:auto}
.icon{width:24px;height:24px}
.eyebrow{font-size:var(--text-label);font-weight:700;letter-spacing:.14em;line-height:1.5;text-transform:uppercase;color:var(--sand)}
.skip{position:fixed;left:var(--s4);top:var(--s4);transform:translateY(-200%);padding:var(--s3) var(--s6);background:var(--navy);z-index:40}
.skip:focus{transform:none}
.header{position:sticky;top:0;z-index:20;background:var(--navy-deep);border-bottom:1px solid var(--line)}
.home-header{position:absolute;inset:0 0 auto;background:var(--transparent);border:0}
.header-inner{min-height:var(--header-height);max-width:1328px;padding-inline:var(--gutter);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:var(--s6)}
.brand{display:flex;align-items:center;gap:var(--s3);flex-shrink:0}
.brand img{width:52px;height:44px;object-fit:contain}
.brand>span{font-size:var(--text-lead);line-height:1.2;font-weight:700;letter-spacing:.06em}
.brand small{display:block;font-size:8px;line-height:1.5;letter-spacing:.09em;margin-top:var(--s1);font-weight:500;text-transform:uppercase}
.main-nav{display:flex;align-items:center;gap:var(--s6)}
.main-nav>a{font-size:var(--text-label);font-weight:600;display:flex;align-items:center;justify-content:center;gap:var(--s2);min-height:48px;padding:var(--s2) var(--s1);border-radius:3px;transition:color var(--fast),background var(--fast)}
.main-nav>a:hover{color:var(--sand)}
.main-nav>a[aria-current]{background:var(--soft);padding-inline:var(--s3)}
.main-nav .icon{width:16px;height:16px}
.main-nav>a:last-child{margin-left:var(--s3);padding-inline:var(--s5);background:var(--sand);color:var(--navy-deep)}
.main-nav>a:last-child:hover{background:var(--sand-light)}
.menu-toggle{display:none!important}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:var(--s8);padding:var(--s3) var(--s6);font-size:var(--text-small);font-weight:600;line-height:1.5;border-radius:3px;transition:background var(--fast),transform var(--fast)}
.button .icon{width:18px;height:18px;transition:transform var(--normal) var(--ease)}
.button.primary{background:var(--sand);color:var(--navy-deep)}
.button.primary:hover{background:var(--sand-light)}
.button:hover .icon{transform:translateX(3px)}
.button:active{transform:scale(.98)}
.button.navy{background:var(--soft);color:var(--white)}
.icon-button{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;background:var(--transparent);border:1px solid var(--line);padding:var(--s3);transition:background var(--fast),transform var(--fast)}
.icon-button:hover{background:var(--soft)}
.icon-button:active{transform:scale(.96)}
.featured .feature-icon{color:var(--navy-deep)}
.featured p{color:var(--navy-deep)}
.footer{background:var(--navy-deep);padding-top:var(--s12)}
.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--s10)}
.footer .brand small{font-size:var(--text-label);letter-spacing:.025em;text-transform:none;color:var(--inverse-muted)}
.social{display:flex;align-items:center;gap:var(--s2)}
.social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius);transition:background var(--fast)}
.social img{width:18px;height:18px;object-fit:contain;filter:invert(1)}
.social a:hover{background:var(--soft)}
.footer-bottom{border-top:1px solid var(--line);padding-block:var(--s6);display:flex;gap:var(--s6);justify-content:space-between;align-items:center;color:var(--muted);font-size:var(--text-label)}
.footer-bottom nav{display:flex;align-items:center;gap:var(--s6)}
.footer-bottom a:hover{color:var(--sand);text-decoration:underline}
.back-top{width:44px;height:44px;display:flex;align-items:center;justify-content:center}
.back-top .icon{transform:rotate(-45deg);width:20px;height:20px}
.page-heading{padding-block:var(--s20) var(--s12)}
.page-heading h1{font-size:var(--text-page);font-weight:700;letter-spacing:-.035em;max-width:21ch;margin-top:var(--s5);line-height:1.15;text-wrap:balance}
.gallery-page{padding-bottom:var(--s20)}
.featured-gallery{display:grid;grid-template-columns:.85fr 1.15fr;min-height:480px;background:var(--navy);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.featured-copy{padding:var(--s10);display:flex;flex-direction:column;align-items:flex-start}
.gallery-counter{display:flex;gap:var(--s3);align-items:baseline;color:var(--muted);font-size:var(--text-small);font-variant-numeric:tabular-nums}
.gallery-counter span:first-child{font-size:var(--text-section);font-weight:700;line-height:1;color:var(--sand)}
.gallery-text{padding-block:var(--s10);margin-block:auto}
.gallery-text h2{font-size:clamp(28px,3vw,38px);font-weight:700;letter-spacing:-.025em;line-height:1.2;margin-bottom:var(--s5)}
.gallery-text p{max-width:40ch;color:var(--muted);font-size:var(--text-body)}
.gallery-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);width:100%;flex-wrap:wrap}
.gallery-arrows{display:flex;gap:var(--s2)}
.featured-copy .button{gap:var(--s5);padding-inline:var(--s5)}
.featured-image{border:0;padding:0;position:relative;overflow:hidden;background:var(--soft);min-width:0;min-height:400px}
.featured-image>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform var(--normal) var(--ease)}
.featured-image:hover>img{transform:scale(1.025)}
.image-expand{position:absolute;right:var(--s5);bottom:var(--s5);background:var(--navy-deep);color:var(--white);padding:var(--s3) var(--s4);display:flex;align-items:center;gap:var(--s4);font-size:var(--text-small);border-radius:var(--radius)}
.image-expand .icon{width:20px;height:20px}
.gallery-list{display:grid;grid-template-columns:1fr 1fr;gap:var(--s10) var(--s8);padding-top:var(--s16)}
.gallery-card{background:var(--navy);border-radius:var(--radius);overflow:hidden}
.gallery-thumb{width:100%;border:0;padding:0;aspect-ratio:1.65;position:relative;background:var(--soft);overflow:hidden;border-radius:0}
.gallery-thumb>img{width:100%;height:100%;transition:transform var(--normal) var(--ease)}
.gallery-thumb:hover>img{transform:scale(1.03)}
.thumb-index{position:absolute;top:var(--s4);left:var(--s4);padding:var(--s2) var(--s3);background:var(--navy-deep);font-size:var(--text-small);border-radius:var(--radius)}
.gallery-thumb>.icon{position:absolute;bottom:var(--s4);right:var(--s4);width:44px;height:44px;padding:var(--s3);background:var(--navy-deep);border-radius:var(--radius)}
.gallery-thumb[aria-pressed=true] .thumb-index{background:var(--sand);color:var(--navy-deep)}
.gallery-card-copy{display:flex;gap:var(--s5);padding:var(--s6)}
.item-number{font-size:var(--text-label);color:var(--sand);letter-spacing:.1em;min-width:var(--s6);padding-top:var(--s1)}
.gallery-card h3{font-size:var(--text-card);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--s3)}
.gallery-card p{font-size:var(--text-small);color:var(--muted);line-height:1.75;max-width:58ch}
.original-image{display:inline-flex;align-items:center;gap:var(--s2);margin-top:var(--s3);font-size:var(--text-small);word-break:keep-all;min-height:44px;color:var(--sand)}
.original-image:hover{text-decoration:underline}
.original-image .icon{width:16px;height:16px}
.page-cta{padding-block:var(--s12) var(--s6);text-align:center}
.lightbox{padding:0;background:var(--navy);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);max-width:1100px;width:calc(100% - var(--s12));max-height:calc(100dvh - var(--s12));box-shadow:var(--shadow)}
.lightbox::backdrop{background:var(--scrim)}
.lightbox[open]{animation:dialog-in 180ms var(--ease)}
.lightbox-close{position:absolute;right:var(--s4);top:var(--s4);background:var(--navy-deep);z-index:2}
.lightbox-media{height:min(55dvh,540px);background:var(--navy-deep)}
.lightbox-media img{width:100%;height:100%;object-fit:contain}
.lightbox-info{padding:var(--s8);display:flex;align-items:center;justify-content:space-between;gap:var(--s6)}
.lightbox-info h2{font-size:var(--text-card);font-weight:700;margin-block:var(--s2) var(--s3)}
.lightbox-info p{font-size:var(--text-small);max-width:65ch;color:var(--muted)}
.modal-links{display:flex;gap:var(--s6);flex-wrap:wrap;margin-top:var(--s3)}
.modal-links a{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--text-small);min-height:44px;text-decoration:underline;color:var(--sand)}
.modal-links .icon{width:16px;height:16px}
.government-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s16);padding-bottom:var(--s24);align-items:start}
.government-image{position:sticky;top:calc(var(--header-height) + var(--s8));height:560px;overflow:hidden;border-radius:var(--radius)}
.government-image>img{height:100%;width:100%;object-position:35% center}
.government-image>div{position:absolute;inset:auto 0 0;padding:var(--s8);background:linear-gradient(transparent,var(--scrim));padding-top:var(--s20);color:var(--white)}
.government-image span{font-size:var(--text-label);letter-spacing:.14em;color:var(--sand)}
.government-image p{font-size:var(--text-card);font-weight:700;max-width:20ch;margin-top:var(--s3);line-height:1.25}
.service-list{display:grid;gap:var(--s4)}
.service-row{display:flex;align-items:flex-start;gap:var(--s5);padding:var(--s6);background:var(--navy);border-radius:var(--radius)}
.service-row h2{font-size:var(--text-lead);font-weight:700;line-height:1.3;margin-bottom:var(--s3)}
.service-row p{font-size:var(--text-small);color:var(--muted);line-height:1.8;max-width:55ch}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);padding-bottom:var(--s24);align-items:center}
.contact-image{height:580px;position:relative;overflow:hidden;border-radius:var(--radius)}
.contact-image img{width:100%;height:100%;object-position:35% center}
.contact-image>span{position:absolute;bottom:var(--s6);left:var(--s6);font-size:var(--text-label);letter-spacing:.1em;background:var(--gradient);color:var(--navy-deep);font-weight:700;padding:var(--s3) var(--s5);border-radius:var(--radius)}
.contact-details>.eyebrow{margin-bottom:var(--s8)}
.contact-row{display:flex;gap:var(--s6);padding-block:var(--s6);border-top:1px solid var(--line)}
.contact-row>.icon{margin-top:var(--s1);width:24px;height:24px;color:var(--sand)}
.contact-row a{display:block;font-size:var(--text-lead);overflow-wrap:anywhere;min-height:36px}
.contact-row a:hover{color:var(--sand)}
.contact-label{display:block;font-size:var(--text-label);letter-spacing:.1em;color:var(--muted);margin-bottom:var(--s2)}
address{font-size:var(--text-lead);font-style:normal;max-width:29ch;line-height:1.6}
.contact-social{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);border-top:1px solid var(--line);padding-top:var(--s6)}
.contact-heading h1{max-width:24ch;font-size:clamp(32px,4vw,56px)}
@keyframes dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.header-inner{gap:var(--s4)}
.main-nav{gap:var(--s3)}
.main-nav>a:last-child{margin-left:0;padding-inline:var(--s3)}
.brand>span{font-size:var(--text-body)}
.brand img{width:44px;height:40px}
.featured-copy{padding:var(--s8)}
.government-layout,.contact-layout{gap:var(--s10)}}
@media(max-width:1050px){:root{--header-height:80px}
.menu-toggle{display:inline-flex!important;border:0}
.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--navy-deep);border-bottom:1px solid var(--line);padding:var(--s4) var(--gutter) var(--s6);flex-direction:column;align-items:stretch;gap:0}
.main-nav.is-open{display:flex}
.main-nav>a{justify-content:space-between;min-height:56px;font-size:var(--text-small);padding-inline:var(--s4)}
.main-nav>a:last-child{margin-top:var(--s3);padding-inline:var(--s4)}
.brand>span{font-size:var(--text-lead)}}
@media(max-width:800px){.footer-bottom{flex-wrap:wrap}
.footer-bottom nav{order:3;width:100%;gap:var(--s5)}
.page-heading{padding-top:var(--s16)}
.featured-gallery{grid-template-columns:1fr}
.featured-copy{order:2}
.featured-image{min-height:400px;order:1}
.gallery-text{padding-block:var(--s6)}
.gallery-actions{flex-wrap:nowrap}
.government-layout{grid-template-columns:1fr;gap:var(--s10)}
.government-image{height:340px;position:relative;top:auto}
.contact-layout{grid-template-columns:1fr;gap:var(--s10)}
.contact-image{height:360px}
.contact-details{max-width:600px}
.contact-layout,.government-layout{padding-bottom:var(--s16)}}
@media(max-width:600px){.brand{gap:var(--s2)}
.brand>span{font-size:var(--text-body)}
.brand small{font-size:7px}
.brand img{width:44px;height:40px}
.footer{padding-top:var(--s10)}
.footer-top{flex-direction:column;align-items:flex-start;gap:var(--s8);padding-bottom:var(--s8)}
.footer .brand>span{font-size:var(--text-lead)}
.footer .brand small{font-size:10px}
.footer-bottom{position:relative;padding-block:var(--s6);gap:var(--s5)}
.footer-bottom p{padding-right:var(--s8);max-width:40ch;font-size:10px}
.footer-bottom nav{gap:var(--s4);flex-wrap:wrap;font-size:10px}
.back-top{position:absolute;top:var(--s4);right:0}
.page-heading{padding-block:var(--s12) var(--s8)}
.page-heading h1{font-size:38px;max-width:18ch}
.contact-heading h1{font-size:30px;max-width:100%}
.featured-image{min-height:270px}
.featured-copy{padding:var(--s6)}
.gallery-text h2{font-size:30px}
.gallery-text p{font-size:var(--text-small)}
.gallery-counter span:first-child{font-size:38px}
.gallery-actions{gap:var(--s3);flex-wrap:wrap}
.gallery-actions .button{flex-grow:1;min-height:48px}
.gallery-arrows{gap:var(--s2)}
.gallery-arrows .icon-button{width:44px;height:44px;padding:var(--s3)}
.gallery-list{grid-template-columns:1fr;gap:var(--s8);padding-top:var(--s10)}
.gallery-card-copy{padding:var(--s5);gap:var(--s4)}
.gallery-page{padding-bottom:var(--s10)}
.lightbox{width:calc(100% - var(--s6));max-height:calc(100dvh - var(--s6))}
.lightbox-media{height:38dvh}
.lightbox-info{padding:var(--s5);flex-wrap:wrap;gap:var(--s4)}
.lightbox-info>.gallery-arrows{margin-left:auto}
.lightbox-close{top:var(--s3);right:var(--s3);width:44px;height:44px}
.service-row{gap:var(--s3);padding:var(--s5)}
.service-row h2{font-size:var(--text-body)}
.government-image{height:300px}
.government-image>div{padding-inline:var(--s6)}
.contact-image{height:320px}
.contact-image>span{left:var(--s4);bottom:var(--s4);font-size:10px}
.contact-row{gap:var(--s4)}
.contact-row a,address{font-size:var(--text-body)}
.contact-social{flex-wrap:wrap}
.contact-social .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition-duration:50ms!important;animation-duration:50ms!important}
.button:hover .icon,.button:active,.icon-button:active,.featured-image:hover>img,.gallery-thumb:hover>img{transform:none}
.lightbox[open]{animation-name:dialog-fade}
@keyframes dialog-fade{from{opacity:0}to{opacity:1}}}
.footer-bottom nav a{min-height:44px;display:inline-flex;align-items:center}
.contact-row a{min-height:44px}

.contact-map{background:var(--surface);border:1px solid var(--line)}
.contact-map iframe{display:block;width:100%;height:100%;border:0}
.contact-row .map-link{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--text-small);min-height:var(--s12);color:var(--sand)}
.map-link .icon{width:var(--s4);height:var(--s4)}
.contact-row .map-link:hover{text-decoration:underline;color:var(--gold)}

:root{--type-brand:19px;--type-nav:13px;--type-hero:calc(48*var(--reference-unit));--type-reference-copy:max(14px,calc(10.5*var(--reference-unit)));--type-compact:14px;--type-feature:clamp(21px,2.2vw,33px);--type-introduction:calc(23*var(--reference-unit));--type-reference-secondary:max(14px,calc(10*var(--reference-unit)));--type-badge:calc(30*var(--reference-unit));--type-caption:11px;--type-support:calc(28*var(--reference-unit));--type-benefit:max(15px,calc(12*var(--reference-unit)));--type-teaser:18px;--type-gallery:22px;--type-contact:clamp(30px,3.4vw,48px);--type-display-tablet:58px;--type-heading-small:30px;--type-heading-medium:32px;--type-teaser-compact:17px;--type-card-compact:21px;--type-feature-mobile:25px;--type-section-mobile:29px;--type-display-mobile:56px;--space-nav:22px;--space-caption:18px;--space-hero-tablet:142px;--space-section-compact:72px;--space-comfort:28px;--space-control:36px;--space-section-tablet:88px;--space-banner-tablet:150px;--space-intro-mobile:42px;--space-hero-mobile:140px;--space-banner-mobile:136px;--border-feature:rgba(193,154,107,.16);--border-action:rgba(213,181,139,.7);--shadow-feature:0 10px 24px rgba(0,0,0,.25);--overlay-hero:linear-gradient(90deg,rgba(11,12,14,.72),rgba(11,12,14,.35)),linear-gradient(0deg,var(--canvas),rgba(11,12,14,.08) 65%);--overlay-banner:linear-gradient(rgba(11,12,14,.7),rgba(11,12,14,.94));--photo-treatment:grayscale(.35) saturate(.7);--layout-content-width:73.6%;--layout-feature-width:61.3%;--layout-hero-height:calc(480*var(--reference-unit));--layout-hero-top:calc(118*var(--reference-unit));--layout-feature-side-height:calc(280*var(--reference-unit));--layout-feature-main-height:calc(320*var(--reference-unit));--layout-feature-lift:calc(-19*var(--reference-unit));--layout-photo-height:calc(412*var(--reference-unit));--layout-support-gap:calc(70*var(--reference-unit));--layout-feature-overlap:calc(-57*var(--reference-unit));}

.hero,.consultation{position:relative;isolation:isolate;color:var(--white);background:var(--navy-deep)}
.hero{display:flex;flex-direction:column}
.consultation{text-align:center}
.hero-image,.hero-shade,.consultation-image,.consultation-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}
.hero-shade,.consultation-shade{z-index:-1}
.hero-image>img,.consultation-image img{width:100%;height:100%;object-fit:cover;filter:var(--photo-treatment)}
.feature-card{position:relative}
.photo-label{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
/* Proportions measured from references/concept.jpg at its 1000px image width. */
:root{--reference-unit:min(.1vw,1.6px);--radius:3px;--container:1178px;--header-height:72px;--text-page:clamp(34px,3.5vw,52px);--text-section:clamp(30px,2.8vw,42px);--shadow:0 16px 48px rgba(0,0,0,.35)}
.container{width:var(--layout-content-width);max-width:var(--container)}
.header-inner{width:var(--layout-content-width);max-width:var(--container);padding-inline:0;min-height:var(--header-height);gap:var(--s6)}
.header .brand{gap:var(--s2)}.header .brand img{width:38px;height:36px}.header .brand>span{font-size:var(--type-brand);letter-spacing:-.035em;font-weight:700}.header .brand small{display:none}
.main-nav{gap:var(--space-nav)}.main-nav>a{font-size:var(--type-nav);font-weight:500;min-height:44px;padding-inline:0}.main-nav>a:last-child{margin-left:var(--s2);padding-inline:var(--s6);font-size:var(--text-label);min-height:40px;font-weight:500}.main-nav>a:last-child .icon{display:none}
.hero{height:var(--layout-hero-height);min-height:0;justify-content:flex-start;overflow:visible}
.hero-content{padding:var(--layout-hero-top) 0 0}
.hero h1{font-size:var(--type-hero);line-height:1.2;letter-spacing:-.025em;max-width:calc(350*var(--reference-unit));font-weight:700;margin:0 0 calc(18*var(--reference-unit))}
.hero-description{max-width:calc(365*var(--reference-unit));font-size:var(--type-reference-copy);line-height:1.45;letter-spacing:0;margin:0 0 calc(12*var(--reference-unit));text-transform:none;color:var(--white)}
.hero .button{padding:var(--s2) var(--s6);min-height:44px;font-size:var(--type-compact);font-weight:400;gap:0}.hero .button .icon{display:none}
.hero-image>img{object-position:center 52%}
.hero-shade{background:var(--overlay-hero)}
.edge-section{width:100%;max-width:none;margin:var(--layout-feature-overlap) 0 0;padding:0 0 calc(82*var(--reference-unit));position:relative;z-index:2}
.feature-cards{display:grid;grid-template-columns:200fr 211fr 202fr;align-items:start;width:var(--layout-feature-width);max-width:calc(613*1.6px);margin:0 auto;gap:0}
.feature-card{height:var(--layout-feature-side-height);min-height:0;padding:calc(30*var(--reference-unit)) calc(20*var(--reference-unit)) calc(27*var(--reference-unit));display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:var(--navy);border:1px solid var(--border-feature);border-radius:0;text-align:center;box-shadow:none}
.feature-card.featured{height:var(--layout-feature-main-height);min-height:0;padding-top:calc(36*var(--reference-unit));padding-bottom:calc(40*var(--reference-unit));transform:translateY(var(--layout-feature-lift));border:0;border-radius:3px;background:var(--gradient);color:var(--navy-deep);box-shadow:var(--shadow-feature)}
.feature-icon{height:calc(44*var(--reference-unit));margin:0 0 calc(14*var(--reference-unit));display:flex;align-items:center;justify-content:center;color:var(--sand)}
.feature-icon .icon{width:calc(44*var(--reference-unit));height:calc(44*var(--reference-unit));stroke-width:1.1}
.featured .feature-icon{height:calc(52*var(--reference-unit));color:var(--navy-deep)}.featured .feature-icon .icon{width:calc(52*var(--reference-unit));height:calc(52*var(--reference-unit))}
.feature-card h3{font-size:var(--type-feature);font-weight:700;letter-spacing:-.025em;line-height:1.2;min-height:calc(52*var(--reference-unit));margin:0 0 calc(12*var(--reference-unit));display:flex;align-items:center;justify-content:center}
.feature-card p{font-size:var(--type-reference-copy);font-weight:400;line-height:1.45;max-width:calc(165*var(--reference-unit));min-height:calc(52*var(--reference-unit));margin:0;color:var(--muted)}
.feature-card.featured p{min-height:calc(68*var(--reference-unit));color:var(--navy-deep)}
.feature-more{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;font-size:var(--text-label);font-weight:400;line-height:1.4;min-height:40px;padding:6px var(--space-caption);border:1px solid var(--border-action);border-radius:2px;color:var(--white);transition:background var(--fast),color var(--fast)}
.feature-more:hover{background:var(--white);color:var(--navy-deep)}.featured .feature-more{background:var(--white);border-color:var(--white);color:var(--navy-deep)}.featured .feature-more:hover{background:var(--navy-deep);border-color:var(--navy-deep);color:var(--white)}
.edge-introduction{text-align:center;margin:calc(14*var(--reference-unit)) auto 0;width:var(--layout-content-width);max-width:var(--container)}
.edge-introduction h2{font-size:var(--type-introduction);font-weight:700;letter-spacing:-.025em;line-height:1.25;margin:0 0 calc(12*var(--reference-unit))}
.edge-introduction>p{color:var(--muted);font-size:var(--type-reference-secondary);line-height:1.5;margin:0}
.advantage-split{display:grid;grid-template-columns:363fr 303fr;gap:var(--layout-support-gap);align-items:start;padding:0;margin-top:calc(96.25*var(--reference-unit))}
.advantage-photo{height:var(--layout-photo-height);width:100%;max-width:none;position:relative;isolation:isolate}
.advantage-photo>img{height:100%;width:100%;object-fit:cover;object-position:48% center;border-radius:3px 0 0 3px}
.photo-label{right:calc(-6*var(--reference-unit));top:calc(-6*var(--reference-unit));width:calc(138*var(--reference-unit));height:calc(112*var(--reference-unit));min-width:0;min-height:0;transform:none;padding:var(--s2);gap:6px;background:var(--gradient);border-radius:3px;box-shadow:none;color:var(--navy-deep)}
.photo-label strong{font-size:var(--type-badge);font-weight:700;letter-spacing:-.035em;line-height:1.1}.photo-label span{font-size:var(--type-caption);font-weight:500;letter-spacing:.1em;line-height:1.4}
.advantage-details{padding-top:calc(27*var(--reference-unit))}
.advantage-details>h2{font-size:var(--type-support);line-height:1.15;font-weight:700;letter-spacing:-.025em;margin:0 0 calc(30*var(--reference-unit));max-width:none}
.benefit-rows{display:grid;gap:calc(10*var(--reference-unit))}
.benefit-row{display:flex;align-items:flex-start;gap:calc(15*var(--reference-unit));background:var(--soft);padding:calc(14*var(--reference-unit)) calc(20*var(--reference-unit));border-radius:0}
.benefit-row>.icon{width:calc(25*var(--reference-unit));height:calc(25*var(--reference-unit));stroke-width:1.2;color:var(--sand)}
.benefit-row h3{font-size:var(--type-benefit);font-weight:600;line-height:1.35;letter-spacing:0;margin:0 0 calc(5*var(--reference-unit))}
.benefit-row p{font-size:var(--type-reference-secondary);line-height:1.5;color:var(--muted);margin:0}
.consultation{min-height:calc(430*var(--reference-unit));padding:calc(85*var(--reference-unit)) 0 calc(120*var(--reference-unit));display:block;position:relative;isolation:isolate}
.consultation-image img{object-position:center 55%}.consultation-shade{background:var(--overlay-banner)}
.consultation .eyebrow{font-size:var(--text-label);font-weight:500;letter-spacing:.1em}
.consultation h2{font-size:var(--type-support);font-weight:700;line-height:1.2;letter-spacing:-.02em;max-width:calc(620*var(--reference-unit));margin:calc(14*var(--reference-unit)) auto calc(24*var(--reference-unit));text-wrap:balance}
.consultation .button{font-size:var(--type-compact);font-weight:400;gap:0;min-height:44px;padding:var(--s2) var(--s6)}.consultation .button .icon{display:none}
.service-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(12*var(--reference-unit));margin-top:calc(-153*var(--reference-unit));position:relative;z-index:2;padding-bottom:calc(65*var(--reference-unit))}
.service-teaser{background:var(--navy);padding:calc(32*var(--reference-unit)) calc(24*var(--reference-unit));border-radius:3px;display:flex;flex-direction:column;align-items:flex-start;min-height:calc(224*var(--reference-unit));transition:background var(--fast)}
.service-teaser.featured{background:var(--gradient);color:var(--navy-deep)}.service-teaser>.icon{color:var(--sand);width:34px;height:34px;margin-bottom:var(--s6);stroke-width:1.2}.service-teaser.featured>.icon{color:var(--navy-deep)}.service-teaser>span:not(.teaser-action){font-size:var(--type-teaser);font-weight:600;letter-spacing:0;line-height:1.3}.service-teaser p{font-size:var(--text-small);line-height:1.5;color:var(--muted);margin-top:var(--s3);margin-bottom:var(--s5)}.service-teaser.featured p{color:var(--navy-deep)}.teaser-action{display:flex;align-items:center;gap:var(--s3);font-size:var(--type-nav);min-height:40px;margin-top:auto}.teaser-action .icon{width:16px;height:16px}.service-teaser:hover{background:var(--soft)}.service-teaser.featured:hover{background:var(--gradient-hover)}
.page-heading{padding-block:var(--s16) var(--s10)}.page-heading h1{font-size:var(--text-page);max-width:24ch}.featured-gallery{min-height:420px}.featured-copy{padding:var(--s8)}.gallery-text{padding-block:var(--s8)}.gallery-list{padding-top:var(--s12);gap:var(--s8) var(--s6)}.gallery-card{background:transparent}.gallery-card-copy{padding:var(--s6) 0}.gallery-card h3{font-size:var(--type-gallery);font-weight:600}.gallery-card p{font-size:var(--text-small)}.contact-heading h1{font-size:var(--type-contact)}
@media(min-width:1600px){.hero{min-height:0;height:var(--layout-hero-height)}.hero-content{padding:var(--layout-hero-top) 0 0}}
@media(min-width:1051px){.main-nav{display:flex}.menu-toggle{display:none!important}}
@media(max-width:1050px){.container,.header-inner,.edge-introduction{width:88%}.header-inner{min-height:80px}.menu-toggle{display:inline-flex!important}.main-nav{display:none}.main-nav.is-open{display:flex}.main-nav>a{font-size:var(--type-compact);padding:var(--s2) var(--s4)}.main-nav>a:last-child{margin:var(--s3) 0 0}.hero{height:610px;min-height:0}.hero-content{padding-top:var(--space-hero-tablet)}.hero h1{font-size:var(--type-display-tablet);line-height:1.15;max-width:400px}.hero-description{max-width:410px;font-size:var(--text-small);line-height:1.6;margin-bottom:var(--s5)}.feature-cards{width:78%;max-width:none}.edge-section{margin-top:-72px;padding-bottom:var(--space-section-compact)}.feature-card{height:340px;padding:var(--s8) var(--s5) var(--space-comfort)}.feature-card.featured{height:380px;transform:translateY(-20px);padding:var(--space-control) var(--s5)}.feature-icon,.featured .feature-icon{height:44px;margin-bottom:var(--s4)}.feature-icon .icon,.featured .feature-icon .icon{width:44px;height:44px}.feature-card h3{font-size:var(--text-card);min-height:44px;margin-bottom:var(--s4)}.feature-card p,.feature-card.featured p{font-size:var(--type-compact);line-height:1.5;min-height:66px;max-width:24ch}.feature-more{font-size:var(--text-label);min-height:40px;padding:var(--s2) var(--s4)}.edge-introduction{margin-top:var(--s6)}.edge-introduction h2{font-size:var(--type-heading-small);margin-bottom:var(--s3)}.advantage-split{grid-template-columns:1fr 1fr;gap:var(--s10);margin-top:var(--space-section-tablet)}.advantage-photo{height:490px}.photo-label{width:152px;height:124px;top:-8px;right:-8px}.photo-label strong{font-size:var(--type-heading-medium)}.advantage-details{padding-top:var(--s5)}.advantage-details>h2{font-size:var(--type-heading-medium);margin-bottom:var(--s6)}.benefit-row{padding:var(--space-caption) var(--s4);gap:14px}.benefit-row>.icon{width:28px;height:28px}.benefit-row h3{font-size:var(--text-body);margin-bottom:var(--s2)}.benefit-row p{font-size:var(--type-compact)}.benefit-rows{gap:var(--s3)}.consultation{min-height:500px;padding:var(--s20) 0 var(--space-banner-tablet)}.consultation h2{font-size:var(--type-heading-medium);max-width:680px;margin:var(--s5) auto var(--s6)}.service-navigation{gap:var(--s4);margin-top:-90px;padding-bottom:var(--s16)}.service-teaser{padding:var(--space-comfort) var(--s6);min-height:270px}.service-teaser>span:not(.teaser-action){font-size:var(--type-teaser-compact)}}
@media(max-width:800px){.advantage-split{grid-template-columns:1fr;gap:var(--s10)}.advantage-photo{height:520px;width:100%;max-width:600px}.advantage-details{padding-top:0}.advantage-details>h2{max-width:22ch}.benefit-rows{max-width:none}.feature-cards{width:88%}.feature-card h3{font-size:var(--type-card-compact)}.service-navigation{grid-template-columns:1fr;gap:var(--s4);margin-top:-60px}.service-teaser{min-height:0;padding:var(--space-comfort)}.service-teaser>.icon{margin-bottom:var(--s5)}.header .brand>span{font-size:var(--type-teaser)}}
@media(max-width:700px){.feature-cards{display:grid;grid-template-columns:1fr;width:calc(100% - 48px);gap:var(--s4)}.feature-card,.feature-card.featured{height:auto;min-height:310px;transform:none;padding:var(--s8) var(--space-comfort)}.feature-card h3{font-size:var(--type-feature-mobile);min-height:0;margin-bottom:var(--s4)}.feature-card p,.feature-card.featured p{min-height:0;max-width:32ch;font-size:var(--text-small);margin-bottom:var(--s6)}.feature-more{margin-top:auto;min-height:44px}.feature-icon,.featured .feature-icon{height:44px;margin-bottom:var(--s5)}.edge-section{margin-top:-36px;padding-bottom:var(--s16)}.edge-introduction{margin-top:var(--space-intro-mobile)}.edge-introduction h2{font-size:var(--type-section-mobile);margin-bottom:var(--s3)}.advantage-split{margin-top:var(--s16)}.photo-label{width:140px;height:116px;right:8px;top:-8px}.photo-label strong{font-size:var(--type-heading-small)}.advantage-photo{height:430px}.hero{height:620px}.hero-content{padding-top:var(--space-hero-mobile)}.hero h1{font-size:var(--type-display-mobile);line-height:1.15;margin-bottom:var(--space-nav)}.hero-description{font-size:var(--text-small);max-width:34ch;line-height:1.6;margin-bottom:var(--s6)}.hero .button{min-height:48px}.consultation{min-height:510px;padding:var(--space-section-compact) 0 var(--space-banner-mobile)}.consultation h2{font-size:var(--type-heading-small);max-width:22ch}.service-navigation{padding-bottom:var(--s12)}.header .brand img{width:38px;height:36px}.footer .container{width:88%}}
