/* Social and editorial additions preserve the approved black / white / tan theme. */
header { min-height:108px; height:auto; padding-block:12px; flex-wrap:wrap; }
header nav a { min-height:44px; display:inline-flex; align-items:center; }
.hero h1 { overflow-wrap:normal; }
.social-section { display:grid; grid-template-columns:1fr 1.4fr; gap:40px; align-items:center; padding:0 0 42px; margin-bottom:28px; border-bottom:1px solid var(--line); }
.social-section h2 { font-size:clamp(27px,3vw,38px); line-height:1.15; letter-spacing:-1px; margin:14px 0; }
.social-links { display:grid; grid-template-columns:1fr 1fr; gap:14px; min-width:0; }
.social-card { display:flex; flex-direction:column; gap:9px; padding:22px; border:1px solid var(--line); text-decoration:none; min-width:0; }
a.social-card:hover { background:#f3efe9; border-color:#8d7757; }
.social-card strong { font-size:clamp(16px,1.5vw,21px); overflow-wrap:anywhere; }
.social-card>span:last-child { font-size:14px; color:var(--muted); }
.social-platform { display:flex; justify-content:space-between; font-size:14px; }
.social-pending { background:#f7f6f3; }
.daily-intro { display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:center; }
.daily-intro h1 { font-size:clamp(42px,6vw,76px); margin-bottom:24px; }
.daily-intro>p { max-width:460px; font-size:19px; color:var(--muted); }
.coverage-tags { display:flex; flex-wrap:wrap; gap:9px; padding-bottom:28px; border-bottom:1px solid var(--line); }
.coverage-tags span { background:#f1ede7; padding:6px 12px; font-size:14px; }
.edition-header { padding:30px 0 18px; }
.edition-header h2 { font-size:clamp(26px,3vw,38px); line-height:1.2; margin:10px 0; letter-spacing:-.8px; }
.edition-meta { font-size:14px; color:var(--muted); }
.news-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 36px; }
.news-story { min-width:0; padding:26px 0; border-top:1px solid var(--line); }
.news-story h3 { font-size:25px; line-height:1.25; margin:13px 0; letter-spacing:-.5px; }
.news-story p { font-size:17px; }
.news-story .why { padding-left:15px; border-left:3px solid var(--accent); }
.story-sources { display:flex; flex-wrap:wrap; gap:10px 18px; font-size:14px; }
.coverage-note { font-size:14px; color:var(--muted); background:#f5f3ef; padding:18px; }
.daily-sources { border-top:1px solid var(--line); margin-top:30px; padding-top:24px; }
.daily-sources h2 { font-size:20px; }
.daily-sources a { display:inline-block; margin:0 24px 12px 0; font-size:15px; padding-block:6px; }
.daily-sources p { font-size:14px; color:var(--muted); }
@media(max-width:900px) {
 .social-section { grid-template-columns:1fr; gap:20px; }
 .channel-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:visible; }
 .channel-nav a,.channel-nav a:first-child { text-align:center; padding:13px 6px; overflow-wrap:anywhere; }
}
@media(max-width:600px) {
 .hero h1 { font-size:clamp(42px,10.8vw,66px); }
 .hero-top { flex-wrap:wrap; }
 .social-links,.daily-intro,.news-grid { grid-template-columns:1fr; }
 .daily-intro { gap:0; }
 .daily-intro>p { margin:0 0 24px; font-size:17px; }
 .channel-heading { flex-wrap:wrap; }
 .social-card { padding:19px; }
 .social-card strong { font-size:20px; }
 .channel-nav a { font-size:14px; }
 .news-story h3 { font-size:23px; }
}
@media(max-width:350px) { .channel-nav { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Social links stay opposite the logo at every screen size. */
.header-right { margin-left:auto; display:flex; flex-direction:column; align-items:flex-end; gap:2px; }
.header-socials { display:flex; gap:16px; }
.header-socials a { gap:7px; font-size:14px; }
.header-socials svg { width:21px; height:21px; flex-shrink:0; }
.header-socials a:hover { color:#756349; }
.header-main-nav { gap:22px; }
@media(max-width:600px) {
 header { gap:8px; flex-wrap:nowrap; }
 .header-right { gap:0; }
 .header-socials { gap:6px; }
 .header-socials a { width:44px; justify-content:center; }
 .header-socials a span { display:none; }
 .header-main-nav { gap:12px; }
 .header-main-nav a { font-size:12px; }
}
@media(max-width:350px) { header .wordmark { width:145px; height:48px; } }
/* Plant area directories */
.directory-page h1 {font-size:clamp(38px,5vw,62px);margin:12px 0 16px;}
.directory-page .channel-desc {font-size:18px;max-width:850px;margin-bottom:28px;}
.directory-controls {display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:22px;background:#f5f3ef;border:1px solid var(--line);}
.directory-controls label {display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;min-width:0;}
.directory-controls input,.directory-controls select {width:100%;min-height:48px;padding:12px;border:1px solid #8d887e;background:white;color:var(--ink);font:inherit;font-size:16px;border-radius:0;}
.directory-controls input:focus-visible,.directory-controls select:focus-visible,.directory-tabs button:focus-visible {outline:3px solid #756349;outline-offset:3px;}
.plant-heading {padding:30px 0 18px;}
.plant-heading h2 {font-size:clamp(28px,4vw,42px);line-height:1.1;margin:10px 0;letter-spacing:-1px;}
.plant-heading p {margin:8px 0;}
.area-label,.listing-location {color:var(--muted);}
.directory-tabs {display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:16px;}
.directory-tabs button {min-height:46px;padding:10px 18px;border:1px solid var(--line);background:white;font:inherit;font-size:15px;cursor:pointer;}
.directory-tabs button[aria-pressed=true] {background:var(--ink);border-color:var(--ink);color:white;}
.directory-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.listing-card {border:1px solid var(--line);padding:22px;display:flex;flex-direction:column;align-items:flex-start;min-width:0;}
.listing-card h3 {font-size:22px;line-height:1.2;margin:12px 0;overflow-wrap:anywhere;}
.listing-card p {font-size:16px;margin:0 0 16px;}
.listing-card .label {font-size:12px;letter-spacing:1px;}
.listing-links {display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:auto;}
.listing-card a,.booking-links a {font-size:14px;min-height:44px;display:inline-flex;align-items:center;}
.listing-count,.directory-note,.rate-note {font-size:14px!important;color:var(--muted);}
.directory-note {margin:22px 0;max-width:950px;}
.booking-panel {padding:22px;border:1px solid var(--line);margin:24px 0;}
.booking-panel h2 {font-size:22px;margin:0 0 10px;}
.booking-links {display:flex;gap:8px 24px;flex-wrap:wrap;}
@media(max-width:900px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.directory-controls,.directory-grid{grid-template-columns:1fr;}.directory-controls{padding:16px;}.listing-card{padding:20px;}.directory-tabs button{flex:1;font-size:14px;padding:10px;}.directory-page{padding-top:26px;}}
