    :root{--ink:#10231d;--deep:#0b1915;--gold:#d0a345;--paper:#f7f6f1;--muted:#53655d;--line:#d8dbd2;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper)}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}img{max-width:100%;display:block}
    .wrap{width:min(1220px,calc(100% - 64px));margin:auto}.topbar{background:var(--deep);color:#fff}.top-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:16px}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;white-space:nowrap;min-width:0}.header-logo{width:76px;height:76px;object-fit:contain;flex:none}.wordmark strong{font-family:Georgia,serif;font-weight:500;letter-spacing:.12em;font-size:19px}.wordmark small{display:block;color:var(--gold);letter-spacing:.13em;font-size:10px;margin-top:4px}.nav{display:flex;align-items:center;gap:34px;flex:none}.nav a{text-decoration:none;font-size:14px}.nav a:hover{color:var(--gold)}.nav .nav-contact{border:1px solid rgba(208,163,69,.65);padding:11px 19px;color:var(--gold);white-space:nowrap}
    .hero{background:var(--deep);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);min-height:630px}.hero-copy{padding:clamp(65px,8vw,125px) clamp(32px,6vw,100px) 74px max(32px,calc((100vw - 1220px)/2));display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:700}.intro .eyebrow,.services .eyebrow,.build .eyebrow,.areas .eyebrow,.reviews .eyebrow{color:#855f21}.hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.12;letter-spacing:-.035em;font-size:clamp(46px,5.2vw,78px);margin:22px 0 24px}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{font-size:18px;line-height:1.7;color:#d9e1db;max-width:520px;margin:0 0 34px}.actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;font-size:14px;font-weight:700;letter-spacing:.04em;text-decoration:none;border:1px solid var(--gold);transition:background .2s,color .2s}.button.primary{background:var(--gold);color:var(--deep)}.button.primary:hover{background:#e3b965}.button.secondary{color:var(--gold)}.button.secondary:hover{background:rgba(208,163,69,.13)}.copy-phone{border:0;background:none;color:var(--gold);text-decoration:underline;text-underline-offset:4px;cursor:pointer;font:inherit;font-size:14px;padding:0}.copy-line{margin-top:18px;min-height:24px;font-size:14px;color:#d9e1db}.copy-line output{margin-left:10px;color:var(--gold)}.hero-image{position:relative;overflow:hidden;background:#7b817d}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,25,21,.15),transparent 40%)}
    .contact-dual{width:min(100%,370px);background:var(--gold);color:var(--deep);border:1px solid var(--gold);text-align:center}.contact-dual .contact-number{display:block;padding:8px 10px 2px;font-size:13px;font-weight:600;letter-spacing:.03em}.contact-dual .contact-actions{display:grid;grid-template-columns:1fr 1fr}.contact-dual a{display:block;padding:7px 12px 11px;color:var(--deep);font-size:17px;font-weight:700;text-decoration:none;letter-spacing:.05em}.contact-dual a+a{border-left:1px solid rgba(11,25,21,.35)}.contact-dual a:hover,.contact-dual a:focus-visible{background:#e3b965}
    .intro{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(40px,8vw,120px);padding:105px 0;align-items:center}.intro h2,.section-heading h2,.contact h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(35px,4vw,54px);line-height:1.16;letter-spacing:-.03em;margin:17px 0}.intro-copy p{color:#394b43;font-size:17px;line-height:1.8;margin:0 0 17px}.brand-card{background:var(--ink);padding:24px;box-shadow:20px 20px 0 #e8e8df;max-width:420px;justify-self:center}.brand-card img{width:100%;height:auto;object-fit:contain}.brand-caption{color:#cbd5cc;text-align:center;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:18px 0 2px}
    .services{background:#e9ece7;padding:90px 0 100px}.section-heading{max-width:660px;margin-bottom:40px}.section-heading p{font-size:17px;line-height:1.7;color:#485a50}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--paper);padding:32px;min-height:225px;border-top:3px solid var(--gold)}.card .num{font-size:12px;letter-spacing:.16em;color:#728176}.card h3{font-family:'Playfair Display',Georgia,serif;font-size:27px;font-weight:500;margin:28px 0 12px}.card p{font-size:15px;line-height:1.65;color:#4a5a51;margin:0}.build{background:#dfe7df;padding:82px 0}.build-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:center}.build h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(35px,4vw,54px);line-height:1.16;letter-spacing:-.03em;margin:16px 0}.build p{font-size:17px;line-height:1.75;color:#35483e;margin:0 0 17px}.build .license{font-size:14px;color:#43594c}.build-link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--ink);color:#fff;text-decoration:none;padding:0 22px;font-size:14px;font-weight:700;margin-top:10px}.build-link:hover{background:#244334}
    .areas{padding:82px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center}.areas p{font-size:17px;line-height:1.7;color:#4a5a51}.area-list{display:flex;flex-wrap:wrap;gap:11px}.area-list span{border:1px solid var(--line);padding:12px 16px;background:#fff;font-size:14px}
    .reviews{background:#f0f1eb;padding:88px 0}.reviews-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.reviews h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(35px,4vw,54px);font-weight:500;letter-spacing:-.03em;line-height:1.16;margin:16px 0 8px}.reviews-summary{color:#495a50;font-size:15px;margin:0}.reviews-summary strong{color:var(--ink)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review{background:#fff;padding:29px 28px 25px;border-top:3px solid var(--gold);display:flex;flex-direction:column;min-height:205px}.review .stars{color:#855f21;letter-spacing:.12em;font-size:18px}.review blockquote{font-family:'Playfair Display',Georgia,serif;font-size:22px;line-height:1.4;margin:18px 0 24px}.review cite{font-style:normal;color:#617166;font-size:13px;margin-top:auto}.reviews-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);padding:14px 21px;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.reviews-link:hover{background:var(--ink);color:#fff}
    .contact{background:var(--deep);color:#fff;text-align:center;padding:92px 20px}.contact h2{margin:14px auto 16px}.contact p{color:#d2ded5;font-size:17px;line-height:1.7;max-width:510px;margin:0 auto 30px}.contact .actions{justify-content:center}.contact .direct{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:25px;font-size:14px}.contact .direct a{text-decoration-color:var(--gold);text-underline-offset:4px}
    .inquiry{width:min(100%,650px);margin:62px auto 0;padding:32px;text-align:left;border:1px solid rgba(208,163,69,.48);background:#10231d}.inquiry h3{font-family:'Playfair Display',Georgia,serif;font-size:31px;font-weight:500;margin:0 0 8px}.contact .inquiry-note{font-size:14px;line-height:1.5;color:#c6d3ca;margin:0 0 24px;max-width:none}.inquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.inquiry label{display:block;color:#e7eae3;font-size:13px;font-weight:600;margin-bottom:15px}.inquiry input,.inquiry select,.inquiry textarea{width:100%;margin-top:8px;border:1px solid #73867a;border-radius:0;background:#f8f8f4;color:var(--ink);font:inherit;font-size:16px;padding:13px 14px}.inquiry textarea{min-height:105px;resize:vertical}.inquiry input:focus,.inquiry select:focus,.inquiry textarea:focus{outline:2px solid var(--gold);outline-offset:2px}.inquiry .inquiry-send{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--gold);color:var(--deep);border:0;min-height:51px;padding:0 24px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.inquiry .inquiry-send:hover{background:#e3b965}.contact .inquiry-help{font-size:12px;color:#b9c8bd;max-width:none;margin:12px 0 0}
    footer{background:#091410;color:#aebbb2;padding:28px 0;font-size:12px}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.foot strong{color:#e3d5b5;font-weight:600}
    @media(max-width:800px){.wrap{width:min(100% - 38px,620px)}.top-inner{min-height:86px}.nav{gap:12px}.nav a:not(.nav-contact){display:none}.nav .nav-contact{padding:10px 13px}.wordmark strong{font-size:16px}.header-logo{width:60px;height:60px}.hero{display:flex;flex-direction:column}.hero-copy{padding:66px 19px 60px;width:min(100%,658px);margin:auto}.hero-image{height:340px}.intro{grid-template-columns:1fr;padding:70px 0;gap:35px}.brand-card{width:min(100% - 22px,340px);grid-row:2}.services{padding:70px 0}.cards{grid-template-columns:1fr}.card{min-height:0}.build{padding:65px 0}.build-inner{grid-template-columns:1fr;gap:12px}.areas{grid-template-columns:1fr;gap:20px;padding:65px 0}.reviews{padding:70px 0}.reviews-head{display:block}.reviews-link{margin-top:19px}.review-grid{grid-template-columns:1fr}.review{min-height:0}.contact{padding:73px 19px}.inquiry{padding:24px}.foot{display:block}.foot span{display:block;margin:5px 0}}
    @media(max-width:520px){.inquiry-grid{grid-template-columns:1fr;gap:0}.inquiry .inquiry-send{width:100%}}
    @media(max-width:390px){.wordmark{gap:8px}.wordmark strong{font-size:14px}.wordmark small{font-size:8px;letter-spacing:.06em}.header-logo{width:48px;height:48px}.nav .nav-contact{font-size:12px;padding:9px 11px}.hero h1{font-size:43px}.button{width:100%}}

    .service-hero{background:var(--deep);color:#fff;padding:90px 0 100px}.service-hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(44px,6vw,72px);line-height:1.12;letter-spacing:-.035em;max-width:860px;margin:20px 0}.service-hero p{color:#d9e1db;font-size:19px;line-height:1.75;max-width:740px}.service-hero .eyebrow{color:var(--gold)}.service-hero .button{margin-top:15px}.service-body{padding:76px 0 90px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);gap:clamp(35px,7vw,100px)}.service-body h2,.service-more h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(32px,4vw,47px);line-height:1.2;margin:0 0 20px}.service-body h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:26px;margin:28px 0 8px}.service-body p,.service-body li{font-size:17px;line-height:1.75;color:#394b43}.service-body ul{padding-left:23px}.service-aside{background:#e9ece7;padding:30px;align-self:start}.service-aside p{font-size:16px}.service-aside a{display:block;margin:12px 0;color:var(--ink);font-weight:700}.service-more{background:#e9ece7;padding:64px 0}.service-more .cards{grid-template-columns:repeat(2,1fr)}.card-link{display:inline-block;margin-top:22px;color:#775419;font-weight:700;text-underline-offset:5px}.card-link:hover{color:var(--ink)}
    @media(max-width:800px){.service-hero{padding:67px 0 76px}.service-body{grid-template-columns:1fr;padding:65px 0}.service-more .cards{grid-template-columns:1fr}}
