:root{--ink:#162127;--ink2:#233139;--paper:#f2efe7;--white:#fff;--muted:#68757a;--copper:#c46636;--line:rgba(22,33,39,.16);--max:1240px;--shadow:0 24px 70px rgba(10,20,25,.12);--radius:3px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:var(--white);padding:.8rem 1rem}.skip-link:focus{top:1rem}.shell{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.eyebrow{display:flex;align-items:center;gap:.65rem;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--copper)}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.display,h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.04;letter-spacing:-.035em}.display{font-size:clamp(3.4rem,8vw,8.2rem);margin:0}h1{font-size:clamp(3rem,6vw,6.7rem);margin:.2rem 0 1.4rem}h2{font-size:clamp(2.25rem,4.5vw,4.7rem);margin:0 0 1.3rem}h3{font-size:clamp(1.45rem,2vw,2rem);margin:.2rem 0 .7rem}p{margin:0 0 1rem}.lede{font-size:clamp(1.15rem,1.5vw,1.38rem);max-width:680px;color:#425158}.muted{color:var(--muted)}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.78rem 1.15rem;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-weight:700;letter-spacing:.02em;transition:.25s ease}.btn:hover{transform:translateY(-2px);background:var(--copper);border-color:var(--copper)}.btn-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn-outline{background:transparent;color:inherit;border-color:currentColor}.text-link{font-weight:700;border-bottom:1px solid currentColor;padding-bottom:.18rem}.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}.site-header{position:sticky;top:0;z-index:100;background:rgba(242,239,231,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:1.5rem}.brand{display:flex;align-items:center;gap:.8rem;font-weight:800;font-size:.8rem;line-height:1.15;max-width:230px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;background:var(--ink);color:var(--white);font-family:Georgia,serif;font-size:1.2rem}.nav-list{display:flex;align-items:center;gap:1.45rem;list-style:none;margin:0;padding:0}.nav-list a{font-size:.88rem;font-weight:700}.nav-list a:hover,.nav-list a[aria-current=page]{color:var(--copper)}.header-contact{display:flex;align-items:center;gap:1rem}.phone{font-weight:700;white-space:nowrap}.menu-toggle{display:none;width:48px;height:48px;border:1px solid var(--line);background:transparent;color:var(--ink)}.hero{min-height:calc(100svh - 78px);position:relative;display:grid;align-items:end;background:#1a252b;color:var(--white);overflow:hidden}.hero img{position:absolute;inset:0;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,18,22,.84) 0%,rgba(10,18,22,.49) 44%,rgba(10,18,22,.08) 78%)}.hero-content{position:relative;z-index:1;padding:clamp(5rem,10vh,9rem) 0 4rem;max-width:870px}.hero .display{max-width:850px}.hero .lede{color:rgba(255,255,255,.82);margin-top:1.3rem}.hero-meta{display:flex;gap:2rem;flex-wrap:wrap;margin-top:4rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.28);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em}.page-hero{padding:clamp(5rem,9vw,8.5rem) 0 4rem;border-bottom:1px solid var(--line)}.page-hero .lede{margin-left:auto}.crumbs{font-size:.8rem;color:var(--muted);margin-bottom:2rem}.section{padding:clamp(4.5rem,9vw,8rem) 0}.section-dark{background:var(--ink);color:var(--white)}.section-white{background:var(--white)}.section-copper{background:var(--copper);color:var(--white)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,6vw,6rem);align-items:center}.grid-5-7{display:grid;grid-template-columns:5fr 7fr;gap:clamp(2rem,5vw,5rem);align-items:center}.grid-7-5{display:grid;grid-template-columns:7fr 5fr;gap:clamp(2rem,5vw,5rem);align-items:center}.image-frame{position:relative;overflow:hidden;background:#d9d7d0}.image-frame img{height:100%;object-fit:cover;transition:transform .7s ease}.image-frame:hover img{transform:scale(1.025)}.ratio-wide{aspect-ratio:16/10}.ratio-tall{aspect-ratio:4/5}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:1.4rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid var(--line)}.service-row .num{font-family:Georgia,serif;color:var(--copper)}.service-row h3{margin:0}.service-row p{max-width:560px;margin:.4rem 0 0;color:var(--muted)}.arrow{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);transition:.2s}.service-row:hover .arrow{background:var(--copper);color:white;border-color:var(--copper);transform:translateX(4px)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.25);margin-top:3rem}.process-step{padding:2rem 1.5rem 1rem 0;border-right:1px solid rgba(255,255,255,.25)}.process-step+.process-step{padding-left:1.5rem}.process-step:last-child{border-right:0}.process-step .num{color:var(--copper);font-family:Georgia,serif;font-size:2rem}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.fact{padding:2rem;background:var(--paper)}.fact strong{display:block;font-family:Georgia,serif;font-size:1.5rem;font-weight:400;margin-bottom:.3rem}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.gallery figure{margin:0;overflow:hidden}.gallery figure:nth-child(1){grid-column:span 7}.gallery figure:nth-child(2){grid-column:span 5}.gallery figure:nth-child(3){grid-column:span 5}.gallery figure:nth-child(4){grid-column:span 7}.gallery img{height:100%;min-height:360px;object-fit:cover;transition:.5s}.gallery figure:hover img{transform:scale(1.02)}.quote-band{display:grid;grid-template-columns:1fr 2fr;gap:3rem;border-top:1px solid var(--line);padding-top:2rem}.quote-band p:last-child{font:clamp(1.7rem,3vw,3.2rem)/1.15 Georgia,serif;margin:0}.accordion{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-trigger{width:100%;display:grid;grid-template-columns:1fr auto;gap:1rem;text-align:left;align-items:center;padding:1.5rem 0;background:transparent;border:0;color:inherit;font:1.25rem/1.25 Georgia,serif}.faq-trigger span:last-child{font:1.5rem Arial}.faq-panel{display:none;padding:0 4rem 1.5rem 0;max-width:800px;color:var(--muted)}.faq-trigger[aria-expanded=true]+.faq-panel{display:block}.faq-trigger[aria-expanded=true] span:last-child{transform:rotate(45deg)}.cta-panel{position:relative;min-height:560px;display:grid;align-items:end;color:white;overflow:hidden;background:var(--ink)}.cta-panel img{position:absolute;inset:0;height:100%;object-fit:cover}.cta-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,18,22,.88),rgba(10,18,22,.08))}.cta-panel .shell{position:relative;z-index:1;padding-bottom:4rem}.contact-layout{display:grid;grid-template-columns:4fr 7fr;gap:clamp(3rem,7vw,8rem);align-items:start}.contact-card{position:sticky;top:110px}.contact-list{list-style:none;padding:0;margin:2rem 0;border-top:1px solid var(--line)}.contact-list li{padding:1rem 0;border-bottom:1px solid var(--line)}.contact-list span{display:block;color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.form{background:var(--white);padding:clamp(1.5rem,4vw,3.5rem);box-shadow:var(--shadow)}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem}.field{margin-bottom:1.2rem}.field-full{grid-column:1/-1}.field label{display:block;font-weight:700;font-size:.88rem;margin-bottom:.45rem}.field input,.field select,.field textarea{width:100%;border:1px solid #abb2b3;background:#fff;padding:.85rem;color:var(--ink);border-radius:0}.field textarea{min-height:170px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(196,102,54,.24);border-color:var(--copper)}.form-note{font-size:.85rem;color:var(--muted)}.form-status{margin-top:1rem;padding:1rem;border-left:3px solid var(--copper);background:#f8eee8;display:none}.form-status.show{display:block}.legal{max-width:850px}.legal h2{font-size:2.1rem;margin-top:3.5rem}.legal h3{font-size:1.4rem;margin-top:2rem}.legal table{width:100%;border-collapse:collapse;margin:1.5rem 0}.legal th,.legal td{text-align:left;padding:.8rem;border:1px solid var(--line);vertical-align:top}.legal th{background:#e9e5db}.site-footer{background:#10191e;color:rgba(255,255,255,.78);padding:4.5rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.25fr;gap:3rem}.site-footer h2{font-size:2.1rem;color:white}.site-footer h3{font:700 .75rem/1.2 Arial;text-transform:uppercase;letter-spacing:.14em;color:#d88658}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:.55rem 0}.footer-links a:hover{color:white}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.16);padding-top:1.3rem;margin-top:3.5rem;font-size:.78rem}.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:300;background:var(--white);box-shadow:0 18px 70px rgba(0,0,0,.28);padding:1.25rem;display:none}.cookie-banner.show{display:block}.cookie-inner{width:min(100%,1100px);margin:auto;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.cookie-actions{display:flex;gap:.6rem;flex-wrap:wrap}.cookie-modal{position:fixed;inset:0;z-index:310;display:none;place-items:center;padding:1rem;background:rgba(9,16,20,.72)}.cookie-modal.show{display:grid}.cookie-dialog{background:var(--white);width:min(100%,620px);max-height:90vh;overflow:auto;padding:2rem;box-shadow:var(--shadow)}.consent-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-top:1px solid var(--line)}.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.in{opacity:1;transform:none}.not-found{min-height:70vh;display:grid;place-items:center;text-align:center}.not-found strong{font:clamp(7rem,20vw,18rem)/.8 Georgia,serif;color:var(--copper)}@media(max-width:980px){.header-inner{grid-template-columns:1fr auto}.header-contact .phone,.header-contact .btn{display:none}.menu-toggle{display:block}.site-nav{position:fixed;inset:78px 0 auto 0;background:var(--paper);padding:2rem 20px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:.3s;visibility:hidden}.site-nav.open{transform:none;visibility:visible}.nav-list{display:grid;gap:0}.nav-list a{display:block;padding:1rem 0;border-bottom:1px solid var(--line);font-size:1.05rem}.grid-5-7,.grid-7-5{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2){border-right:0}.footer-grid{grid-template-columns:repeat(2,1fr)}.contact-layout{grid-template-columns:1fr}.contact-card{position:static}.gallery figure{grid-column:span 6!important}}@media(max-width:680px){.shell{width:min(calc(100% - 28px),var(--max))}.header-inner{min-height:70px}.site-nav{inset-block-start:70px}.hero{min-height:780px}.display{font-size:clamp(3.2rem,17vw,5.4rem)}.grid-2,.field-grid{grid-template-columns:1fr}.page-hero .lede{margin-left:0}.service-row{grid-template-columns:38px 1fr}.service-row .arrow{display:none}.process-grid{grid-template-columns:1fr}.process-step,.process-step+.process-step{padding:1.5rem 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}.facts{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery figure{grid-column:auto!important}.gallery img{min-height:280px}.quote-band{grid-template-columns:1fr;gap:1rem}.footer-grid{grid-template-columns:1fr}.cookie-inner{grid-template-columns:1fr;gap:1rem}.cookie-actions .btn{flex:1}.legal{overflow-wrap:anywhere}.legal table{display:block;overflow-x:auto}.contact-layout{gap:2.5rem}.form{padding:1.25rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
