:root{--rose:#c48b7d;--sage:#8a9a7b;--ivory:#faf5ee;--plum:#4a3049;--ink:#3d3238;--soft:#8a7a72;--hair:#e8dcd0}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--ivory);color:var(--ink);font-family:'Montserrat',sans-serif;font-weight:300;line-height:1.75}
header{text-align:center;padding:34px 5vw 0}
header .stem{margin:0 auto 14px;display:block}
header h1{font-family:'Italiana',serif;font-weight:400;font-size:2.8rem;letter-spacing:.14em;color:var(--plum)}
header p{font-size:.68rem;letter-spacing:.44em;text-transform:uppercase;color:var(--rose);margin-top:8px}
nav{margin-top:24px;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:12px 0}
nav a{color:var(--ink);text-decoration:none;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;margin:0 18px}
nav a:hover{color:var(--rose)}
.hero{text-align:center;padding:66px 6vw 54px}
.hero .over{font-family:'Italiana',serif;font-style:italic;font-size:1.25rem;color:var(--sage);letter-spacing:.06em}
.hero h2{font-family:'Italiana',serif;font-weight:400;font-size:3.5rem;line-height:1.12;color:var(--plum);max-width:680px;margin:16px auto}
.hero p{max-width:480px;margin:0 auto;color:var(--soft)}
.btn{display:inline-block;margin-top:30px;background:var(--plum);color:#fff;text-decoration:none;padding:15px 36px;border-radius:999px;font-size:.74rem;letter-spacing:.26em;text-transform:uppercase;font-weight:500}
.link{display:inline-block;margin-left:18px;color:var(--plum);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--rose);padding-bottom:3px}
.collections{padding:10px 5vw 60px}
.sec{text-align:center;margin-bottom:34px}
.sec h2{font-family:'Italiana',serif;font-weight:400;font-size:2.2rem;color:var(--plum)}
.sec p{color:var(--soft);font-size:.92rem}
.arch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1020px;margin:0 auto}
.arch{border:1px solid var(--hair);border-radius:999px 999px 12px 12px;padding:52px 28px 34px;text-align:center;background:#fff}
.arch.rose{background:#f7e9e2}.arch.sage{background:#eef0e6}.arch.plum{background:#f3eaf2}
.bloom{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.arch h3{font-family:'Italiana',serif;font-weight:400;font-size:1.65rem;color:var(--plum);letter-spacing:.04em}
.arch p{color:var(--soft);font-size:.92rem;margin-top:10px}
.price{margin-top:18px;font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;color:var(--plum);font-weight:500}
.sub-band{background:var(--sage);color:#fff;padding:50px 6vw;text-align:center}
.sub-band h2{font-family:'Italiana',serif;font-weight:400;font-size:2.3rem}
.sub-band p{max-width:500px;margin:12px auto 0;color:#eef2e4}
.sub-band .btn{background:#fff;color:var(--plum)}
.sub-band .amt{font-size:1rem;letter-spacing:.1em}
.delivery{padding:54px 6vw;text-align:center;max-width:760px;margin:0 auto}
.delivery h2{font-family:'Italiana',serif;font-weight:400;font-size:2rem;color:var(--plum)}
.delivery p{color:var(--soft);margin-top:12px}
.towns{margin-top:20px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.towns span{border:1px solid var(--sage);color:var(--sage);border-radius:999px;padding:6px 16px;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500}
.story{padding:20px 6vw 60px;max-width:700px;margin:0 auto;text-align:center}
.story h2{font-family:'Italiana',serif;font-weight:400;font-size:2rem;line-height:1.3;color:var(--plum)}
.story p{color:var(--soft);margin-top:16px}
.reviews{padding:56px 5vw;background:#fff;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1020px;margin:28px auto 0}
.rev{text-align:center;padding:0 10px}
.stars{color:var(--rose);letter-spacing:.24em}
.rev p{font-style:italic;color:#5a4a52;margin:12px 0;font-size:.98rem}
.rev cite{font-style:normal;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.visit{padding:54px 5vw;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;text-align:center;max-width:1020px;margin:0 auto}
.visit h4{font-size:.7rem;letter-spacing:.34em;text-transform:uppercase;color:var(--rose);margin-bottom:10px;font-weight:500}
footer{background:var(--plum);color:#e8d8e4;padding:26px 5vw;text-align:center;font-size:.76rem;letter-spacing:.2em;text-transform:uppercase}
@media(max-width:820px){.arch-grid,.rev-grid,.visit{grid-template-columns:1fr}header h1{font-size:2rem}.hero h2{font-size:2.4rem}nav a{margin:0 8px}.link{display:block;margin:18px auto 0;width:fit-content}}
