/* Lux refinements — one green scale, quieter buttons, consistent hover, home masthead.
   Loaded last so it settles conflicts between the older page stylesheets. */
:root{--g900:#021f16;--g800:#032a1f;--g700:#033e2c;--g600:#07523a;--g-gold:#c6a15b;--g-gold-deep:#a8823c}

/* ---- one green, everywhere a dark band is used ---- */
:is(.hero,.dark,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.featured-guide,.platform-card,.lm-section.darkband,.natural-bridge,.map-card){background-color:var(--g700)}
.formats-section{background:var(--g700)}
footer{background:var(--g900)}
.final{background:radial-gradient(circle at 50% 0,rgba(198,161,91,.16),transparent 58%),var(--g800)}
.format-card{background:var(--g800)}
.natural-callout-image{background:var(--g800)}
.open-call,.natural-bridge{background:linear-gradient(120deg,var(--g700),var(--g600))}
.facility-mosaic figure{background:var(--g700)}
.archive figcaption,.crumb.on-dark{background:rgba(3,62,44,.92)}

/* ---- every clickable panel behaves the same ---- */
:is(.card,a.card,.route,.use-card,.plant-card,.quality-pillar,.path article,.profile,.format-option,.crossgrid a,.related-grid a,.technology-related-grid a,.tech,.flavour,.natural-spectrum article,.direct-card){
  transition:transform .32s cubic-bezier(.4,0,.2,1),border-color .32s,box-shadow .32s;position:relative}
:is(.card,a.card,.route,.use-card,.plant-card,.crossgrid a,.related-grid a,.technology-related-grid a,.tech,.flavour,.natural-spectrum article):hover{
  transform:translateY(-4px);border-color:var(--g-gold);box-shadow:0 16px 38px rgba(7,82,58,.10)}
a.card,a.route,.crossgrid a,.related-grid a,.technology-related-grid a{cursor:pointer;text-decoration:none}
a.card:before,.card:before{content:"";position:absolute;left:0;top:0;height:3px;width:58px;background:var(--g-gold);transition:width .35s cubic-bezier(.4,0,.2,1)}
a.card:hover:before,.card:hover:before{width:100%}
a.card:after{content:"→";position:absolute;right:20px;bottom:18px;color:var(--g-gold-deep);font-size:.95rem;opacity:0;transform:translateX(-6px);transition:.3s}
a.card:hover:after,a.card:focus-visible:after{opacity:1;transform:translateX(0)}
:is(.card,.route,.tech,.use-card,.plant-card):focus-visible{outline:3px solid var(--g-gold-deep);outline-offset:3px}

/* ---- home masthead ---- */
.mh{position:relative;isolation:isolate;background:var(--g900);color:#f5f3ec;overflow:hidden;
  min-height:clamp(560px,82vh,880px);display:grid;grid-template-rows:1fr auto}
.mh-media{position:absolute;inset:0;z-index:-2}
.mh-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.8s ease;will-change:opacity,transform;animation:mhDrift 26s ease-in-out infinite alternate}
.mh-media img.on{opacity:1}
@keyframes mhDrift{from{transform:scale(1.04)}to{transform:scale(1.13)}}
@media (prefers-reduced-motion:reduce){.mh-media img{animation:none;transform:scale(1.04)}}
.mh:before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,rgba(2,31,22,.95) 0%,rgba(2,31,22,.86) 38%,rgba(2,31,22,.55) 70%,rgba(2,31,22,.7) 100%)}
.mh-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(20px,4vw,64px);padding-block:clamp(56px,8vw,110px)}
.mh-copy .eyebrow{color:var(--g-gold)}
.mh h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.94;letter-spacing:-.06em;font-weight:500;margin:20px 0 26px;color:#fff;text-wrap:balance}
.mh h1 span{color:#e2c98f;display:block}
.mh p{font-size:clamp(1.02rem,1.35vw,1.24rem);color:#cfdcd5;max-width:52ch;margin:0 0 34px}
.mh .hero-buttons{display:flex;gap:10px;flex-wrap:wrap}
.mh-emblem{justify-self:center;width:min(100%,360px);opacity:.96}
.mh-rail{border-top:1px solid rgba(245,243,236,.18);background:rgba(2,31,22,.55);backdrop-filter:blur(6px)}
.mh-rail-in{display:grid;grid-template-columns:repeat(4,1fr)}
.mh-rail div{padding:20px 10px 22px;border-left:1px solid rgba(245,243,236,.14)}
.mh-rail div:first-child{border-left:0;padding-left:0}
.mh-rail strong{display:block;font:500 clamp(1.3rem,2vw,1.9rem)/1 "Manrope",sans-serif;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums}
.mh-rail span{display:block;margin-top:8px;font:500 .68rem ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a9c0b3}
@media (max-width:900px){.mh-inner{grid-template-columns:1fr}.mh-emblem{width:min(78%,300px);order:-1}
  .mh-rail-in{grid-template-columns:1fr 1fr}.mh-rail div{border-left:0;padding-left:0}}
.lm-emblem .er,.lm-emblem .er2{fill:none;stroke:#d9bd7b;stroke-width:1.4;opacity:.75}
.lm-emblem .er2{stroke-dasharray:3 10}
.lm-emblem .esp line{stroke:rgba(217,189,123,.45);stroke-width:1}
.lm-emblem .en{fill:#d9bd7b}
.lm-emblem .ec{fill:none;stroke:#e2c98f;stroke-width:2}
.lm-emblem .ep{fill:none;stroke:#e2c98f;stroke-width:1}

/* ---- facility machinery cards ---- */
.mach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mach{position:relative;overflow:hidden;min-height:340px;display:flex;flex-direction:column;justify-content:flex-end;
  border:1px solid rgba(245,243,236,.14);isolation:isolate;transition:transform .35s,border-color .35s}
.mach:hover{transform:translateY(-4px);border-color:var(--g-gold)}
.mach img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s cubic-bezier(.4,0,.2,1)}
.mach:hover img{transform:scale(1.06)}
.mach:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(2,31,22,.95),rgba(2,31,22,.45) 55%,rgba(2,31,22,.2))}
.mach-copy{padding:20px 22px 24px}
.mach-copy span{font:500 .68rem ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:#d9bd7b}
.mach-copy h3{margin:10px 0 6px;font:500 1.35rem "Manrope",sans-serif;color:#fff}
.mach-copy p{margin:0;font-size:.9rem;line-height:1.5;color:#c4d4cb}
.mach-glyph{position:absolute;right:18px;top:18px;width:58px;height:58px}
.mach-glyph svg{width:100%;height:100%;fill:none;stroke:#e2c98f;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mach-glyph .spin{transform-origin:center;animation:mgSpin 6s linear infinite;animation-play-state:paused}
.mach-glyph .fall{animation:mgFall 2.4s linear infinite;animation-play-state:paused}
.mach-glyph .pulse{animation:mgPulse 2.6s ease-in-out infinite;animation-play-state:paused}
.mach:hover .mach-glyph :is(.spin,.fall,.pulse){animation-play-state:running}
@keyframes mgSpin{to{transform:rotate(360deg)}}
@keyframes mgFall{0%{transform:translateY(-6px);opacity:0}30%{opacity:1}100%{transform:translateY(10px);opacity:0}}
@keyframes mgPulse{0%,100%{opacity:.35}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.mach-glyph *{animation:none!important}}
@media (max-width:1040px){.mach-grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.mach-grid{grid-template-columns:1fr}.mach{min-height:280px}}

/* ---- contact: plain map ---- */
.locate{padding-block:clamp(56px,7vw,104px);background:var(--g700);color:#f5f3ec}
.locate-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(18px,3vw,40px);align-items:stretch}
.locate h2{font:500 clamp(2.2rem,4vw,3.6rem)/1.04 "Manrope",sans-serif;letter-spacing:-.05em;margin:14px 0 18px;color:#fff}
.locate address{font-style:normal;color:#c4d4cb;line-height:1.7;margin-bottom:26px}
.locate .eyebrow{color:var(--g-gold)}
.locate-map{position:relative;min-height:380px;border:1px solid rgba(245,243,236,.18)}
.locate-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.locate-actions{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:860px){.locate-grid{grid-template-columns:1fr}}
/* photo cards keep light type in every look */
.mach-copy h3{color:#fff!important}
.mach-copy span{color:#e2c98f!important}
.mach-copy p{color:#c9d8cf!important}
.site-light .mach-copy h3{color:#fff!important}
.site-light :is(.mach,.mach-copy) :is(h3,p,span){color:inherit}
.site-light .locate{background:var(--g700)!important;color:#f5f3ec!important}
.site-light .locate :is(h2){color:#fff!important}
.site-light .locate :is(address,p){color:#c4d4cb!important}
.site-light .mh :is(h1,p,span,strong){color:inherit}
.site-light .mh h1{color:#fff!important}.site-light .mh h1 span{color:#e2c98f!important}
.site-light .mh p{color:#cfdcd5!important}.site-light .mh-rail strong{color:#fff!important}
.site-light .mh-rail span{color:#a9c0b3!important}
/* photo grade for the masthead montage */
.mh-media img{filter:saturate(.62) contrast(1.06) brightness(.86)}
html.site-light .mach .mach-copy h3,html.site-dark .mach .mach-copy h3{color:#fff!important}
html.site-light .mach .mach-copy span,html.site-dark .mach .mach-copy span{color:#e2c98f!important}
html.site-light .mach .mach-copy p,html.site-dark .mach .mach-copy p{color:#c9d8cf!important}
html.site-light .locate .locate-grid h2{color:#fff!important}
html.site-light .locate .locate-grid :is(address,p){color:#c4d4cb!important}
html.site-light .mh .mh-copy h1{color:#fff!important}
html.site-light .mh .mh-copy h1 span{color:#e2c98f!important}
html.site-light .mh .mh-copy p{color:#cfdcd5!important}
html.site-light .mh .mh-rail strong{color:#fff!important}
/* photo cards: text must stay light whatever the look (beats theme overrides) */
html .lm-section.darkband .mach-grid .mach .mach-copy h3{color:#fff!important}
html .lm-section.darkband .mach-grid .mach .mach-copy span{color:#e2c98f!important}
html .lm-section.darkband .mach-grid .mach .mach-copy p{color:#c9d8cf!important}
html .lm-section.darkband .mach-grid .mach:before{background:linear-gradient(0deg,rgba(2,31,22,.96),rgba(2,31,22,.5) 58%,rgba(2,31,22,.22))}
.mach-copy{text-shadow:0 1px 14px rgba(2,31,22,.7)}

/* ---- buttons v2: solid, legible at rest, quiet on hover ---- */
.button,.search button,.search-panel button,#go{
  border-radius:2px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;font-size:.76rem;
  min-height:52px;padding:0 26px;border:1px solid var(--g600);background-image:none;
  background-color:var(--g600);color:#fff;transition:background-color .25s,border-color .25s,color .25s,box-shadow .25s}
.button:hover,.search button:hover,.search-panel button:hover,#go:hover{
  background-color:var(--g700);border-color:var(--g700);color:#fff;box-shadow:0 6px 18px rgba(3,62,44,.18);transform:none}
.button.secondary{background-color:transparent;color:var(--g600);border-color:rgba(7,82,58,.45)}
.button.secondary:hover{background-color:rgba(7,82,58,.07);border-color:var(--g600);color:var(--g600);box-shadow:none}
.button.primary{background-color:var(--g600);border-color:var(--g600);color:#fff}
.button.primary:hover{background-color:var(--g-gold-deep);border-color:var(--g-gold-deep);color:#08281c}
/* on dark grounds */
:is(.hero,.dark,.final,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.natural-bridge,.lm-section.darkband,.locate,.mh) .button{
  background-color:transparent;color:#f5f3ec;border-color:rgba(245,243,236,.5)}
:is(.hero,.dark,.final,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.natural-bridge,.lm-section.darkband,.locate,.mh) .button:hover{
  background-color:rgba(245,243,236,.12);border-color:#f5f3ec;color:#fff;box-shadow:none}
:is(.hero,.final,.natural-bridge,.locate,.mh) .button.primary{background-color:var(--g-gold-deep);border-color:var(--g-gold-deep);color:#08281c}
:is(.hero,.final,.natural-bridge,.locate,.mh) .button.primary:hover{background-color:#c6a15b;border-color:#c6a15b;color:#08281c}

/* ---- masthead without the emblem ---- */
.mh-inner.mh-solo{grid-template-columns:1fr}
.mh-solo .mh-copy{max-width:min(100%,780px)}
.mh-solo h1{font-size:clamp(3.2rem,8vw,7rem)}

/* ---- facility: analytical scope, static ---- */
.labcheck .lab-table{border-top:1px solid rgba(245,243,236,.2)}
.lab-row{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1.3fr);gap:18px 28px;align-items:baseline;
  padding:22px 0;border-bottom:1px solid rgba(245,243,236,.16)}
.lab-k{font:600 .78rem ui-monospace,Menlo,monospace;letter-spacing:.16em;color:#e2c98f}
.lab-v{font:500 1.15rem "Manrope",sans-serif;color:#fff;letter-spacing:-.01em}
.lab-u{color:#c4d4cb;font-size:.96rem;line-height:1.55}
.lab-row.is-final .lab-v{color:#e2c98f}
.lab-note{margin:20px 0 0;font-size:.85rem;color:#a9c0b3;max-width:70ch}
@media (max-width:760px){.lab-row{grid-template-columns:1fr;gap:6px;padding:18px 0}}
/* analytical scope — light look */
html.site-light .labcheck .lab-table{border-top-color:rgba(7,82,58,.18)}
html.site-light .labcheck .lab-row{border-bottom-color:rgba(7,82,58,.14)}
html.site-light .labcheck .lab-k{color:#a8823c}
html.site-light .labcheck .lab-v{color:#07523a}
html.site-light .labcheck .lab-u{color:#536b60}
html.site-light .labcheck .lab-note{color:#6b7f76}
html.site-light .labcheck .lab-row.is-final .lab-v{color:#a8823c}

/* dark CTA bands: the old page CSS painted these white — settle it here */
.final .button,.hero .button,.dark .button,.formats-section .button,.natural-bridge .button,.locate .button,.mh .button,.lm-section.darkband .button{
  background:transparent;color:#f5f3ec;border-color:rgba(245,243,236,.5);background-image:none;background-size:auto}
.final .button:hover,.hero .button:hover,.dark .button:hover,.formats-section .button:hover,.natural-bridge .button:hover,.locate .button:hover,.mh .button:hover,.lm-section.darkband .button:hover{
  background:rgba(245,243,236,.14);border-color:#f5f3ec;color:#fff}
.final .button.primary,.hero .button.primary,.natural-bridge .button.primary,.locate .button.primary,.mh .button.primary{
  background:var(--g-gold-deep);border-color:var(--g-gold-deep);color:#08281c}
.final .button.primary:hover,.hero .button.primary:hover,.natural-bridge .button.primary:hover,.locate .button.primary:hover,.mh .button.primary:hover{
  background:#c6a15b;border-color:#c6a15b;color:#08281c}
/* light-look versions of those same bands */
html.site-light :is(.final,.hero,.dark,.formats-section,.natural-bridge,.lm-section.darkband) .button{
  background:transparent;color:#07523a;border-color:rgba(7,82,58,.45)}
html.site-light :is(.final,.hero,.dark,.formats-section,.natural-bridge,.lm-section.darkband) .button:hover{
  background:rgba(7,82,58,.08);border-color:#07523a;color:#07523a}
html.site-light :is(.final,.hero,.natural-bridge) .button.primary{background:#07523a;border-color:#07523a;color:#fff}
html.site-light :is(.final,.hero,.natural-bridge) .button.primary:hover{background:#a8823c;border-color:#a8823c;color:#08281c}
/* never leave a button with a slide-fill or a zero-height paint */
.button,.search button,.search-panel button,#go{background-size:auto!important;background-image:none!important}
.button.primary{background-image:none!important}
/* the contact form keeps its full-width submit but not the odd padding */
.contact-direct .button,.form-card .button{width:auto}
html.site-dark :is(.final,.hero,.dark,.natural-bridge,.locate,.mh,.lm-section.darkband) .button.secondary,
html.site-dark .actions .button.secondary{background:transparent!important;color:#f5f3ec!important;border-color:rgba(245,243,236,.5)!important}
html.site-dark :is(.final,.hero,.dark,.natural-bridge,.locate,.mh) .button.secondary:hover,
html.site-dark .actions .button.secondary:hover{background:rgba(245,243,236,.14)!important;border-color:#f5f3ec!important;color:#fff!important}
/* header pair: filled primary, outlined secondary, in every look */
header .actions .button.primary{background:var(--g600);border-color:var(--g600);color:#fff}
header .actions .button.primary:hover{background:var(--g-gold-deep);border-color:var(--g-gold-deep);color:#08281c}
header .actions .button.secondary{background:transparent;color:var(--g600);border-color:rgba(7,82,58,.45)}
header .actions .button.secondary:hover{background:rgba(7,82,58,.07);color:var(--g600);border-color:var(--g600)}
html.site-dark header .actions .button.primary{background:var(--dk-acc,#d4bd8d)!important;border-color:var(--dk-acc,#d4bd8d)!important;color:#08281c!important}

/* ---- buttons v3: white with green type, no gold ---- */
.button,.search button,.search-panel button,#go,
.final .button,.hero .button,.dark .button,.formats-section .button,.natural-bridge .button,.locate .button,.mh .button,.lm-section.darkband .button,
header .actions .button,header .actions .button.primary,header .actions .button.secondary{
  background:#fff!important;color:var(--g600)!important;border:1px solid var(--g600)!important;
  border-radius:2px;background-image:none!important;box-shadow:none;
  transition:background-color .28s cubic-bezier(.4,0,.2,1),color .28s,border-color .28s,box-shadow .28s}
.button:hover,.search button:hover,.search-panel button:hover,#go:hover,
header .actions .button:hover{background:var(--g600)!important;color:#fff!important;border-color:var(--g600)!important;box-shadow:0 8px 20px rgba(3,62,44,.18)}
/* ghost variant keeps a lighter weight on any ground */
.button.secondary{background:transparent!important;color:var(--g600)!important;border-color:rgba(7,82,58,.5)!important}
.button.secondary:hover{background:#fff!important;color:var(--g600)!important;border-color:var(--g600)!important;box-shadow:0 8px 20px rgba(3,62,44,.14)}
:is(.hero,.dark,.final,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.natural-bridge,.lm-section.darkband,.locate,.mh) .button.secondary{
  background:transparent!important;color:#f5f3ec!important;border-color:rgba(245,243,236,.55)!important}
:is(.hero,.dark,.final,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.natural-bridge,.lm-section.darkband,.locate,.mh) .button.secondary:hover{
  background:#fff!important;color:var(--g600)!important;border-color:#fff!important}
/* dark look: white buttons still read; green type stays */
html.site-dark .button,html.site-dark header .actions .button,html.site-dark .final .button{background:#f5f3ec!important;color:#07523a!important;border-color:#f5f3ec!important}
html.site-dark .button:hover,html.site-dark header .actions .button:hover{background:#fff!important;color:#033e2c!important}
html.site-dark .button.secondary{background:transparent!important;color:#f5f3ec!important;border-color:rgba(245,243,236,.55)!important}
html.site-dark .button.secondary:hover{background:#f5f3ec!important;color:#07523a!important;border-color:#f5f3ec!important}
/* v3 final: beat the theme overrides in every look — white button, green type */
html.site-light :is(.final,.hero,.dark,.formats-section,.detail-hero,.technology-hero,.contact-hero,.global-band,.natural-bridge,.lm-section.darkband,.locate,.mh) .button,
html.site-light :is(.final,.hero,.natural-bridge,.locate,.mh) .button.primary,
html.site-light header .actions .button.primary,html.site-light .search button,html.site-light .search-panel button,
html.site-dark :is(.final,.hero,.dark,.formats-section,.natural-bridge,.lm-section.darkband,.locate,.mh) .button,
html.site-dark :is(.final,.hero,.natural-bridge,.locate,.mh) .button.primary,
html.site-dark header .actions .button.primary,html.site-dark .search button,html.site-dark .search-panel button{
  background:#fff!important;color:#07523a!important;border-color:#fff!important}
html.site-light :is(.final,.hero,.dark,.natural-bridge,.locate,.mh) .button:hover,
html.site-light :is(.final,.hero,.natural-bridge,.locate,.mh) .button.primary:hover,
html.site-light header .actions .button.primary:hover,
html.site-dark :is(.final,.hero,.dark,.natural-bridge,.locate,.mh) .button:hover,
html.site-dark :is(.final,.hero,.natural-bridge,.locate,.mh) .button.primary:hover,
html.site-dark header .actions .button.primary:hover{
  background:#07523a!important;color:#fff!important;border-color:#07523a!important}
html.site-dark :is(.final,.hero,.dark,.formats-section,.natural-bridge,.lm-section.darkband,.locate,.mh) .button.secondary{
  background:transparent!important;color:#f5f3ec!important;border-color:rgba(245,243,236,.55)!important}
html.site-light :is(.final,.hero,.dark,.formats-section,.natural-bridge,.lm-section.darkband) .button.secondary{
  background:transparent!important;color:#07523a!important;border-color:rgba(7,82,58,.5)!important}
html.site-light :is(.locate,.mh) .button.secondary{background:transparent!important;color:#f5f3ec!important;border-color:rgba(245,243,236,.55)!important}
html.site-light :is(.final,.hero,.dark,.natural-bridge) .button.secondary:hover{background:#07523a!important;color:#fff!important;border-color:#07523a!important}
html.site-light :is(.locate,.mh) .button.secondary:hover,
html.site-dark :is(.final,.hero,.dark,.natural-bridge,.locate,.mh) .button.secondary:hover{
  background:#fff!important;color:#07523a!important;border-color:#fff!important}
/* light pages (white ground): outline so a white button is still visible */
html.site-light .button,html.site-light header .actions .button{background:#fff!important;color:#07523a!important;border-color:#07523a!important}
html.site-light .button:hover,html.site-light header .actions .button:hover{background:#07523a!important;color:#fff!important;border-color:#07523a!important}
html.site-light .button.secondary{background:transparent!important;border-color:rgba(7,82,58,.5)!important;color:#07523a!important}

/* ===== FACILITY v2 — real photography sections ===== */
.fx-sec{padding:clamp(70px,8vw,110px) 0}
.fx-sec.fx-alt{background:linear-gradient(150deg,#fbfcfa,#f1f6f3)}
html.site-dark .fx-sec.fx-alt{background:#062a20}
.fx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fx-grid figure,.fx-flow figure{margin:0;position:relative;overflow:hidden;background:#dfe7e2}
.fx-grid img,.fx-flow img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/2;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.fx-grid figure:hover img,.fx-flow figure:hover img{transform:scale(1.035)}
.fx-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 13px;
  background:linear-gradient(0deg,rgba(2,31,22,.9),transparent);color:#f5f3ec;
  font:600 .68rem ui-monospace,Menlo,monospace;letter-spacing:.09em;text-transform:uppercase}
.fx-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.fx-flow figcaption{padding:16px 2px 0}
.fx-flow figcaption strong{display:block;font:500 1.05rem "Manrope",sans-serif;color:var(--g600,#07523a)}
.fx-flow figcaption span{display:block;font-size:.82rem;color:var(--muted,#687a73);margin-top:4px;line-height:1.5}
html.site-dark .fx-flow figcaption strong{color:#e8ddc0}
html.site-dark .fx-flow figcaption span{color:#bcd0c7}
.fx-solar{background:#021f16;color:#f5f3ec}
.fx-solar-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.fx-solar-media{position:relative;overflow:hidden;min-height:420px}
.fx-solar-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fx-solar-copy{padding:clamp(44px,6vw,92px) clamp(28px,5vw,80px);display:flex;flex-direction:column;justify-content:center}
.fx-solar-copy h2{font-family:"Manrope",sans-serif;font-weight:500;font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.03;letter-spacing:-.05em;color:#fff;margin:14px 0 18px}
.fx-solar-copy p{color:#cbdad3;margin:0 0 26px;max-width:520px}
.fx-solar-points{display:flex;flex-direction:column;gap:9px}
.fx-solar-points span{font-size:.82rem;color:#e8ddc0;padding-left:18px;position:relative}
.fx-solar-points span:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:1px;background:#c6a15b}
@media(max-width:900px){.fx-grid{grid-template-columns:1fr}.fx-flow{grid-template-columns:1fr 1fr}
  .fx-solar-grid{grid-template-columns:1fr}.fx-solar-media{min-height:260px}}
@media(max-width:560px){.fx-flow{grid-template-columns:1fr}}

/* Home masthead: stats rail sits on the bottom edge of the photo (no image band below it) */
section.mh{padding-bottom:0!important}
section.mh .mh-rail{align-self:end}

/* Contact: two direct channels (one shared email, one phone) */
@media (min-width:901px){.contact-direct{grid-template-columns:repeat(2,1fr)!important}}
#direct{scroll-margin-top:96px}

/* TasteRight: sensory panel photo */
.tr-panel-sec{padding:clamp(40px,6vw,80px) 0}
.tr-panel{margin:0}
.tr-panel img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.tr-panel figcaption{margin-top:14px;font-size:.9rem;color:var(--muted,#5b6b63)}
