/* Охота за травами — бренд-хаб. Общий стиль всех страниц. */
:root{
  --paper:#F2EDE1; --paper-2:#F7F3EA; --ink:#1F2A21;
  --sage:#6E7C66; --lingon:#8E3B2E; --ochre:#A98547;
  --line:#d9d1bf; --hair:#c8bfa8; --muted:#5a6154;
  --maxw:980px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:19px; line-height:1.6; -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(rgba(31,42,33,.028) 1px, transparent 1px);
  background-size:4px 4px;
}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 32px}
.roman{font-family:"Forum",Georgia,serif; font-weight:400}
.label{font-family:"PT Sans Narrow",Arial,sans-serif; text-transform:uppercase; letter-spacing:.28em; font-size:12px; color:var(--sage)}
h1,h2,h3{font-weight:400; margin:0; line-height:1.18}
a{color:var(--lingon); text-decoration:none; border-bottom:1px solid rgba(142,59,46,.3)}
a:hover{border-bottom-color:var(--lingon)}
p{margin:0 0 18px}
img{max-width:100%; display:block}

/* NAV */
.topnav{border-bottom:1px solid var(--line); padding:22px 0; background:var(--paper-2)}
.topnav .wrap{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px}
.topnav .brand{display:flex; align-items:center; gap:12px; border-bottom:none}
.topnav .brand b{font-family:"Forum",serif; font-size:19px; letter-spacing:.02em; color:var(--ink)}
.topnav .brand span{font-family:"PT Sans Narrow",sans-serif; font-size:12px; letter-spacing:.1em; color:var(--sage); text-transform:uppercase}
.topnav nav{display:flex; gap:26px; flex-wrap:wrap; font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; letter-spacing:.08em; font-size:13px}
.topnav nav a{color:var(--muted); border-bottom:1px solid transparent}
.topnav nav a:hover, .topnav nav a.active{color:var(--lingon); border-bottom-color:var(--lingon)}

.mark{width:34px;height:34px;flex:none}

/* HERO */
header.hero{padding:80px 0 56px}
header.hero h1{font-family:"Forum",Georgia,serif; font-size:clamp(36px,6.4vw,64px); letter-spacing:.01em; max-width:16ch}
header.hero h1 em{font-style:italic; font-family:"Cormorant Garamond",serif; color:var(--sage)}
header.hero .lede{font-size:clamp(19px,2.2vw,23px); max-width:48ch; margin:26px 0 0; color:var(--muted)}
.eyebrow{font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; letter-spacing:.24em; font-size:13px; color:var(--ochre); margin-bottom:14px; display:block}

.rule{height:1px; background:var(--hair); border:0; margin:0}

/* SECTIONS */
section{padding:56px 0}
.sec-head{max-width:60ch; margin-bottom:34px}
.sec-head h2{font-family:"Forum",serif; font-size:clamp(27px,3.4vw,36px)}
.sec-head p{color:var(--muted); font-size:19px; margin-top:14px}

/* NAV CARDS on home */
.hub-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:22px}
.hub-card{display:block; background:var(--paper-2); border:1px solid var(--line); border-radius:4px; padding:30px 28px; transition:border-color .15s; color:inherit; border-bottom:1px solid var(--line); text-decoration:none}
.hub-card:hover{border-color:var(--lingon)}
.hub-card .num{font-family:"PT Sans Narrow",sans-serif; font-size:13px; letter-spacing:.12em; color:var(--ochre)}
.hub-card h3{font-family:"Forum",serif; font-size:25px; margin:10px 0 10px; border-bottom:none}
.hub-card p{color:var(--muted); font-size:17px; margin:0 0 14px}
.hub-card .go{font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; font-size:13px; letter-spacing:.1em; color:var(--lingon); display:inline-block; margin-top:4px}
.hub-card.soon{opacity:.75}
.hub-card.soon .num{color:var(--muted)}
@media(max-width:680px){.hub-grid{grid-template-columns:1fr}}

/* SKU / PRODUCT CARDS */
.lineup{display:grid; grid-template-columns:repeat(2,1fr); gap:20px}
.sku{border:1px solid var(--line); border-radius:4px; background:var(--paper-2); padding:22px 24px}
.sku .tagline{font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; letter-spacing:.1em; font-size:12px; color:var(--ochre); margin-bottom:6px}
.sku h3{font-family:"Forum",serif; font-size:22px; margin-bottom:6px; border-bottom:none}
.sku .prof{color:var(--muted); font-size:17px; margin:0}
@media(max-width:680px){.lineup{grid-template-columns:1fr}}

