
  :root{
    --botanical-bg: url('assets/img-3fd9d9d7.jpg');
    --sage: #5B6B7A;
    --forest: #2F3A44;
    --rose: #B8836A;
    --cream: #F5F0E4;
    --cream-deep: #EAE1CC;
    --ink: #2A2A28;
    --line: rgba(47,58,68,0.16);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Poppins', sans-serif;
    background:var(--cream);
    color:var(--ink);
    -webkit-font-smoothing:antialiased;
  }
  .quote{
    font-family:'Cormorant Garamond', serif;
    font-style:italic;
    font-weight:500;
  }

  /* ---- Nav / tab switcher (mockup only) ---- */
  .mockup-tabs{
    position:sticky; top:0; z-index:50;
    display:flex; justify-content:center; gap:0;
    background-image:var(--botanical-bg);
    background-size:cover; background-position:center;
    padding:14px 0;
  }
  .mockup-tabs::before{
    content:''; position:absolute; inset:0;
    background:rgba(169,184,154,0.9);
  }
  .mockup-tabs > *{ position:relative; z-index:1; }
  .mockup-tabs button{
    font-family:'Poppins',sans-serif;
    font-size:13px; letter-spacing:0.08em; text-transform:uppercase;
    background:none; border:none; color:rgba(47,58,68,0.6);
    padding:8px 26px; cursor:pointer; border-bottom:2px solid transparent;
    transition:all .25s ease;
  }
  .mockup-tabs button.active{ color:#2F3A44; border-bottom:2px solid var(--rose); }
  .mockup-tabs button:hover{ color:#2F3A44; }

  .page{ display:block; }
  .stack-divider{
    max-width:1400px; margin:0 auto; padding:50px 60px 0;
    display:flex; align-items:center; gap:18px;
  }
  .stack-divider .line{ flex:1; height:1px; background:var(--line); }
  .stack-divider .label{
    font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--rose); font-weight:500; white-space:nowrap;
  }

  /* ---- Site nav ---- */
  .sitenav{
    display:flex; align-items:center; justify-content:space-between;
    padding:28px 60px;
    max-width:1400px; margin:0 auto;
  }
  .wordmark{
    font-family:'Cormorant Garamond', serif;
    font-style:italic; font-weight:500;
    font-size:26px; color:var(--forest); letter-spacing:0.02em;
  }
  .navlinks{ display:flex; gap:36px; }
  .navlinks a{
    font-size:12.5px; letter-spacing:0.09em; text-transform:uppercase;
    color:var(--ink); text-decoration:none; opacity:0.75;
    padding-bottom:4px; border-bottom:1px solid transparent;
  }
  .navlinks a:hover{ opacity:1; border-bottom:1px solid var(--rose); }

  /* ---- HERO ---- */
  .hero{
    display:grid; grid-template-columns:1.05fr 0.95fr;
    align-items:stretch;
    max-width:1400px; margin:10px auto 0; padding:0 60px 40px;
    gap:50px;
  }
  .hero-copy{ display:flex; flex-direction:column; justify-content:center; padding:30px 0 60px; }
  .eyebrow{
    font-size:12px; letter-spacing:0.18em; text-transform:uppercase;
    color:var(--sage); font-weight:500; margin-bottom:22px;
    display:flex; align-items:center; gap:12px;
  }
  .eyebrow::before{
    content:''; width:26px; height:1px; background:var(--sage);
  }
  .hero-name{
    font-weight:300; font-size:56px; line-height:1.05; color:var(--forest);
    margin-bottom:18px; letter-spacing:-0.01em;
  }
  .hero-titles{
    font-size:14.5px; color:var(--ink); opacity:0.72; line-height:1.9;
    font-weight:400; margin-bottom:30px; max-width:430px;
  }
  .hero-titles b{ color:var(--forest); font-weight:500; opacity:1; }
  .hero-quote{
    font-size:26px; color:var(--forest); line-height:1.4;
    margin-bottom:38px; max-width:420px;
  }
  .hero-ctas{ display:flex; gap:16px; flex-wrap:wrap; }
  .btn{
    font-family:'Poppins',sans-serif; font-size:12.5px; letter-spacing:0.08em; text-transform:uppercase;
    padding:15px 30px; border-radius:16px; text-decoration:none; cursor:pointer;
    transition:all .25s ease; display:inline-block;
  }
  .btn-primary{ background:#A9B89A; color:#2F3A44; border:1px solid #A9B89A; }
  .btn-primary:hover{ background:#94A585; }
  .btn-botanical{
    background-image: linear-gradient(rgba(169,184,154,0.72), rgba(169,184,154,0.72)), url('assets/img-3fd9d9d7.jpg');
    background-size:cover; background-position:center;
    color:#2F3A44; border:1px solid transparent;
  }
  .btn-botanical:hover{ opacity:0.9; }
  .btn-secondary{ background:transparent; color:var(--forest); border:1px solid var(--line); }
  .btn-secondary:hover{ border-color:var(--forest); }

  .hero-photo{
    position:relative; overflow:hidden; border-radius:16px;
    background:var(--cream-deep);
    aspect-ratio:4/5;
  }
  .hero-photo img{
    width:100%; height:100%; object-fit:cover; object-position:top center;
    display:block;
  }
  .hero-photo::after{
    content:''; position:absolute; inset:0;
    border:1px solid rgba(255,255,255,0.25);
    pointer-events:none;
  }
  .leaf-mark{
    position:absolute; bottom:26px; left:26px;
    width:46px; height:46px; opacity:0.9;
  }

  /* ---- offer strip ---- */
  .offer-strip{
    border-top:1px solid var(--line); border-bottom:1px solid var(--line);
    background:var(--cream-deep);
  }
  .offer-inner{
    max-width:1400px; margin:0 auto; padding:46px 60px;
    display:grid; grid-template-columns:repeat(3,1fr); gap:50px;
  }
  .offer-item .num{
    font-family:'Cormorant Garamond',serif; font-style:italic;
    font-size:15px; color:var(--rose); margin-bottom:10px; display:block;
  }
  .offer-item h3{
    font-weight:500; font-size:17px; color:var(--forest); margin-bottom:10px;
  }
  .offer-item p{
    font-size:13.5px; line-height:1.75; opacity:0.72; font-weight:300;
  }

  /* ---- signup ---- */
  .signup{
    max-width:1400px; margin:0 auto; padding:80px 60px;
    display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center;
  }
  .signup h2{
    font-weight:300; font-size:32px; color:var(--forest); margin-bottom:16px; line-height:1.25;
  }
  .signup p{ font-size:14.5px; line-height:1.8; opacity:0.75; max-width:420px; font-weight:300;}
  .signup-form{ display:flex; gap:0; max-width:440px; border-radius:8px; overflow:hidden; }
  .signup-form input{
    flex:1; padding:15px 18px; border:1px solid var(--line); border-right:none;
    font-family:'Poppins',sans-serif; font-size:13px; background:#fff;
  }
  .signup-form button{
    padding:15px 26px; color:#fff; border:none;
    font-size:12px; letter-spacing:0.08em; text-transform:uppercase; cursor:pointer;
    background-image: linear-gradient(rgba(169,184,154,0.72), rgba(169,184,154,0.72)), var(--botanical-bg);
    background-size:cover; background-position:center;
  }

  footer{
    text-align:center; padding:34px; font-size:11.5px; letter-spacing:0.06em;
    color:var(--forest); opacity:0.55; border-top:1px solid var(--line);
  }

  /* ---- ABOUT PAGE ---- */
  .about-hero{
    max-width:1400px; margin:0 auto 0; padding:10px 60px 40px;
    display:grid; grid-template-columns:0.85fr 1.15fr; gap:70px; align-items:center;
  }
  .about-photo{
    position:relative; border-radius:16px; overflow:hidden; background:var(--cream-deep);
    aspect-ratio:3/4;
  }
  .about-photo img{ width:100%; height:100%; object-fit:cover; object-position:top center; }
  .about-hero-copy .eyebrow{ margin-bottom:22px; }
  .about-quote{
    font-size:34px; color:var(--forest); line-height:1.35; margin-bottom:22px; max-width:520px;
  }
  .about-lede{
    font-size:14.5px; line-height:1.9; opacity:0.72; max-width:480px; font-weight:300;
  }

  .stat-strip{
    max-width:980px; margin:0 auto; padding:0 60px 40px;
    display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
    border-bottom:1px solid var(--line);
  }
  .stat-strip .stat{ text-align:center; }
  .stat-strip .stat .num{
    font-family:'Cormorant Garamond', serif; font-weight:500; font-style:normal;
    font-size:48px; color:var(--forest); line-height:1;
  }
  .stat-strip .stat .label{
    font-size:11.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--rose);
    font-weight:500; margin-top:8px;
  }

  .about-sections{ max-width:980px; margin:0 auto; padding:20px 60px 100px; }
  .story-row{
    display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:center;
    margin-bottom:64px;
  }
  .story-row.reverse{ grid-template-columns:1.15fr 0.85fr; }
  .story-row.reverse .story-image{ order:2; }
  .story-row.reverse .story-text{ order:1; }
  .story-image{
    aspect-ratio:4/5; border-radius:16px; overflow:hidden; position:relative;
    background:var(--cream-deep);
  }
  .story-image img{ width:100%; height:100%; object-fit:cover; display:block; }
  .story-image .story-caption{
    position:absolute; bottom:20px; left:20px;
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:16px; color:#fff;
    text-shadow:0 2px 10px rgba(0,0,0,0.3);
  }
  .story-text h3{
    font-weight:400; font-size:26px; color:var(--forest); margin-bottom:16px; line-height:1.25;
  }
  .story-text p{
    font-size:14.5px; line-height:1.9; opacity:0.78; font-weight:300; margin-bottom:14px;
  }
  .story-text .links{ margin-top:10px; display:flex; gap:22px; flex-wrap:wrap; }
  .story-text .links a{
    font-size:12px; letter-spacing:0.06em; text-transform:uppercase; color:var(--forest);
    text-decoration:none; border-bottom:1px solid var(--rose); padding-bottom:2px;
  }

  /* ---- RETREATS LISTING ---- */
  .retreats-hero{
    position:relative; margin:0 0 20px; padding:110px 60px;
    text-align:center; overflow:hidden;
    background-size:cover; background-position:center;
  }
  .retreats-hero::before{
    content:''; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(120,135,105,0.12), rgba(120,135,105,0.32));
  }
  .retreats-hero > *{ position:relative; z-index:1; text-shadow:0 2px 12px rgba(40,50,35,0.55); }
  .retreats-hero h1{
    font-family:'Cormorant Garamond', serif; font-weight:500; font-style:normal;
    letter-spacing:0.06em; text-transform:uppercase;
    font-size:44px; color:#fff; margin-bottom:14px; text-shadow:0 2px 14px rgba(40,50,35,0.55);
    border-bottom:1px solid rgba(255,255,255,0.5); display:inline-block; padding-bottom:22px;
  }
  .retreats-hero p{ font-size:14.5px; color:#fff; opacity:0.9; font-weight:300; letter-spacing:0.08em; }

  .retreat-cards{
    max-width:1400px; margin:0 auto; padding:50px 40px 100px;
    display:grid; grid-template-columns:repeat(3,1fr); gap:28px;
  }
  .retreat-card-wrap{ display:flex; flex-direction:column; align-items:center; gap:0; }
  .retreat-card{
    background:var(--cream-deep); padding:48px 32px; text-align:center;
    display:flex; flex-direction:column; align-items:center;
    border-radius:16px; width:100%; flex:1;
    box-shadow:0 10px 30px rgba(47,58,68,0.06);
  }
  .retreat-card h3{
    font-family:'Cormorant Garamond', serif; font-weight:500; font-style:normal;
    letter-spacing:0.08em; text-transform:uppercase;
    font-size:28px; color:var(--forest); margin-bottom:22px;
  }
  .retreat-card-dates{
    font-size:13px; color:var(--ink); opacity:0.7; margin-bottom:24px;
  }
  .retreat-card-body{ padding:0; display:flex; flex-direction:column; align-items:center; }
  .retreat-card-body p{
    font-size:14px; line-height:1.85; opacity:0.72; font-weight:300;
    max-width:340px; margin-bottom:14px;
  }
  .retreat-card-price{
    font-size:13.5px; color:var(--forest); margin:10px 0 4px;
  }
  .retreat-card-price b{ font-weight:500; }
  .retreat-card-link{
    font-family:'Poppins',sans-serif; font-size:12px; letter-spacing:0.1em; text-transform:uppercase;
    color:#fff; background:var(--rose); text-decoration:none;
    padding:14px 34px; border-radius:6px; transition:opacity .2s ease;
    margin-top:28px; display:inline-block;
  }
  .retreat-card-link:hover{ opacity:0.85; }

  /* ---- RETREAT DETAIL PAGE ---- */
  .rd-hero{
    max-width:1400px; margin:0 auto; padding:10px 60px 0;
  }
  .rd-back{
    display:inline-block; font-size:12px; letter-spacing:0.06em; text-transform:uppercase;
    color:var(--forest); opacity:0.6; text-decoration:none; margin-bottom:24px; cursor:pointer;
  }
  .rd-banner{
    aspect-ratio:21/8; border-radius:16px; overflow:hidden;
    background:linear-gradient(135deg, var(--sage), var(--cream-deep));
    display:flex; align-items:flex-end; padding:40px; margin-bottom:44px;
    position:relative;
  }
  .rd-banner-tag{
    font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:#2F3A44;
    background:rgba(169,184,154,0.9); padding:8px 16px; border-radius:16px;
  }
  .rd-title-block{ max-width:1400px; margin:0 auto; padding:0 60px 40px; }
  .rd-meta{
    display:flex; gap:26px; flex-wrap:wrap; font-size:12.5px; letter-spacing:0.06em;
    text-transform:uppercase; color:var(--rose); font-weight:500; margin-bottom:20px;
  }
  .rd-title-block h1{
    font-weight:300; font-size:48px; color:var(--forest); margin-bottom:16px; line-height:1.1;
  }
  .rd-title-block .quote{ font-size:20px; color:var(--forest); opacity:0.85; max-width:600px; }

  .rd-body-copy{
    max-width:1400px; margin:0 auto; padding:0 60px 50px;
    display:grid; grid-template-columns:1.3fr 0.9fr; gap:70px; align-items:start;
  }
  .rd-body-copy p{
    font-size:14.5px; line-height:1.95; opacity:0.78; font-weight:300; margin-bottom:16px;
  }
  .rd-sidebar{
    background:var(--cream-deep); border-radius:16px; padding:32px; position:sticky; top:90px;
  }
  .rd-sidebar .price-from{ font-size:12px; letter-spacing:0.06em; text-transform:uppercase; opacity:0.6; margin-bottom:6px; }
  .rd-sidebar .price-value{ font-size:32px; font-weight:300; color:var(--forest); margin-bottom:4px; }
  .rd-sidebar .price-sub{ font-size:12.5px; opacity:0.6; margin-bottom:24px; }
  .rd-sidebar .btn-primary{ width:100%; text-align:center; margin-bottom:12px; }
  .rd-sidebar .btn-secondary{ width:100%; text-align:center; }

  .rd-includes{ max-width:1400px; margin:0 auto; padding:20px 60px 90px; }
  .rd-includes h2{ font-weight:300; font-size:26px; color:var(--forest); margin-bottom:28px; }
  .includes-grid{
    display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  }
  .includes-item{
    display:flex; gap:14px; align-items:flex-start; padding:20px 0; border-top:1px solid var(--line);
  }
  .includes-item .dot{
    width:6px; height:6px; border-radius:50%; background:var(--rose); margin-top:7px; flex-shrink:0;
  }
  .includes-item p{ font-size:13.5px; line-height:1.7; opacity:0.75; font-weight:300; }

  .rd-rooms{ max-width:1400px; margin:0 auto; padding:0 60px 100px; }
  .rd-rooms h2{ font-weight:300; font-size:26px; color:var(--forest); margin-bottom:8px; }
  .rd-rooms .sub{ font-size:13.5px; opacity:0.6; margin-bottom:30px; }
  .photo-break{
    max-width:1400px; margin:0 auto; padding:0 60px 60px;
  }
  .photo-break .frame{
    aspect-ratio:21/9; border-radius:16px; overflow:hidden;
    background:linear-gradient(135deg, var(--sage), var(--cream-deep) 60%, var(--rose));
    display:flex; align-items:flex-end; padding:36px; position:relative;
  }
  .photo-break .caption{
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:20px;
    color:#fff; text-shadow:0 2px 12px rgba(0,0,0,0.25);
  }
  .villa-gallery{
    max-width:1400px; margin:0 auto; padding:0 60px 60px;
  }
  .villa-gallery-track{
    display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory;
    padding-bottom:14px; -webkit-overflow-scrolling:touch;
  }
  .villa-gallery-track::-webkit-scrollbar{ height:6px; }
  .villa-gallery-track::-webkit-scrollbar-thumb{ background:var(--line); border-radius:10px; }
  .villa-gallery-item{
    flex:0 0 auto; width:380px; aspect-ratio:4/3; border-radius:16px; overflow:hidden;
    scroll-snap-align:start; background:var(--cream-deep); position:relative;
  }
  .villa-gallery-item img{ width:100%; height:100%; object-fit:cover; display:block; }
  .villa-gallery-item .g-caption{
    position:absolute; bottom:16px; left:16px;
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:15px;
    color:#fff; text-shadow:0 2px 10px rgba(0,0,0,0.35);
  }
  .icon-grid{
    display:grid; grid-template-columns:repeat(3,1fr); gap:32px 28px; margin-top:32px;
  }
  .icon-grid .icon-item{ display:flex; flex-direction:column; gap:8px; }
  .icon-grid .icon-item .mark{
    font-family:'Cormorant Garamond', serif; font-style:italic; font-size:22px; color:var(--rose);
  }
  .icon-grid .icon-item p{
    font-size:13px; line-height:1.65; opacity:0.72; font-weight:300; max-width:260px;
  }
  .section-lead{
    font-size:12px; letter-spacing:0.12em; text-transform:uppercase; color:var(--rose);
    font-weight:500; margin-bottom:10px; display:block;
  }
  .rd-includes h2, .rd-rooms h2{ margin-bottom:6px; }
  .rd-includes, .rd-rooms{ padding-top:60px; padding-bottom:60px; }
  .rd-rooms .disclaimer{
    font-size:12px; opacity:0.55; font-style:italic; margin-top:8px; max-width:600px;
  }
  .itinerary-accordion{ margin-top:24px; }
  .itin-day{ border-top:1px solid var(--line); }
  .itin-day:last-child{ border-bottom:1px solid var(--line); }
  .itin-day summary{
    list-style:none; cursor:default; padding:22px 4px;
    display:flex; align-items:center; justify-content:space-between;
  }
  .itin-day summary::-webkit-details-marker{ display:none; }
  .itin-day summary .day-label{
    font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--rose); font-weight:500;
  }
  .itin-day summary .day-title{
    font-size:17px; color:var(--forest); font-weight:400; margin-left:18px;
  }
  .itin-day summary .day-summary-text{
    font-size:12.5px; opacity:0.6; margin-left:auto; margin-right:18px; font-weight:300;
  }
  .itin-day summary .chevron{ display:none; }
  .itin-day-body{ padding:0 4px 26px; }
  .itin-row{ display:flex; gap:20px; padding:8px 0; }
  .itin-row .time{ font-size:12px; color:var(--rose); min-width:130px; font-weight:500; }
  .itin-row .activity{ font-size:13.5px; opacity:0.78; font-weight:300; }
  .room-tiers{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
  .room-tier{
    border:1px solid var(--line); border-radius:16px; background:#fff; overflow:hidden;
  }
  .room-tier.featured{ border-color:var(--rose); }
  .room-tier .tier-photo{ aspect-ratio:4/3; background:var(--cream-deep); overflow:hidden; }
  .room-tier .tier-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
  .room-tier .tier-body{ padding:22px 22px 26px; }
  .room-tier .tier-name{ font-size:14px; font-weight:500; color:var(--forest); margin-bottom:10px; }
  .room-tier .tier-price{ font-size:22px; font-weight:300; color:var(--forest); margin-bottom:4px; }
  .room-tier .tier-sub{ font-size:11.5px; opacity:0.55; }

  @media (max-width: 900px){
    .sitenav{ padding:22px 24px; }
    .navlinks{ display:none; }
    .hero, .about-hero{ grid-template-columns:1fr; padding:0 24px 40px; gap:34px; }
    .hero-photo{ order:-1; aspect-ratio:4/5; }
    .hero-name{ font-size:38px; }
    .offer-inner{ grid-template-columns:1fr; padding:36px 24px; gap:30px; }
    .signup{ grid-template-columns:1fr; padding:56px 24px; }
    .about-sections{ padding:10px 24px 70px; }
    .story-row, .story-row.reverse{ grid-template-columns:1fr; gap:20px; margin-bottom:44px; }
    .story-row.reverse .story-image{ order:0; }
    .story-row.reverse .story-text{ order:0; }
    .story-image{ aspect-ratio:16/10; }
    .stat-strip{ grid-template-columns:1fr; gap:20px; padding:10px 24px 40px; }
    .hero-stats{ gap:22px; flex-wrap:wrap; }
    .retreat-cards{ grid-template-columns:1fr; padding:30px 24px 60px; }
    .retreats-hero{ padding:40px 24px 10px; }
    .rd-hero, .rd-title-block, .rd-body-copy, .rd-includes, .rd-rooms{ padding-left:24px; padding-right:24px; }
    .rd-body-copy{ grid-template-columns:1fr; gap:30px; }
    .rd-sidebar{ position:static; }
    .includes-grid{ grid-template-columns:1fr; }
    .room-tiers{ grid-template-columns:1fr 1fr; }
    .rd-title-block h1{ font-size:32px; }
    .rd-banner{ aspect-ratio:4/5; padding:24px; }
    .icon-grid{ grid-template-columns:1fr 1fr; gap:24px 20px; }
    .photo-break{ padding:0 24px 40px; }
    .photo-break .frame{ aspect-ratio:4/3; }
  }

  a.rd-back{ text-decoration:none; }
  .footer-contact{ margin-top:8px; letter-spacing:0.04em; }
  .footer-contact a{ color:inherit; text-decoration:none; border-bottom:1px solid rgba(47,58,68,0.3); }
  .ev-link{ display:inline-block; margin-top:14px; font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--rose); font-weight:500; text-decoration:none; }
  .signup-form input[type=email]{ flex:1; }

  @media (max-width:900px){
    [style*="grid-template-columns:repeat(3,1fr)"], [style*="grid-template-columns:1fr 1.3fr"], [style*="grid-template-columns:1fr 1fr"]{ grid-template-columns:1fr !important; }
    [style*="aspect-ratio:4/5"]{ aspect-ratio:4/3 !important; }
    section[style*="padding"]{ padding-left:22px !important; padding-right:22px !important; }
    .signup{ grid-template-columns:minmax(0,1fr) !important; padding:50px 22px !important; gap:26px !important; } .signup-form{ max-width:100% !important; } .signup-form input{ min-width:0; }
    .retreats-hero h1{ font-size:30px !important; padding-bottom:14px !important; }
    .signup p{ max-width:100% !important; }
    .sitenav{ padding:20px 22px; } .navlinks{ gap:20px; }
  }
  /* ---- Articles ---- */
  .article-band{ max-width:1400px; margin:0 auto; padding:0 60px; }
  .article-band .band{ aspect-ratio:21/6; border-radius:16px; display:flex; align-items:flex-end; padding:34px 40px; }
  .article-band .band span{ font-family:'Cormorant Garamond', serif; font-style:italic; font-size:30px; color:#fff; text-shadow:0 2px 12px rgba(40,50,35,0.4); }
  .article{ max-width:760px; margin:0 auto; padding:44px 24px 70px; }
  .article .eyebrow{ margin-bottom:18px; }
  .article h1{ font-weight:300; font-size:44px; line-height:1.15; color:var(--forest); margin-bottom:14px; }
  .article .dek{ font-family:'Cormorant Garamond', serif; font-style:italic; font-weight:500; font-size:22px; color:var(--forest); opacity:.85; margin-bottom:34px; line-height:1.4; }
  .article h2{ font-weight:400; font-size:24px; color:var(--forest); margin:38px 0 12px; }
  .article p{ font-size:16px; line-height:1.95; font-weight:300; opacity:.85; margin-bottom:16px; }
  .article ul,.article ol{ margin:0 0 18px 22px; }
  .article li{ font-size:16px; line-height:1.9; font-weight:300; opacity:.85; margin-bottom:8px; }
  .article li b,.article p b{ font-weight:500; }
  .article blockquote{ margin:34px 0 10px; padding:26px 30px; background:var(--cream-deep); border-left:3px solid var(--rose); border-radius:0 12px 12px 0; font-family:'Cormorant Garamond', serif; font-style:italic; font-weight:500; font-size:25px; line-height:1.45; color:var(--forest); }
  .more-reads{ max-width:760px; margin:0 auto; padding:0 24px 70px; }
  .more-reads h3{ font-weight:400; font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--rose); margin-bottom:14px; }
  .more-reads a{ display:block; padding:16px 0; border-top:1px solid var(--line); color:var(--forest); text-decoration:none; font-size:17px; font-weight:300; }
  .more-reads a:last-child{ border-bottom:1px solid var(--line); }
  .back-link{ display:inline-block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--forest); opacity:.6; text-decoration:none; margin-bottom:22px; }
  .thanks{ max-width:620px; margin:0 auto; padding:120px 24px; text-align:center; }
  .thanks h1{ font-weight:300; font-size:38px; color:var(--forest); margin-bottom:14px; }
  .thanks p{ font-size:16px; line-height:1.8; font-weight:300; opacity:.8; margin-bottom:26px; }
  @media (max-width:900px){
    .article-band{ padding:0 20px; } .article-band .band{ aspect-ratio:16/7; padding:22px; } .article-band .band span{ font-size:24px; }
    .article h1{ font-size:32px; } .article .dek{ font-size:19px; }
  }
