/* Styled Spaces — design v2 (whole site)
   Linen white, fern ink, the logo's sage, brass for the showroom tag.
   Headings and UI: Bricolage Grotesque. Designer's notes: Newsreader. */

@font-face{font-family:"Bricolage";src:url("fonts/bricolage.woff2") format("woff2");font-weight:200 800;font-display:swap;}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-400i.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap;}

:root{
  --linen:#F6F7F3;
  --paper:#FFFFFF;
  --sage:#9EAF89;
  --sage-soft:#E4EADB;
  --fern:#2E3B2F;
  --moss:#5F6F55;
  --stone:#DCDFD6;
  --brass:#B08A45;
  --brass-soft:#F1E7D2;
  --ui:"Bricolage", "Helvetica Neue", Arial, sans-serif;
  --note:"Newsreader", Georgia, serif;
  --wrap:1120px;
  --gut:20px;
  /* legacy names still used by inline styles on some pages */
  --white:#FFFFFF;
  --cream:var(--linen);
  --brown-dark:var(--fern);
  --shadow:0 18px 36px -24px rgba(46,59,47,.45);
  --radius:12px;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{background:var(--linen);color:var(--fern);font-family:var(--ui);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;}
img,video{display:block;max-width:100%;height:auto;}
a{color:inherit;}
:focus-visible{outline:3px solid var(--brass);outline-offset:3px;border-radius:4px;}

.wrap,.container{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut);}
body > section{padding:56px 0;}
@media (min-width:760px){body > section{padding:72px 0;}}

/* ---------- type ---------- */
h1,h2,h3,h4{font-family:var(--ui);font-weight:600;letter-spacing:-0.02em;line-height:1.08;color:var(--fern);font-variation-settings:"opsz" 96;}
h1{font-size:clamp(34px,7vw,64px);}
h2{font-size:clamp(26px,4vw,38px);}
h3{font-size:21px;letter-spacing:-0.01em;line-height:1.2;font-variation-settings:"opsz" 24;}
h4{font-size:19px;letter-spacing:-0.01em;line-height:1.25;font-variation-settings:"opsz" 24;}
.note{font-family:var(--note);font-size:19px;line-height:1.55;color:var(--moss);max-width:34em;}
.small{font-size:13.5px;line-height:1.5;color:var(--moss);}
.small a{text-decoration:underline;text-underline-offset:2px;}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--moss);margin-bottom:12px;}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--brass);}
.text-link{font-weight:600;text-decoration:underline;text-decoration-color:var(--sage);text-decoration-thickness:2px;text-underline-offset:4px;}
.text-link:hover{text-decoration-color:var(--fern);}

/* ---------- header ---------- */
.site-head{position:sticky;top:0;z-index:20;background:rgba(246,247,243,.94);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--stone);}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;}
.site-head .logo{flex:none;}
.site-head .logo img{height:38px;width:auto;}
.site-head nav{display:flex;align-items:center;gap:20px;font-size:15px;font-weight:500;}
.site-head nav a{text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap;}
.site-head nav a:hover,.site-head nav a[aria-current="page"]{border-bottom-color:var(--sage);}
.site-head nav a.nav-cta{padding:9px 16px;border:0;border-radius:999px;background:var(--fern);color:#fff;font-weight:600;}
.site-head nav a.nav-cta:hover,.site-head nav a.nav-cta[aria-current="page"]{background:#1f281f;}
.nav-toggle{display:none;width:44px;height:44px;border:0;background:transparent;border-radius:10px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--fern);border-radius:2px;transition:transform .2s ease,opacity .2s ease;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
@media (max-width:980px){
  .nav-toggle{display:flex;}
  .site-head nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gut) 20px;background:var(--linen);border-bottom:1px solid var(--stone);box-shadow:0 20px 30px -24px rgba(46,59,47,.5);}
  .site-head nav.open{display:flex;}
  .site-head nav a{padding:14px 0;border-bottom:1px solid var(--stone);font-size:17px;}
  .site-head nav a[aria-current="page"]{border-bottom-color:var(--stone);color:var(--moss);}
  .site-head nav a.nav-cta{margin-top:14px;text-align:center;padding:14px 16px;}
}

