:root{--ink: #191714;--ink-soft: #4f4a43;--paper: #f8f5ef;--paper-strong: #ffffff;--taupe: #b9aa99;--taupe-deep: #746554;--navy: #172235;--navy-soft: #22314a;--line: rgba(25, 23, 20, .14);--gold: #d8b873;--shadow: 0 24px 80px rgba(20, 22, 25, .18);--radius: 12px;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}html.menu-open,body.menu-open{overflow:hidden}body{margin:0;color:var(--ink);background:var(--paper);font-family:Manrope,system-ui,sans-serif;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin:0 auto}.skip-link{position:fixed;left:12px;top:12px;z-index:1000;transform:translateY(-140%);background:var(--ink);color:#fff;padding:10px 14px;border-radius:6px}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:100;background:#f8f5eff0;backdrop-filter:blur(18px);border-bottom:1px solid rgba(25,23,20,.1)}.header-inner{width:min(1240px,calc(100% - 36px));min-height:82px;margin:0 auto;display:flex;align-items:center;gap:26px}.brand{display:inline-flex;align-items:center;gap:12px;flex:0 0 auto;min-width:0}.brand-logo{width:auto;height:52px;max-width:34px;object-fit:contain;flex:0 0 auto}.brand-copy{display:grid;line-height:1.05;min-width:0}.brand-copy strong{font-weight:800;font-size:15px;letter-spacing:.01em}.brand-copy small{color:var(--ink-soft);font-size:12px;margin-top:4px}.desktop-nav{margin-left:auto;display:flex;gap:24px;align-items:center}.desktop-nav a{font-size:14px;font-weight:700;white-space:nowrap;color:#191714b8}.desktop-nav a:hover{color:var(--ink)}.header-phone{font-weight:800;font-size:14px;white-space:nowrap;border-left:1px solid var(--line);padding-left:22px}.menu-toggle{display:none;margin-left:auto;width:46px;height:42px;border:0;background:transparent;position:relative;cursor:pointer}.menu-toggle span{display:block;height:2px;width:26px;background:var(--ink);margin:6px auto;transition:transform .25s ease,opacity .25s ease}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:90;background:var(--navy);color:#fff;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .25s ease,visibility .25s ease;padding:106px 24px 32px}.mobile-menu[aria-hidden=false]{visibility:visible;opacity:1;pointer-events:auto}.mobile-menu-panel{display:grid;gap:8px;width:min(460px,100%);margin:0 auto}.mobile-menu a{font-family:Fraunces,serif;font-size:clamp(31px,9vw,54px);line-height:1;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16)}.mobile-menu .mobile-call{font-family:Manrope,sans-serif;font-size:16px;display:inline-flex;justify-content:center;margin-top:18px;padding:15px 18px;background:var(--gold);color:var(--ink);border:0;border-radius:8px;font-weight:800}.section-dark{background:var(--navy);color:#fffaf0}.section-light{background:var(--paper-strong)}.section-paper{background:var(--paper)}.eyebrow{margin:0 0 14px;color:var(--taupe-deep);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.18em}.section-dark .eyebrow{color:var(--gold)}h1,h2,h3{font-family:Fraunces,Georgia,serif;margin:0;letter-spacing:-.045em;line-height:.98}h1{font-size:clamp(40px,5vw,62px);max-width:620px}h2{font-size:clamp(36px,5vw,64px)}h3{font-size:29px}p{margin:0}.hero{min-height:calc(100svh - 82px);display:grid;align-items:center;padding:72px 0;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.055) 0 1px,transparent 1px 46px),radial-gradient(circle at 72% 82%,rgba(216,184,115,.24),transparent 38%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,.9fr);gap:60px;align-items:center;position:relative;z-index:1}.hero-copy{min-width:0}.hero-lead{margin-top:28px;color:#fffaf0c7;font-size:clamp(17px,2vw,21px);max-width:660px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:8px;font-weight:800;border:1px solid transparent;transition:transform .25s ease,background .25s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:var(--ink)}.btn-secondary{border-color:#ffffff3d;color:#fffaf0}.btn-secondary.light{border-color:var(--line);color:var(--ink)}.hero-proof{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.hero-proof span{padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;border-radius:9px;color:#fffaf0d1}.hero-proof strong{color:#fff}.hero-visual{position:relative;align-self:stretch;min-height:560px}.hero-visual img{height:100%;min-height:560px;object-fit:cover;border-radius:13px;box-shadow:var(--shadow)}.hero-card{position:absolute;left:-28px;bottom:34px;width:min(280px,80%);padding:22px;background:#f8f5eff0;color:var(--ink);border-radius:11px;box-shadow:0 18px 60px #00000038}.hero-card span{display:block;text-transform:uppercase;color:var(--taupe-deep);font-size:11px;font-weight:800;letter-spacing:.16em;margin-bottom:6px}.hero-card strong{font-family:Fraunces,serif;font-size:26px;line-height:1.02}.trust-strip{background:var(--ink);color:var(--paper)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.trust-grid span{padding:20px 10px;border-right:1px solid rgba(255,255,255,.12);font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:13px}.trust-grid span:last-child{border-right:0}.intro,.services,.method,.about,.gallery,.region,.contact{padding:100px 0}.intro-grid,.region-grid{display:grid;grid-template-columns:.9fr 1fr;gap:58px;align-items:end}.intro-grid>p,.region-grid>p,.section-heading>p,.about-copy p,.method-copy p,.contact-copy p{color:var(--ink-soft);font-size:18px}.section-dark .region-grid>p,.section-dark .method-copy p{color:#fffaf0b8}.section-heading{display:grid;gap:18px;max-width:780px;margin-bottom:44px}.split-heading{max-width:none;grid-template-columns:1fr minmax(260px,430px);align-items:end}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.service-card{min-width:0;background:var(--paper-strong);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 18px 50px #1917140f}.service-card{display:grid;grid-template-columns:minmax(190px,.72fr) 1fr}.service-card img{aspect-ratio:auto;height:100%;min-height:280px;object-fit:cover}.service-body{padding:23px;display:grid;gap:14px}.service-body h3{font-size:clamp(25px,2.2vw,34px);line-height:1.02}.service-body p{color:var(--ink-soft);font-size:15px}.service-body a{font-weight:800;color:var(--navy)}.method-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:66px;align-items:start}.method-steps{display:grid;gap:0;border-top:1px solid rgba(255,255,255,.18)}.method-steps article{min-width:0;display:grid;grid-template-columns:56px minmax(190px,.42fr) minmax(0,1fr);column-gap:34px;row-gap:10px;align-items:baseline;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.18)}.method-steps span{color:var(--gold);font-weight:800;font-size:13px;letter-spacing:.16em}.method-steps h3{font-size:clamp(26px,3vw,40px)}.method-steps p{color:#fffaf0bd;font-size:16px}.about-grid{display:grid;grid-template-columns:minmax(280px,.72fr) 1fr;gap:64px;align-items:center}.portrait-card{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:13px;overflow:hidden;padding:12px;box-shadow:var(--shadow)}.portrait-card img{border-radius:8px;height:min(68vw,680px);object-fit:cover;object-position:center 45%}.about-copy{display:grid;gap:22px}.about-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.about-badges span{border:1px solid var(--line);background:var(--paper);padding:10px 12px;border-radius:8px;font-weight:800;font-size:13px}.gallery-rail{width:min(1160px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gallery-rail figure{margin:0;border-radius:12px;overflow:hidden;background:#d8d0c4;border:1px solid var(--line);height:300px}.gallery-rail img{width:100%;height:100%;object-fit:cover}.contact-panel{display:grid;grid-template-columns:1fr 420px;gap:28px;padding:42px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 20px 70px #19171414}.contact-copy{display:grid;gap:20px;align-content:center}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.contact-details{background:var(--navy);color:#fff;border-radius:12px;padding:28px;display:grid;gap:20px;min-width:0}.contact-details div{display:grid;gap:4px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.14);min-width:0}.contact-details span{color:var(--gold);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.14em}.contact-details a,.contact-details p{color:#fffaf0;overflow-wrap:anywhere}.route-link{display:inline-flex;justify-content:center;padding:13px 15px;border-radius:8px;background:#ffffff1a;font-weight:800;text-align:center}.site-footer{padding:34px 0;background:var(--ink);color:#fffaf0d1}.footer-grid{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-grid strong{color:#fff}.footer-grid p{margin-top:4px;font-size:14px}.footer-grid nav{display:flex;gap:18px;flex-wrap:wrap;font-weight:700}.reveal{animation:rise .8s ease both}.delay-1{animation-delay:.14s}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1120px){.desktop-nav,.header-phone{display:none}.menu-toggle{display:block}.hero-grid,.intro-grid,.region-grid,.method-grid,.about-grid,.contact-panel{grid-template-columns:1fr}.hero-visual,.hero-visual img{min-height:460px}.hero-card{left:14px;right:14px;width:auto}.service-grid{grid-template-columns:1fr}.service-card{grid-template-columns:minmax(190px,.62fr) 1fr}.method-steps article{grid-template-columns:48px minmax(0,1fr);gap:16px}.method-steps article p{grid-column:2}.split-heading{grid-template-columns:1fr}.gallery-rail{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100% - 28px,1160px)}}@media(max-width:760px){.container{width:min(100% - 28px,1160px)}.header-inner{width:min(100% - 24px,1240px);min-height:72px;gap:12px}.brand-logo{height:46px;max-width:30px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:11px}.hero{min-height:100svh;display:flex;align-items:flex-end;padding:104px 0 34px;background-image:linear-gradient(180deg,#1722352e,#17223557 36%,#172235e6),linear-gradient(90deg,#172235b8,#1722351f 62%),url(/selected/012-80500044.jpg);background-size:cover;background-position:center}.hero:before{display:none}.hero-grid{width:100%;display:block;position:relative;z-index:1}.hero-copy{width:100%;max-width:calc(100vw - 28px);min-width:0}.hero-visual{display:none}h1{max-width:min(660px,100%);font-size:clamp(38px,11.2vw,54px);line-height:.94;letter-spacing:-.045em;overflow-wrap:anywhere;hyphens:auto}h2{font-size:clamp(34px,10vw,48px);overflow-wrap:anywhere;hyphens:auto}.hero-lead{max-width:min(640px,100%);margin-top:22px;font-size:clamp(16px,4.4vw,19px);line-height:1.55;overflow-wrap:anywhere;hyphens:auto}.hero-actions,.contact-actions{flex-direction:column;align-items:stretch}.hero-actions{margin-top:26px}.btn{width:100%;white-space:normal;text-align:center}.hero-proof{display:grid;grid-template-columns:1fr;margin-top:28px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid span:nth-child(2){border-right:0}.intro,.services,.method,.about,.gallery,.region,.contact{padding:72px 0}.service-grid,.service-card{grid-template-columns:1fr}.service-card img{aspect-ratio:1.55}.portrait-card img{height:430px;object-position:center 72%}.contact-panel,.contact-details{padding:22px}.method-steps article{grid-template-columns:1fr;gap:8px;padding:22px 0}.method-steps article p{grid-column:auto}.footer-grid{display:grid}.gallery-rail{grid-template-columns:1fr}}@media(max-width:430px){.container{width:min(100% - 24px,1160px)}.brand-copy small{display:none}.mobile-menu{padding:92px 20px 28px}.mobile-menu a{font-size:clamp(30px,12vw,42px)}.hero{padding:96px 0 30px}.hero-copy{max-width:calc(100vw - 24px)}h1{font-size:clamp(36px,10.6vw,46px)}.gallery-rail{grid-auto-columns:minmax(252px,82vw)}}
