:root{--cream:#f8efe8;--paper:#fdf8f4;--olive:#4a4d3e;--ink:#3a3c31;--rose:#c99a92;--blush:#ecd3cc;--muted:#7a7a6c}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Jost,sans-serif;font-weight:300;color:var(--ink);background:var(--paper);line-height:1.7}
h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:500;color:var(--olive);line-height:1.15;margin:.2em 0 .5em}
h1{font-size:clamp(2.4rem,5vw,4rem)}h2{font-size:clamp(1.9rem,3.5vw,2.8rem)}h3{font-size:1.5rem}
a{color:var(--olive)}img{max-width:100%;height:auto}
.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:.75rem;color:var(--rose);font-weight:500;margin:0}
.btn{display:inline-block;background:var(--olive);color:var(--cream);padding:.85em 1.9em;border:1px solid var(--olive);border-radius:40px;text-decoration:none;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-family:Jost;cursor:pointer;transition:.25s}
.btn:hover{background:var(--rose);border-color:var(--rose)}
.btn-ghost{background:transparent;color:var(--olive)}.btn-ghost:hover{color:#fff}
.btn-sm{padding:.55em 1.2em}
.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.6rem 5vw;background:rgba(253,248,244,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--blush)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:"Cormorant Garamond";font-size:1.35rem;color:var(--olive)}
.nav nav{display:flex;gap:1.6rem;align-items:center}.nav nav a:not(.btn){text-decoration:none;font-size:.9rem;letter-spacing:.05em}
.burger{display:none;font-size:1.6rem;cursor:pointer;color:var(--olive)}
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;padding:6vw 8vw;background:radial-gradient(circle at 75% 50%,var(--blush),var(--cream) 60%)}
.hero-logo{justify-self:center;filter:drop-shadow(0 20px 40px rgba(74,77,62,.15))}
.lead{font-size:1.15rem;max-width:34em}.cta-row{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}
.section{padding:5.5rem 8vw}.alt{background:var(--cream)}.center{text-align:center}
.narrow{max-width:46em;margin:0 auto 2.5rem}.muted{color:var(--muted)}.small{font-size:.8rem}
.grid3,.grid4{display:grid;gap:1.6rem;margin:2.5rem 0}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--blush);border-radius:6px;padding:2rem;text-align:center;position:relative}
.pkg ul{list-style:none;padding:0;margin:1rem 0 1.8rem}.pkg li{padding:.4rem 0;border-bottom:1px dashed var(--blush)}
.price{font-family:"Cormorant Garamond";font-size:1.4rem;color:var(--rose);margin:0}
.featured{border:2px solid var(--rose);transform:translateY(-10px)}
.tag{position:absolute;top:-.8rem;left:50%;transform:translateX(-50%);background:var(--rose);color:#fff;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;padding:.2rem .9rem;border-radius:20px}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin:2.5rem 0}
.steps span{display:inline-grid;place-items:center;width:3rem;height:3rem;border:1px solid var(--rose);border-radius:50%;font-family:"Cormorant Garamond";font-size:1.4rem;color:var(--rose)}
.review{margin:0}.stars{color:var(--rose);letter-spacing:.2em;margin:0}.sample{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;background:var(--blush);display:inline-block;padding:.1rem .6rem;border-radius:3px}
.review cite{font-style:normal;color:var(--muted);font-size:.9rem}
.knot{display:grid;grid-template-columns:auto 1fr;gap:3rem;align-items:center;background:var(--olive);color:var(--cream)}.knot h2{color:var(--cream)}
.knot .btn{background:var(--cream);color:var(--olive)}
.knot-badge{width:180px;height:180px;border-radius:50%;border:2px solid var(--blush);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);color:var(--olive)}
.knot-small{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem}.knot-name{font-family:"Cormorant Garamond";font-size:2.2rem;font-style:italic}
.faq{max-width:50em;margin:2rem auto 0}details{background:#fff;border:1px solid var(--blush);border-radius:6px;margin-bottom:.8rem;padding:1rem 1.4rem}
summary{cursor:pointer;font-family:"Cormorant Garamond";font-size:1.3rem;color:var(--olive)}
.inquire{background:linear-gradient(var(--cream),var(--blush))}
.form{max-width:52em;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;background:#fff;padding:2.5rem;border-radius:8px;box-shadow:0 20px 50px rgba(74,77,62,.1)}
.form label{display:flex;flex-direction:column;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--olive);gap:.4rem}
.form input,.form select,.form textarea{font:inherit;font-size:1rem;text-transform:none;letter-spacing:0;padding:.7rem;border:1px solid var(--blush);border-radius:4px;background:var(--paper)}
.full{grid-column:1/-1}.form-status{text-align:center;margin:0}
.footer{text-align:center;padding:3.5rem 8vw;background:var(--ink);color:var(--cream)}.footer a{color:var(--blush)}.foot-name{font-family:"Cormorant Garamond";font-size:1.5rem}
@media(max-width:900px){.grid4{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}}
@media(max-width:760px){
 .burger{display:block}.nav nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--paper);padding:1.5rem;border-bottom:1px solid var(--blush)}
 #menu:checked~nav{display:flex}.brand span{font-size:1.1rem}
 .hero{grid-template-columns:1fr;text-align:center}.hero-logo{order:-1;width:240px}.cta-row{justify-content:center}
 .grid3,.grid4,.steps,.form{grid-template-columns:1fr}.featured{transform:none}.knot{grid-template-columns:1fr;text-align:center}.knot-badge{margin:auto}.section{padding:4rem 6vw}}
.tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:2rem}
.tabs>input{display:none}
.tabs>label{padding:.6em 1.5em;border:1px solid var(--olive);border-radius:40px;cursor:pointer;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--olive);transition:.2s}
.tabs>input:checked+label{background:var(--olive);color:var(--cream)}
.panel{display:none;width:100%;order:9}
#t-open:checked~#p-open,#t-cash:checked~#p-cash,#t-dry:checked~#p-dry,#t-hire:checked~#p-hire{display:block}
.panel-note{text-align:center;color:var(--muted);margin:1.5rem 0 0}
.price small{font-size:.9rem;color:var(--muted)}
.pkg ul{text-align:left}.solo{max-width:34em;margin:2.5rem auto}
.addons{text-align:center;background:#fff;border:1px dashed var(--rose);border-radius:6px;padding:1.2rem;margin:0 auto 2rem;max-width:44em}.addons h3{margin:0 0 .3rem;font-size:1.3rem}.addons p{margin:0}
@media(max-width:760px){.tabs>label{font-size:.7rem;padding:.5em 1em}}
.pkg .price{font-size:2.4rem;font-weight:500}
.rating-summary{grid-column:1/-1;text-align:center;font-size:1.1rem;margin:0 0 .5rem}
