/* ---------------------------------------------------------------------
   Round 15 — no gradients anywhere (user: "不要渐变色"), colours redone.
   Solid colours only; texture comes from the contour lines and paper grain,
   never from fades, scrims or translucent tints over photos.
   --------------------------------------------------------------------- */
:root{
  --c-page:#F5F2EC; --c-range:#FFFFFF; --c-feat:#EDE6DA; --c-cards:#E4E9E0;
  --c-band:#24392D; --c-inq:#24392D; --c-foot:#1C2631; --c-top-t:#D9E0E8;
  --c-btn:#BF5424; --c-btn-h:#A3461C; --c-btn-t:#FFFFFF; --c-link:#A6481A; --c-icon:#E3A341;
  --ink:#1B211E; --muted:#585E59; --line:#D7D2C8;
}

/* 1. hero: hard split, the photo has a clean edge (no fade mask) */
.fh{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch}
.fh-img{position:static!important;order:2;min-height:540px}
.fh-img img{-webkit-mask-image:none!important;mask-image:none!important;height:100%;object-position:55% 60%}
.fh-in{order:1;min-height:0!important;padding-inline:0!important;max-width:none!important;justify-content:flex-end}
.fh-txt{max-width:600px;width:100%;padding:56px 48px 56px max(var(--gut),calc((100vw - 1320px)/2 + 40px))!important;box-sizing:border-box}
@media (max-width:900px){.fh{grid-template-columns:1fr}.fh-img{order:0;min-height:0}.fh-img img{aspect-ratio:3/2;height:auto}.fh-txt{padding:28px var(--gut) 40px!important;max-width:none}}

/* 2. category tiles: caption sits on a solid bar under the photo */
.fr-t{aspect-ratio:auto!important;background:var(--c-foot);display:flex;flex-direction:column}
.fr-t img{aspect-ratio:1/0.82;height:auto}
.fr-c{position:static!important;background:var(--c-foot)!important;padding:12px 14px 14px!important}
.fr-t:last-child{aspect-ratio:auto!important}
@media (max-width:640px){.fr-t img{aspect-ratio:1}.fr-t:last-child img{aspect-ratio:2/1}}

/* 3. photo bands without tints: solid colour + contour lines; the photo shows untouched beside the text */
.fw{background:var(--topo-d),var(--c-band)!important;background-size:800px 800px,auto!important;padding-block:56px!important}
.fw::before{display:none!important}
.iq--row .iq-txt{background:var(--topo-d),var(--c-inq)!important;background-size:800px 800px,auto!important}
.iq--row .iq-txt::before{display:none!important}

/* 4. placeholders: plain panel, dashed border, no stripes */
.ph-slot{background:#E9E5DC!important}

/* old layers: switch off any remaining gradient overlays */
.op-hero::before,.of-scene::after,.sl-cta::before,.op-heroa::after,.sl-hero.is-photo .sl-hero-media::after{background:none!important}

/* fixes after first render */
.fh{grid-template-columns:minmax(0,6fr) minmax(0,6fr)}
.fh h1{font-size:clamp(30px,3.2vw,44px)!important}
.fh-tags{letter-spacing:.12em!important}
:root{--c-inq:#7E3B1F}
@media (max-width:900px){.fh{grid-template-columns:1fr}}
