:root { --paper:#f4f0e8; --cream:#fffaf1; --ink:#17352f; --muted:#61716c; --clay:#d96a42; --sage:#9bb59b; --line:rgba(23,53,47,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; }
.site-header { height:76px; display:flex; align-items:center; justify-content:space-between; max-width:1240px; margin:0 auto; padding:0 32px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:11px; text-decoration:none; font-weight:750; letter-spacing:-.02em; }
.brand-mark { width:34px; height:34px; display:grid; place-items:center; border:1.5px solid var(--ink); border-radius:50%; font-family:Georgia,serif; font-size:13px; }
.header-link { text-decoration:none; font-size:14px; font-weight:700; border-bottom:1px solid var(--ink); padding-bottom:3px; }
.hero { max-width:1240px; min-height:650px; margin:0 auto; padding:92px 32px 72px; display:grid; grid-template-columns:1.1fr .9fr; gap:76px; align-items:center; }
.kicker { margin:0 0 20px; font-size:12px; line-height:1.4; letter-spacing:.13em; text-transform:uppercase; font-weight:800; color:var(--clay); }
h1,h2,h3 { margin:0; text-wrap:balance; }
h1 { font-family:Georgia,"Times New Roman",serif; font-size:clamp(52px,6.4vw,88px); line-height:.98; letter-spacing:-.055em; font-weight:500; }
h1 em { color:var(--clay); font-weight:500; }
.hero-lede { max-width:620px; margin:30px 0 0; font-size:20px; line-height:1.55; color:#415c56; }
.hero-actions { display:flex; align-items:center; gap:22px; margin-top:36px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:0 22px; border-radius:3px; text-decoration:none; font-size:14px; font-weight:800; }
.button-primary { color:var(--cream); background:var(--ink); }
.microcopy { font-size:13px; color:var(--muted); }
.hero-visual { min-height:470px; position:relative; border-radius:240px 240px 16px 16px; background:#d7dfcf; overflow:hidden; box-shadow:inset 0 0 0 1px rgba(23,53,47,.08); }
.product-hero { display:grid; place-items:center; padding:58px; }
.hero-photo-wrap { width:100%; height:100%; min-height:350px; display:grid; place-items:center; background:#fff; border:1px solid rgba(23,53,47,.1); border-radius:180px 180px 10px 10px; overflow:hidden; }
.hero-photo-wrap img { width:90%; height:90%; object-fit:contain; display:block; }
.moon { position:absolute; width:180px; height:180px; border-radius:50%; background:#f6dfb0; top:52px; right:72px; box-shadow:0 0 80px rgba(246,223,176,.7); }
.bed-frame { position:absolute; left:10%; right:10%; bottom:92px; height:182px; transform:rotate(-3deg); filter:drop-shadow(0 22px 22px rgba(23,53,47,.18)); }
.mattress-layer { position:absolute; left:0; width:100%; border:1px solid rgba(23,53,47,.16); }
.layer-top { height:62px; top:0; background:#fffaf1; border-radius:18px 18px 8px 8px; }
.layer-mid { height:58px; top:58px; background:#e1ad8e; }
.layer-base { height:66px; top:112px; background:#6b8d82; border-radius:0 0 12px 12px; }
.visual-note { position:absolute; padding:13px 16px; background:rgba(255,250,241,.92); border:1px solid rgba(23,53,47,.12); backdrop-filter:blur(8px); }
.visual-note strong,.visual-note span { display:block; }
.visual-note strong { font-family:Georgia,serif; font-size:23px; }
.visual-note span { margin-top:2px; font-size:11px; color:var(--muted); }
.note-one { left:24px; top:110px; }
.note-two { right:22px; bottom:28px; }
.quick-pick { background:var(--cream); padding:96px max(32px,calc((100vw - 1176px)/2)); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.section-heading { display:grid; grid-template-columns:1fr 1.1fr; column-gap:48px; margin-bottom:42px; align-items:end; }
.section-heading .kicker { grid-column:1/-1; }
.section-heading h2 { font-family:Georgia,serif; font-size:clamp(38px,4.3vw,62px); line-height:1; font-weight:500; letter-spacing:-.035em; }
.section-heading>p:last-child { max-width:520px; margin:0 0 3px; font-size:17px; line-height:1.55; color:var(--muted); }
.pick-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); }
.pick-card { min-height:430px; padding:30px; display:flex; flex-direction:column; border-right:1px solid var(--line); }
.pick-card:last-child { border-right:0; }
.pick-card.clay { background:#f0c3ad; }
.pick-card.sage { background:#dbe4d5; }
.pick-card.ink { background:var(--ink); color:var(--cream); }
.pick-number { font-family:Georgia,serif; font-size:14px; opacity:.7; }
.pick-eyebrow { margin:58px 0 10px; font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.14em; }
.pick-card h3 { font-family:Georgia,serif; font-size:33px; line-height:1.05; font-weight:500; }
.pick-summary { min-height:72px; margin:18px 0; line-height:1.5; opacity:.82; }
.fact-list { display:flex; flex-wrap:wrap; gap:7px; list-style:none; padding:0; margin:0 0 26px; }
.fact-list li { border:1px solid currentColor; border-radius:999px; padding:6px 9px; font-size:11px; opacity:.75; }
.text-link { margin-top:auto; width:fit-content; text-decoration:none; font-size:14px; font-weight:850; border-bottom:1px solid currentColor; padding-bottom:4px; }
.affiliate-note { max-width:700px; margin:22px 0 0; font-size:12px; line-height:1.5; color:var(--muted); }
.section-shell { max-width:1240px; margin:0 auto; padding:110px 32px; }
.compact-heading { margin-bottom:52px; }
.comparison-table { border-top:1px solid var(--ink); }
.table-row { display:grid; grid-template-columns:2fr 1.15fr .8fr .65fr .75fr .8fr; gap:20px; align-items:center; min-height:82px; border-bottom:1px solid var(--line); }
.dynamic-table .table-row { grid-template-columns:1.8fr repeat(5,1fr); }
.table-row strong { display:flex; flex-direction:column; gap:4px; font-family:Georgia,serif; font-size:19px; font-weight:500; }
.table-row strong small { color:var(--clay); font-family:Inter,ui-sans-serif,system-ui,sans-serif; font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.table-row span,.table-row a { font-size:13px; line-height:1.35; }
.table-row a { width:fit-content; font-weight:800; text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:3px; }
.table-head { min-height:46px; color:var(--muted); }
.table-head span { font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.source-note { max-width:780px; margin:20px 0 0; font-size:11px; line-height:1.6; color:var(--muted); }
.method-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; background:var(--ink); color:var(--cream); padding:110px max(32px,calc((100vw - 1176px)/2)); }
.method-copy h2,.guide-intro h2,.faq-heading h2,.final-cta h2 { font-family:Georgia,serif; font-size:clamp(40px,5vw,68px); line-height:1; letter-spacing:-.04em; font-weight:500; }
.method-copy>p:last-child { max-width:500px; font-size:17px; line-height:1.65; color:rgba(255,250,241,.68); }
.method-list { list-style:none; padding:0; margin:0; }
.method-list li { display:grid; grid-template-columns:70px 1fr; gap:16px; padding:30px 0; border-top:1px solid rgba(255,255,255,.18); }
.method-list li:last-child { border-bottom:1px solid rgba(255,255,255,.18); }
.method-list li>span { color:#ef9b77; font-family:Georgia,serif; font-size:24px; }
.method-list strong { font-size:18px; }
.method-list p { margin:7px 0 0; color:rgba(255,250,241,.66); line-height:1.55; }
.reviews { padding-bottom:130px; }
.review-stack { display:grid; gap:30px; }
.review-card { display:grid; grid-template-columns:.8fr 1.2fr; min-height:540px; background:var(--cream); border:1px solid var(--line); }
.product-figure { position:relative; min-height:460px; overflow:hidden; padding:28px; margin:0; display:flex; flex-direction:column; justify-content:space-between; }
.product-figure.clay { background:#f0c3ad; }.product-figure.sage{background:#dbe4d5}.product-figure.ink{background:#284a43;color:var(--cream)}
.product-figure>span { font-family:Georgia,serif; font-size:16px; opacity:.7; }
.product-photo-wrap { width:100%; height:340px; margin:14px 0; display:grid; place-items:center; background:#fff; border:1px solid rgba(23,53,47,.1); overflow:hidden; }
.product-photo-wrap img { width:100%; height:100%; object-fit:contain; display:block; }
.product-figure figcaption { font-size:10px; line-height:1.4; letter-spacing:.05em; text-transform:uppercase; opacity:.68; }
.review-content { padding:54px; display:flex; flex-direction:column; align-items:flex-start; }
.review-content .pick-eyebrow { margin:0 0 12px; color:var(--clay); }
.review-content h3 { font-family:Georgia,serif; font-weight:500; font-size:clamp(36px,4vw,58px); line-height:1; letter-spacing:-.035em; }
.review-lede { max-width:680px; margin:20px 0 28px; color:var(--muted); font-size:17px; line-height:1.55; }
.review-columns { display:grid; grid-template-columns:1fr 1fr; gap:36px; width:100%; padding:26px 0; border-top:1px solid var(--line); }
.review-columns h4 { margin:0 0 12px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.review-columns ul { padding:0; margin:0; list-style:none; }.review-columns li{margin:9px 0;padding-left:17px;position:relative;color:#415c56;font-size:14px}.review-columns li:before{content:"+";position:absolute;left:0;color:var(--clay);font-weight:900}
.review-columns p { margin:0 0 10px; color:#415c56; font-size:14px; line-height:1.5; }.review-columns .caveat{font-size:11px;color:var(--muted)}
.review-content .button { margin-top:auto; }
.decision-guide { background:#dfd6c8; padding:110px max(32px,calc((100vw - 1176px)/2)); }
.guide-intro { display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; margin-bottom:60px; }.guide-intro .kicker{margin-top:10px}.guide-intro h2{max-width:760px}
.guide-grid { display:grid; grid-template-columns:repeat(2,1fr); border:1px solid rgba(23,53,47,.24); }
.guide-grid article { min-height:290px; padding:32px; border-right:1px solid rgba(23,53,47,.24); border-bottom:1px solid rgba(23,53,47,.24); }.guide-grid article:nth-child(2n){border-right:0}.guide-grid article:nth-child(n+3){border-bottom:0}
.guide-index { display:block; margin-bottom:54px; font-family:Georgia,serif; color:var(--clay); }
.guide-grid h3 { font-family:Georgia,serif; font-size:30px; font-weight:500; }.guide-grid p{max-width:520px;color:#48625c;line-height:1.6}
.couples-panel { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; padding:70px; background:#f0c3ad; }
.couples-panel h2 { max-width:430px; font-family:Georgia,serif; font-size:clamp(40px,4.5vw,60px); line-height:1; letter-spacing:-.035em; font-weight:500; }
.check-list { list-style:none; margin:0; padding:0; border-top:1px solid rgba(23,53,47,.22); }.check-list li{display:grid;grid-template-columns:38px 1fr;gap:16px;padding:19px 0;border-bottom:1px solid rgba(23,53,47,.22);line-height:1.5}.check-list span{font-family:Georgia,serif;color:var(--clay);font-size:20px}
.faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; }.faq-heading h2{font-size:clamp(40px,4.2vw,60px)}
.faq-list { border-top:1px solid var(--ink); }.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;padding:24px 42px 24px 0;font-family:Georgia,serif;font-size:21px;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:20px;font-family:Inter,sans-serif;color:var(--clay);font-size:24px}.faq details[open] summary:after{content:"−"}.faq details p{margin:0;padding:0 40px 24px 0;max-width:700px;color:var(--muted);line-height:1.65}
.final-cta { padding:120px max(32px,calc((100vw - 1176px)/2)); background:var(--ink); color:var(--cream); }.final-cta h2{margin-bottom:54px}.final-links{border-top:1px solid rgba(255,255,255,.2)}.final-links a{display:grid;grid-template-columns:180px 1fr 40px;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.2);text-decoration:none}.final-links span{color:#ef9b77;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.final-links strong{font-family:Georgia,serif;font-size:26px;font-weight:500}.final-links i{font-size:22px;font-style:normal}
.site-footer { display:grid; grid-template-columns:.65fr 1fr 1.4fr; gap:54px; padding:70px max(32px,calc((100vw - 1176px)/2)) 34px; background:#102824; color:var(--cream); }.site-footer>p,.site-footer div p{margin:0;color:rgba(255,250,241,.6);font-size:13px;line-height:1.6}.site-footer div strong{display:block;margin-bottom:9px;font-size:12px}.site-footer small{grid-column:1/-1;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,250,241,.45)}
.consent-banner[hidden]{display:none}.consent-banner{position:fixed;z-index:9999;left:24px;right:24px;bottom:24px;max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:22px 24px;background:var(--cream);border:1px solid var(--ink);box-shadow:0 18px 50px rgba(16,40,36,.25)}.consent-banner strong{display:block;margin-bottom:6px;font-family:Georgia,serif;font-size:19px}.consent-banner p{margin:0;max-width:740px;color:var(--muted);font-size:13px;line-height:1.5}.consent-banner a{font-weight:750}.consent-actions{display:flex;gap:10px}.consent-actions button{min-height:44px;padding:0 16px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:800;cursor:pointer}.consent-actions .consent-accept{background:var(--ink);color:var(--cream)}
.measurement-settings{margin-top:10px;padding:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
@media (max-width:860px) { .hero{grid-template-columns:1fr;gap:44px;padding-top:62px}.hero-visual{min-height:390px;max-width:620px;width:100%}.product-hero{padding:42px}.hero-photo-wrap{min-height:300px}.section-heading,.method-section,.guide-intro,.couples-panel,.faq{grid-template-columns:1fr;gap:34px}.pick-grid{grid-template-columns:1fr}.pick-card{min-height:340px;border-right:0;border-bottom:1px solid var(--line)}.pick-card:last-child{border-bottom:0}.pick-eyebrow{margin-top:34px}.comparison-table{border-top:0}.table-head{display:none}.table-row,.dynamic-table .table-row{grid-template-columns:repeat(2,1fr);gap:12px;padding:24px 0}.table-row strong{grid-column:1/-1;font-size:24px}.table-row span:before{content:attr(data-label) ": ";font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.review-card{grid-template-columns:1fr}.product-figure{min-height:360px}.guide-intro .kicker{margin:0}.couples-panel{padding:48px}.faq-heading h2{max-width:650px}.site-footer{grid-template-columns:1fr 1fr}.site-footer>.brand{grid-column:1/-1} }
@media (max-width:560px) { .site-header{height:66px;padding:0 20px}.header-link{font-size:12px}.hero{padding:50px 20px 58px}h1{font-size:49px}.hero-lede{font-size:18px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{min-height:330px;border-radius:180px 180px 10px 10px}.product-hero{padding:28px}.hero-photo-wrap{min-height:260px}.moon{width:130px;height:130px;right:36px}.bed-frame{bottom:70px}.note-one{top:80px}.quick-pick,.method-section,.decision-guide,.final-cta{padding:72px 20px}.pick-card{padding:26px}.section-shell{padding:76px 20px}.table-row,.dynamic-table .table-row{grid-template-columns:1fr}.table-row strong{grid-column:1}.review-content{padding:32px 24px}.review-columns,.guide-grid{grid-template-columns:1fr}.guide-grid article,.guide-grid article:nth-child(2n),.guide-grid article:nth-child(n+3){border-right:0;border-bottom:1px solid rgba(23,53,47,.24)}.guide-grid article:last-child{border-bottom:0}.couples-panel{padding:32px 24px}.final-links a{grid-template-columns:1fr 28px}.final-links span{grid-column:1/-1}.site-footer{grid-template-columns:1fr;padding:58px 20px 30px}.site-footer>.brand{grid-column:1}.site-footer small{grid-column:1}.consent-banner{left:12px;right:12px;bottom:12px;grid-template-columns:1fr;gap:16px;padding:18px}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{padding:0 10px} }

.social-landing { background:#f7f3eb; }
.social-header { max-width:1080px; }
.social-trust { font-size:12px; font-weight:750; color:var(--muted); }
.social-hero { max-width:1080px; margin:0 auto; padding:72px 32px 56px; text-align:center; }
.social-hero h1 { max-width:920px; margin:0 auto; font-size:clamp(48px,7vw,82px); }
.social-hero>p:not(.kicker) { max-width:700px; margin:26px auto 0; color:var(--muted); font-size:18px; line-height:1.55; }
.social-signals { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; margin-top:28px; }
.social-signals span { padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:var(--cream); color:#415c56; font-size:11px; font-weight:750; }
.social-products { max-width:1080px; margin:0 auto; padding:0 32px 72px; display:grid; gap:22px; }
.social-product { display:grid; grid-template-columns:minmax(280px,.85fr) 1.15fr; min-height:430px; overflow:hidden; border:1px solid var(--line); background:var(--cream); }
.social-product.clay .social-photo { background:#f0c3ad; }
.social-product.sage .social-photo { background:#dbe4d5; }
.social-product.ink .social-photo { background:#284a43; }
.social-photo { min-height:380px; padding:28px; display:grid; place-items:center; }
.social-photo img { width:100%; height:100%; max-height:360px; object-fit:contain; background:#fff; }
.social-product-copy { padding:42px; display:flex; flex-direction:column; align-items:flex-start; }
.social-product-copy .pick-eyebrow { margin:0 0 10px; color:var(--clay); }
.social-product-copy h2 { font-family:Georgia,serif; font-size:clamp(34px,4vw,50px); line-height:1; font-weight:500; letter-spacing:-.035em; }
.social-best { margin:20px 0 18px; color:#415c56; line-height:1.55; }
.social-best strong,.social-caveat strong { color:var(--ink); }
.social-caveat { margin:0 0 22px; color:var(--muted); font-size:13px; line-height:1.5; }
.social-cta { width:100%; margin-top:auto; text-align:center; }
.social-product-copy small { margin-top:12px; color:var(--muted); font-size:10px; }
.social-explainer { max-width:1080px; margin:0 auto 72px; padding:46px; display:grid; grid-template-columns:.9fr 1.1fr; gap:52px; background:#dfd6c8; }
.social-explainer h2 { font-family:Georgia,serif; font-size:clamp(36px,4vw,52px); line-height:1; font-weight:500; }
.social-explainer>p { margin:24px 0 0; color:#415c56; line-height:1.7; }
.social-explainer a { font-weight:800; }
.social-footer { grid-template-columns:.65fr 1fr 1.2fr; }
@media (max-width:760px) {
  .social-product { grid-template-columns:1fr; }
  .social-photo { min-height:300px; }
  .social-product-copy { padding:30px 24px; }
  .social-explainer { margin:0 20px 60px; grid-template-columns:1fr; gap:20px; padding:32px 24px; }
  .social-footer { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .social-hero { padding:50px 20px 40px; }
  .social-hero h1 { font-size:46px; }
  .social-products { padding:0 20px 58px; }
  .social-photo { min-height:270px; padding:20px; }
  .social-trust { font-size:10px; }
}