/* GENERIC CARD LIST */
.card-list{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.card-list .card{border:1px solid var(--line); border-radius:4px; background:var(--paper-2); padding:24px}
.card-list .card h3{font-family:"Forum",serif; font-size:20px; margin-bottom:8px; border-bottom:none}
.card-list .card p{color:var(--muted); font-size:16px; margin:0}
@media(max-width:780px){.card-list{grid-template-columns:1fr}}

.quiet{background:var(--paper-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}

.cta-band{background:var(--ink); color:#eef1e9; text-align:left}
.cta-band .sec-head h2{color:#fff}
.cta-band .sec-head p{color:#c7cec0}
.btn{display:inline-block; font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; letter-spacing:.1em;
     font-size:14px; border:1px solid #eef1e9; color:#eef1e9; padding:13px 26px; border-radius:2px}
.btn:hover{background:#eef1e9; color:var(--ink)}

.soon-box{border:1px dashed var(--hair); border-radius:4px; padding:40px 32px; text-align:left; background:var(--paper-2)}
.soon-box .label{margin-bottom:10px}
.soon-box h2{font-family:"Forum",serif; font-size:30px; margin-bottom:12px}
.soon-box p{color:var(--muted); margin:0}

footer{background:var(--paper-2); border-top:1px solid var(--line); font-family:"PT Sans Narrow",sans-serif; font-size:13px; color:var(--muted); padding:28px 0}
footer .wrap{display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px}

/* PHOTO HERO */
header.hero.hero-photo{
  position:relative; padding:130px 0 92px; color:#f3efe2;
  background:linear-gradient(175deg, rgba(22,27,18,.38), rgba(18,23,15,.8)), var(--hero-img) center/cover no-repeat;
}
header.hero.hero-photo .eyebrow{color:#dcc789}
header.hero.hero-photo h1{color:#fff; text-shadow:0 1px 18px rgba(0,0,0,.25)}
header.hero.hero-photo h1 em{color:#cfdcbb}
header.hero.hero-photo .lede{color:#e8e5d7}
@media(max-width:680px){header.hero.hero-photo{padding:86px 0 64px}}

/* PHOTO GRID / GALLERY */
.photo-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:8px}
.photo-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.photo-grid figure{margin:0; border-radius:4px; overflow:hidden; border:1px solid var(--line); background:var(--paper-2)}
.photo-grid img{width:100%; height:100%; object-fit:cover; aspect-ratio:4/3; display:block}
.photo-grid figure.tall img{aspect-ratio:3/4}
.photo-grid figure.wide img{aspect-ratio:16/9}
.photo-grid figcaption{padding:10px 14px 14px; font-family:"PT Sans Narrow",sans-serif; font-size:13px; color:var(--muted)}
@media(max-width:780px){.photo-grid,.photo-grid.cols-2{grid-template-columns:1fr}}

/* CARD WITH PHOTO (nav/hub cards on home) */
.card-list .card.has-photo{padding:0; overflow:hidden; display:flex; flex-direction:column}
.card-list .card.has-photo img{width:100%; aspect-ratio:4/3; object-fit:cover; display:block}
.card-list .card.has-photo .card-body{padding:20px 22px}

/* BIO ROW (portrait beside text) */
.bio-row{display:flex; gap:36px; align-items:flex-start; flex-wrap:wrap; margin-bottom:8px}
.bio-row .bio-photo{flex:0 0 260px; border-radius:4px; overflow:hidden; border:1px solid var(--line)}
.bio-row .bio-photo img{width:100%; display:block; aspect-ratio:5/6; object-fit:cover}
.bio-row .bio-text{flex:1 1 360px; min-width:280px}
@media(max-width:680px){.bio-row{flex-direction:column}.bio-row .bio-photo{flex:0 0 auto; max-width:280px}}

/* INGREDIENT / ACCENT STRIP (round photos) */
.ingredient-strip{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:8px 0 6px}
.ingredient-strip figure{margin:0; text-align:center}
.ingredient-strip img{width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:50%; border:3px solid var(--paper-2); box-shadow:0 0 0 1px var(--line)}
.ingredient-strip figcaption{margin-top:10px; font-family:"PT Sans Narrow",sans-serif; text-transform:uppercase; letter-spacing:.08em; font-size:12px; color:var(--muted)}
@media(max-width:560px){.ingredient-strip{grid-template-columns:repeat(3,1fr); gap:10px}.ingredient-strip figcaption{font-size:10px}}

/* FULL-WIDTH FEATURE PHOTO */
.feature-photo{border-radius:4px; overflow:hidden; border:1px solid var(--line); margin:28px 0 4px}
.feature-photo img{width:100%; display:block; aspect-ratio:21/9; object-fit:cover}
.feature-photo figcaption{padding:10px 14px; font-family:"PT Sans Narrow",sans-serif; font-size:13px; color:var(--muted); background:var(--paper-2)}
@media(max-width:680px){.feature-photo img{aspect-ratio:4/3}}

/* BOTANICAL SVG DIVIDER */
.botanical-divider{display:flex; justify-content:center; padding:38px 0 0; color:var(--sage); opacity:.6}
.botanical-divider svg{width:220px; height:auto}
