:root{--bg: #faf6f2;--bg-soft: #f3ebe4;--bg-rose: #f6ece8;--ink: #3d3229;--ink-soft: #6a5a4e;--muted: #8a7364;--line: #e4d5c8;--accent: #c48b7b;--accent-deep: #9a6b55;--accent-soft: #e8cfc4;--white: #fffcfa;--shadow: 0 18px 40px rgba(61, 50, 41, .08);--radius: 2px;--wrap: 70rem;--font-display: "Fraunces", Georgia, serif;--font-body: "Source Sans 3", system-ui, sans-serif;--header-h: 4.25rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + .5rem)}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,rgba(196,139,123,.14),transparent 55%),radial-gradient(900px 500px at 100% 0%,rgba(232,207,196,.35),transparent 50%),var(--bg)}img{max-width:100%;height:auto;display:block}a{color:var(--accent-deep)}a:hover{color:var(--ink)}.wrap{width:min(100% - 2rem,var(--wrap));margin-inline:auto}.narrow{max-width:38rem}.site-header{position:sticky;top:0;z-index:40;background:#faf6f2eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .25s ease,box-shadow .25s ease}.site-header.is-scrolled{border-bottom-color:var(--line);box-shadow:0 8px 24px #3d32290d}.header-inner{min-height:var(--header-h);display:flex;align-items:center;gap:1rem}.brand{display:inline-flex;align-items:center;gap:.65rem;flex-shrink:0;margin-right:auto;text-decoration:none;color:var(--ink)}.brand-mark{color:var(--accent-deep);display:inline-flex}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-text strong{font-family:var(--font-display);font-weight:600;font-size:1.05rem}.brand-text small{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.nav{display:none;gap:.15rem 1rem;font-size:.92rem;font-weight:500}.nav a{color:var(--ink-soft);text-decoration:none;padding:.25rem 0;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.nav a:hover{color:var(--ink);border-bottom-color:var(--accent)}.nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:6px;width:2.5rem;height:2.5rem;border:0;background:transparent;cursor:pointer;padding:.5rem}.nav-toggle span{display:block;height:1.5px;width:100%;background:var(--ink);transition:transform .2s ease,opacity .2s ease}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}@media (min-width: 960px){.nav-toggle{display:none}.nav{display:flex;flex-wrap:wrap;justify-content:flex-end}}@media (max-width: 959px){.nav.is-open{display:flex;flex-direction:column;position:absolute;top:var(--header-h);left:0;right:0;padding:1rem 1.25rem 1.25rem;background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.78rem 1.25rem;border:1px solid var(--accent-deep);background:var(--accent-deep);color:var(--white);text-decoration:none;font-weight:600;font-size:.95rem;letter-spacing:.01em;border-radius:var(--radius);transition:background .2s ease,color .2s ease,transform .2s ease,border-color .2s ease}.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--white);transform:translateY(-1px)}.btn-nav{padding:.55rem .95rem;font-size:.88rem;flex-shrink:0}.btn-lg{padding:.95rem 1.5rem;font-size:1rem}.btn-ghost{background:transparent;color:var(--accent-deep);border-color:var(--accent)}.btn-ghost:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--white)}.text-link{font-weight:600;color:var(--accent-deep);text-decoration:none;border-bottom:1px solid var(--accent-soft);transition:border-color .2s ease,color .2s ease}.text-link:hover{color:var(--ink);border-bottom-color:var(--ink)}.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.35rem;margin-top:1.5rem}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--ink);letter-spacing:-.01em}h1{margin:.4rem 0 .85rem;font-size:clamp(2rem,4.5vw,3.15rem);max-width:14ch}h2{margin:0 0 .75rem;font-size:clamp(1.65rem,3vw,2.35rem)}h3{margin:0 0 .45rem;font-size:1.2rem}.eyebrow{margin:0;font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.lede{margin:0 0 1.25rem;color:var(--ink-soft);max-width:40rem;font-size:1.08rem}.pullquote{margin:2rem 0 0;padding:1rem 0 0;border-top:1px solid var(--line);font-family:var(--font-display);font-size:1.25rem;color:var(--ink);max-width:28rem}.subhead{margin:2.5rem 0 1rem;font-size:1.15rem}.section{padding:clamp(3.5rem,8vw,5.5rem) 0}.section-soft{background:linear-gradient(180deg,var(--bg-soft),var(--bg-rose))}.section-contact{background:linear-gradient(180deg,transparent,rgba(196,139,123,.08)),var(--bg);text-align:center}.section-contact .lede{margin-inline:auto}.hero{position:relative;padding:clamp(1.5rem,4vw,2.5rem) 0 clamp(2.5rem,6vw,4rem);overflow:hidden;background:radial-gradient(ellipse 70% 80% at 78% 45%,rgba(232,207,196,.45),transparent 60%),linear-gradient(165deg,var(--bg-rose) 0%,var(--bg) 45%,var(--bg-soft) 100%)}.hero-grid{display:grid;gap:1.25rem 1.75rem;align-items:end;min-height:min(72vh,680px)}.hero-content{padding-top:clamp(.5rem,2vw,1.25rem);padding-bottom:clamp(1rem,3vw,2rem);z-index:1}.hero-media{margin:0;display:flex;align-items:flex-end;justify-content:center;min-height:22rem;overflow:hidden}.hero-media img{width:min(100%,30rem);height:auto;max-height:min(72vh,640px);object-fit:contain;object-position:center top;transform:scale(1.06);transform-origin:center top;filter:drop-shadow(0 24px 40px rgba(61,50,41,.12))}@media (min-width: 860px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:1.25rem 1.5rem}.hero-media{justify-content:center;min-height:min(78vh,700px);margin-right:0}.hero-media img{width:min(100%,36rem);max-height:min(80vh,740px);transform:scale(1.08);transform-origin:center 8%}.hero-content{padding-bottom:2rem}}.topic-carousel{margin-top:.25rem}.topic-grid{display:grid;gap:0;border-top:1px solid var(--line)}.topic{padding:1.15rem 0;border-bottom:1px solid var(--line)}.topic h3{font-family:var(--font-display);margin:0 0 .35rem}.topic p{margin:0;color:var(--ink-soft)}.topic-controls{display:none;align-items:center;justify-content:center;gap:.75rem;margin-top:1.15rem}.topic-btn{width:2.25rem;height:2.25rem;border:1px solid var(--line);background:var(--white);color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer;border-radius:var(--radius)}.topic-btn:hover{border-color:var(--accent);color:var(--accent-deep)}.topic-btn:disabled{opacity:.35;cursor:default}.topic-dots{display:flex;gap:.4rem;align-items:center}.topic-dot{width:.45rem;height:.45rem;padding:0;border:0;border-radius:50%;background:var(--line);cursor:pointer}.topic-dot[aria-selected=true]{background:var(--accent-deep);transform:scale(1.25)}@media (max-width: 719px){.topic-grid{display:flex;gap:.85rem;border-top:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}.topic-grid::-webkit-scrollbar{display:none}.topic{flex:0 0 min(88%,22rem);scroll-snap-align:start;padding:1.15rem 1.1rem 1.25rem;border:none;border-left:2px solid var(--accent-soft);background:linear-gradient(160deg,var(--white),var(--bg-soft));min-height:9.5rem}.topic-controls:not([hidden]){display:flex}}@media (min-width: 720px){.topic-grid{grid-template-columns:1fr 1fr;column-gap:2.5rem}.topic-controls{display:none!important}}.split{display:grid;gap:2rem;align-items:center}@media (min-width: 860px){.split{grid-template-columns:1.1fr .9fr;gap:3.5rem}}.portrait{margin:0;overflow:hidden;border-radius:var(--radius)}.portrait img{width:100%;aspect-ratio:3 / 4;object-fit:cover;object-position:center top}.cred-list{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:.45rem}.cred-list li{position:relative;padding-left:1rem;color:var(--ink-soft);font-size:.98rem}.cred-list li:before{content:"";position:absolute;left:0;top:.65em;width:.4rem;height:.4rem;border-radius:50%;background:var(--accent)}.split-text,.formats{display:grid;gap:1.75rem;margin-top:1.75rem}@media (min-width: 720px){.split-text,.formats{grid-template-columns:1fr 1fr;gap:2.5rem}}.split-text p,.formats p{margin:0;color:var(--ink-soft)}.theme-slider{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;margin-top:.25rem;max-width:40rem}.theme-viewport{overflow:hidden;height:5.75rem;border-left:2px solid var(--accent-soft);padding-left:1rem}.theme-track{list-style:none;margin:0;padding:0;transition:transform .55s cubic-bezier(.22,1,.36,1)}.theme-slide{height:5.75rem;display:flex;flex-direction:column;justify-content:center;gap:.35rem;color:var(--ink-soft)}.theme-slide strong{color:var(--ink);font-family:var(--font-display);font-size:1.15rem;font-weight:600;line-height:1.3}.theme-slide span{font-size:.98rem;line-height:1.45}.theme-dots{display:flex;flex-direction:column;gap:.4rem;align-items:center}.theme-dot{width:.4rem;height:.4rem;padding:0;border:0;border-radius:50%;background:var(--line);cursor:pointer;transition:background .25s ease,transform .25s ease}.theme-dot[aria-selected=true]{background:var(--accent-deep);transform:scale(1.35)}@media (prefers-reduced-motion: reduce){.theme-track{transition:none}}.process{display:flex;gap:.85rem;margin-top:2.25rem;position:relative;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;padding:1.35rem 0 .35rem}.process::-webkit-scrollbar{display:none}.process-step{position:relative;flex:0 0 min(78%,17.5rem);scroll-snap-align:start;padding-top:1.15rem}.process-step:before{content:"";position:absolute;top:.2rem;left:0;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent)}.process:before{content:"";position:absolute;top:.4rem;left:.15rem;width:calc(100% - .3rem);height:1px;background:linear-gradient(90deg,var(--accent-soft),var(--line));pointer-events:none}.process-mark{display:block;font-family:var(--font-display);font-size:.85rem;letter-spacing:.08em;color:var(--accent);margin-bottom:.45rem}.process-step h3{margin:0 0 .4rem;font-family:var(--font-display);font-size:1.2rem;font-weight:600}.process-step p{margin:0;color:var(--ink-soft);font-size:.98rem}@media (min-width: 860px){.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1.75rem;overflow:visible;scroll-snap-type:none;padding-top:1.5rem}.process:before{left:.15rem;right:.15rem;width:auto;background:linear-gradient(90deg,var(--accent-soft),var(--line),var(--accent-soft))}.process-step{flex:none;padding-top:1.35rem}.process-step:before{top:.35rem;box-shadow:0 0 0 4px var(--bg)}.process-step:nth-child(2n){transform:translateY(1.25rem)}}.trust-strip{list-style:none;margin:0 0 2rem;padding:1rem 0;display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:.95rem}.quotes{display:flex;gap:.85rem;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}.quotes::-webkit-scrollbar{display:none}.quotes blockquote{margin:0;padding:0;flex:0 0 min(88%,22rem);scroll-snap-align:start}.quotes-dots{display:none;justify-content:center;gap:.4rem;margin-top:1rem}.quotes-dots:not([hidden]){display:flex}.quotes-dot{width:.45rem;height:.45rem;padding:0;border:0;border-radius:50%;background:var(--line);cursor:pointer}.quotes-dot[aria-selected=true]{background:var(--accent-deep);transform:scale(1.25)}@media (min-width: 800px){.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;overflow:visible;scroll-snap-type:none}.quotes blockquote{flex:none}.quotes-dots{display:none!important}}.quotes p{margin:0 0 .85rem;font-family:var(--font-display);font-size:1.15rem;line-height:1.45;color:var(--ink)}.quotes footer{font-size:.88rem;color:var(--muted)}.quote-stars{display:block;margin-bottom:.25rem;color:var(--accent-deep);letter-spacing:.08em;font-size:.8rem}.google-rating{margin:1.75rem 0 0;color:var(--ink-soft);font-size:.95rem}.google-rating strong{color:var(--ink);font-family:var(--font-display);font-size:1.15rem;font-weight:600}.social-ctas{margin-top:1.25rem;display:flex;flex-wrap:wrap;gap:.75rem}.faq-list{display:grid;gap:.65rem;margin-top:1.25rem}.faq-list details{border-bottom:1px solid var(--line);padding:.85rem 0}.faq-list summary{cursor:pointer;font-weight:600;color:var(--ink);list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";float:right;color:var(--accent);font-weight:500}.faq-list details[open] summary:after{content:"–"}.faq-list details p{margin:.75rem 0 .25rem;color:var(--ink-soft);padding-right:1.5rem}.contact-icons{display:flex;justify-content:center;align-items:center;gap:.85rem;margin:1.75rem 0;flex-wrap:wrap}.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:3.15rem;height:3.15rem;border:1px solid var(--accent);border-radius:50%;color:var(--accent-deep);background:var(--white);text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.contact-icon svg{width:1.25rem;height:1.25rem}.contact-icon:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--white);transform:translateY(-2px)}.site-footer{padding:2.5rem 0;background:var(--ink);color:#e8ddd4}.footer-name{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.15rem;color:#fffcfa}.footer-inner{display:flex;flex-wrap:wrap;gap:1.25rem 2rem;justify-content:space-between;align-items:flex-end}.footer-brand p{margin:0;font-size:.9rem;color:#c9b8aa}.footer-links{display:flex;flex-wrap:wrap;gap:.75rem 1.1rem;margin:0}.footer-links a{color:#e8ddd4;text-decoration:none;font-size:.92rem}.footer-links a:hover{color:#fff}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn:hover{transform:none}}
