
:root{
  --ink:#171819; --paper:#f5f1e9; --paper-2:#ece5d9; --white:#fffdfa;
  --wine:#742e34; --wine-dark:#542027; --gold:#c7a066; --sage:#819286;
  --muted:#696a68; --line:rgba(23,24,25,.14); --shadow:0 18px 50px rgba(30,24,20,.12);
  --radius:22px; --radius-sm:14px; --max:1180px; --nav-h:76px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.62;overflow-x:hidden}
a{color:inherit;text-decoration:none} img,svg{max-width:100%;display:block} button,input,select,textarea{font:inherit} button{cursor:pointer}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:16px;top:16px;z-index:9999;background:#fff;padding:10px 14px;border-radius:10px}
.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.eyebrow{font-size:.74rem;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:var(--wine)}
.display,.section-title,h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;letter-spacing:-.025em}.display{font-size:clamp(2.7rem,6vw,5.7rem);margin:.2rem 0 1rem}.section-title{font-size:clamp(2rem,4vw,3.6rem);margin:.3rem 0 1rem}.lead{font-size:clamp(1.05rem,1.7vw,1.28rem);max-width:740px;color:#464744}.muted{color:var(--muted)}
.topbar{background:var(--ink);color:#fff;font-size:.82rem}.topbar .container{display:flex;justify-content:space-between;gap:18px;padding:8px 0;align-items:center}.topbar a{opacity:.88}.topbar a:hover{opacity:1}.topbar .right{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.site-header{position:sticky;top:0;z-index:80;background:rgba(245,241,233,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-shell{height:var(--nav-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px}.brand{font-family:Georgia,serif;font-weight:700;font-size:1.22rem;letter-spacing:.03em;display:inline-flex;align-items:center;gap:11px}.brand-mark{width:38px;height:38px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:.9rem}.brand small{display:block;font-family:Inter,system-ui,sans-serif;font-weight:700;font-size:.63rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:2px}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:7px}.nav-link,.drop-trigger{border:0;background:transparent;padding:12px 11px;border-radius:999px;font-weight:720;font-size:.9rem}.nav-link:hover,.nav-link:focus-visible,.drop-trigger:hover,.drop-trigger:focus-visible{background:rgba(116,46,52,.08);outline:none}.nav-right{display:flex;justify-content:flex-end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:12px 18px;border:1px solid var(--ink);font-weight:800;font-size:.9rem;transition:.2s ease}.btn:hover{transform:translateY(-1px)}.btn-dark{background:var(--ink);color:#fff}.btn-wine{background:var(--wine);color:#fff;border-color:var(--wine)}.btn-light{background:var(--white)}
.dropdown{position:relative}.dropdown-panel{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%) translateY(-4px);width:760px;max-width:min(92vw,760px);background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:18px;opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease}.dropdown::after{content:"";position:absolute;left:0;right:0;height:14px;top:100%}.dropdown.open .dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.drop-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.drop-item{padding:13px;border-radius:13px;border:1px solid transparent}.drop-item:hover,.drop-item:focus-visible{background:var(--paper);border-color:var(--line);outline:none}.drop-item strong{display:block}.drop-item span{font-size:.78rem;color:var(--muted)}
.mobile-toggle,.mobile-nav{display:none}.mobile-toggle{justify-self:end;border:1px solid var(--line);background:var(--white);border-radius:12px;width:44px;height:44px}.mobile-nav{position:fixed;inset:calc(var(--nav-h) + 34px) 12px auto 12px;z-index:79;background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:12px;max-height:calc(100vh - 130px);overflow:auto}.mobile-nav.open{display:block}.mobile-nav a,.mobile-nav button{display:flex;width:100%;justify-content:space-between;align-items:center;padding:14px;border:0;background:none;border-radius:12px;font-weight:800}.mobile-nav a:hover,.mobile-nav button:hover{background:var(--paper)}.mobile-sub{display:none;padding:4px 8px 8px 18px}.mobile-sub.open{display:block}.mobile-sub a{font-weight:650;color:#464744;padding:10px 12px}
.hero{position:relative;overflow:hidden;padding:92px 0 84px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 84% 12%,rgba(199,160,102,.19),transparent 28%),linear-gradient(135deg,#f7f2e8 0%,#eee5d8 100%)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:58px;align-items:center}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.proof-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.proof-chip{background:rgba(255,253,250,.7);border:1px solid var(--line);padding:10px 13px;border-radius:999px;font-size:.82rem;font-weight:750}.hero-art{min-height:500px;display:grid;place-items:center;position:relative}.legal-card{width:min(100%,490px);background:var(--ink);color:#fff;border-radius:32px;padding:34px;box-shadow:0 40px 80px rgba(23,24,25,.23);position:relative;overflow:hidden}.legal-card:before{content:"";position:absolute;inset:-70px -90px auto auto;width:250px;height:250px;border-radius:50%;border:1px solid rgba(255,255,255,.18)}.legal-card:after{content:"";position:absolute;left:34px;right:34px;bottom:34px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}.legal-monogram{font-family:Georgia,serif;font-size:7rem;line-height:.8;color:var(--gold);opacity:.96}.legal-card h2{font-size:2rem;margin:50px 0 12px}.legal-card p{color:rgba(255,255,255,.72);max-width:390px}.pillar-lines{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0 52px}.pillar-lines span{height:105px;border:1px solid rgba(255,255,255,.18);border-top:3px solid var(--gold);border-radius:8px 8px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}
.section{padding:86px 0}.section-tight{padding:58px 0}.section-dark{background:var(--ink);color:#fff}.section-wine{background:var(--wine-dark);color:#fff}.section-white{background:var(--white)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px}.section-head .lead{max-width:600px}
.finder{background:var(--white);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.finder-top{display:grid;grid-template-columns:1fr auto;gap:12px}.search-input{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:17px 18px;font-size:1rem;outline:none}.search-input:focus{border-color:var(--wine);box-shadow:0 0 0 3px rgba(116,46,52,.09)}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.chip{border:1px solid var(--line);background:var(--paper);padding:9px 13px;border-radius:999px;font-weight:750;font-size:.8rem}.chip.active,.chip:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.result-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:19px;display:flex;flex-direction:column;min-height:210px}.result-card .tag{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--wine);font-weight:850}.result-card h3{font-size:1.35rem;margin:8px 0 8px}.result-card p{font-size:.9rem;color:var(--muted);margin:0 0 18px}.result-card .actions{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}.text-link{font-weight:850;color:var(--wine);font-size:.86rem}.no-results{display:none;padding:26px;text-align:center;color:var(--muted)}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px;min-height:240px;position:relative;overflow:hidden}.info-card:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:var(--wine)}.info-card .num{font-family:Georgia,serif;font-size:2.4rem;color:var(--gold)}.info-card h3{font-size:1.55rem;margin:.5rem 0}.info-card p{color:var(--muted)}
.journey{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.16);border-radius:24px;overflow:hidden}.step{background:var(--ink);padding:28px}.step .n{font-family:Georgia,serif;color:var(--gold);font-size:2.1rem}.step h3{margin:.8rem 0}.step p{color:rgba(255,255,255,.66);font-size:.9rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center}.quote-card{background:var(--wine);color:#fff;border-radius:28px;padding:34px}.quote-card blockquote{font-family:Georgia,serif;font-size:1.65rem;line-height:1.3;margin:0 0 18px}.quote-card small{color:rgba(255,255,255,.7)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{padding:22px;border-top:1px solid var(--line)}.stat strong{font-family:Georgia,serif;font-size:2rem;display:block}.stat span{color:var(--muted);font-size:.88rem}
.page-hero{padding:72px 0 54px;background:linear-gradient(135deg,#f7f2e8,#eee4d5);border-bottom:1px solid var(--line)}.page-hero .display{font-size:clamp(2.8rem,5vw,4.9rem);max-width:850px}.breadcrumbs{font-size:.78rem;color:var(--muted);margin-bottom:18px}.breadcrumbs a{font-weight:750}.service-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:40px}.content-card{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:30px}.content-card h2{font-size:2rem;margin:0 0 12px}.content-card h3{font-size:1.3rem;margin:28px 0 8px}.content-card ul{padding-left:20px}.side-card{background:var(--ink);color:#fff;border-radius:24px;padding:26px;position:sticky;top:120px;align-self:start}.side-card h3{font-size:1.5rem;margin-top:0}.side-card p{color:rgba(255,255,255,.68)}
.timeline{display:grid;gap:16px}.timeline-item{display:grid;grid-template-columns:120px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-item strong{font-family:Georgia,serif;color:var(--wine);font-size:1.25rem}.timeline-item p{margin:0;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:30px}.contact-panel{background:var(--ink);color:#fff;border-radius:28px;padding:30px}.contact-panel p{color:rgba(255,255,255,.7)}.contact-list{display:grid;gap:12px;margin-top:24px}.contact-list a,.contact-list div{padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:14px}.form-card{background:var(--white);border:1px solid var(--line);border-radius:28px;padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800;font-size:.84rem}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:#fff;outline:none}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--wine);box-shadow:0 0 0 3px rgba(116,46,52,.08)}.form-note{font-size:.77rem;color:var(--muted);margin:12px 0}.status{margin-top:14px;font-size:.85rem;font-weight:700}
.map-box{border:1px solid var(--line);border-radius:24px;overflow:hidden;min-height:320px;background:linear-gradient(135deg,#e9e1d5,#d8cabc);position:relative}.map-box:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,rgba(23,24,25,.06) 50%,transparent 51%),linear-gradient(transparent 49%,rgba(23,24,25,.06) 50%,transparent 51%);background-size:46px 46px}.map-pin{position:absolute;left:52%;top:48%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50% 50% 50% 0;background:var(--wine);transform:translate(-50%,-50%) rotate(-45deg);box-shadow:0 14px 28px rgba(116,46,52,.3)}.map-pin:after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;left:21px;top:21px}.map-label{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);background:var(--white);padding:12px 15px;border-radius:12px;box-shadow:var(--shadow);white-space:nowrap;font-weight:800;font-size:.85rem}
.notice{padding:16px 18px;border-radius:14px;background:#f6ead8;border:1px solid rgba(199,160,102,.45);font-size:.88rem}.legal-copy{max-width:820px}.legal-copy h2{margin-top:36px}.legal-copy p,.legal-copy li{color:#4e504f}
footer{background:#121314;color:#fff;padding:58px 0 28px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr 1fr;gap:28px}.footer-brand p{color:rgba(255,255,255,.62);max-width:360px}.footer-col h4{font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}.footer-col a{display:block;color:rgba(255,255,255,.7);padding:5px 0;font-size:.88rem}.footer-bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding-top:18px;color:rgba(255,255,255,.48);font-size:.76rem}
.reveal{opacity:0;transform:translateY(12px);transition:.55s ease}.reveal.in{opacity:1;transform:none}
@media(max-width:1120px){.desktop-nav,.nav-right{display:none}.nav-shell{grid-template-columns:1fr auto}.mobile-toggle{display:block}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:auto}.legal-card{margin-top:8px}.results-grid{grid-template-columns:1fr 1fr}.card-grid{grid-template-columns:1fr 1fr}.journey{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.service-layout{grid-template-columns:1fr}.side-card{position:static}.contact-grid{grid-template-columns:1fr}.topbar .right span{display:none}}
@media(max-width:720px){:root{--nav-h:68px}.container{width:min(calc(100% - 28px),var(--max))}.topbar .container{justify-content:center}.topbar .right{display:none}.hero{padding:64px 0 58px}.display{font-size:clamp(2.5rem,14vw,4rem)}.hero-grid{gap:28px}.legal-card{padding:26px;border-radius:24px}.legal-monogram{font-size:5.2rem}.legal-card h2{margin-top:34px}.pillar-lines{margin-bottom:38px}.section{padding:64px 0}.section-head{display:block}.finder{padding:19px;border-radius:22px}.finder-top{grid-template-columns:1fr}.results-grid,.card-grid,.stats{grid-template-columns:1fr}.journey{grid-template-columns:1fr}.split{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:4px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.brand small{display:none}.brand{font-size:1.05rem}.brand-mark{width:34px;height:34px}.mobile-nav{inset:102px 10px auto 10px}.hero-actions .btn{width:100%}.proof-row{gap:8px}.proof-chip{font-size:.75rem}.page-hero{padding:52px 0 42px}.content-card{padding:22px}.map-label{white-space:normal;width:82%;text-align:center}.contact-panel,.form-card{padding:22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
