@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap";:root{--paper:#faf8f3;--mist:#ebe8df;--ink:#1d2524;--secondary:#1a2b6d;--copper:#c8a35d;--text:#5d6460;--muted:#69716e;--border:#ded9cb;--border-strong:#a49a84;--page-gutter:clamp(20px, 5vw, 76px);--font:"Montserrat", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;background:var(--paper);color:var(--text);font-family:var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;line-height:1.62}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2{color:var(--ink);font-family:var(--font);letter-spacing:0;font-weight:700;line-height:1.08}h1{max-width:720px;font-size:clamp(42px,6.2vw,84px)}h2{font-size:clamp(32px,4.1vw,56px);line-height:1.12}p{max-width:720px}img{max-width:100%}::selection{background:var(--copper);color:var(--ink)}:focus-visible{outline:3px solid var(--copper);outline-offset:3px}#root{min-height:100svh}@media (width<=620px){:root{font-size:16px}h1{font-size:36px}}.site-header{border-bottom:1px solid var(--border);min-height:104px;padding:0 var(--page-gutter);z-index:10;background:#faf8f3eb;justify-content:space-between;align-items:center;gap:32px;display:flex;position:sticky;top:0}.brand{color:var(--ink);flex:none;align-items:center;gap:12px;margin:10px 0;padding:8px 0;text-decoration:none;display:inline-flex}.brand-logo{width:clamp(118px,11vw,148px);height:auto;display:block}.primary-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:flex}.primary-nav a,.site-footer a{color:var(--muted);padding:10px 12px;font-size:14px;font-weight:700;text-decoration:none;transition:background .18s,color .18s}.primary-nav a:hover,.primary-nav a:focus-visible,.primary-nav a[aria-current=page],.site-footer a:hover,.site-footer a:focus-visible{background:var(--mist);color:var(--ink)}.hero-section{grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);min-height:calc(100svh - 104px);display:grid}.hero-copy{padding:clamp(64px, 9vw, 132px) var(--page-gutter);align-content:center;gap:24px;display:grid}.hero-copy p{max-width:660px}.lead{color:var(--ink);font-size:clamp(19px,1.7vw,24px);line-height:1.35}.button-row{flex-wrap:wrap;gap:12px;margin-top:12px;display:flex}.button{text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;min-height:46px;padding:0 20px;font-size:14px;font-weight:800;text-decoration:none;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.button-primary{background:var(--copper);color:var(--ink)}.button-primary:hover,.button-primary:focus-visible{background:var(--ink);color:var(--paper)}.button-secondary{border-color:var(--border-strong);color:var(--ink)}.button-secondary:hover,.button-secondary:focus-visible{background:var(--mist)}.hero-media,.about-media{background:var(--ink);overflow:hidden}.hero-media img,.about-media img{object-fit:cover;width:100%;height:100%;display:block}.hero-media img{min-height:calc(100svh - 104px)}.section-band{background:var(--paper);border-top:1px solid var(--border);padding:clamp(72px, 9vw, 118px) var(--page-gutter)}.section-intro{gap:14px;max-width:760px;display:grid}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px;display:grid}.service-card{border:1px solid var(--border);background:#fff;border-radius:8px;gap:18px;min-height:300px;padding:clamp(24px,3vw,34px);display:grid}.service-card span{background:var(--secondary);color:var(--paper);font-family:var(--font);justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.service-card h3,.contact-grid h3{color:var(--ink);margin:0;font-size:22px;line-height:1.2}.service-card p{align-self:end}.cta-section{background:var(--ink);color:#faf8f3c7;padding:clamp(46px, 7vw, 78px) var(--page-gutter);grid-template-columns:minmax(0,1fr) minmax(280px,.4fr);align-items:center;gap:28px;display:grid}.cta-content{grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr) auto;align-items:center;gap:28px;display:grid}.cta-section h2{color:var(--paper)}.cta-section p{color:#faf8f3c7;max-width:440px}.cta-image{aspect-ratio:4/3;object-fit:cover;opacity:.82;width:100%;height:100%;max-height:220px;display:block}.subpage-hero{background:var(--ink);color:#faf8f3c7;min-height:420px;padding:clamp(72px, 10vw, 132px) var(--page-gutter);grid-template-columns:minmax(0,1fr) minmax(280px,520px);align-items:end;gap:24px;display:grid}.subpage-hero h1{color:var(--paper)}.subpage-hero p{color:#faf8f3c7;font-size:clamp(19px,1.7vw,24px);line-height:1.4}.about-section{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);display:grid}.about-media{min-height:560px}.about-copy{padding:clamp(64px, 9vw, 122px) var(--page-gutter);align-content:center;gap:28px;display:grid}.about-copy p{color:var(--ink);font-size:clamp(19px,1.8vw,25px);line-height:1.48}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:38px;display:grid}.contact-grid>div{background:var(--mist);border-left:4px solid var(--copper);gap:12px;min-height:170px;padding:28px;display:grid}.contact-grid a{color:var(--ink);-webkit-text-decoration-color:var(--copper);text-decoration-color:var(--copper);text-underline-offset:4px;font-weight:800;text-decoration-thickness:2px}.site-footer{background:var(--ink);color:#faf8f3b3;min-height:82px;padding:0 var(--page-gutter);justify-content:space-between;align-items:center;display:flex}.footer-logo{width:clamp(104px,11vw,142px);height:auto;margin:10px 0;padding:8px 0;display:block}.site-footer a{color:var(--paper)}@media (width<=920px){.site-header{flex-direction:column;align-items:flex-start;gap:14px;padding-top:16px;padding-bottom:16px;position:static}.primary-nav{justify-content:flex-start;width:100%}.primary-nav a{padding-inline:10px}.hero-section,.about-section,.subpage-hero{grid-template-columns:1fr}.hero-section{min-height:0}.hero-media{order:-1}.hero-media img{aspect-ratio:16/10;min-height:0}.service-grid,.contact-grid,.cta-section,.cta-content{grid-template-columns:1fr}.cta-image{max-height:320px}.service-card{min-height:240px}.about-media{min-height:360px}}@media (width<=620px){.brand-logo{width:110px}.primary-nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.primary-nav a{background:var(--mist);text-align:center}.button,.button-row{width:100%}.site-footer{flex-direction:column;justify-content:center;align-items:flex-start;padding-top:22px;padding-bottom:22px}}
