:root{--ivory:#f8f4ed;--paper:#fffdfa;--champagne:#e7d7c8;--rose:#c5a88e;--bronze:#956b49;--espresso:#44342b;--ink:#2d2723;--muted:#6c625b;--line:#ded3c8;--shadow:0 24px 70px rgba(67,48,37,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.7}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 84% 15%,rgba(231,215,200,.38),transparent 28%),radial-gradient(circle at 8% 62%,rgba(197,168,142,.1),transparent 25%);pointer-events:none;z-index:-1}.nav{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;border-bottom:1px solid rgba(149,107,73,.18);position:sticky;top:0;background:rgba(248,244,237,.91);backdrop-filter:blur(18px);z-index:10}.brand{text-decoration:none;color:var(--espresso);display:flex;align-items:center;gap:.9rem;line-height:1}.brand img{width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 4px 18px rgba(67,48,37,.1)}.brand-type{display:flex;flex-direction:column}.brand-type b,.footer-brand strong{font-family:"Snell Roundhand","Segoe Script",cursive;font-size:1.42rem;font-weight:400}.brand small,.footer-brand small{display:block;font-size:.52rem;letter-spacing:.24em;margin-top:8px}.nav nav{display:flex;align-items:center;gap:2.3rem}.nav nav a{color:var(--ink);text-decoration:none;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;transition:color .2s}.nav nav a:hover{color:var(--bronze)}.nav-cta{border:1px solid var(--bronze);padding:.72rem 1.1rem}.menu{display:none;background:none;border:0;font:inherit;color:var(--espresso)}.hero{min-height:760px;padding:6.5rem 7vw 7rem;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw;overflow:hidden;max-width:1600px;margin:auto}.hero-copy{position:relative}.hero-copy:before{content:"";display:block;width:52px;height:1px;background:var(--bronze);margin-bottom:2.2rem}.eyebrow{font-size:.7rem;letter-spacing:.28em;color:var(--bronze);font-weight:600;margin:0 0 1.5rem}.hero h1,.section h2{font-family:"Iowan Old Style","Baskerville",Georgia,serif;font-weight:400;line-height:1.06;margin:0}.hero h1{font-size:clamp(3.4rem,6vw,6.7rem);letter-spacing:-.045em}.hero h1 em{font-weight:400;color:var(--bronze)}.intro{max-width:570px;font-size:1.08rem;margin:2.2rem 0 2.5rem;color:var(--muted);line-height:1.85}.actions{display:flex;align-items:center;gap:1.8rem}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--espresso);color:white;border:1px solid var(--espresso);padding:1.05rem 1.55rem;text-decoration:none;font:inherit;font-size:.79rem;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{background:var(--bronze);border-color:var(--bronze);transform:translateY(-2px);box-shadow:0 9px 24px rgba(67,48,37,.15)}.text-link,.service-grid a{color:var(--espresso);text-underline-offset:6px;text-decoration-thickness:1px}.logo-frame{position:relative;width:min(100%,580px);margin:auto}.logo-frame:after{content:"";position:absolute;inset:3.5%;border:1px solid rgba(255,255,255,.48);border-radius:50%;pointer-events:none}.logo-frame img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;box-shadow:var(--shadow)}.logo-halo{position:absolute;inset:-10%;border:1px solid rgba(149,107,73,.16);border-radius:50%}.section{padding:9rem 7vw}.services{background:rgba(255,253,250,.8);border-top:1px solid rgba(149,107,73,.12)}.services>div:first-child{max-width:700px}.services>.service-grid{margin-top:5.5rem}.section h2{font-size:clamp(2.5rem,4.5vw,4.8rem);letter-spacing:-.035em}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.service-grid article{background:var(--paper);padding:3.4rem 3rem;border:1px solid var(--line);box-shadow:0 10px 34px rgba(67,48,37,.035);transition:transform .25s,box-shadow .25s,border-color .25s}.service-grid article:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(149,107,73,.4)}.service-grid article>span{font-family:Georgia,serif;color:var(--bronze);font-size:.9rem}.service-grid h3{font-family:"Iowan Old Style","Baskerville",Georgia,serif;font-size:2rem;font-weight:400;margin:2rem 0 1rem}.service-grid p{min-height:105px;color:var(--muted)}.about{background:linear-gradient(125deg,#eadfd5,#dfcbbb);display:grid;grid-template-columns:.25fr 1fr;gap:5vw;align-items:start}.quote-mark{font:10rem/1 "Iowan Old Style",Georgia,serif;color:rgba(95,65,46,.22)}.about>div:last-child{max-width:820px}.about>div:last-child>p:last-child{max-width:680px;font-size:1.12rem;color:#584a41}.form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:var(--paper)}.form-intro{position:sticky;top:140px;align-self:start}.form-intro>p:not(.eyebrow){max-width:480px;color:var(--muted)}.contact-note{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.6rem;display:flex;flex-direction:column}.contact-note span{font-family:"Iowan Old Style",Georgia,serif;font-size:1.2rem}.contact-note a,footer a{color:var(--bronze)}.card-form{padding:3.5rem;background:var(--ivory);border:1px solid var(--line);box-shadow:0 18px 60px rgba(67,48,37,.07)}label{display:flex;flex-direction:column;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;gap:.5rem;margin-bottom:1.4rem;color:var(--espresso)}input,select,textarea{width:100%;border:0;border-bottom:1px solid #bcae9f;background:transparent;padding:.8rem .2rem;font:inherit;font-size:1rem;color:var(--ink);border-radius:0;text-transform:none;letter-spacing:normal}input:focus,select:focus,textarea:focus{outline:0;border-bottom-color:var(--bronze);box-shadow:0 1px 0 var(--bronze)}.two{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.privacy{font-size:.78rem;color:var(--muted);text-transform:none;letter-spacing:normal}.inquiry{background:linear-gradient(135deg,#382c26,#241d19);color:#f8f0e8;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;position:relative}.inquiry:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 5% 20%,rgba(197,168,142,.18),transparent 32%);pointer-events:none}.inquiry>div,.inquiry>form{position:relative}.inquiry .eyebrow{color:#d5af8d}.inquiry p{max-width:420px;color:#d9cdc4}.inline-form{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.inline-form .wide{grid-column:1/-1}.inline-form label{color:#f6eae1}.inline-form input,.inline-form textarea{color:white;border-color:#75665c}.inline-form .button{justify-self:start;background:#c39b79;border-color:#c39b79;color:#241d19}.inline-form .button:hover{background:#e2c3a8;border-color:#e2c3a8}.footer-brand{display:flex;align-items:center;gap:1rem;color:#eadaca}.footer-brand img{width:58px;height:58px;object-fit:cover;border-radius:50%}.footer-brand div{display:flex;flex-direction:column}footer{padding:3rem 5vw;background:#1c1714;color:#cfc2b8;display:flex;align-items:center;justify-content:space-between;gap:2rem;font-size:.8rem;border-top:1px solid #534238}#toast{position:fixed;right:1.5rem;bottom:1.5rem;background:var(--espresso);color:white;padding:1rem 1.25rem;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s;max-width:360px;z-index:20}#toast.show{opacity:1;transform:none}@media(max-width:850px){.nav{height:78px;padding:0 5vw}.brand img{width:46px;height:46px}.brand-type b{font-size:1.05rem}.brand small{font-size:.44rem;letter-spacing:.15em}.menu{display:block}.nav nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:2rem;flex-direction:column;align-items:stretch;box-shadow:0 20px 40px rgba(67,48,37,.08)}.nav nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:5rem;gap:5rem}.logo-frame{max-width:500px}.service-grid{grid-template-columns:1fr}.service-grid p{min-height:auto}.form-section,.inquiry{grid-template-columns:1fr}.form-intro{position:static}.about{grid-template-columns:1fr}.quote-mark{font-size:7rem;height:50px}.section{padding:6rem 7vw}footer{flex-direction:column;align-items:flex-start}.two{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr}.inline-form .wide{grid-column:auto}}@media(max-width:480px){.brand-type{display:none}.hero{padding-left:6vw;padding-right:6vw}.hero h1{font-size:3rem}.logo-halo{inset:-5%}.card-form{padding:1.5rem}.actions{align-items:flex-start;flex-direction:column}.section{padding-left:6vw;padding-right:6vw}}
