:root{--bg: #f6f1e8;--bg-2: #efe7d7;--fg: #2a2218;--fg-2: #5c5142;--rule: #d9ccb4;--accent: #7a5a3a;--card: #fbf7ef;--serif: "Cormorant Garamond", "Times New Roman", serif;--sans: "Inter", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--body: var(--serif);--display: var(--serif);--pad-section: 112px;--pad-x: 48px;--gap: 28px}:root[data-mode=scuro]{--bg: #17140f;--bg-2: #1f1b14;--fg: #f1ead9;--fg-2: #b6ac95;--rule: #3a3226;--card: #1c1812}:root[data-variant=moderna]{--bg: #f4f4f2;--bg-2: #ebebe7;--fg: #141414;--fg-2: #5b5b58;--rule: #d6d6d0;--accent: #3d5a3a;--card: #ffffff;--body: var(--sans);--display: var(--sans)}:root[data-variant=moderna][data-mode=scuro]{--bg: #0e0e0d;--bg-2: #161615;--fg: #ececea;--fg-2: #9a9a95;--rule: #2a2a28;--card: #151514}:root[data-density=compatto]{--pad-section: 72px;--pad-x: 36px;--gap: 20px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg)}body{font-family:var(--body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"kern","liga";transition:background .25s ease,color .25s ease}a{color:inherit;text-decoration:none}.mono{font-family:var(--mono);letter-spacing:.02em}.sans{font-family:var(--sans)}header.site{border-bottom:1px solid var(--rule);background:var(--bg);position:sticky;top:0;z-index:5}header .inner{max-width:1240px;margin:0 auto;padding:22px var(--pad-x);display:flex;align-items:baseline;gap:32px}.brand{font-family:var(--display);font-size:22px;letter-spacing:.01em}:root[data-variant=classica] .brand{font-weight:500;font-style:italic;font-size:26px;letter-spacing:.005em}:root[data-variant=moderna] .brand{font-weight:600;letter-spacing:-.01em}.brand .num{color:var(--accent)}nav.primary{margin-left:auto;display:flex;gap:28px;font-family:var(--sans);font-size:13.5px;text-transform:uppercase;letter-spacing:.14em}nav.primary button{background:none;border:0;padding:6px 0;color:var(--fg-2);cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;border-bottom:1px solid transparent;transition:color .15s ease,border-color .15s ease}nav.primary button:hover{color:var(--fg)}nav.primary button[aria-current=page]{color:var(--fg);border-bottom-color:var(--accent)}main{min-height:60vh}section{padding:var(--pad-section) var(--pad-x)}.wrap{max-width:1240px;margin:0 auto}.eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--fg-2);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:1px;background:var(--accent)}.hero .wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:end}.hero h1{font-family:var(--display);margin:22px 0 0;font-weight:400;line-height:.98;letter-spacing:-.01em}:root[data-variant=classica] .hero h1{font-size:clamp(60px,9vw,132px)}:root[data-variant=classica] .hero h1 em{font-style:italic;color:var(--accent);font-weight:500}:root[data-variant=moderna] .hero h1{font-size:clamp(56px,8.5vw,116px);font-weight:500;letter-spacing:-.035em}:root[data-variant=moderna] .hero h1 em{font-style:normal;color:var(--accent)}.hero-meta{display:grid;gap:6px;padding-bottom:10px}.hero-meta .row{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:10px 0;border-bottom:1px solid var(--rule);font-family:var(--sans);font-size:14px}.hero-meta .row:last-child{border-bottom:0}.hero-meta .k{color:var(--fg-2);text-transform:uppercase;letter-spacing:.14em;font-size:11.5px;padding-top:2px}.hero-meta .v{color:var(--fg)}.frame{margin-top:64px;border:1px solid var(--rule);background:var(--bg-2);aspect-ratio:21/8;position:relative;overflow:hidden}.frame .photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:50% 55%;filter:saturate(.9) contrast(1.02)}:root[data-mode=scuro] .frame .photo{filter:saturate(.7) contrast(.95) brightness(.75)}.frame .lbl{position:absolute;left:20px;bottom:16px;font-family:var(--mono);font-size:11px;color:var(--fg-2);background:var(--bg);padding:4px 10px;letter-spacing:.08em;text-transform:uppercase}.frame .corner{position:absolute;top:16px;right:20px;font-family:var(--mono);font-size:11px;color:var(--fg-2)}.intro .wrap{display:grid;grid-template-columns:280px 1fr;gap:80px}.intro h2{margin:14px 0 0;font-family:var(--display);font-weight:400;line-height:1.05;letter-spacing:-.01em}:root[data-variant=classica] .intro h2{font-size:44px}:root[data-variant=classica] .intro h2 em{font-style:italic;color:var(--accent)}:root[data-variant=moderna] .intro h2{font-size:38px;font-weight:500;letter-spacing:-.02em}.intro p{font-size:19px;line-height:1.6;color:var(--fg);max-width:58ch;margin:0 0 18px}:root[data-variant=moderna] .intro p{font-size:17px;line-height:1.65}.intro .side{font-family:var(--sans);font-size:13px;color:var(--fg-2);letter-spacing:.02em;border-top:1px solid var(--accent);padding-top:18px}.features{background:var(--bg-2)}.features .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}.tile{padding:36px 32px;background:var(--card);border:1px solid var(--rule);display:flex;flex-direction:column;gap:18px;min-height:220px}:root[data-variant=moderna] .tile{border-radius:2px}.tile .num{font-family:var(--mono);font-size:12px;color:var(--accent);letter-spacing:.14em}.tile h3{margin:0;font-family:var(--display);font-weight:500;font-size:26px;line-height:1.1;letter-spacing:-.005em}:root[data-variant=classica] .tile h3 em{font-style:italic;color:var(--accent)}:root[data-variant=moderna] .tile h3{font-size:22px;font-weight:600;letter-spacing:-.015em}.tile p{margin:0;font-family:var(--sans);font-size:14.5px;line-height:1.55;color:var(--fg-2)}.address .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.address h2{font-family:var(--display);font-weight:400;font-size:56px;line-height:1;margin:14px 0 22px;letter-spacing:-.01em}:root[data-variant=classica] .address h2 em{font-style:italic;color:var(--accent)}:root[data-variant=moderna] .address h2{font-weight:500;letter-spacing:-.025em;font-size:52px}.address dl{margin:24px 0 0;display:grid;grid-template-columns:140px 1fr;gap:10px 24px;font-family:var(--sans);font-size:14.5px}.address dt{color:var(--fg-2);text-transform:uppercase;letter-spacing:.14em;font-size:11.5px;padding-top:3px}.address dd{margin:0}.map{border:1px solid var(--rule);background:var(--card);aspect-ratio:4/3;position:relative;overflow:hidden}.map .photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:52% 55%;filter:saturate(.8) contrast(1.03)}:root[data-mode=scuro] .map .photo{filter:saturate(.65) contrast(.95) brightness(.72)}.map .pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--accent);pointer-events:none}.map .pin .dot{width:14px;height:14px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in oklab,var(--accent) 30%,transparent),0 0 0 10px color-mix(in oklab,var(--accent) 15%,transparent)}.map .cap{position:absolute;left:22px;bottom:18px;font-family:var(--mono);font-size:11px;color:var(--fg-2);letter-spacing:.08em;text-transform:uppercase}footer.site{border-top:1px solid var(--rule);background:var(--bg);padding:40px var(--pad-x) 30px;font-family:var(--sans);font-size:12.5px;color:var(--fg-2);letter-spacing:.04em}footer .wrap{max-width:1240px;margin:0 auto;display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap}.contact{min-height:calc(100vh - 140px);display:grid;place-items:center;padding:100px var(--pad-x) 140px}.card{width:min(620px,100%);background:var(--card);border:1px solid var(--rule);padding:64px 56px 56px;text-align:center;position:relative}:root[data-variant=moderna] .card{border-radius:2px}.card .crest{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--accent);text-transform:uppercase;margin-bottom:20px}.card h2{font-family:var(--display);font-weight:400;font-size:44px;line-height:1.05;margin:0 0 6px;letter-spacing:-.01em}:root[data-variant=classica] .card h2 em{font-style:italic;color:var(--accent)}:root[data-variant=moderna] .card h2{font-weight:500;letter-spacing:-.02em;font-size:38px}.card .role{font-family:var(--sans);font-size:12.5px;text-transform:uppercase;letter-spacing:.22em;color:var(--fg-2);margin:0 0 30px}.card .rule{width:40px;height:1px;background:var(--accent);margin:0 auto 30px}.card dl{display:grid;grid-template-columns:1fr;gap:18px;margin:0 0 28px;font-family:var(--sans)}.card dl>div{display:grid;grid-template-columns:110px 1fr;gap:18px;text-align:left;padding:12px 0;border-bottom:1px solid var(--rule)}.card dl>div:last-child{border-bottom:0}.card dt{color:var(--fg-2);font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding-top:3px}.card dd{margin:0;font-size:15.5px;color:var(--fg)}.card dd.placeholder{color:var(--fg-2);font-style:italic}:root[data-variant=moderna] .card dd.placeholder{font-style:normal}.card .foot{margin-top:22px;font-family:var(--mono);font-size:10.5px;color:var(--fg-2);letter-spacing:.18em;text-transform:uppercase}.weather-widget{position:absolute;right:20px;bottom:16px;font-family:var(--mono);font-size:11px;color:var(--fg-2);background:var(--bg);padding:4px 10px;letter-spacing:.08em;display:flex;align-items:center;gap:7px;text-transform:uppercase}.wx-icon{flex-shrink:0;color:var(--accent);display:block}.wx-sun{animation:wx-spin 12s linear infinite;transform-origin:9px 9px}.wx-partly circle,.wx-partly g{animation:wx-spin 12s linear infinite;transform-origin:7px 7px}.wx-cloud-body{animation:wx-drift 4s ease-in-out infinite alternate}.wx-cloud{animation:wx-pulse 4s ease-in-out infinite}.wx-fog-l1{animation:wx-fade 3s ease-in-out infinite}.wx-fog-l2{animation:wx-fade 3s ease-in-out infinite .8s}.wx-fog-l3{animation:wx-fade 3s ease-in-out infinite 1.6s}.wx-drop{animation:wx-fall 1.2s linear infinite;transform-origin:center top}.wx-drop-1{animation-delay:0s}.wx-drop-2{animation-delay:.4s}.wx-drop-3{animation-delay:.8s}.wx-flake{animation:wx-snow-fall 2s ease-in infinite}.wx-flake-1{animation-delay:0s}.wx-flake-2{animation-delay:.6s}.wx-flake-3{animation-delay:1.2s}.wx-bolt{animation:wx-flash 2.5s ease-in-out infinite}@keyframes wx-spin{to{transform:rotate(360deg)}}@keyframes wx-drift{0%{transform:translate(-2px)}to{transform:translate(2px)}}@keyframes wx-pulse{0%,to{opacity:1}50%{opacity:.65}}@keyframes wx-fade{0%,to{opacity:.3}50%{opacity:1}}@keyframes wx-fall{0%{opacity:1;transform:translateY(0)}80%{opacity:.6}to{opacity:0;transform:translateY(7px)}}@keyframes wx-snow-fall{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.6)}}@keyframes wx-flash{0%,90%,to{opacity:1}95%{opacity:.1}}.page-view{animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media(max-width:880px){:root{--pad-section: 80px;--pad-x: 32px}.hero .wrap,.intro .wrap,.address .wrap{grid-template-columns:1fr;gap:40px}.features .wrap{grid-template-columns:1fr}.frame{margin-top:0}.card{padding:44px 28px}}@media(max-width:600px){:root{--pad-section: 56px;--pad-x: 20px}header .inner{gap:20px;padding-top:14px;padding-bottom:14px}nav.primary{font-size:12px;letter-spacing:.08em;gap:16px}:root[data-variant=classica] .hero h1{font-size:clamp(40px,12vw,80px)}:root[data-variant=moderna] .hero h1{font-size:clamp(38px,11.5vw,80px)}.frame{aspect-ratio:3/2}.address h2{font-size:40px}:root[data-variant=moderna] .address h2{font-size:36px}.address dl{grid-template-columns:120px 1fr;gap:8px 16px}.contact{padding:48px var(--pad-x) 64px;min-height:auto}.card{padding:32px 20px 28px}.card h2{font-size:36px}:root[data-variant=moderna] .card h2{font-size:30px}.card dl>div{grid-template-columns:90px 1fr;gap:10px}.card .role{letter-spacing:.12em}}