/* bare header used by the link-in-bio page */
.header-solo{background:var(--linen);border-bottom:1px solid var(--stone);}
.nav-wrap{max-width:var(--wrap);margin:0 auto;padding:14px var(--gut);display:flex;align-items:center;justify-content:space-between;}
.logo img{height:38px;width:auto;}

/* ---------- footer ---------- */
.site-foot{margin-top:72px;background:var(--fern);color:#E7ECE0;padding:48px 0 28px;}
.site-foot a{text-decoration:none;}
.site-foot a:hover{text-decoration:underline;text-underline-offset:3px;}
.foot-grid{display:grid;gap:28px;}
.foot-brand .logo{display:inline-block;background:var(--linen);border-radius:10px;padding:8px 12px;}
.foot-brand .logo img{height:32px;}
.foot-brand .note{color:#C9D3BF;font-size:17px;margin-top:14px;max-width:24em;}
.foot-col h3{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-bottom:12px;}
.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:15px;}
.footer-social{display:flex;gap:10px;margin-top:18px;}
.footer-social a{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(231,236,224,.35);}
.footer-social a:hover{background:var(--sage);border-color:var(--sage);}
.footer-social svg{width:17px;height:17px;fill:currentColor;}
.foot-legal{margin-top:36px;padding-top:20px;border-top:1px solid rgba(231,236,224,.18);font-size:13px;color:#B9C4AE;display:flex;flex-wrap:wrap;gap:6px 24px;justify-content:space-between;}
@media (min-width:760px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;}}

/* ---------- buttons ---------- */
.btn,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;background:var(--fern);color:#fff;text-decoration:none;font-family:var(--ui);font-weight:600;font-size:15.5px;border:2px solid var(--fern);cursor:pointer;transition:background .2s ease,color .2s ease;}
.btn:hover{background:#1f281f;}
.btn.ghost,.btn-outline{background:transparent;color:var(--fern);}
.btn.ghost:hover,.btn-outline:hover{background:var(--fern);color:#fff;}
.cta-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}

/* ---------- the showroom tag (signature element) ---------- */
.tag,.product-badge{position:absolute;left:14px;bottom:-18px;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 16px 10px 12px;background:var(--sage-soft);color:var(--fern);
  clip-path:polygon(14px 0,100% 0,100% 100%,14px 100%,0 50%);
  font-weight:600;font-size:15px;letter-spacing:-0.005em;line-height:1.2;transform:rotate(-2.5deg);transform-origin:left center;
  filter:drop-shadow(0 6px 10px rgba(46,59,47,.18));}
.tag::before,.product-badge::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--linen);box-shadow:inset 0 0 0 2px var(--brass);flex:none;margin-left:6px;}
.tag .num{font-variant-numeric:lining-nums;color:var(--moss);font-weight:500;}
.product-badge{top:auto;font-size:14px;}
.product-badge.is-value{background:var(--brass-soft);}

/* ---------- page hero (room pages, guides) ---------- */
body > section.page-hero{display:grid;gap:24px;max-width:var(--wrap);margin:0 auto;padding:32px var(--gut) 8px;align-items:center;}
.page-hero img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;}
.page-hero-content{order:-1;}
.page-hero-content h1{font-size:clamp(36px,7vw,68px);max-width:13ch;}
.page-hero-content p{font-family:var(--note);font-size:19px;line-height:1.55;color:var(--moss);max-width:30em;margin-top:16px;}
@media (min-width:860px){
  body > section.page-hero{grid-template-columns:1fr 1.15fr;gap:48px;padding:56px var(--gut) 16px;}
  .page-hero img{aspect-ratio:5/4;}
}

/* ---------- section heads ---------- */
.section-head{max-width:720px;margin-bottom:32px;}
.section-head p{font-family:var(--note);font-size:18px;color:var(--moss);margin-top:12px;}

