:root{--bg:#f7f4ef;--paper:#fffcf8;--ink:#1f1b16;--muted:#6a6158;--line:#ddd6cc;--accent:#3f4a3c;--accent-soft:#e6e9e2;--warn:#8a3d2b;--ok:#2f5d3a;--shadow:0 18px 50px rgba(31, 27, 22, 0.08);--serif:"Fraunces", "Times New Roman", serif;--sans:"Figtree", "Segoe UI", sans-serif;--space:clamp(1.25rem, 3vw, 2.5rem);--max:72rem}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1.05rem;line-height:1.7;min-height:100vh}img{max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{color:var(--ink)}h1,h2,h3,.brand{font-family:var(--serif);font-weight:560;letter-spacing:-.02em;line-height:1.15}h1{font-size:clamp(2.4rem,6vw,4.4rem);margin:0 0 .6em}h2{font-size:clamp(1.7rem,3vw,2.4rem);margin:0 0 .55em}h3{font-size:1.35rem;margin:0 0 .4em}p{margin:0 0 1em}.wrap{width:min(100% - 2rem,var(--max));margin-inline:auto}.skip{position:absolute;left:-999px;top:0}.skip:focus{left:1rem;top:1rem;background:var(--paper);padding:.5rem .8rem;z-index:20}.site-header{padding:1.4rem 0 1rem;border-bottom:1px solid var(--line);background:var(--bg)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-size:1.15rem;color:var(--ink);text-decoration:none;max-width:14rem;line-height:1.25}.nav-toggle{display:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:.45rem .75rem;font:inherit;cursor:pointer}.nav-list{display:flex;flex-wrap:wrap;gap:.2rem 1.25rem;list-style:none;margin:0;padding:0}.nav-list a{color:var(--ink);text-decoration:none;font-size:.92rem}.nav-list a:hover,.nav-list a[aria-current=page]{text-decoration:underline}.hero-editorial{padding:3.5rem 0 2rem}.hero-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;color:var(--muted);margin-bottom:1rem}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:end}.hero-note{font-size:1.12rem;color:var(--muted);max-width:38rem}.hero-figure{margin:0}.hero-figure img{width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--shadow)}.hero-figure figcaption{margin-top:.7rem;font-size:.88rem;color:var(--muted)}.btn{display:inline-block;background:var(--ink);color:var(--paper);text-decoration:none;padding:.75rem 1.25rem;border:0;font:inherit;cursor:pointer}.btn:hover{background:var(--accent);color:var(--paper)}.btn-ghost{background:0 0;color:var(--ink);border:1px solid var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.section{padding:3.5rem 0}.section-muted{background:var(--paper)}.split{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start}.lede{font-size:1.2rem;max-width:42rem}.offer-list{list-style:none;padding:0;margin:0}.offer-list li{border-top:1px solid var(--line);padding:1.2rem 0}.offer-list a{font-family:var(--serif);font-size:1.45rem;color:var(--ink);text-decoration:none}.offer-list a:hover{text-decoration:underline}.offer-list p{margin:.4rem 0 0;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.card{background:var(--paper);border:1px solid var(--line)}.card img{width:100%;aspect-ratio:16/10;object-fit:cover}.card-body{padding:1.1rem 1.15rem 1.3rem}.meta{color:var(--muted);font-size:.9rem}.quote{font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.4;margin:0 0 .8rem}.cite{color:var(--muted);font-size:.92rem}.site-footer{border-top:1px solid var(--line);padding:2.5rem 0 2rem;margin-top:2rem;font-size:.95rem}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2rem}.footer-legal{display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--line)}.footer-legal a{color:var(--muted);text-decoration:none}.prose{max-width:42rem}.prose h2,.prose h3{margin-top:1.8em}.page-hero{padding:3rem 0 1.5rem}.page-hero img{width:100%;max-height:26rem;object-fit:cover;margin-top:1.5rem}.service-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem 1.5rem;margin:1.5rem 0 2rem;padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.form{display:grid;gap:1rem;max-width:36rem}label{display:grid;gap:.35rem;font-size:.95rem}input,select,textarea{font:inherit;padding:.65rem .75rem;border:1px solid var(--line);background:var(--paper);color:var(--ink)}textarea{min-height:9rem;resize:vertical}.field-error{color:var(--warn);font-size:.88rem}.form-status{padding:.85rem 1rem;border:1px solid var(--line)}.form-status.ok{border-color:var(--ok);color:var(--ok)}.form-status.bad{border-color:var(--warn);color:var(--warn)}.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:40;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:1.1rem 1.2rem;max-width:40rem}.cookie-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}.review{padding:1.5rem 0;border-top:1px solid var(--line)}.price-block{padding:1.4rem 0;border-top:1px solid var(--line)}.price-block strong{font-family:var(--serif);font-size:1.6rem;font-weight:560}.steps{counter-reset:step;list-style:none;padding:0}.steps li{counter-increment:step;padding:1.2rem 0 1.2rem 3.2rem;position:relative;border-top:1px solid var(--line)}.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:1.2rem;font-family:var(--serif);font-size:1.2rem}.team{display:grid;grid-template-columns:140px 1fr;gap:1.2rem;align-items:start;margin:2rem 0}.team img{width:140px;height:170px;object-fit:cover}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{border-bottom:1px solid var(--line);text-align:left;padding:.55rem .4rem;vertical-align:top}[x-cloak]{display:none!important}.not-found{padding:6rem 0;text-align:left}@media(max-width:860px){.hero-grid,.split,.card-grid,.footer-grid,.service-meta{grid-template-columns:1fr}.nav-toggle{display:inline-block}.nav-list{display:none;position:absolute;left:1rem;right:1rem;top:4.4rem;background:var(--paper);border:1px solid var(--line);padding:1rem;flex-direction:column;z-index:15}.nav-list.open{display:flex}.site-header{position:relative}.hero-figure img{aspect-ratio:4/3}.team{grid-template-columns:1fr}}