:root{--rose:#DB636F;--rose-deep:#C75A69;--mauve:#A8879D;--blush:#F1D3D6;--ink:#2B2226;--ink-soft:#4E4549;--cream:#FBF5F3;--mist:#F6EEF0;--line:#E8DCE1;--white:#fff}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Jost,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}
body.embed{background:transparent}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.15;margin:.2em 0 .4em}
h1{font-size:clamp(30px,4.5vw,44px)}h2{font-size:clamp(24px,3.4vw,32px)}
a{color:var(--rose-deep)}
.top{padding:22px 16px;text-align:center}.top img{max-width:230px;height:auto}
.foot{padding:28px 16px 40px;text-align:center;font-size:13px;color:var(--ink-soft)}
.wrap{max-width:980px;margin:0 auto;padding:8px 16px 40px}
.eyebrow{font-family:'Pinyon Script',cursive;color:var(--rose-deep);font-size:26px;margin:0}
.lead{color:var(--ink-soft);max-width:640px;margin:0 0 18px}
.q{font-weight:500;margin:22px 0 8px}
.muted{color:var(--ink-soft);font-size:14px}
.progress{height:4px;background:var(--line);margin:0 0 26px;border-radius:2px;overflow:hidden}.progress span{display:block;height:100%;width:25%;background:var(--rose);transition:width .35s}
.step{animation:fade .35s ease}@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.cards{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:8px 0 6px}
.card{position:relative;display:block;background:var(--white);border:1px solid var(--line);cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}
.card input{position:absolute;opacity:0;pointer-events:none}
.card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(43,34,38,.08)}
.card:has(input:checked){border-color:var(--rose);box-shadow:0 0 0 2px var(--rose) inset}
.card.style .ico{display:flex;align-items:center;justify-content:center;aspect-ratio:3/2;background:var(--mist);color:var(--mauve);border-bottom:1px solid var(--line)}
.card.style .ico svg{width:34px;height:34px}
.card.style:has(input:checked) .ico{background:var(--white);color:var(--rose-deep)}
.allrow{display:flex;justify-content:flex-end;margin:4px 0 0}
.selectall.on{background:var(--ink);border-color:var(--ink);color:#fff}
.card .name{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;padding:10px 12px 0}
.card .pal{display:block;font-size:12px;color:var(--ink-soft);padding:2px 12px 12px;line-height:1.35}
.card.space{padding:4px 0}.card.space .name{font-size:19px}
.card:has(input:checked)::after{content:"✓";position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--rose);color:#fff;font-size:14px;line-height:24px;text-align:center}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chips.col{flex-direction:column;align-items:flex-start}
.chip{position:relative;cursor:pointer}.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-block;padding:10px 16px;border:1px solid var(--line);background:var(--white);border-radius:999px;font-size:15px;transition:all .15s}
.chip:hover span{border-color:var(--mauve)}.chip:has(input:checked) span{background:var(--ink);border-color:var(--ink);color:#fff}
.grid2{display:grid;gap:14px;grid-template-columns:1fr 1fr}@media(max-width:640px){.grid2{grid-template-columns:1fr}}
.field span{display:block;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);margin:0 0 6px}
.field input{width:100%;padding:12px 14px;border:1px solid var(--line);background:var(--white);font:inherit;color:var(--ink)}
.field input:focus{outline:none;border-color:var(--rose)}
.check{display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;font-size:14px;color:var(--ink-soft)}.check input{margin-top:4px}
.hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.err{display:none;color:#B3261E;font-size:14px;margin:10px 0 0}.err.show{display:block}
.nav{display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}
.btn{display:inline-block;background:var(--rose);color:#fff;border:1px solid var(--rose);padding:14px 26px;font:inherit;font-size:13px;letter-spacing:2px;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--rose-deep);border-color:var(--rose-deep)}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.small{padding:8px 14px;font-size:11px}.btn[disabled]{opacity:.6;cursor:wait}
.fine{font-size:12px;color:var(--ink-soft);margin:18px 0 0}
/* result */
.result section{padding:26px 0;border-top:1px solid var(--line)}.result .hero{border:0;text-align:center;padding:6px 0 20px}
.boardgrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.boardgrid img,.photogrid img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border:1px solid var(--line)}
.photogrid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.photogrid img{aspect-ratio:3/4}
figure{margin:0}figcaption{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-soft);margin:8px 0 0}
.needs ul,.inc{margin:0 0 10px 18px;padding:0}.needs li,.inc li{margin:4px 0}
.reco{background:var(--white);border:1px solid var(--line);padding:26px!important;margin:26px 0}
.reco .price{color:var(--rose-deep);font-size:.72em;margin-left:8px}.reco .tag{font-style:italic;color:var(--ink-soft);margin:0 0 8px}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}
/* admin */
.admin h1 small{font-size:.5em;color:var(--mauve)}.leads{width:100%;border-collapse:collapse;font-size:13px;background:#fff}.leads th,.leads td{border:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}
.fit{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--mist)}.fit.hot{background:#F8D7DA;color:#8A1C2B}.fit.warm{background:#FBE9C6;color:#6B4A00}.fit.cool{background:#E6E9F2;color:#3A4A7A}
.facts{display:grid;grid-template-columns:150px 1fr;gap:8px 16px;background:#fff;border:1px solid var(--line);padding:18px}.facts dt{font-weight:600}.facts dd{margin:0}.facts pre{white-space:pre-wrap;font:inherit;margin:0}
/* Borrow this Look, the checklist gift and the paid next step (10/7/26) */
.borrow .rentals img{aspect-ratio:4/5}.borrow figcaption{text-transform:none;letter-spacing:0;font-size:13px;line-height:1.4}.borrow figcaption strong{display:block;letter-spacing:1px;text-transform:uppercase;font-size:12px;margin-bottom:2px}
.borrow p,.freebie p{max-width:62ch}.borrow .btn,.freebie .btn{margin-top:4px}
.freebie{background:var(--mist);padding:26px!important;margin:26px 0}
.next .offer{font-size:17px;line-height:1.5;margin:10px 0 4px}.next .offer strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.5em;color:var(--rose-deep);margin-right:6px}
.next .credit{display:block;font-size:14px;color:var(--ink-soft);margin-top:6px}
.checklist .cl{list-style:none;margin:0;padding:0;columns:2;column-gap:28px}.checklist .cl li{break-inside:avoid;margin:0 0 8px}
.checklist .cl label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:15px;line-height:1.4}
.checklist .cl input{margin-top:4px;accent-color:var(--rose);width:16px;height:16px;flex:none}
.checklist .cl input:checked+span{color:var(--ink-soft);text-decoration:line-through}
.checklist .cl.plain{columns:1}.checklist .cl.plain li{margin:0 0 8px;font-size:15px}
@media (max-width:640px){.checklist .cl{columns:1}}
@media print{.top,.foot,.next,.btn{display:none!important}.result section{break-inside:avoid;border:0}}