/* ---------- guide cards (room pages) ---------- */
.guide-grid{display:grid;gap:40px;}
@media (min-width:700px){.guide-grid{grid-template-columns:repeat(2,1fr);gap:32px;}}
@media (min-width:1000px){.guide-grid{grid-template-columns:repeat(3,1fr);}}
.guide-card{display:flex;flex-direction:column;}
.guide-img{border-radius:12px;overflow:hidden;background:var(--stone);}
.guide-img img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease;}
.guide-card:hover .guide-img img{transform:scale(1.03);}
.guide-card-body{padding-top:18px;display:flex;flex-direction:column;gap:10px;flex:1;}
.guide-card-body p{font-family:var(--note);font-size:17px;color:var(--moss);}
.guide-card-body .btn-outline,.card-link{align-self:flex-start;margin-top:auto;}

/* ---------- article ---------- */
.article-intro{max-width:720px;margin:0 auto;}
.article-intro p{font-family:var(--note);font-size:20px;line-height:1.65;}
.article-intro p + p{margin-top:16px;}
.article-intro p.affiliate-disclosure,.affiliate-disclosure{font-family:var(--ui);font-size:13.5px;line-height:1.5;color:var(--moss);background:var(--sage-soft);border-radius:10px;padding:12px 16px;margin-bottom:28px;}
.affiliate-disclosure em{font-style:normal;}
.affiliate-disclosure a{text-decoration:underline;text-underline-offset:2px;}

.tips-section .section-head{margin-left:auto;margin-right:auto;}
.tip-row{display:grid;gap:22px;align-items:center;padding:36px 0;border-top:1px solid var(--stone);}
.tip-row h3{font-size:clamp(22px,3vw,28px);margin-bottom:14px;}
.tip-row p{font-family:var(--note);font-size:18px;line-height:1.7;color:#3D4A3E;max-width:36em;}
.tip-row p + p{margin-top:14px;}
.tip-row ul{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:14px;font-size:16px;}
.tip-row ul li{position:relative;padding-left:20px;}
.tip-row ul li::before{content:"";position:absolute;left:0;top:.68em;width:10px;height:2px;background:var(--sage);}
.tip-media{border-radius:12px;overflow:hidden;background:var(--stone);}
.tip-media img{width:100%;aspect-ratio:4/3;object-fit:cover;}
@media (min-width:860px){
  .tip-row{grid-template-columns:1.1fr 1fr;gap:56px;padding:48px 0;}
  .tip-row:nth-child(even) .tip-media{order:-1;}
}

.article-conclusion{max-width:820px;margin:48px auto 0;padding:32px;border-radius:14px;background:var(--sage-soft);}
.article-conclusion p{font-family:var(--note);font-size:19px;line-height:1.6;}

/* ---------- product picks ---------- */
.product-cat{margin-top:56px;}
.product-cat:first-of-type{margin-top:8px;}
.product-cat-title{display:flex;align-items:center;gap:14px;font-size:26px;margin-bottom:24px;}
.product-cat-title::after{content:"";flex:1;height:1px;background:var(--stone);}
.product-grid{display:grid;gap:44px 24px;}
@media (min-width:640px){.product-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1000px){.product-grid.is-featured{grid-template-columns:repeat(3,1fr);}}
.product-card{display:flex;flex-direction:column;}
.product-card-img{position:relative;border-radius:12px;background:var(--paper);}
.product-card-img img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;}
.product-card-body{padding:34px 2px 0;display:flex;flex-direction:column;gap:10px;flex:1;}
.product-card-desc{font-family:var(--note);font-size:17px;line-height:1.55;color:var(--moss);}
.product-card-meta{display:none;}
.product-card .btn{align-self:flex-start;margin-top:auto;}
.product-card .btn::after{content:"\2197";font-size:14px;}
@media (min-width:1000px){
  .product-grid:not(.is-featured) .product-card{display:grid;grid-template-columns:240px 1fr;gap:28px;align-items:start;padding:18px;background:var(--paper);border:1px solid var(--stone);border-radius:14px;}
  .product-grid:not(.is-featured) .product-card-img img{aspect-ratio:1/1;}
  .product-grid:not(.is-featured) .product-card-body{padding:6px 0 0;height:100%;}
}
.room-cta{background:var(--fern);}
.room-cta img{opacity:.55;}
.room-cta::after{display:none;}

