:root{--ink: #120d0d;--ink-soft: #3a3232;--muted: #6f6664;--accent: #795251;--accent-dark: #5e3f3e;--accent-ink: #ffffff;--page: #f4f1ed;--sand: #ffffff;--footer: #e5ddd6;--tan: #d9cbc2;--line: #e7e0d9;--card: #ffffff;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 30px rgba(22, 25, 29, .08);--serif: "Cormorant Infant", "Cormorant Garamond", Georgia, serif;--sans: "Montserrat", system-ui, -apple-system, "Segoe UI", sans-serif;--wrap: 1180px;--gutter: clamp(16px, 4vw, 40px)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.7;color:var(--ink);background:var(--page)}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent-dark)}h1,h2,h3,.serif{font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em}h1{font-size:clamp(2.5rem,6vw,4rem)}h2{font-size:clamp(2rem,4.5vw,3rem)}h3{font-size:clamp(1.5rem,2.6vw,1.9rem)}h4{font-family:var(--sans);font-size:1rem;font-weight:600;margin:0 0 .4em}p{margin:0 0 1em}.lead{font-weight:600;color:var(--ink)}.muted{color:var(--muted)}.kicker{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--accent);margin:0 0 .8em}.center{text-align:center}.measure{max-width:72ch}.measure.center{margin-inline:auto}.wrap{width:min(var(--wrap),100% - 2 * var(--gutter));margin-inline:auto}section{padding-block:clamp(56px,8vw,110px)}.bg-sand{background:var(--sand)}.bg-tan{background:var(--tan)}.bg-accent{background:var(--accent);color:var(--accent-ink)}.bg-accent h1,.bg-accent h2,.bg-accent h3,.bg-accent a{color:var(--accent-ink)}.bg-accent .btn-light{background:#fff;color:var(--accent)}.bg-accent .btn-light:hover{background:var(--sand)}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 12px;z-index:100}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:14px 24px;border-radius:var(--radius-sm);font-family:var(--sans);font-weight:600;font-size:.95rem;line-height:1.2;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .2s,color .2s,transform .15s}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-dark);color:#fff}.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:0 2px 10px #0000000d}.btn-ghost:hover{background:var(--sand);color:var(--ink)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#000;color:#fff}.btn-sm{padding:10px 16px;font-size:.9rem}.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.5rem}.header{position:sticky;top:0;z-index:50;background:#f4f1edeb;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header .wrap{display:flex;align-items:center;gap:28px;min-height:76px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}.brand svg{width:32px;height:32px;color:var(--accent)}.brand b{font-family:var(--serif);font-weight:600;font-size:1.55rem;letter-spacing:.01em;line-height:1}.brand small{display:block;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:600}.nav{display:flex;align-items:center;gap:4px}.nav a,.nav summary{display:block;padding:10px 12px;color:var(--ink);font-weight:600;font-size:.95rem;text-decoration:none;border-radius:8px;cursor:pointer;list-style:none}.nav summary::-webkit-details-marker{display:none}.nav a:hover,.nav summary:hover{background:var(--sand)}.nav a[aria-current=page]{color:var(--accent)}.nav details{position:relative}.nav summary:after{content:"";display:inline-block;width:7px;height:7px;margin-left:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg)}.nav .menu{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:8px;display:grid}.nav .menu a{font-weight:500;padding:9px 12px}.nav .cta{margin-left:8px}.burger{display:none;background:none;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;font-weight:600;cursor:pointer}@media(max-width:960px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--page);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px var(--gutter) 20px;gap:2px}.nav.open{display:flex}.nav .menu{position:static;box-shadow:none;border:none;padding:0 0 0 12px}.nav .cta{margin:10px 0 0}.burger{display:inline-block}}.notice{background:transparent}.notice .wrap{margin-top:20px}.notice p{margin:0;padding:14px 20px;text-align:center;font-size:.95rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:0 2px 12px #0000000a}.hero{padding-block:clamp(40px,6vw,80px)}.hero .grid{display:grid;grid-template-columns:1.3fr .9fr;gap:clamp(32px,6vw,96px);align-items:start}.hero h1{margin-bottom:.4em}.hero p{max-width:54ch}.info{display:grid;gap:22px;padding-top:10px}.info .row{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start}.info svg{width:24px;height:24px;color:var(--accent);margin-top:2px}.info b{display:block;font-weight:600;margin-bottom:2px}.info p{margin:0;color:var(--ink-soft);font-size:.95rem}@media(max-width:860px){.hero .grid{grid-template-columns:1fr}}.quote{text-align:center;padding-block:clamp(40px,6vw,70px) 0}.quote p{font-family:var(--serif);font-style:italic;font-size:clamp(1.8rem,4vw,3rem);line-height:1.2;margin:0 auto;max-width:22ch}.photo-band{padding-block:clamp(30px,5vw,60px) 0}.photo-band img,.rounded{border-radius:var(--radius);box-shadow:var(--shadow)}.photo-band img{width:100%;aspect-ratio:2 / 1;object-fit:cover}.cards{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-top:2.5rem}.card{text-decoration:none;color:var(--ink);display:block}.card img{aspect-ratio:4 / 3;object-fit:cover;width:100%;border-radius:var(--radius-sm);margin-bottom:14px;background:var(--sand)}.card h3{font-size:1.5rem;margin-bottom:.3em}.card p{font-size:.92rem;color:var(--ink-soft);margin-bottom:.6em}.card .more{font-weight:600;font-size:.92rem;color:var(--ink)}.card:hover .more{color:var(--accent)}.card .more:after{content:" ›"}.reviews{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:2.5rem}.review{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 2px 14px #0000000a;display:flex;flex-direction:column}.review .stars{color:#d6ba3e;letter-spacing:2px;margin-bottom:10px;font-size:1.05rem}.review p{font-size:.95rem;color:var(--ink-soft);flex:1}.review b{font-weight:600}.review small{color:var(--muted);display:block}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}.split img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.split.flush{gap:0;align-items:stretch}.split.flush img{height:100%;border-radius:0;box-shadow:none}.split.flush .pad{padding:clamp(40px,6vw,90px) var(--gutter)}@media(max-width:860px){.split{grid-template-columns:1fr}.split.flush img{aspect-ratio:16 / 9}}.feature h3{font-size:1.6rem;margin-top:1.2em}.feature h3:first-of-type{margin-top:0}.signature{font-family:var(--serif);font-size:1.5rem;font-style:italic;margin-top:1rem}.cta-band .grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;align-items:center}.cta-band img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius)}.cta-band h2{font-size:clamp(2.2rem,4.5vw,3.2rem)}@media(max-width:860px){.cta-band .grid{grid-template-columns:1fr 1fr}.cta-band .grid>div:first-child{grid-column:1 / -1}}.faq{max-width:860px;margin:2.5rem auto 0;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-family:var(--serif);font-size:1.45rem;padding:20px 40px 20px 0;cursor:pointer;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:8px;top:18px;font-size:1.6rem;color:var(--accent);font-family:var(--sans);font-weight:300}.faq details[open] summary:after{content:"–"}.faq .a{padding:0 0 22px;color:var(--ink-soft);max-width:70ch}.page-head{padding-block:clamp(40px,6vw,72px) clamp(24px,4vw,48px)}.page-head p.intro{font-size:1.1rem;max-width:60ch;color:var(--ink-soft)}.page-head .grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,5vw,70px);align-items:center}.page-head .grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover}@media(max-width:860px){.page-head .grid{grid-template-columns:1fr}}.prose{max-width:72ch}.prose h2{font-size:clamp(1.7rem,3vw,2.3rem);margin-top:1.6em}.prose h3{font-size:1.5rem;margin-top:1.3em}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin-bottom:.4em}.prose figure{margin:1.5rem 0}.prose figcaption{font-size:.85rem;color:var(--muted);margin-top:6px}.two-col{display:grid;grid-template-columns:1fr 340px;gap:clamp(32px,5vw,70px);align-items:start}@media(max-width:960px){.two-col{grid-template-columns:1fr}}.aside{position:sticky;top:96px;display:grid;gap:18px}.box{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.box h3{font-size:1.4rem;margin-bottom:.4em}.box p,.box li{font-size:.93rem;color:var(--ink-soft)}.box ul{list-style:none;padding:0;margin:0}.box li{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.06)}.box li:last-child{border-bottom:none}.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:14px}.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start}.steps li:before{content:counter(s,decimal-leading-zero);font-family:var(--serif);font-size:1.6rem;color:var(--accent);line-height:1.1}.price-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:2rem}.price-group{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.price-group h3{font-size:1.6rem;margin-bottom:.6em}.price-group table{width:100%;border-collapse:collapse;font-size:.93rem}.price-group td{padding:8px 0;border-bottom:1px solid var(--line);vertical-align:top}.price-group tr:last-child td{border-bottom:none}.price-group td:last-child{text-align:right;white-space:nowrap;font-weight:600}.price-group .note{font-size:.82rem;color:var(--muted);margin:10px 0 0}.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin-top:2.5rem}.team figure{margin:0;text-align:center}.team img{width:180px;height:180px;object-fit:cover;border-radius:50%;margin:0 auto 14px;box-shadow:var(--shadow)}.team figcaption b{display:block;font-family:var(--serif);font-size:1.5rem;font-weight:500}.team figcaption span{color:var(--muted);font-size:.9rem}.form{display:grid;gap:16px;grid-template-columns:1fr 1fr;background:#fff;padding:30px;border-radius:var(--radius);box-shadow:var(--shadow)}.form label{display:grid;gap:6px;font-size:.88rem;font-weight:600}.form .full{grid-column:1 / -1}.form input,.form select,.form textarea{font:inherit;font-size:.95rem;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;width:100%}.form textarea{min-height:120px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.form .hint{grid-column:1 / -1;font-size:.82rem;color:var(--muted);margin:0}@media(max-width:640px){.form{grid-template-columns:1fr;padding:22px}}.footer{background:var(--footer);color:var(--ink-soft);padding-block:64px 120px;font-size:.93rem}.footer a{color:var(--ink)}.footer .grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:36px}.footer h4{color:var(--ink);font-family:var(--serif);font-size:1.4rem;font-weight:500;margin-bottom:.6em}.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}.footer .hours li{display:flex;justify-content:space-between;gap:12px}.footer .bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(0,0,0,.08);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.82rem;color:var(--muted)}@media(max-width:860px){.footer .grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.footer .grid{grid-template-columns:1fr}}.sticky{position:fixed;right:16px;bottom:16px;z-index:60;display:flex;background:var(--accent);color:#fff;border-radius:14px;box-shadow:0 14px 40px #00000040;overflow:hidden}.sticky a{display:grid;justify-items:center;gap:6px;padding:14px 22px;color:#fff;text-decoration:none;font-size:.82rem;font-weight:600;border-left:1px solid rgba(255,255,255,.18)}.sticky a:first-child{border-left:none}.sticky a:hover{background:var(--accent-dark)}.sticky svg{width:22px;height:22px}@media(max-width:640px){.sticky{left:0;right:0;bottom:0;border-radius:0}.sticky a{flex:1;padding:12px 8px}}.demo-tag{position:fixed;left:12px;bottom:12px;z-index:70;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;background:#fff;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:6px 10px}@media(max-width:640px){.demo-tag{display:none}}
