:root{--paper:#f3eee6;--paper-deep:#e8e0d3;--ink:#1e1916;--ink-soft:#3f3833;--muted:#5c544c;--line:#d5cbb9;--card:#fffaf2;--accent:#6a2c38;--accent-hover:#541f2a;--accent-soft:#f4e7ea;--focus:#8a3848;--ok:#245334;--ok-bg:#e5f2e9;--err:#8a2424;--err-bg:#f8e6e6;--radius:14px;--shadow:0 1px 2px #1e19160d, 0 10px 28px #1e19160f;--font-serif:"Fraunces", "Iowan Old Style", Georgia, serif;--font-sans:"Source Sans 3", "Segoe UI", system-ui, sans-serif;--max:70rem;--gutter:clamp(1.1rem, 3vw, 1.75rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{min-height:100vh;color:var(--ink);background:var(--paper);font-family:var(--font-sans);margin:0;font-size:1.0625rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-underline-offset:.18em}a:hover{color:var(--accent-hover)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{z-index:20;background:var(--ink);color:var(--card);border-radius:8px;padding:.5rem .85rem;text-decoration:none;position:absolute;top:-3rem;left:.75rem}.skip-link:focus{top:.75rem}.wrap{width:min(var(--max), calc(100% - var(--gutter) * 2));margin-inline:auto}.site-header{z-index:10;background:color-mix(in srgb, var(--paper) 92%, white);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);transition:box-shadow .15s;position:sticky;top:0;box-shadow:0 0 #0000}.site-header.is-scrolled{box-shadow:0 6px 20px #1e19161a}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;transition:min-height .15s;display:flex}.site-header.is-scrolled .header-inner{min-height:3.55rem}.logo{color:inherit;align-items:center;gap:.7rem;text-decoration:none;display:flex}.logo-mark{flex:none;width:2.1rem;height:2.1rem}.logo-text{flex-direction:column;line-height:1.15;display:flex}.logo-name{font-family:var(--font-serif);font-size:1.15rem;font-weight:600}.logo-place{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.nav-toggle{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;border-radius:8px;padding:.4rem .7rem;font-size:.95rem;display:none}.nav{align-items:center;gap:.35rem 1.05rem;display:flex}.nav>a:not(.btn){color:var(--ink-soft);font-weight:500;text-decoration:none;transition:color .18s;position:relative}.nav>a:not(.btn):after{content:"";opacity:0;transform-origin:0;background:currentColor;height:1.5px;transition:opacity .18s,transform .18s;position:absolute;bottom:-.16em;left:0;right:0;transform:scaleX(0)}.nav>a:not(.btn):hover,.nav>a:not(.btn):focus-visible{color:var(--accent)}.nav>a:not(.btn):hover:after,.nav>a:not(.btn):focus-visible:after{opacity:1}.nav>a:not(.btn)[aria-current=page]{color:var(--accent)}.nav>a:not(.btn)[aria-current=page]:after{opacity:1;transform:scaleX(1)}.nav a.btn{text-decoration:none}.nav a.btn-primary,.nav a.btn-primary:hover{color:#fffaf6}.nav a.btn-secondary,.nav a.btn-secondary:hover{color:var(--ink)}.nav a.btn-secondary:hover{color:var(--accent)}.hero,.page-hero,.section,.cta-band,.site-footer{padding-block:clamp(2.4rem,6vw,4.5rem)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(1.5rem,4vw,3rem);display:grid}.kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .6rem;font-size:.82rem;font-weight:650}h1,h2,h3,.serif{font-family:var(--font-serif);font-optical-sizing:auto;letter-spacing:-.02em;line-height:1.15}h1{margin:0 0 .9rem;font-size:clamp(2.1rem,4.5vw,3.35rem);font-weight:600}h2{margin:0 0 .75rem;font-size:clamp(1.55rem,3vw,2.15rem);font-weight:600}h3{margin:0 0 .4rem;font-size:1.25rem;font-weight:600}.lede,.prose p{color:var(--ink-soft)}.lede{max-width:40rem;margin:0 0 1.4rem;font-size:1.125rem}.prose :first-child{margin-top:0}.prose :last-child{margin-bottom:0}.actions{flex-wrap:wrap;gap:.7rem;display:flex}.btn{min-height:2.75rem;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.05rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:#fffaf6}.btn-primary:hover{background:var(--accent-hover);color:#fffaf6}.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--line)}.btn-secondary:hover{color:var(--accent);border-color:var(--accent)}.btn:disabled{opacity:.65;cursor:wait}.wa-link{align-items:center;gap:.4em;display:inline-flex}.wa-glyph{flex:none;width:1em;height:1em;display:block}.wa-float{right:max(1rem, env(safe-area-inset-right,0px));bottom:max(1rem, calc(1rem + env(safe-area-inset-bottom,0px)));z-index:15;background:var(--accent);color:#fff;border-radius:999px;align-items:center;gap:.45rem;min-height:3rem;padding:.7rem 1.05rem;font-weight:650;text-decoration:none;display:inline-flex;position:fixed;box-shadow:0 8px 22px #1e19162e}.wa-float:hover{background:var(--accent-hover);color:#fff}.wa-float .wa-glyph{width:1.15em;height:1.15em}body.nav-open .wa-float{visibility:hidden;opacity:0;pointer-events:none}.image-slot{border-radius:var(--radius);background:var(--paper-deep);box-shadow:var(--shadow);overflow:hidden}.image-slot img{object-fit:cover;width:100%;height:100%}.image-slot figcaption,.credit{color:var(--muted);margin:.45rem 0 0;font-size:.78rem}.hero-visual{min-height:22rem}.section-head{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.cards{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.card-body{flex-direction:column;flex:1;gap:.45rem;padding:1.1rem 1.15rem 1.25rem;display:flex}.card-body p{color:var(--ink-soft);margin:0}.card-image{aspect-ratio:4/3}.card-link{color:var(--accent);margin-top:auto;padding-top:.6rem;font-weight:650}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.25rem,4vw,2.75rem);display:grid}.split.reverse .split-copy{order:2}.steps{grid-template-columns:repeat(3,1fr);gap:1rem;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem 1.2rem}.step-num{color:var(--accent);font-family:var(--font-serif);margin-bottom:.45rem;font-weight:650;display:inline-block}.note{background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:0 10px 10px 0;margin:0 0 1.25rem;padding:.85rem 1rem}.price-block{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:2rem;overflow:hidden}.price-block header{padding:1.15rem 1.2rem .4rem}.price-block header p{color:var(--ink-soft);margin:0 0 .8rem}.price-table{border-collapse:collapse;width:100%}.price-table th,.price-table td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:.85rem 1.2rem}.price-table th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:650}.price-table .price{white-space:nowrap;font-weight:650}.placeholder-tag{background:var(--paper-deep);color:var(--muted);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-size:.72rem;font-weight:650;display:inline-block}.cta-band{background:var(--ink);color:#f6efe6}.cta-band h2,.cta-band p{color:inherit}.cta-band p{max-width:36rem}.cta-band .btn-primary{color:var(--ink);background:#f4efe6}.cta-band .btn-primary:hover{color:var(--ink);background:#fff}.cta-band .btn-secondary{color:#f6efe6;background:0 0;border-color:#8a8176}.cta-band .btn-secondary:hover{color:#fff;border-color:#f6efe6}.contact-card{max-width:36rem}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.panel h2{font-size:1.35rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact-list{margin:1rem 0 0;padding:0;list-style:none}.contact-list li+li{border-top:1px solid var(--line);margin-top:.9rem;padding-top:.9rem}.contact-list span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:650;display:block}.phone-placeholder{font-variant-numeric:tabular-nums;letter-spacing:.04em}.shop-address{margin:.15rem 0 0;font-style:normal;font-weight:650;line-height:1.45;display:block}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding-block:2rem;font-size:.95rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;display:flex}.footer-nav{flex-wrap:wrap;gap:.75rem 1.1rem;display:flex}.footer-nav a{color:var(--ink-soft);text-decoration:none}.footer-nav a:hover{color:var(--accent)}@media (width<=860px){.hero,.split,.cards,.steps{grid-template-columns:1fr}.split.reverse .split-copy{order:0}.hero-visual{order:-1;min-height:16rem}.nav-toggle{display:inline-flex}.nav{padding:0 var(--gutter);background:var(--paper);visibility:hidden;opacity:0;pointer-events:none;border-bottom:1px solid #0000;flex-direction:column;align-items:stretch;gap:0;max-height:0;transition:max-height .2s,opacity .2s,transform .2s,visibility .2s,padding .2s,border-color .2s;display:flex;position:absolute;inset:calc(100% - 1px) 0 auto;overflow:hidden;transform:translateY(-.4rem)}.nav.is-open{visibility:visible;opacity:1;pointer-events:auto;max-height:24rem;padding:.6rem var(--gutter) .9rem;border-bottom-color:var(--line);transform:none}.nav a{padding:.65rem .15rem}.nav>.btn-primary+.wa-link{margin-top:.65rem}.site-header{position:sticky}.header-bar{position:relative}}@media (width<=520px){.price-table th:nth-child(3),.price-table td:nth-child(3){display:none}}
