
:root{
  --ivory:#faf5ed;--sand:#ede2d3;--paper:#fffdfa;--ink:#25231f;--muted:#777065;
  --dark:#28372f;--gold:#c59a5c;--warm:#d8b28a;--line:#ded3c5;--shadow:0 18px 48px rgba(52,42,32,.10)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}img{display:block;width:100%}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}
.header{position:sticky;top:0;z-index:30;background:rgba(250,245,237,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(222,211,197,.8)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}.brand{display:flex;align-items:center;gap:11px}.sunmark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#e2bb7b 0 25%,#314239 27% 100%);color:white;font-family:Georgia,serif;font-size:1.2rem}.brand strong{display:block;font-family:Georgia,serif;font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase}.brand small{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.11em;text-transform:uppercase}.navlinks{display:flex;gap:22px;flex-wrap:wrap}.navlinks a{font-size:.92rem;font-weight:700;color:#4f4c45}
.hero{padding:48px 0 34px;background:linear-gradient(135deg,#f9f3e9,#eee0ce)}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}.kicker{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#9a774b}.hero h1,.section h2{font-family:Georgia,"Times New Roman",serif;font-weight:500}.hero h1{font-size:clamp(2.6rem,5vw,5.2rem);line-height:1.01;letter-spacing:-.04em;margin:10px 0 18px}.hero h1 em{font-weight:400;color:#826342}.hero-copy>p{font-size:1.06rem;color:var(--muted);max-width:570px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:999px;border:1px solid transparent;font-weight:850;cursor:pointer}.btn-dark{background:var(--dark);color:white}.btn-soft{background:transparent;border-color:#cdbda9}.full{width:100%}.hero-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hero-notes div{padding:12px;border-top:1px solid #d7c8b5}.hero-notes b{display:block;color:#9f7a49;font-size:.78rem}.hero-notes span{font-size:.88rem;color:var(--muted)}.hero-photo{position:relative}.hero-photo img{border-radius:28px;box-shadow:var(--shadow);min-height:480px;object-fit:cover}.photo-label{position:absolute;left:18px;bottom:18px;background:rgba(35,48,40,.92);color:white;padding:13px 15px;border-radius:15px;max-width:290px}.photo-label span{display:block;font-size:.7rem;letter-spacing:.12em;color:#e4c99e}.photo-label b{display:block;margin-top:3px}
.strip{background:#27382f;color:white}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.strip-grid div{padding:22px;border-right:1px solid rgba(255,255,255,.11)}.strip-grid div:last-child{border-right:0}.strip span{display:block;color:#d8ba8e;font-size:.73rem;text-transform:uppercase;letter-spacing:.12em}.strip strong{display:block;margin-top:4px;font-weight:650}
.section{padding:82px 0}.section.warm{background:var(--sand)}.section-title{margin-bottom:32px}.section-title h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.07;margin:8px 0 0}.section-title.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:end}.section-title.split>p{margin:0;color:var(--muted)}.centered{text-align:center;max-width:810px;margin:0 auto 34px}.centered p{color:var(--muted)}
.light-grid{display:grid;grid-template-columns:1.1fr .9fr .75fr;gap:20px;align-items:stretch}.light-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.light-card img{height:260px;object-fit:cover}.light-card.tall img{height:400px}.light-card>div{padding:19px 20px}.light-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#9a774b}.light-card h3{font-family:Georgia,serif;font-size:1.45rem;line-height:1.14;margin:7px 0}.light-card p{margin:0;color:var(--muted)}.quote-card{display:flex;align-items:center;background:#304239;color:white}.quote-card blockquote{font-family:Georgia,serif;font-size:1.7rem;line-height:1.2;margin:10px 0 16px}.quote-card p{color:rgba(255,255,255,.7)}
.mood-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.mood-grid article{background:rgba(255,255,255,.62);border:1px solid #d7c8b7;border-radius:20px;padding:22px}.mood-grid span{font-size:.75rem;color:#9a774b;font-weight:900}.mood-grid h3{font-family:Georgia,serif;font-size:1.35rem;margin:8px 0}.mood-grid p{margin:0;color:var(--muted)}
.planner{display:grid;grid-template-columns:.82fr 1.18fr;gap:20px}.planner-controls,.planner-result{border-radius:24px;padding:24px;border:1px solid var(--line);box-shadow:var(--shadow)}.planner-controls{background:var(--paper)}.planner-controls label,.budget-panel label{display:block;font-weight:850;margin:0 0 7px}.planner-controls select,.budget-panel select{width:100%;padding:13px 14px;margin-bottom:16px;border-radius:14px;border:1px solid var(--line);background:white;font-size:1rem}.planner-result{background:linear-gradient(135deg,#35483e,#26372f);color:white}.result-label{font-size:.72rem;letter-spacing:.14em;font-weight:900;color:#dfc393}.planner-result h3{font-family:Georgia,serif;font-size:2rem;line-height:1.1;margin:12px 0}.planner-result p{color:rgba(255,255,255,.77)}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.tags span{background:rgba(255,255,255,.11);padding:7px 10px;border-radius:999px;font-size:.85rem}
.budget-section{background:#2a3931;color:white}.budget-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:26px;align-items:stretch}.budget-visual{position:relative;border-radius:26px;overflow:hidden}.budget-visual img{height:100%;min-height:590px;object-fit:cover}.budget-caption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(34,45,39,.88);border-radius:18px;padding:17px}.budget-caption span{font-size:.72rem;letter-spacing:.12em;color:#e0c394}.budget-caption h3{font-family:Georgia,serif;font-size:1.7rem;line-height:1.15;margin:5px 0 0}.budget-panel{background:#faf5ed;color:var(--ink);padding:26px;border-radius:26px}.budget-panel h2{font-family:Georgia,serif;font-size:clamp(2.2rem,3.7vw,3.7rem);line-height:1.04;margin:8px 0 14px}.budget-panel>p,.budget-text{color:var(--muted)}.range-head{display:flex;justify-content:space-between;align-items:end;margin-top:22px}.range-head strong{font-family:Georgia,serif;font-size:2.15rem}.budget-panel input[type=range]{width:100%;accent-color:#b88850;margin:14px 0 17px}.budget-title{font-family:Georgia,serif;font-size:1.55rem;margin:20px 0 8px}.budget-lines{display:grid;gap:9px;margin:17px 0}.budget-line{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#eee4d7}.budget-panel small{color:var(--muted)}
.checklist-grid{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:16px}.checklist-grid>div,.checklist-grid>article{border:1px solid var(--line);border-radius:20px;background:var(--paper);padding:21px}.check-title{background:#f0dfca!important}.check-title h2{font-family:Georgia,serif;font-size:2.25rem;line-height:1.04}.checklist-grid article b{color:#a27a49;font-size:.78rem}.checklist-grid article h3{font-family:Georgia,serif;margin:7px 0}.checklist-grid article p{margin:0;color:var(--muted)}
.faq-list{max-width:920px;margin:auto;display:grid;gap:12px}.faq-list details{background:rgba(255,255,255,.7);border:1px solid #d4c7b6;border-radius:16px;padding:0 18px}.faq-list summary{padding:17px 2px;cursor:pointer;font-weight:850}.faq-list p{margin:0 0 17px;color:var(--muted)}
.footer{background:#202d26;color:#faf5ed;padding:52px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr .7fr;gap:26px}.footer-brand{margin-bottom:12px}.footer p,.footer a{color:rgba(255,255,255,.68)}.footer a{display:block;margin:7px 0}.footer h4{margin:0 0 12px}.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);margin-top:28px;padding-top:16px;color:rgba(255,255,255,.55);font-size:.9rem}
.cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:50;max-width:860px;margin:auto;background:#202e27;color:white;border-radius:18px;padding:15px 17px;display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:0 18px 45px rgba(0,0,0,.28)}.cookie span{display:block;color:rgba(255,255,255,.72);font-size:.9rem;margin-top:3px}.cookie button{border:0;border-radius:999px;min-height:42px;padding:0 17px;font-weight:900;cursor:pointer}
@media(max-width:960px){.navlinks{display:none}.hero-grid,.section-title.split,.planner,.budget-grid,.footer-grid{grid-template-columns:1fr}.strip-grid,.mood-grid,.checklist-grid{grid-template-columns:repeat(2,1fr)}.light-grid{grid-template-columns:1fr 1fr}.quote-card{grid-column:1/-1}.hero-photo img{min-height:auto}.budget-visual img{min-height:340px}}
@media(max-width:620px){.wrap{width:min(100% - 26px,1160px)}.section{padding:60px 0}.strip-grid,.mood-grid,.checklist-grid,.light-grid{grid-template-columns:1fr}.hero-notes{grid-template-columns:1fr}.cookie{flex-direction:column;align-items:flex-start}.cookie button{width:100%}}
