:root{--ink:#0d1f1c;--pine:#123c34;--paper:#f3efe6;--brass:#e9b23c;--mint:#8fd1b8;--mute:#51655f}
html{scroll-behavior:smooth;scroll-padding-top:150px}
body{font-family:'Work Sans',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-size:1.05rem;line-height:1.65}
h1,h2,h3,.brand b{font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.05}
.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--pine);display:block;margin-bottom:.8rem}
a{color:var(--pine)}
.navbar{background:var(--paper);border-bottom:1px solid rgba(13,31,28,.18);padding:.6rem 0}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink)!important;margin:0 auto}
.brand svg{width:40px;height:40px}
.brand b{font-size:1.55rem}
.brand small{display:block;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mute);line-height:1;margin-top:.15rem}
.navbar.navbar-expand-lg .navbar-collapse{justify-content:center;flex-grow:1}
.navbar .nav-link{color:var(--ink);font-weight:600;padding:.4rem 1.1rem;letter-spacing:.04em}
.navbar .nav-link:hover{color:var(--pine);text-decoration:underline;text-decoration-color:var(--brass);text-decoration-thickness:3px;text-underline-offset:6px}
.navbar-toggler{border-color:var(--ink)}
.stack{flex-direction:column;align-items:center}
@media(min-width:992px){.navbar .container{flex-direction:column}.navbar .brand{margin-bottom:.2rem}}
.btn-main{background:var(--pine);color:#fff;border:0;border-radius:999px;font-weight:600;padding:.85rem 1.8rem}
.btn-main:hover{background:var(--ink);color:#fff}
.btn-brass{background:var(--brass);color:var(--ink);border:0;border-radius:999px;font-weight:700;padding:.85rem 1.8rem}
.btn-brass:hover{background:#f6c75b;color:var(--ink)}
.hero{background:var(--pine);color:#fff;padding:5rem 0 6rem;position:relative;overflow:hidden}
.hero .eyebrow{color:var(--mint)}
.hero h1{font-size:clamp(3rem,8vw,6.6rem);letter-spacing:-.015em;margin-bottom:1.4rem}
.hero h1 em{font-style:italic;color:var(--brass)}
.hero p.lead{max-width:34rem;font-size:1.2rem;color:#dcebe5}
.coin-wrap{perspective:900px;display:flex;justify-content:center}
.coin{width:min(300px,70vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f7d27a,var(--brass) 55%,#b9821a);box-shadow:0 0 0 10px #c58f22,0 0 0 14px rgba(255,255,255,.18),0 30px 60px rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;font-family:'DM Serif Display',serif;font-size:min(9.5rem,32vw);color:#7a5207;animation:flip 7s ease-in-out infinite;transform-style:preserve-3d}
.coin::after{content:"";position:absolute}
@keyframes flip{0%,70%,100%{transform:rotateY(0)}85%{transform:rotateY(360deg)}}
@media(prefers-reduced-motion:reduce){.coin{animation:none}}
.coin-cap{text-align:center;color:var(--mint);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;margin-top:2rem}
section{padding:5.5rem 0}
h2{font-size:clamp(2.1rem,4.5vw,3.4rem);margin-bottom:1.2rem}
.svc{list-style:none;padding:0;margin:0;border-top:2px solid var(--ink);counter-reset:s}
.svc li{counter-increment:s;display:flex;align-items:baseline;gap:1.2rem;padding:1.1rem .2rem;border-bottom:1px solid rgba(13,31,28,.25);font-family:'DM Serif Display',serif;font-size:clamp(1.3rem,2.6vw,1.9rem);transition:padding .2s,background .2s}
.svc li::before{content:counter(s,decimal-leading-zero);font-family:'Work Sans',sans-serif;font-size:.8rem;font-weight:600;color:var(--mute);letter-spacing:.1em;min-width:2rem}
.svc li:hover{background:#fff;padding-left:1rem}
.about{background:#fff}
.photo{width:100%;height:auto;border-radius:200px 200px 12px 12px;display:block;object-fit:cover;aspect-ratio:4/5;object-position:60% 50%}
.person{border-top:3px solid var(--brass);padding-top:1rem;margin-top:1.6rem}
.person h3{font-size:1.7rem;margin:0}
.person .role{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:600}
.contact{background:var(--ink);color:#f3efe6}
.contact h2{color:#fff}
.contact .eyebrow{color:var(--mint)}
.contact a{color:var(--brass)}
.bigphone{font-family:'DM Serif Display',serif;font-size:clamp(2.2rem,5vw,3.6rem);color:var(--brass);text-decoration:none;display:inline-block;margin:.3rem 0 1rem}
.bigphone:hover{color:#f6c75b}
.map{border:0;width:100%;height:100%;min-height:340px;border-radius:12px;filter:saturate(.8)}
footer{background:#07130f;color:#a9b9b3;padding:2.2rem 0;font-size:.92rem}
footer a{color:var(--brass);text-decoration:none}