/* ---------- product (shop-the-video pages) ---------- */
.product{display:flex;flex-direction:column;}
.product .shot{position:relative;display:block;border-radius:8px;background:var(--paper);}
.product .shot img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:8px;}
.product .body{padding:34px 2px 0;display:flex;flex-direction:column;gap:14px;flex:1;}
.product ul{list-style:none;display:flex;flex-direction:column;gap:6px;font-size:15.5px;color:var(--moss);}
.product ul li{padding-left:18px;position:relative;}
.product ul li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:2px;background:var(--sage);}
.product .btn{align-self:flex-start;margin-top:auto;}

.video-intro{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:end;padding:36px 0 28px;}
.video-intro .clip{position:relative;width:112px;aspect-ratio:9/16;border-radius:12px;overflow:hidden;background:var(--fern);}
.video-intro .clip video,.video-intro .clip img{width:100%;height:100%;object-fit:cover;}
.video-intro h1{font-size:clamp(30px,6.4vw,56px);}
.video-intro .note{margin-top:12px;font-size:17px;}
@media (min-width:760px){
  .video-intro{grid-template-columns:200px 1fr;gap:40px;padding:56px 0 40px;}
  .video-intro .clip{width:200px;border-radius:16px;}
  .video-intro .note{font-size:19px;}
}
.disclose{padding:14px 0 6px;border-top:1px solid var(--stone);}
.round{padding-top:40px;}
.round > h2{margin-bottom:22px;}
.round > h2 .of{color:var(--moss);font-weight:400;}
.pair,.trio{display:grid;gap:44px;}
@media (min-width:760px){
  .pair{grid-template-columns:1fr 1fr;gap:32px;}
  .trio{grid-template-columns:repeat(3,1fr);gap:28px;}
}
.more{margin-top:56px;padding:28px;border-radius:12px;background:var(--sage-soft);display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;}
.more p{font-weight:600;font-size:18px;}

/* ---------- videos hub ---------- */
.hub-head{padding:48px 0 32px;max-width:720px;}
.hub-head .note{margin-top:14px;}
.shelf{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 16px;}
@media (min-width:760px){.shelf{grid-template-columns:repeat(4,1fr);gap:40px 24px;}}
.reel{text-decoration:none;display:flex;flex-direction:column;gap:12px;}
.reel .poster{aspect-ratio:9/16;border-radius:12px;overflow:hidden;background:var(--fern);}
.reel .poster img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
.reel:hover .poster img{transform:scale(1.03);}
.reel h3{font-size:18px;}
.reel .count{font-size:14px;color:var(--moss);}

