/* Blog and reviews: same scale, surfaces and palette as approved Contacts. */
@font-face { font-family: "Balterra Editorial"; src: url("/assets/fonts/raleway-regular.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Balterra Editorial"; src: url("/assets/fonts/raleway-medium.woff2") format("woff2"); font-style: normal; font-weight: 500; font-display: swap; }
@font-face { font-family: "Balterra Editorial"; src: url("/assets/fonts/raleway-bold.woff2") format("woff2"); font-style: normal; font-weight: 600 900; font-display: swap; }
body.editorial-page {
  --editorial-ink: #121714;
  --editorial-navy: #121714;
  --editorial-navy-soft: #1b211d;
  --editorial-paper: #f4f0e7;
  --editorial-paper-deep: #e5dfd3;
  --editorial-gold: #b69150;
  --editorial-text: #121714;
  --editorial-muted: #646c65;
  --editorial-line: #1217141c;
  background: var(--editorial-paper);
}
body.editorial-page::before { content:""; position:absolute; inset:0 0 auto; height:clamp(118px,14vh,150px); background:#121714; pointer-events:none; }
.editorial-root { width:min(1600px,95%); margin:0 auto; padding:calc(clamp(118px,14vh,150px) + 24px) 0 48px; font-family:"Balterra Editorial",Arial,sans-serif; }
.editorial-root :is(h1,h2,h3) { font-family:"Balterra Editorial",Arial,sans-serif !important; }
.editorial-root :is(button,a):focus-visible { outline:3px solid #b69150; outline-offset:5px; }
.editorial-root [hidden] { display:none !important; }
.editorial-root .editorial-shell { width:100%; }
.editorial-root .editorial-eyebrow { margin:0 0 15px; font-size:11px; letter-spacing:.15em; line-height:1.5; color:#806432; }
.editorial-hero { padding:40px clamp(30px,3.3vw,52px); min-height:0; border-radius:36px; background:#121714; }
.editorial-hero::before { background:linear-gradient(#f4f0e707 1px,transparent 1px),linear-gradient(90deg,#f4f0e707 1px,transparent 1px); background-size:72px 72px; }
.editorial-hero .editorial-eyebrow { color:#d7c293; }
.editorial-breadcrumbs { position:relative; padding:0; gap:12px; font-size:11px; font-weight:650; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; color:#f4f0e7a6; }
.editorial-breadcrumbs a { color:inherit; }
.editorial-hero__grid { grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr); gap:48px; align-items:center; padding:42px 0 8px; }
.editorial-hero h1 { font-size:clamp(48px,4.4vw,70px); font-weight:500; line-height:1.02; letter-spacing:-.045em; color:#f4f0e7; }
.editorial-hero h1 em { display:block; padding-top:6px; font-family:"Times New Roman",Georgia,serif; font-weight:400; color:#d7c293; }
.editorial-hero__lead { max-width:540px; font-size:17px; line-height:1.6; color:#f4f0e7b8; margin:26px 0 0; }
.editorial-feature { display:block; min-height:420px; border:1px solid #f4f0e726; border-radius:26px; box-shadow:none; background:#1b211d; text-decoration:none; }
.editorial-feature::after { background:linear-gradient(180deg,#12171400 12%,#1217143b 40%,#121714f0 100%); }
.editorial-feature__copy { padding:32px; }
.editorial-feature__copy strong { font-family:"Balterra Editorial",Arial,sans-serif; font-size:clamp(30px,2.8vw,42px); line-height:1.1; font-weight:500; letter-spacing:-.04em; color:#f4f0e7; }
.editorial-feature__copy span { color:#d7c293; font-size:10px; }
.editorial-feature__copy small { color:#f4f0e7bd; }
a.editorial-feature:hover { border-color:#d7c293; }
.editorial-topic-strip { background:transparent; border:0; }
.editorial-topic-strip__inner { display:flex; flex-wrap:wrap; align-items:center; padding:28px 0 0; gap:10px; }
.editorial-topic-strip button { min-height:44px; padding:11px 18px; border:1px solid #12171426; border-radius:999px; background:transparent; color:#434d45; font-family:inherit; font-size:13px; line-height:1.4; font-weight:600; cursor:pointer; }
.editorial-topic-strip button[aria-pressed="true"] { background:#121714; border-color:#121714; color:#f4f0e7; }
.editorial-topic-strip button:hover:not([aria-pressed="true"]) { border-color:#b69150; background:#d9d2c566; }
.editorial-filter-status { margin:0 0 0 auto; padding:10px 0; font-size:12px; color:#646c65; }
.editorial-section { margin-top:40px; padding:clamp(30px,3.3vw,52px); border:1px solid #12171414; border-radius:36px; background:#ece7dc; }
.editorial-section__head { grid-template-columns:minmax(0,1fr) minmax(250px,.8fr); gap:50px; margin-bottom:32px; }
.editorial-root :is(.editorial-section__head h2,.editorial-rating-copy h2,.editorial-proof h2,.editorial-cta h2) { font-size:clamp(34px,3.25vw,52px); line-height:1.07; font-weight:500; letter-spacing:-.04em; }
.editorial-section__head > p:last-child { font-size:16px; line-height:1.55; }
.editorial-card-grid { gap:20px; }
.editorial-card { min-height:0; border-radius:24px; background:#fffdfa; border-color:#12171417; }
.editorial-card:hover,.editorial-card:focus-visible { transform:translateY(-4px); border-color:#b6915080; box-shadow:0 18px 36px #12171412; }
.editorial-card__media { height:clamp(190px,17vw,270px); }
.editorial-card__media::after { background:linear-gradient(transparent 70%,#1217141a); }
.editorial-card__body { padding:27px; min-height:285px; gap:0; }
.editorial-card__category { color:#806432; font-size:10px; line-height:1.5; letter-spacing:.12em; }
.editorial-root .editorial-card h3 { font-size:clamp(24px,1.9vw,30px); line-height:1.12; font-weight:500; letter-spacing:-.035em; margin:16px 0 12px; color:#121714; }
.editorial-card__body p { margin:0; font-size:15px; line-height:1.55; color:#646c65; }
.editorial-card__link { margin-top:auto; padding-top:24px; color:#705728; font-size:13px; font-weight:650; }
.editorial-card__link::after { content:"↗"; margin-left:12px; }
.editorial-section--navy { background:#121714; color:#f4f0e7; }
.editorial-section--navy .editorial-eyebrow { color:#d7c293; }
.editorial-section--navy :is(h2,h3) { color:#f4f0e7; }
.editorial-cta { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:70px; align-items:center; padding:0; background:none; border:0; border-radius:0; }
.editorial-cta p { max-width:600px; font-size:16px; line-height:1.6; color:#f4f0e7b8; }
.editorial-button,.editorial-source-button { min-height:52px; padding:15px 22px; background:#b69150; border:1px solid #b69150; border-radius:12px; color:#121714; font-size:14px; font-weight:700; line-height:1.4; text-align:center; }
.editorial-button:hover,.editorial-source-button:hover { background:#d7c293; border-color:#d7c293; color:#121714; transform:none; }
.editorial-button--secondary { background:transparent; border-color:#f4f0e74d; color:#f4f0e7; }
.editorial-cta__actions { min-width:0; display:flex; flex-direction:column; gap:12px; }
.editorial-rating-hero .editorial-hero__grid { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:44px; }
.editorial-rating-sources { gap:16px; }
.editorial-rating-card { min-height:380px; padding:28px; background:#f4f0e7; border:1px solid #d9d2c5; border-radius:24px; box-shadow:none; color:#121714; }
.editorial-rating-card:nth-child(2) { background:#d9d2c5; }
.editorial-rating-card__source { color:#121714; font-size:13px; font-weight:600; gap:12px; }
.editorial-rating-card__badge,.editorial-rating-card__badge--2gis { background:#121714; color:#d7c293; border:1px solid #b6915066; border-radius:12px; box-sizing:border-box; flex-shrink:0; }
.editorial-rating-card__number { margin:42px 0 10px; font-family:"Balterra Editorial",Arial,sans-serif; font-size:clamp(66px,6.2vw,94px); font-weight:500; line-height:1; letter-spacing:-.07em; color:#121714; }
.editorial-rating-card__stars { margin:4px 0 12px; color:#8d6c36; font-size:21px; letter-spacing:.1em; }
.editorial-rating-card__count { color:#535d55; font-size:13px; line-height:1.6; margin-bottom:26px; }
.editorial-source-button { padding:14px 10px; font-size:12px; }
.editorial-rating-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:50px; }
.editorial-rating-layout .editorial-feature { min-height:420px; }
.editorial-rating-copy > p:not(.editorial-eyebrow) { font-size:16px; line-height:1.65; margin-top:24px; }
.editorial-section--deep { background:#e5dfd3; }
.editorial-principles { gap:18px; }
.editorial-principles article { padding:30px; border-radius:24px; border:1px solid #12171414; background:#f4f0e7; min-height:250px; }
.editorial-principles article:first-child { background:#121714; color:#f4f0e7; }
.editorial-principles article:nth-child(2) { background:#d9d2c5; }
.editorial-principles article > span { color:#806432; font-family:inherit; font-size:12px; letter-spacing:.1em; }
.editorial-principles article:first-child > span { color:#d7c293; }
.editorial-root .editorial-principles h3 { margin-top:32px; font-size:27px; line-height:1.13; color:#121714; font-weight:500; }
.editorial-principles p { font-size:15px; line-height:1.6; color:#646c65; }
.editorial-principles article:first-child h3 { color:#f4f0e7; }
.editorial-principles article:first-child p { color:#f4f0e7b8; }
.editorial-section--proof { background:#f7f4ec; }
.editorial-proof { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; }
.editorial-proof h2 { color:#121714; }
.editorial-proof > div:first-child > p:last-child { color:#646c65; font-size:16px; line-height:1.6; }
.editorial-proof__links { display:grid; grid-template-columns:1fr; gap:0; }
.editorial-proof__links a { padding:21px 4px; border:0; border-bottom:1px solid #12171429; border-radius:0; background:transparent; color:#121714; font-size:17px; line-height:1.4; }
.editorial-proof__links a:hover { background:#d9d2c538; color:#705728; }
.editorial-proof__links a::after { content:"↗"; margin-left:auto; color:#806432; }
@media(max-width:1239px) {
 body.editorial-page::before { height:82px; }
 .editorial-root { padding-top:104px; }
 .editorial-hero { padding:32px; }
 .editorial-hero__grid,.editorial-rating-hero .editorial-hero__grid { gap:30px; }
 .editorial-rating-hero .editorial-hero__grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
 .editorial-hero h1 { font-size:clamp(44px,4.4vw,57px); }
 .editorial-rating-card { padding:22px; }
 .editorial-card__body { padding:23px; }
 .editorial-rating-card__source { font-size:12px; gap:8px; }
 .editorial-rating-layout { gap:34px; }
 .editorial-cta { gap:36px; }
}
@media(max-width:900px) {
 .editorial-hero__grid,.editorial-rating-hero .editorial-hero__grid { grid-template-columns:1fr; padding-top:34px; gap:34px; }
 .editorial-hero__lead { max-width:650px; }
 .editorial-feature { min-height:380px; }
 .editorial-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .editorial-card__media { height:230px; }
 .editorial-card__body { min-height:295px; }
 .editorial-section__head { grid-template-columns:1fr; gap:22px; }
 .editorial-rating-layout,.editorial-proof { grid-template-columns:1fr; gap:30px; }
 .editorial-rating-card { min-height:320px; padding:28px; }
 .editorial-principles { grid-template-columns:1fr; }
 .editorial-principles article { min-height:0; }
 .editorial-root .editorial-principles h3 { margin-top:20px; }
 .editorial-cta { grid-template-columns:1fr; gap:26px; }
 .editorial-cta__actions { max-width:420px; }
}
@media(max-width:600px) {
 .editorial-root { width:calc(100% - 24px); padding-top:94px; padding-bottom:30px; }
 .editorial-hero { padding:28px 20px; border-radius:30px; }
 .editorial-breadcrumbs { font-size:10px; }
 .editorial-root .editorial-eyebrow { font-size:10px; }
 .editorial-hero h1 { font-size:clamp(42px,11.1vw,58px); }
 .editorial-hero__lead { font-size:15px; line-height:1.6; margin-top:23px; }
 .editorial-feature { min-height:360px; border-radius:22px; }
 .editorial-feature__copy { padding:24px; }
 .editorial-feature__copy strong { font-size:31px; }
 .editorial-topic-strip__inner { padding-top:22px; gap:8px; }
 .editorial-topic-strip button { padding:10px 14px; font-size:12px; min-height:44px; }
 .editorial-filter-status { flex:1 0 100%; margin:0; padding:6px 3px 0; }
 .editorial-section { padding:25px 18px; margin-top:28px; border-radius:30px; }
 .editorial-root :is(.editorial-section__head h2,.editorial-rating-copy h2,.editorial-proof h2,.editorial-cta h2) { font-size:34px; line-height:1.08; }
 .editorial-section__head { gap:18px; }
 .editorial-section__head > p:last-child { font-size:14px; }
 .editorial-card-grid { grid-template-columns:1fr; gap:18px; }
 .editorial-card__media { height:220px; }
 .editorial-card__body { min-height:0; padding:24px; }
 .editorial-root .editorial-card h3 { font-size:27px; }
 .editorial-card__body p { font-size:14px; }
 .editorial-card__link { padding-top:22px; }
 .editorial-rating-sources { grid-template-columns:1fr; gap:16px; }
 .editorial-rating-card { min-height:325px; padding:26px; }
 .editorial-rating-card__number { margin-top:25px; font-size:78px; }
 .editorial-rating-card__source { font-size:15px; }
 .editorial-source-button { font-size:14px; }
 .editorial-rating-layout .editorial-feature { min-height:340px; }
 .editorial-rating-copy > p:not(.editorial-eyebrow) { font-size:15px; margin-top:20px; }
 .editorial-principles article { padding:26px; }
 .editorial-proof { gap:22px; }
 .editorial-proof p,.editorial-cta p { font-size:15px; }
 .editorial-proof__links a { font-size:16px; }
 .editorial-button { width:100%; font-size:13px; }
}
.editorial-quotes article { display:flex; flex-direction:column; }
.editorial-quotes article > span { font:70px/.7 Georgia,serif; color:#806432; margin-bottom:20px; }
.editorial-quotes article:first-child > span { color:#d7c293; }
.editorial-quotes blockquote { margin:0 0 32px; font-size:24px; line-height:1.35; letter-spacing:-.025em; }
.editorial-quote-author { margin-top:auto; display:grid; gap:9px; }
.editorial-quote-author strong { font-size:14px; font-weight:600; }
.editorial-quote-author small { font-size:12px; color:#535d55; }
.editorial-quotes article:first-child .editorial-quote-author small { color:#d9d2c5; }
.editorial-quote-author a { font-size:12px; color:inherit; margin-top:8px; text-underline-offset:5px; }
@media(prefers-reduced-motion:reduce) {
 .editorial-root * { scroll-behavior:auto; transition:none !important; }
 .editorial-card:hover { transform:none; }
}
