
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--body,Arial,sans-serif)}a{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0 0 1rem}h1,h2{font-family:var(--display,Georgia,serif);font-weight:var(--weight,400);line-height:.99;letter-spacing:-.055em;text-wrap:balance}h1{font-size:clamp(3.25rem,7.4vw,8rem)}h2{font-size:clamp(2.25rem,4.7vw,5rem)}h3{line-height:1.25}p{max-width:59ch}.wrap{width:min(90%,1250px);margin-inline:auto}.site-header{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:1.4rem;font-weight:700;letter-spacing:-.04em}.nav{display:flex;gap:clamp(.65rem,3vw,2.4rem);align-items:center;flex-wrap:wrap}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}.kicker{font-size:.73rem;letter-spacing:.16em;font-weight:700;text-transform:uppercase}.button{display:inline-block;background:var(--cta);color:var(--cta-ink);padding:.8rem 1.3rem;border:0;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.button:hover{filter:brightness(.92)}:focus-visible{outline:3px solid currentColor;outline-offset:4px}section:not(.hero){padding-block:clamp(3.4rem,7vw,7.5rem);scroll-margin-top:1rem}.hero p:not(.kicker){font-size:1.125rem}.hero img,.story img{height:100%}.caption{font-size:.8rem;padding:.65rem 0;margin:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,6vw,6rem);align-items:start}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;padding:0;list-style:none;margin:2rem 0 0}.steps li{padding-top:1rem;border-top:1px solid var(--line)}.steps span{display:block;font-size:.8rem;margin-bottom:.75rem}.panel{background:var(--panel);padding:clamp(1.2rem,3vw,2.4rem)}.panel ul{padding-left:1.15rem}.faq details,.footer details{padding:1rem 0;border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:700}details p{margin:.75rem 0 0}.form{display:grid;gap:.85rem}.fields{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.form label{display:grid;gap:.35rem;font-weight:700}.form input,.form textarea{width:100%;min-width:0;padding:.7rem;background:var(--bg);color:var(--ink);border:1px solid var(--line);font:inherit}.form button{justify-self:start}.form small{font-weight:400}.result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.footer{padding:2rem 0 3rem;border-top:1px solid var(--line)}.footer .kicker{margin-bottom:.3rem}.legal{margin-top:1.8rem}.legal h2{font:700 1.25rem/1.3 var(--body,Arial,sans-serif);letter-spacing:0}.legal details:last-child{border-bottom:1px solid var(--line)}.footer .footnote{font-size:.9rem;margin-top:1.5rem}.skip{position:absolute;transform:translateY(-200%);background:var(--bg);z-index:2}.skip:focus{transform:translateY(0)}
@media(max-width:720px){.two,.steps{grid-template-columns:1fr}.site-header{padding:.65rem 0;align-items:flex-start;flex-direction:column;gap:.35rem}.nav{font-size:.9rem}.hero figure{min-width:0}.story img{max-height:460px}}
@media(max-width:420px){.fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

:root{--bg:#fff5f1;--ink:#43192d;--panel:#f0d9de;--line:#b7919e;--cta:#6e284a;--cta-ink:#fff7f4}
.room .brand{font-family:Georgia,serif;font-style:italic}.room .hero-copy{text-align:center;padding-block:clamp(3rem,6vw,6rem)}.room .hero-copy p{margin-inline:auto}.room .hero h1{max-width:13ch;margin-inline:auto;font-style:italic}.room .hero figure{width:min(86%,1040px);height:clamp(270px,47vw,540px);margin:auto}.room .hero img{border-radius:48% 48% 0 0 / 30% 30% 0 0}.room .story .two{grid-template-columns:.68fr 1fr;align-items:center}.room .story figure{aspect-ratio:4/5}.room .story img{border-radius:45% 45% 0 0 / 25% 25% 0 0}.room .story h2{font-style:italic}.room #process{background:#f0d9de}.room .steps{grid-template-columns:1fr;max-width:760px;margin-inline:auto}.room .steps li{display:grid;grid-template-columns:4rem 1fr;align-items:baseline}.room .steps h3{font:1.7rem Georgia,serif}.room .steps span{font-size:1rem}.room #service{background:#6e284a;color:#fff7f4}.room #service .panel{color:var(--ink)}.room .button{border-radius:99rem}.room #brief .two{max-width:900px}
@media(max-width:720px){.room .story .two{grid-template-columns:1fr}.room .story figure{aspect-ratio:1/1}}