/* ---------- home ---------- */
.home-hero{display:grid;gap:36px;padding:48px 0 24px;align-items:center;}
.home-hero h1{font-size:clamp(42px,8vw,88px);max-width:11ch;}
.home-hero h1 em{font-family:var(--note);font-style:italic;font-weight:400;letter-spacing:-0.01em;color:var(--moss);}
.home-hero .note{margin:18px 0 26px;}
.home-hero .actions{display:flex;flex-wrap:wrap;gap:12px;}
.stack{position:relative;aspect-ratio:1/1;max-height:560px;}
.stack a{position:absolute;width:44%;aspect-ratio:9/16;border-radius:14px;overflow:hidden;box-shadow:0 22px 40px -22px rgba(46,59,47,.55);transition:transform .35s ease;}
.stack a img{width:100%;height:100%;object-fit:cover;}
.stack a:nth-child(1){left:2%;top:40px;transform:rotate(-5deg);}
.stack a:nth-child(2){left:28%;top:0;z-index:2;}
.stack a:nth-child(3){right:2%;top:56px;transform:rotate(5deg);}
.stack a:hover{z-index:3;}
.stack .tag{left:auto;right:-6px;bottom:22px;z-index:4;transform:rotate(3deg);pointer-events:none;}
@media (min-width:900px){
  .home-hero{grid-template-columns:1.05fr 1fr;padding:72px 0 40px;}
  .stack{aspect-ratio:auto;height:560px;}
}
.band{padding:56px 0 8px;}
.band-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;}
.band-head a{font-weight:600;font-size:15px;}
.band-head .note{font-size:17px;margin-top:8px;}
.rooms{display:grid;grid-auto-flow:column;grid-auto-columns:72%;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;}
@media (min-width:760px){.rooms{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);grid-auto-columns:auto;overflow:visible;}}
@media (min-width:1000px){.rooms{grid-template-columns:repeat(4,1fr);}}
.room{position:relative;scroll-snap-align:start;border-radius:12px;overflow:hidden;text-decoration:none;color:#fff;aspect-ratio:4/5;}
.room img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.room:hover img{transform:scale(1.04);}
.room span{position:absolute;left:16px;bottom:14px;z-index:1;font-weight:600;font-size:22px;letter-spacing:-0.01em;text-shadow:0 2px 14px rgba(0,0,0,.45);}
.room::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(20,26,20,.55));}
.guides{display:flex;flex-direction:column;}
body > section.guides{display:block;}
.guide{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;padding:18px 0;border-top:1px solid var(--stone);text-decoration:none;}
.guide:last-child{border-bottom:1px solid var(--stone);}
.guide img{width:120px;aspect-ratio:1;object-fit:cover;border-radius:8px;}
.guide p{font-family:var(--note);color:var(--moss);font-size:16.5px;margin-top:6px;}
.guide:hover h3{text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:4px;}
@media (min-width:760px){.guide{grid-template-columns:200px 1fr;gap:32px;}.guide img{width:200px;aspect-ratio:3/2;}}
.designer{display:grid;gap:24px;align-items:center;padding:28px;border-radius:14px;background:var(--sage-soft);margin-top:56px;}
.designer .note{margin-top:10px;}
.designer img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%;}
.designer .btn{margin-top:18px;}
@media (min-width:860px){.designer{grid-template-columns:1fr 1.2fr;padding:40px;gap:44px;}}
.steps{display:grid;gap:14px;counter-reset:s;}
.steps li{list-style:none;counter-increment:s;padding:20px;border:1px solid var(--stone);border-radius:12px;background:var(--paper);}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font-weight:600;color:var(--brass);font-size:14px;margin-bottom:8px;}
.steps h3{font-size:19px;margin-bottom:6px;}
.steps p{font-family:var(--note);color:var(--moss);font-size:16.5px;}
@media (min-width:760px){.steps{grid-template-columns:repeat(3,1fr);gap:20px;}}

/* ---------- simple pages (about, contact, legal) ---------- */
.simple-page-content{max-width:720px;margin:0 auto;}
.simple-page-content h1{margin-bottom:20px;}
.simple-page-content h2{font-size:24px;margin:36px 0 12px;}
.simple-page-content h3{margin:26px 0 10px;}
.simple-page-content p,.simple-page-content li{font-family:var(--note);font-size:18px;line-height:1.7;color:#3D4A3E;}
.simple-page-content p + p{margin-top:14px;}
.simple-page-content ul,.simple-page-content ol{margin:12px 0 12px 22px;}
.simple-page-content a:not(.btn):not(.btn-outline){text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:3px;}
.simple-page-content.with-image img{border-radius:14px;margin:8px 0 28px;width:100%;aspect-ratio:16/9;object-fit:cover;}
.contact-form{display:flex;flex-direction:column;gap:18px;margin-top:28px;}
.form-group{display:flex;flex-direction:column;gap:6px;}
.form-group label{font-weight:600;font-size:14.5px;}
.form-group input,.form-group textarea{font:inherit;font-size:16px;color:var(--fern);background:var(--paper);border:1px solid var(--stone);border-radius:10px;padding:13px 14px;}
.form-group textarea{min-height:150px;resize:vertical;}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px var(--sage-soft);}
.contact-form .btn{align-self:flex-start;}
.contact-direct{margin-top:28px;font-family:var(--note);font-size:18px;color:var(--moss);}
.contact-direct a{color:var(--fern);text-decoration:underline;}

/* ---------- page-level disclosure strip ---------- */
.disclosure{padding:20px 0;border-top:1px solid var(--stone);font-size:13.5px;line-height:1.55;color:var(--moss);}
.disclosure a{text-decoration:underline;text-underline-offset:2px;}
.disclosure + .site-foot{margin-top:0;}

@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;}}

