:root{--color-background:#faf9f6;--color-surface:#ffffff;--color-text:#272b2d;--color-muted:#505b61;--color-accent:#4a5359;--color-on-accent:#ffffff;--color-link:#4a5359;--line-color:#d5d6d2;--privacy-ink:#272b2d;--privacy-muted:#505b61;--privacy-paper:#faf9f6;--privacy-line:#d5d6d2;--privacy-accent:#4a5359;--privacy-font:"Segoe UI",sans-serif;--page-width:1360px;--gutter:clamp(22px,4.4vw,84px)}
body{background:var(--color-background);color:var(--color-text);font:17px/1.65 "Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--color-link);text-underline-offset:5px}a:hover{text-decoration-thickness:2px}p{margin:0 0 1.2em}h1,h2,h3{font-weight:400;line-height:1.12;margin:0 0 .7em}h1,h2{font-family:Georgia,serif}h1{font-size:clamp(44px,6.1vw,94px);letter-spacing:-.055em}h2{font-size:clamp(30px,3vw,47px);letter-spacing:-.035em}h3{font-size:23px;line-height:1.3}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;border:1px solid var(--color-accent);padding:12px 23px;background:var(--color-accent);color:var(--color-on-accent);text-decoration:none;line-height:1.35;border-radius:2px}button:hover,.button:hover{background:var(--color-text);color:var(--color-surface)}.text-link{font-size:15px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:27px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;color:var(--color-muted);margin-bottom:24px}.site-header{padding:0 var(--gutter);max-width:1600px;margin:auto}.header-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 24px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font:29px/1.05 Georgia,serif;color:var(--color-text);letter-spacing:-.05em}.brand-mark{font:italic 42px/1 Georgia,serif;border:1px solid #959b98;width:57px;height:57px;border-radius:50%;text-align:center;padding-top:2px}.brand-sub{display:block;margin-top:10px;letter-spacing:.14em;font:9px/1.2 "Segoe UI",sans-serif}.header-actions{display:flex;align-items:center;gap:18px}.header-phone{font-size:15px;text-decoration:none}#site-menu{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid var(--line-color);border-bottom:1px solid var(--line-color)}#site-menu a{font-size:13px;text-decoration:none;line-height:1.3;padding:5px 0}#site-menu a:last-child{font-weight:600}main{max-width:1600px;margin:auto}.block{margin:0 var(--gutter);padding:72px 0;border-bottom:1px solid var(--line-color)}.block:not(.opening):not(.faq){display:grid;gap:clamp(28px,5vw,92px);grid-template-columns:1fr 1fr}.block.rail:not(.opening):not(.faq){grid-template-columns:minmax(0,1fr) minmax(0,1.8fr)}.block>*{min-width:0}.opening{padding-top:58px}.opening-copy{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:clamp(32px,6vw,100px);margin-bottom:42px}.opening h1{margin-bottom:0}.opening-lead{padding-top:26px;max-width:510px;font-size:18px}.editorial-photo{margin:0;min-width:0}.editorial-photo img{display:block;width:100%;object-fit:cover;aspect-ratio:3/2}.hero-photo img{aspect-ratio:2.8/1;max-height:510px}.editorial-photo figcaption{padding-top:9px;font-size:11px;color:var(--color-muted)}.ai-caption{margin:0;font-size:11px!important;line-height:1.5}.block-body>p{max-width:66ch}.block-body>.editorial-photo{margin-bottom:24px}.block-title h2{max-width:15ch}.block-title>p:not(.eyebrow){font-size:15px;max-width:38ch}.reading-rows article{padding:23px 0;border-top:1px solid var(--line-color)}.reading-rows article:first-child{padding-top:0;border-top:0}.reading-rows article:last-child{padding-bottom:0}.reading-rows h3 a{text-decoration:none;display:block}.reading-rows h3 span{font-size:12px;display:block;margin-bottom:12px;letter-spacing:.1em;color:var(--color-muted)}.reading-rows p{font-size:16px;margin-bottom:0;max-width:65ch}.context.split{background:#eef0ec;margin:0;padding:72px var(--gutter)}.faq{max-width:960px;margin:auto;padding-left:28px;padding-right:28px}.faq h2{margin-bottom:40px}.faq-list{border-top:1px solid var(--line-color)}details{border-bottom:1px solid var(--line-color);padding:20px 0}summary{cursor:pointer;font-size:18px;line-height:1.4;padding:0 30px 0 0;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:0;font-size:22px;top:-4px}details[open]>summary::after{content:'−'}details>p{margin:18px 0 0;max-width:70ch;color:var(--color-muted);font-size:16px}.faq.rail .faq-list{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.map-panel{border:1px solid var(--line-color);background:#eceeea;min-height:380px}.map-panel [data-map-placeholder]{padding:38px;display:flex;align-items:flex-start;flex-direction:column;gap:13px}.map-panel [data-map-placeholder]::before{content:'⌖';font:44px/1 Georgia,serif;color:var(--color-accent)}.map-panel p{margin:0;max-width:50ch}.map-panel h3{margin:0}.map-label{text-transform:uppercase;letter-spacing:.12em;font-size:12px}.map-panel a{font-size:13px}.map-panel iframe{border:0;width:100%;height:430px;display:block}.contact-cta p{max-width:48ch}.contact-cta>.button{margin:8px 0 22px}.contact-quick{font-size:16px;margin-top:28px;overflow-wrap:anywhere}.contact-quick p{margin:16px 0 0}.small-call{font-size:14px;margin-top:25px}.big-phone{font:36px Georgia,serif}.contact-form{padding:30px;background:var(--color-surface);border:1px solid var(--line-color)}.contact-form p{font-size:14px;overflow-wrap:anywhere}.contact-form label{font-size:14px}.contact-form legend{font:27px Georgia,serif;margin-bottom:20px}.contact-form fieldset:disabled{opacity:.7}.contact-form button{margin:10px 0 20px}.site-footer{background:var(--color-text);color:#faf9f6;padding:65px var(--gutter) 22px;margin-top:0}.site-footer a{color:inherit}.footer-intro{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr auto;gap:35px;align-items:center;padding-bottom:50px;border-bottom:1px solid #5b6060}.footer-brand{font:clamp(40px,5.6vw,80px)/1 Georgia,serif;letter-spacing:-.05em;text-decoration:none}.footer-brand span{color:#aeb8ac}.footer-intro p{font-size:16px;margin:0}.round-link{border:1px solid #aeb8ac;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:28px;text-decoration:none}.footer-rail{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr .8fr;gap:40px;padding:42px 0;font-size:14px;overflow-wrap:anywhere}.footer-rail nav{display:flex;flex-direction:column;gap:12px}.footer-rail nav button{align-self:flex-start;border:0;background:transparent;padding:0;min-height:35px;text-decoration:underline;font-size:14px;color:inherit}.footer-note p{margin-top:18px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:20px;border-top:1px solid #5b6060;font-size:11px;color:#c7cdca;max-width:1440px;margin:auto}.legal-shell{padding:65px var(--gutter) 90px}.legal-heading{max-width:1050px;margin-bottom:55px}.legal-heading h1{font-size:clamp(40px,5vw,72px);overflow-wrap:anywhere}.legal-nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;padding-top:14px}.legal-content{max-width:960px}.legal-prose h2{font-size:31px;margin-top:45px}.legal-prose h3{font-size:23px;margin-top:30px}.legal-prose table{font-size:14px;background:white}.legal-prose details{max-width:820px}.legal-prose nav{padding:25px;background:#eef0ec}.legal-prose a{overflow-wrap:anywhere}.utility-shell{max-width:950px;padding:85px var(--gutter);min-height:60vh}.utility-shell h1{font-size:clamp(44px,6vw,76px)}.utility-content{margin-bottom:35px}.page-overview .opening-copy{grid-template-columns:.85fr 1fr}.page-overview .hero-photo{max-width:1000px;margin-left:auto}.page-overview .hero-photo img{aspect-ratio:2.4/1}.page-service1 .opening,.page-about .opening{position:relative}.page-service1 .opening-copy,.page-about .opening-copy{grid-template-columns:1fr 1fr}.page-service1 .hero-photo img,.page-about .hero-photo img{aspect-ratio:2.6/1}.page-service2 .hero-photo{max-width:1080px;margin:auto}.page-service2 .hero-photo img{aspect-ratio:2.4/1}.page-service3 .opening-copy{padding-bottom:10px}.page-service3 .hero-photo img{aspect-ratio:3/1}.page-contact .opening{display:grid;grid-template-columns:1.4fr 1fr;gap:55px;align-items:center}.page-contact .opening-copy{display:block;margin:0}.page-contact .opening-lead{padding-top:30px}.page-contact .hero-photo img{aspect-ratio:3/4;max-height:600px}.page-contact h1{font-size:clamp(40px,5vw,76px)}.page-contact .opening .actions{display:none}
a[href^="mailto:"]{overflow-wrap:anywhere}
.editorial-photo figcaption{font-size:12px;line-height:1.6}
h1,h2,h3{overflow-wrap:anywhere}
.page-service2 .hero-photo img{object-position:center 18%}
.legal-prose table{min-width:760px}
.legal-prose th:first-child,.legal-prose td:first-child{min-width:160px;width:160px;overflow-wrap:normal}
@media(min-width:1600px){.site-footer{padding-left:max(var(--gutter),calc((100vw - 1440px)/2));padding-right:max(var(--gutter),calc((100vw - 1440px)/2))}}
@media(max-width:1100px){#site-menu{gap:14px}#site-menu a{font-size:12px}.opening-copy{gap:35px}.footer-rail{grid-template-columns:1.4fr 1fr}.footer-note{display:none}}
@media(max-width:760px){body{font-size:16px}.header-top{padding:20px 0}.brand{font-size:24px;gap:9px}.brand-mark{font-size:34px;width:44px;height:44px}.brand-sub{font-size:7px;letter-spacing:.1em}.header-phone{display:none}.header-actions button{background:transparent;color:var(--color-text);padding:8px 12px;min-height:42px;font-size:14px}#site-menu{display:flex;flex-direction:column;align-items:stretch;padding:15px 0 24px;gap:0}#site-menu a{font-size:16px;padding:12px 0;border-bottom:1px solid var(--line-color)}.site-header{border-bottom:1px solid var(--line-color)}h1{font-size:clamp(43px,9vw,65px)}.block{padding:45px 0}.opening{padding-top:35px}.opening-copy,.page-overview .opening-copy,.page-service1 .opening-copy,.page-about .opening-copy{display:block;margin-bottom:30px}.opening .eyebrow{font-size:10px;margin-bottom:20px}.opening-lead{padding-top:25px;font-size:16px;max-width:none}.opening-lead>p{margin-bottom:18px}.actions{gap:18px;margin-top:20px}.actions .button{padding:12px 17px}.hero-photo img,.page-service3 .hero-photo img,.page-service2 .hero-photo img,.page-overview .hero-photo img,.page-service1 .hero-photo img,.page-about .hero-photo img{aspect-ratio:1.25/1;max-height:480px}.hero-photo img{object-position:center}.page-service1 .hero-photo img{object-position:40% center}.block:not(.opening):not(.faq),.block.rail:not(.opening):not(.faq){display:block}.block-title{margin-bottom:30px}.block-title h2{max-width:23ch}.block-title .eyebrow{margin-bottom:17px}.context.split{padding:45px var(--gutter)}.faq{padding:45px var(--gutter);margin:0;max-width:none}.faq.rail .faq-list{display:block}.faq h2{margin-bottom:25px}summary{font-size:16px}details>p{font-size:15px}.map-panel [data-map-placeholder]{padding:27px}.map-panel iframe{height:380px}.site-footer{padding-top:45px}.footer-intro{grid-template-columns:1fr auto;gap:23px;padding-bottom:30px}.footer-intro p{grid-column:1/-1;grid-row:2}.footer-brand{font-size:46px}.round-link{height:46px;width:46px}.footer-rail{grid-template-columns:1fr;gap:20px;padding:30px 0;font-size:13px}.footer-bottom{flex-direction:column;gap:7px}.legal-shell{padding-top:40px;padding-bottom:50px}.legal-heading{margin-bottom:30px}.legal-prose h2{font-size:27px}.legal-prose{font-size:15px}.legal-nav{gap:18px}.page-contact .opening{display:block}.page-contact .hero-photo{margin-top:30px}.page-contact .hero-photo img{aspect-ratio:1.7/1;max-height:330px}.page-contact .opening-lead{padding-top:25px}.contact-form{padding:23px}.contact-quick{font-size:15px}.big-phone{font-size:29px}.utility-shell{padding-top:45px;padding-bottom:50px}}
