@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700&display=swap";:root{--bg: #0f0a0d;--paper: #1a1116;--paper-2: #21131a;--wine: #5c0f25;--wine-2: #78152f;--gold: #d8b678;--text: #f5f1ea;--muted: #d3c7b7;--line: rgba(216, 182, 120, .3);--shadow: 0 24px 60px rgba(5, 2, 4, .45);--hero-front-ratio: 1136 / 690;font-family:Manrope,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;min-width:320px;color:var(--text);background:radial-gradient(1500px 700px at 75% -20%,rgba(120,21,47,.4),transparent 70%),radial-gradient(900px 480px at 10% 10%,rgba(216,182,120,.1),transparent 70%),linear-gradient(180deg,#0d090c,#120a0f 40%,#0c0709)}html{scroll-behavior:smooth}a{color:inherit}#app{width:100%}.site-shell{overflow:clip}.hero{position:relative;min-height:auto;padding:2rem clamp(1rem,4vw,4rem) 1.6rem;display:flex;flex-direction:column;justify-content:flex-start;gap:clamp(.8rem,2.6vh,1.6rem);border-bottom:1px solid var(--line);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#5c0f25ed,#1b070fe0),radial-gradient(800px 380px at 10% 48%,rgba(216,182,120,.16),transparent 68%),radial-gradient(700px 360px at 90% 70%,rgba(140,24,54,.28),transparent 72%),repeating-linear-gradient(100deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 16px),repeating-linear-gradient(0deg,rgba(216,182,120,.025) 0,rgba(216,182,120,.025) 2px,transparent 2px,transparent 28px);z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(500px 240px at 78% 22%,rgba(216,182,120,.14),transparent 75%),radial-gradient(560px 260px at 72% 84%,rgba(216,182,120,.08),transparent 75%);mix-blend-mode:screen;z-index:-1;pointer-events:none}.top-nav{display:flex;justify-content:flex-end;gap:clamp(1rem,3vw,2rem);font-size:.95rem;text-transform:uppercase;letter-spacing:.08em}.top-nav a{position:relative;text-decoration:none;color:var(--muted);transition:color .22s ease}.top-nav a:hover{color:var(--gold)}.top-nav a:after{content:"";position:absolute;left:0;bottom:-.25rem;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.top-nav a:hover:after{transform:scaleX(1)}.top-nav a:active{transform:translateY(1px)}.hero-content{max-width:720px;animation:rise .85s ease both}.hero-main{min-height:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.75fr);align-items:start;gap:clamp(1.2rem,5vw,3.2rem);padding-top:clamp(.4rem,2vh,1.4rem)}.brand-label{margin:0 0 .8rem;display:inline-block;padding:1.05rem 1.4rem;min-width:min(82vw,560px);text-align:center;font-family:Cormorant Garamond,serif;letter-spacing:.08em;font-size:clamp(1.2rem,3vw,2.1rem);color:#f7e9cc;border-radius:14px;border:1px solid rgba(216,182,120,.35);box-shadow:0 18px 44px #08030559;background:linear-gradient(130deg,#6b102adb,#3b0a19e6)}.eyebrow,.kicker{color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;margin:0 0 1rem}h1,h2,h3{font-family:Cormorant Garamond,serif;margin:0}h1{font-size:clamp(2.8rem,7vw,5.6rem);line-height:.95;margin-bottom:1.2rem}.subtitle{margin:0;max-width:620px;font-size:clamp(1.05rem,2.5vw,1.35rem);color:var(--muted)}.cta{margin-top:2rem;display:inline-block;text-decoration:none;background:linear-gradient(135deg,var(--gold),#f3ddb6);color:#2f1808;padding:.85rem 1.3rem;border-radius:999px;font-weight:700;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:0 10px 24px #d8b67833}.cta:hover{transform:translateY(-1px);box-shadow:0 12px 28px #d8b67852;filter:brightness(1.05)}.cta:active{transform:translateY(1px) scale(.995)}.hero-side-panel{width:min(100%,624px);justify-self:start;aspect-ratio:var(--hero-front-ratio);border-radius:18px;overflow:hidden;border:1px solid rgba(216,182,120,.4);box-shadow:0 24px 52px #0a02067a;background:radial-gradient(260px 160px at 25% 25%,rgba(216,182,120,.15),transparent 75%),linear-gradient(130deg,#6b102adb,#3b0a19e6);transform:translate(-8%)}.hero-side-image{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.section{width:min(1120px,92vw);margin:0 auto;padding:clamp(3.6rem,8vw,6rem) 0}.services-section{padding-top:clamp(3.4rem,8vw,5.8rem)}.announcements-section{padding-bottom:clamp(1.8rem,4vw,3.2rem)}.announcements-head{margin-bottom:.9rem}.announcements-toolbar{display:flex;justify-content:flex-end;gap:.45rem;margin-bottom:.7rem}.ann-nav-btn{width:2.15rem;height:2.15rem;border-radius:999px;border:1px solid rgba(216,182,120,.5);background:#600e236b;color:#f7e9cc;cursor:pointer;transition:filter .18s ease,transform .18s ease,opacity .18s ease}.ann-nav-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.ann-nav-btn:disabled{opacity:.45;cursor:default}.announcements-viewport{overflow:hidden}.announcements-list{--cards-per-page: 3;display:flex;gap:.9rem;transition:transform .38s cubic-bezier(.22,1,.36,1)}.announcement-card{flex:0 0 calc((100% - (.9rem * (var(--cards-per-page) - 1))) / var(--cards-per-page));background:linear-gradient(150deg,#1f1218f2,#150b10e6);border:1px solid var(--line);border-radius:1rem;padding:1rem;box-shadow:var(--shadow)}.announcement-card h3{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.55rem;margin-bottom:.55rem;font-size:1.45rem}.announcement-card p{margin:0;color:var(--muted)}.announcement-date{font-size:.88rem;margin-bottom:.45rem!important}.announcement-badge{display:inline-block;font-family:Manrope,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.22rem .5rem;border-radius:999px;color:#2d1606;background:linear-gradient(135deg,var(--gold),#f3ddb6);white-space:nowrap;flex-shrink:0}.section-head{max-width:760px;margin-bottom:2.2rem}h2{font-size:clamp(2.1rem,4.5vw,3.6rem);margin-bottom:.8rem}.section p{line-height:1.68}.accordion-list{display:grid;gap:.9rem}details{border:1px solid var(--line);border-radius:1rem;background:linear-gradient(140deg,var(--paper),var(--paper-2));overflow:hidden;box-shadow:var(--shadow);transition:border-color .26s ease,background .26s ease,transform .26s ease}details:hover{transform:translateY(-1px);border-color:#d8b67880}summary{cursor:pointer;padding:1rem 1.2rem;font-weight:700;list-style:none;transition:color .22s ease}summary::-webkit-details-marker{display:none}summary:after{content:"+";float:right;color:var(--gold);font-size:1.2rem}details[open] summary:after{content:"-"}.accordion-content{max-height:0;opacity:0;overflow:hidden;transition:max-height .46s cubic-bezier(.22,1,.36,1),opacity .3s ease}details[open] .accordion-content{max-height:420px;opacity:1}details ul{margin:0;padding:0 1.2rem 1.2rem 2.3rem;display:grid;gap:.7rem;color:var(--muted)}.split .section-head{margin-bottom:2rem}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.person-card{background:linear-gradient(150deg,#1f1218f2,#150b10e6);border:1px solid var(--line);border-radius:1rem;padding:1.1rem;box-shadow:var(--shadow);transition:transform .26s ease,border-color .26s ease}.person-card:hover{transform:translateY(-3px);border-color:#d8b6788c}.avatar{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;font-weight:700;background:linear-gradient(135deg,var(--wine-2),var(--wine));border:1px solid rgba(216,182,120,.6);margin-bottom:.7rem}.person-card h3{margin-bottom:.5rem;font-size:1.42rem}.person-card p{margin:0;color:var(--muted);font-size:.96rem}.person-role{margin:0 0 .45rem!important;color:#f0dcc0!important;font-size:.86rem!important;letter-spacing:.03em}.quote-block{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}blockquote{margin:0;font-family:Cormorant Garamond,serif;font-size:clamp(1.5rem,3.1vw,2.45rem);line-height:1.34;color:#f4e9d4}.footer{padding-top:clamp(2.8rem,6vw,4.2rem)}.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;align-items:flex-start}.footer-grid>div{padding:1rem 1rem 1.2rem;border:1px solid var(--line);border-radius:1rem;background:linear-gradient(150deg,#1f1218e0,#11090de6);box-shadow:var(--shadow)}.footer h3{margin-bottom:.55rem;font-size:1.8rem}.footer p{margin:.3rem 0;color:var(--muted)}.social-row{margin-top:.8rem;display:flex;gap:.55rem;align-items:center}.social-link{width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(216,182,120,.5);background:#5c0f255c;color:#f6ddae;text-decoration:none;transition:transform .18s ease,filter .18s ease,border-color .18s ease}.social-link svg{width:1.05rem;height:1.05rem;fill:currentcolor}.social-link:hover{transform:translateY(-1px);filter:brightness(1.08);border-color:#d8b678cc}.social-link.is-disabled{opacity:.55}.map-embed{margin:.75rem 0 .9rem;border-radius:.85rem;overflow:hidden;border:1px solid rgba(216,182,120,.35)}.map-embed iframe{width:100%;height:220px;border:0;display:block;filter:saturate(.92) contrast(1.02)}.footer a{color:#f6ddae;text-decoration:underline;text-underline-offset:4px;transition:color .18s ease}.footer a:hover{color:#ffe8bd}.hours{margin:0;padding-left:1rem;color:var(--muted);display:grid;gap:.4rem}.copyright{margin-top:1.4rem;text-align:center;color:var(--muted);font-size:.92rem;-webkit-user-select:none;user-select:none}.scroll-top-btn{position:fixed;right:clamp(.9rem,2.4vw,1.8rem);bottom:clamp(.9rem,2.8vw,1.8rem);width:3rem;height:3rem;border:1px solid rgba(216,182,120,.55);border-radius:999px;background:linear-gradient(135deg,#791230f2,#4a0b1ef2);color:#f7e9cc;font-size:1.2rem;line-height:1;cursor:pointer;z-index:30;box-shadow:0 14px 30px #06010373;opacity:0;transform:translateY(12px) scale(.92);pointer-events:none;transition:opacity .22s ease,transform .22s ease,filter .18s ease}.scroll-top-btn.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.scroll-top-btn:hover{filter:brightness(1.08)}.scroll-top-btn:active{transform:translateY(1px) scale(.97)}.admin-modal{position:fixed;inset:0;z-index:60;display:none}.admin-modal.is-open{display:grid;place-items:center}.admin-modal-backdrop{position:absolute;inset:0;background:#040203b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.admin-panel{position:relative;width:min(860px,92vw);max-height:88vh;overflow:auto;padding:1.1rem;border-radius:1rem;border:1px solid var(--line);background:linear-gradient(140deg,#1c0f15fa,#10090dfa);box-shadow:var(--shadow)}.admin-close{position:absolute;top:.65rem;right:.65rem;width:1.9rem;height:1.9rem;border:1px solid var(--line);border-radius:999px;background:#5f0f2480;color:#f7e9cc;cursor:pointer}.admin-note{margin:.25rem 0 .8rem;color:var(--muted);font-size:.9rem}.admin-error{min-height:1.2rem;margin:.4rem 0 0;color:#ffc4b8;font-size:.88rem}.admin-login-row{display:flex;gap:.45rem}.admin-login-row input,.admin-login-row button,.announcement-form input,.announcement-form textarea,.announcement-form button{font:inherit}.admin-login-row input,.announcement-form input:not([type=checkbox]),.announcement-form textarea{width:100%;border-radius:.65rem;border:1px solid var(--line);background:#3816218c;color:var(--text);padding:.58rem .72rem}.admin-login-form>input{width:100%;border-radius:.65rem;border:1px solid var(--line);background:#3816218c;color:var(--text);padding:.58rem .72rem;margin-bottom:.45rem}.admin-login-row button,.announcement-form button{border:1px solid rgba(216,182,120,.5);border-radius:.65rem;padding:.58rem .8rem;background:#600e2375;color:#f7e9cc;cursor:pointer}.announcement-form{display:grid;gap:.45rem}.team-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.team-form-row>div{display:flex;flex-direction:column}.service-open-field{justify-content:flex-end}.announcement-form label{font-size:.9rem;color:#f0dcc0}.checkbox-line{display:flex;align-items:center;gap:.45rem;width:fit-content;margin:0 0 .38rem;white-space:nowrap}.checkbox-line input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--gold);flex:0 0 auto}.admin-actions{display:flex;gap:.45rem;margin-top:.2rem}.announcement-form button.secondary{background:#1e1218cc}.admin-dashboard.is-hidden,.admin-login-form.is-hidden{display:none}.admin-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem}.admin-top-row p{margin:0;color:var(--muted)}.admin-top-actions{display:flex;gap:.45rem}.admin-top-actions .secondary{border:1px solid rgba(216,182,120,.5);border-radius:.65rem;padding:.45rem .7rem;background:#1e1218cc;color:#f7e9cc;cursor:pointer}.admin-list-wrap{margin-top:1rem}.admin-list-wrap h4{margin:0 0 .5rem;font-family:Cormorant Garamond,serif;font-size:1.4rem}.admin-announcements{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.admin-announcements li{display:flex;justify-content:space-between;gap:.8rem;border:1px solid var(--line);border-radius:.75rem;padding:.65rem;background:#2c141e8c}.admin-announcements p{margin:.18rem 0 0;color:var(--muted);font-size:.82rem}.admin-item-actions{display:flex;gap:.35rem}.admin-item-actions button{border:1px solid var(--line);border-radius:.5rem;background:#1f0f16b8;color:#f7e9cc;padding:.3rem .48rem;cursor:pointer}.legal-links{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}.legal-link-btn{border:1px solid rgba(216,182,120,.45);border-radius:999px;background:#35182299;color:#f4dfbd;padding:.38rem .75rem;cursor:pointer}.legal-modal{position:fixed;inset:0;z-index:70;display:none}.legal-modal.is-open{display:grid;place-items:center}.legal-modal-backdrop{position:absolute;inset:0;background:#070205b3}.legal-panel{position:relative;width:min(860px,92vw);max-height:86vh;overflow:auto;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:linear-gradient(140deg,#1c0f15fa,#10090dfa)}.legal-close{position:absolute;top:.65rem;right:.65rem;width:1.8rem;height:1.8rem;border-radius:999px;border:1px solid var(--line);background:#5f0f2480;color:#f7e9cc;cursor:pointer}.legal-content p{margin:.55rem 0;color:var(--muted)}.cookie-banner{position:fixed;left:50%;bottom:1rem;transform:translate(-50%) translateY(20px);width:min(920px,94vw);padding:.85rem 1rem;border:1px solid rgba(216,182,120,.5);border-radius:.95rem;background:linear-gradient(145deg,#240f18f7,#16090ef7);box-shadow:0 18px 40px #05010373;z-index:80;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.cookie-banner.is-open{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.cookie-banner p{margin:0 0 .65rem;color:var(--muted)}.cookie-actions{display:flex;justify-content:flex-end;gap:.45rem}.cookie-btn{border:1px solid rgba(216,182,120,.6);border-radius:999px;background:linear-gradient(135deg,var(--gold),#f3ddb6);color:#2d1606;padding:.42rem .86rem;font-weight:700;cursor:pointer}.cookie-btn.secondary{background:#351822b8;color:#f4dfbd}.inline-legal-btn{border:0;background:transparent;color:#f4dfbd;text-decoration:underline;cursor:pointer;padding:0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .68s ease,transform .68s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(max-width:980px){.hero-main{grid-template-columns:1fr;align-items:start;min-height:auto;gap:1.2rem}.hero-side-panel{justify-self:start;width:min(72vw,432px);transform:none}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.announcements-list{--cards-per-page: 1}.footer-grid{grid-template-columns:1fr}.hero{gap:1rem}}@media(max-width:700px){.hero{min-height:auto;padding-top:1.2rem;padding-bottom:1.2rem}.top-nav{justify-content:center;flex-wrap:wrap;gap:.7rem 1rem;font-size:.75rem}.team-grid{grid-template-columns:1fr}.brand-label{max-width:100%;min-width:100%}.hero-side-panel{width:min(88vw,384px);aspect-ratio:var(--hero-front-ratio)}blockquote{font-size:1.45rem}.map-embed iframe{height:190px}.scroll-top-btn{width:2.75rem;height:2.75rem;font-size:1.05rem}.cookie-actions{justify-content:flex-start}.team-form-row{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