/* ---------- journal (blog) ---------- */
.journal-head{padding:48px 0 28px;max-width:760px;}
.journal-head .note{margin-top:14px;}
.journal{display:grid;gap:40px;}
@media (min-width:760px){.journal{grid-template-columns:repeat(2,1fr);gap:40px 28px;}}
@media (min-width:1040px){.journal{grid-template-columns:repeat(3,1fr);}}
.entry{display:flex;flex-direction:column;gap:12px;text-decoration:none;}
.entry .cover{position:relative;border-radius:12px;background:var(--paper);}
.entry .cover img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px;transition:transform .5s ease;}
.entry .meta{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--moss);margin-top:22px;}
.entry h2{font-size:24px;line-height:1.15;}
.entry p{font-family:var(--note);font-size:17px;color:var(--moss);}
.entry:hover h2{text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:4px;}

.post-head{max-width:820px;padding:44px 0 24px;}
.post-head h1{font-size:clamp(34px,6.4vw,60px);margin-top:4px;}
.post-head .dek{font-family:var(--note);font-size:21px;line-height:1.5;color:var(--moss);margin-top:18px;max-width:36em;}
.byline{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:20px;font-size:14px;color:var(--moss);}
.byline strong{color:var(--fern);font-weight:600;}
.crumbs{font-size:13.5px;color:var(--moss);padding-top:22px;}
.crumbs a{text-decoration:underline;text-underline-offset:2px;}
.post-hero{position:relative;margin:8px 0 8px;}
.post-hero img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;background:var(--paper);}
.post{max-width:720px;margin:0 auto;}
.post > * + *{margin-top:18px;}
.post h2{font-size:clamp(26px,3.6vw,34px);margin-top:52px;}
.post h3{font-size:22px;margin-top:32px;}
.post p,.post li{font-family:var(--note);font-size:19px;line-height:1.7;color:#33402F;}
.post ul,.post ol{padding-left:22px;display:flex;flex-direction:column;gap:8px;}
.post a:not(.btn){text-decoration:underline;text-decoration-color:var(--sage);text-decoration-thickness:2px;text-underline-offset:3px;}
.post strong{font-weight:600;color:var(--fern);}
.quick{padding:24px 26px;border-radius:14px;background:var(--sage-soft);margin-top:28px!important;}
.quick h2{font-size:15px!important;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--moss);margin:0 0 10px!important;}
.quick ul{gap:10px;}
.quick li{font-size:17.5px;}
.post table{width:100%;border-collapse:collapse;font-size:15.5px;background:var(--paper);border-radius:12px;overflow:hidden;}
.post th,.post td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--stone);vertical-align:top;}
.post th{font-weight:600;background:#EEF1E8;}
.post tr:last-child td{border-bottom:0;}
.table-scroll{overflow-x:auto;border:1px solid var(--stone);border-radius:12px;}
.post .wide{max-width:none;}
.picks{max-width:var(--wrap);margin:40px auto 8px;}
.picks > h2{margin-bottom:22px;}
.pick-note{font-family:var(--note)!important;font-size:16.5px!important;line-height:1.55!important;color:var(--moss)!important;}
.pick-note b{font-family:var(--ui);font-weight:600;color:var(--fern);font-size:14.5px;}
.post-video{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;padding:18px;border:1px solid var(--stone);border-radius:14px;background:var(--paper);}
.post-video video{width:120px;aspect-ratio:9/16;object-fit:cover;border-radius:10px;background:var(--fern);}
.post-video p{font-size:17px!important;}
.callout{border-left:3px solid var(--brass);padding:4px 0 4px 18px;}
.faq details{border-top:1px solid var(--stone);padding:16px 0;}
.faq details:last-child{border-bottom:1px solid var(--stone);}
.faq summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px;}
.faq summary::after{content:"+";color:var(--brass);font-size:22px;line-height:1;}
.faq details[open] summary::after{content:"\2212";}
.faq details p{margin-top:10px;}
.sources{font-size:14.5px;}
.sources li{font-family:var(--ui)!important;font-size:14.5px!important;line-height:1.5!important;color:var(--moss)!important;}
.post-end{max-width:720px;margin:48px auto 0;}
