/*
Theme Name:   GCRC Child
Theme URI:    /
Description:  Global Cannabinoid Research Center child theme for Astra. Complete design system for every page, ElementsKit header and footer support, research article templates, editable JV window and brand availability, Web3Forms styling and calm motion. Built by Creaeza.
Author:       Creaeza LLC
Template:     astra
Version:      2.4.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.1
Text Domain:  gcrc-child
*/

/* =====================================================================
   CONTENTS
   01 Tokens            11 Header                 21 Tabs and accordions
   02 Base              12 Mobile drawer          22 Tables and callouts
   03 Type              13 Footer                 23 Timeline and people
   04 Layout            14 Home components        24 Contact and forms
   05 Sections          15 Page hero              25 Prose (articles, legal)
   06 Buttons, links    16 Breadcrumbs, subnav    26 Articles and archive
   07 Tags and status   17 Cards and grids        27 404, search, thank you
   08 Motion            18 Brands and products    28 ElementsKit and Astra
   09 Stats, marquee    19 Availability (JV)      29 Utilities
   10 Page setup        20 Research and portal    30 Print
   Every page is Elementor HTML widgets inside one container with class
   g-bare. Header and footer are ElementsKit templates. Nothing else needed.
   ===================================================================== */

/* ---------- 01. TOKENS ---------- */
:root{
  /* October 27, 2026: deep petrol and gold, so GCRC reads clearly apart from Plant Chat's forest green and mint */
  --g-ink:#08191C; --g-ink-2:#0D2427; --g-ink-3:#14343A; --g-night:#040D0F;
  --g-leaf:#0B332F; --g-green:#1F7A6D; --g-green-hover:#196356; --g-mint:#E2BD72;
  --g-amber:#D98C1F; --g-amber-soft:#E8B050; --g-amber-ink:#8A5A12;
  --g-paper:#F5F3EF; --g-bone:#EAE6DE; --g-white:#fff;
  --g-text:#1C2A2B; --g-muted:#546664; --g-on-dark:#E6EDEC; --g-on-dark-muted:#A3B6B3;
  --g-line:#E0E6E5; --g-line-dark:rgba(255,255,255,.1);
  --g-danger:#8C3322;

  --g-f-display:'Fraunces',Georgia,'Times New Roman',serif;
  --g-f-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --g-f-label:'Space Grotesk',var(--g-f-body);

  /* fluid type: smallest phone to large desktop */
  --g-fs-body:clamp(16px,15.4px + .18vw,17.5px);
  --g-fs-sm:clamp(14px,13.6px + .12vw,15px);
  --g-fs-lead:clamp(16.5px,15.6px + .35vw,19.5px);
  --g-fs-h1:clamp(2.15rem,1.35rem + 3.6vw,5.1rem);
  --g-fs-h2:clamp(1.85rem,1.3rem + 2.2vw,3.4rem);
  --g-fs-h3:clamp(1.3rem,1.12rem + .7vw,1.8rem);
  --g-fs-h4:clamp(1.05rem,1rem + .2vw,1.15rem);
  --g-fs-label:clamp(10.5px,10.2px + .12vw,12px);

  /* fluid space */
  --g-max:1280px;
  --g-max-wide:1440px;
  --g-max-text:720px;
  --g-pad-x:clamp(18px,4.6vw,56px);
  --g-sec-y:clamp(64px,4.6vw + 40px,136px);
  --g-sec-y-sm:clamp(48px,3vw + 30px,88px);
  --g-gap:clamp(14px,1.4vw + 6px,28px);
  --g-card-pad:clamp(20px,1.6vw + 12px,32px);

  --g-radius:6px; --g-radius-lg:14px; --g-radius-xl:22px;
  --g-shadow:0 1px 2px rgba(8,25,28,.05),0 8px 28px rgba(8,25,28,.08);
  --g-shadow-lg:0 2px 6px rgba(8,25,28,.06),0 24px 56px rgba(8,25,28,.13);
  --g-ease:cubic-bezier(.16,1,.3,1);
  --g-dur:.7s;

  /* header: gcrc.js writes the real measured height into --g-head-total */
  --g-header-h:80px; --g-announce-h:40px;
  --g-head-total:calc(var(--g-header-h) + var(--g-announce-h));
}
@media (min-width:1680px){:root{--g-max:1360px}}
@media (max-width:1024px){:root{--g-header-h:70px}}

/* ---------- 02. BASE ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto!important;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--g-f-body);color:var(--g-text);font-size:var(--g-fs-body);line-height:1.72;background:#fff;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
::selection{background:var(--g-green);color:#fff}
img,svg,video{max-width:100%;height:auto}
a{color:var(--g-green);text-decoration:none;transition:color .3s}
a:hover{color:var(--g-ink)}
:focus-visible{outline:2px solid var(--g-amber);outline-offset:3px;border-radius:3px}
.g-skip{position:fixed;left:12px;top:-60px;z-index:3000;background:var(--g-amber);color:var(--g-ink)!important;padding:10px 16px;border-radius:var(--g-radius);font-weight:600;transition:top .3s}
.g-skip:focus{top:12px}

/* ---------- 03. TYPE ---------- */
h1,h2,h3,h4,h5,.elementor-heading-title{font-family:var(--g-f-display);color:var(--g-ink);font-weight:500;letter-spacing:-.02em;line-height:1.12;overflow-wrap:break-word}
h1{font-size:var(--g-fs-h1)} h2{font-size:var(--g-fs-h2)}
h3{font-size:var(--g-fs-h3);letter-spacing:-.01em}
h4{font-size:var(--g-fs-h4);font-weight:600;font-family:var(--g-f-body);letter-spacing:0}
p{margin:0 0 1em}
sup{line-height:0}

/* one reset for every GCRC block so Astra and Elementor kit styles never win */
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta,.g-main,.g-footer,.g-header,.g-drawer) :is(h1,h2,h3,h4,h5,h6){
  font-family:var(--g-f-display);color:var(--g-ink);font-weight:500;letter-spacing:-.02em;line-height:1.12;margin:0;text-transform:none;overflow-wrap:break-word}
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta,.g-main) h4{font-family:var(--g-f-body);font-weight:600;letter-spacing:0;font-size:var(--g-fs-h4);line-height:1.35}
body :is(.g-hero,.g-dark,.g-band--ink,.g-cta,.g-phero:not(.g-phero--light)) :is(h1,h2,h3,h4,h5){color:#fff}
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta,.g-main) p{margin:0 0 1em}
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta) ul:not(.g-list){margin:0;padding:0;list-style:none}
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta,.g-main) img{border:0;box-shadow:none}
body :is(.g-hero,.g-phero,.g-section,.g-band,.g-cta,.g-main) a:not(.g-btn):not(.g-link){text-decoration:none}

.g-eyebrow,.g-eyebrow .elementor-heading-title{font-family:var(--g-f-label)!important;font-size:var(--g-fs-label)!important;font-weight:700!important;
  letter-spacing:.22em!important;text-transform:uppercase;color:var(--g-green)!important;display:inline-flex;align-items:center;gap:14px;line-height:1.4!important}
.g-eyebrow:not(.elementor-widget)::before,.g-eyebrow .elementor-heading-title::before{content:'';width:28px;height:1.5px;background:var(--g-amber);flex-shrink:0}
.g-eyebrow--plain::before{display:none!important}
body .g-display,.g-display .elementor-heading-title{font-size:clamp(2.4rem,1.3rem + 4.6vw,5.4rem)!important;line-height:1.03!important;letter-spacing:-.035em!important}
body .g-h1{font-size:var(--g-fs-h1)}
body .g-h2,.g-h2 .elementor-heading-title{font-size:var(--g-fs-h2)!important}
body .g-h3{font-size:var(--g-fs-h3);font-weight:500}
.g-lead,.g-lead p,.g-lead .elementor-widget-container{font-size:var(--g-fs-lead);font-weight:300;line-height:1.8;color:var(--g-muted);max-width:62ch}
.g-small{font-size:var(--g-fs-sm);color:var(--g-muted)}
.g-tm{font-size:.5em;vertical-align:super;color:var(--g-amber);font-weight:600}
.g-gold-rule{display:block;width:56px;height:2px;background:var(--g-amber);border:0;margin:22px 0}
em.g-em,.g-em{font-style:italic;color:var(--g-green)}
.g-dark .g-em,.g-phero .g-em{color:var(--g-mint)}
body .g-list{margin:0 0 1em;padding-left:1.2em}
body .g-list li{margin:.35em 0}

/* ---------- 04. LAYOUT ---------- */
.g-wrap{width:100%;max-width:var(--g-max);margin-inline:auto;padding-inline:var(--g-pad-x)}
.g-wrap--wide{max-width:var(--g-max-wide)}
.g-wrap--text{max-width:calc(var(--g-max-text) + var(--g-pad-x) * 2)}
.g-section > .e-con-inner{max-width:var(--g-max)!important;margin-inline:auto;padding-inline:var(--g-pad-x)}
.g-grid{display:grid;gap:var(--g-gap)}
.g-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-grid--auto{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.g-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center}
.g-split--top{align-items:start}
.g-split--wide-left{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.g-split--wide-right{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.g-split--reverse > :first-child{order:2}
.g-sticky{position:sticky;top:calc(var(--g-head-total) + 24px)}
.g-head{max-width:760px;margin-bottom:clamp(36px,4.5vw,64px)}
body .g-head .g-h2,body .g-head h2{margin:18px 0 16px}
.g-head--center{margin-inline:auto;text-align:center}
.g-head--center .g-lead{margin-inline:auto}
body .g-head--split{max-width:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,5vw,72px);align-items:end}
body .g-head--split .g-lead{margin:0}
@media (max-width:1024px){.g-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.g-split,.g-split--wide-left,.g-split--wide-right{grid-template-columns:minmax(0,1fr)}.g-split--reverse > :first-child{order:0}
  body .g-head--split{grid-template-columns:minmax(0,1fr)}.g-sticky{position:static}}
@media (max-width:640px){.g-grid--2,.g-grid--3,.g-grid--4{grid-template-columns:minmax(0,1fr)}}

/* ---------- 05. SECTIONS ---------- */
.g-section{padding-top:var(--g-sec-y)!important;padding-bottom:var(--g-sec-y)!important;position:relative}
.g-section--tight{padding-top:var(--g-sec-y-sm)!important;padding-bottom:var(--g-sec-y-sm)!important}
.g-section--flush-top{padding-top:0!important}
.g-paper{background:var(--g-paper)!important}
.g-bone{background:var(--g-bone)!important}
.g-dark{background:var(--g-ink)!important;color:var(--g-on-dark)}
.g-night{background:var(--g-night)!important;color:var(--g-on-dark)}
.g-dark p,.g-night p{color:var(--g-on-dark)}
body .g-dark .g-lead,body .g-night .g-lead,body .g-hero .g-lead,body .g-phero:not(.g-phero--light) .g-lead{color:var(--g-on-dark-muted)}
.g-dark .g-eyebrow,.g-night .g-eyebrow,.g-hero .g-eyebrow,.g-phero:not(.g-phero--light) .g-eyebrow,.g-cta .g-eyebrow{color:var(--g-mint)!important}
.g-dark a:not(.g-btn):not(.g-card):not(.g-post),.g-night a:not(.g-btn){color:var(--g-mint)}
.g-glow{isolation:isolate;overflow:hidden}
.g-glow::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 55% at 12% 20%,rgba(31,122,109,.26),transparent 70%),radial-gradient(50% 45% at 90% 85%,rgba(217,140,31,.12),transparent 70%)}
.g-grid-lines{isolation:isolate}
.g-grid-lines::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.6;
  background-image:linear-gradient(rgba(226,189,114,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(226,189,114,.06) 1px,transparent 1px);
  background-size:88px 88px;-webkit-mask-image:radial-gradient(ellipse at center,#000 25%,transparent 75%);mask-image:radial-gradient(ellipse at center,#000 25%,transparent 75%)}
.g-divider{height:1px;background:var(--g-line);border:0;margin:0}
.g-dark .g-divider{background:var(--g-line-dark)}

/* ---------- 06. BUTTONS AND LINKS ---------- */
.g-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,34px)}
.g-btns--center{justify-content:center}
body a.g-btn,body button.g-btn,.g-btn .elementor-button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center;
  font-family:var(--g-f-label);font-size:clamp(12px,11.6px + .1vw,13px);font-weight:700;letter-spacing:.11em;text-transform:uppercase;line-height:1.2;
  padding:clamp(14px,1vw + 8px,17px) clamp(20px,1.6vw + 10px,30px);border-radius:var(--g-radius);border:1.5px solid transparent;cursor:pointer;
  background:var(--g-green);color:#fff;fill:#fff;text-decoration:none;min-height:48px;
  transition:transform .45s var(--g-ease),box-shadow .45s var(--g-ease),background-color .3s,border-color .3s,color .3s}
body a.g-btn:hover,body button.g-btn:hover,.g-btn .elementor-button:hover{transform:translateY(-2px);background:var(--g-green-hover);color:#fff;box-shadow:0 10px 26px rgba(31,122,109,.28)}
body a.g-btn:active,body button.g-btn:active{transform:none}
body a.g-btn--amber,body button.g-btn--amber,.g-btn--amber .elementor-button{background:var(--g-amber);color:var(--g-ink)}
body a.g-btn--amber:hover,body button.g-btn--amber:hover,.g-btn--amber .elementor-button:hover{background:var(--g-amber-soft);color:var(--g-ink);box-shadow:0 10px 26px rgba(217,140,31,.28)}
body a.g-btn--ghost,body button.g-btn--ghost,.g-btn--ghost .elementor-button{background:transparent;color:var(--g-ink);border-color:rgba(8,25,28,.24)}
body a.g-btn--ghost:hover,body button.g-btn--ghost:hover,.g-btn--ghost .elementor-button:hover{background:var(--g-ink);color:#fff;border-color:var(--g-ink);box-shadow:none}
body .g-dark a.g-btn--ghost,body .g-night a.g-btn--ghost,body a.g-btn--light,body button.g-btn--light,.g-btn--light .elementor-button{background:rgba(255,255,255,.04);color:#fff;border-color:rgba(255,255,255,.3)}
body .g-dark a.g-btn--ghost:hover,body .g-night a.g-btn--ghost:hover,body a.g-btn--light:hover,body button.g-btn--light:hover,.g-btn--light .elementor-button:hover{background:#fff;color:var(--g-ink);border-color:#fff}
body a.g-btn--sm,body button.g-btn--sm{padding:12px 20px!important;font-size:11.5px!important;min-height:44px}
body .g-btn[aria-disabled="true"],body .g-btn.is-disabled{opacity:.5;pointer-events:none}
.g-arrow{flex-shrink:0;transition:transform .45s var(--g-ease)}
body a.g-btn:hover .g-arrow,body a.g-link:hover .g-arrow,a:hover > .g-link .g-arrow{transform:translateX(4px)}
body .g-link,body a.g-link{font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  color:var(--g-green);display:inline-flex;align-items:center;gap:9px;text-decoration:none;transition:gap .4s var(--g-ease),color .3s}
body a.g-link:hover{color:var(--g-amber-ink)}
body .g-dark .g-link,body .g-night .g-link{color:var(--g-mint)}
body .g-inline{color:var(--g-green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
body .g-inline:hover{color:var(--g-ink)}

/* ---------- 07. TAGS AND STATUS ---------- */
.g-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;line-height:1.3;
  padding:6px 12px;border-radius:99px;background:rgba(31,122,109,.12);color:var(--g-green);white-space:nowrap}
.g-tag--amber{background:rgba(217,140,31,.15);color:var(--g-amber-ink)}
.g-tag--dark{background:rgba(226,189,114,.13);color:var(--g-mint)}
.g-tag--ink{background:var(--g-ink);color:#fff}
.g-tag--line{background:transparent;border:1px solid var(--g-line);color:var(--g-muted)}
.g-tags{display:flex;flex-wrap:wrap;gap:8px}
/* status pill: set by {{gcrc:brand-key:slug}} in the class, e.g. class="g-status g-status--available" */
.g-status{display:inline-flex;align-items:center;gap:8px;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  padding:6px 12px 6px 10px;border-radius:99px;background:rgba(86,104,98,.12);color:var(--g-muted);white-space:nowrap;line-height:1.3}
.g-status::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}
.g-status--available,.g-status--open{background:rgba(31,122,109,.13);color:var(--g-green)}
.g-status--discussion{background:rgba(217,140,31,.15);color:var(--g-amber-ink)}
.g-status--partnered{background:var(--g-ink);color:var(--g-mint)}
.g-status--development{background:rgba(8,25,28,.07);color:var(--g-ink)}
.g-status--unavailable,.g-status--closed{background:rgba(86,104,98,.12);color:var(--g-muted)}
:is(.g-dark,.g-night,.g-brand--lg,.g-phero:not(.g-phero--light),.g-band--ink) .g-status--available{background:rgba(226,189,114,.14);color:var(--g-mint)}
:is(.g-dark,.g-night,.g-brand--lg,.g-phero:not(.g-phero--light),.g-band--ink) .g-status--partnered{background:var(--g-mint);color:var(--g-ink)}
:is(.g-dark,.g-night,.g-brand--lg,.g-phero:not(.g-phero--light),.g-band--ink) :is(.g-status--development,.g-status--unavailable,.g-status--closed){background:rgba(255,255,255,.08);color:var(--g-on-dark)}
.g-live{display:inline-flex;align-items:center;gap:10px;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g-mint)}
.g-live i{width:9px;height:9px;border-radius:50%;background:var(--g-mint);animation:g-pulse 2.6s infinite}
.g-section:not(.g-dark) .g-live{color:var(--g-green)}
.g-section:not(.g-dark) .g-live i{background:var(--g-green)}
@keyframes g-pulse{0%{box-shadow:0 0 0 0 rgba(226,189,114,.5)}70%{box-shadow:0 0 0 10px rgba(226,189,114,0)}100%{box-shadow:0 0 0 0 rgba(226,189,114,0)}}

/* ---------- 08. MOTION (calm, short travel, respects reduced motion) ---------- */
.g-js .g-reveal,.g-js .g-stagger > *{opacity:0;transform:translateY(18px);
  transition:opacity var(--g-dur) var(--g-ease),transform calc(var(--g-dur) + .15s) var(--g-ease);transition-delay:var(--g-d,0s)}
.g-js .g-reveal.is-in,.g-js .g-stagger.is-in > *{opacity:1;transform:none}
.g-js .g-reveal--fade{transform:none}
.g-js .g-reveal--left{transform:translateX(-24px)}
.g-js .g-reveal--right{transform:translateX(24px)}
.g-js .g-reveal--zoom{transform:scale(.97)}
.g-lines .g-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.g-lines .g-line > span{display:block;transform:translateY(102%);transition:transform .95s var(--g-ease);transition-delay:var(--g-d,0s)}
.g-lines.is-in .g-line > span{transform:none}
.g-parallax{will-change:transform}
.g-kenburns::before{animation:g-kb 36s ease-in-out infinite alternate}
@keyframes g-kb{from{transform:scale(1)}to{transform:scale(1.06)}}
.elementor-editor-active .g-reveal,.elementor-editor-active .g-stagger > *{opacity:1!important;transform:none!important}
.elementor-editor-active .g-lines .g-line > span{transform:none!important}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .g-js .g-reveal,.g-js .g-stagger > *{opacity:1;transform:none}
  .g-lines .g-line > span{transform:none}
}

/* ---------- 09. STATS AND MARQUEE ---------- */
.g-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1px;background:var(--g-line);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden}
.g-stats > div{background:#fff;padding:clamp(20px,2vw,30px)}
.g-dark .g-stats{background:var(--g-line-dark);border-color:var(--g-line-dark)}
.g-dark .g-stats > div{background:var(--g-ink)}
.g-stat-num,.g-stat .elementor-counter-number-wrapper{display:block;font-family:var(--g-f-display)!important;font-weight:500!important;font-size:clamp(34px,2.4vw + 18px,58px)!important;color:var(--g-ink)!important;line-height:1!important;letter-spacing:-.03em}
.g-stat-label,.g-stat .elementor-counter-title{display:block;font-family:var(--g-f-label)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.15em!important;text-transform:uppercase;color:var(--g-muted)!important;margin-top:10px}
.g-dark .g-stat-num{color:#fff!important}.g-dark .g-stat-label{color:var(--g-on-dark-muted)!important}
.g-marquee{overflow:hidden;white-space:nowrap;background:var(--g-ink-2);border-block:1px solid var(--g-line-dark)}
.g-marquee__track{display:inline-flex;animation:g-marquee 60s linear infinite}
.g-marquee:hover .g-marquee__track{animation-play-state:paused}
.g-marquee__track span{font-family:var(--g-f-label);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--g-on-dark-muted);
  padding:clamp(14px,1.2vw,18px) clamp(18px,2vw,30px);display:inline-flex;align-items:center;gap:clamp(18px,2vw,30px)}
.g-marquee__track span::after{content:'';width:5px;height:5px;border-radius:50%;background:var(--g-amber)}
@keyframes g-marquee{to{transform:translateX(-50%)}}

/* ---------- 10. PAGE SETUP FOR HTML WIDGET PAGES ---------- */
.e-con.g-bare,.elementor-section.g-bare{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--content-width:100%;padding:0!important;max-width:100%!important}
.g-bare > .e-con-inner{max-width:100%!important;width:100%!important;padding:0!important;gap:0!important}
.g-bare .elementor-widget-html,.g-bare .elementor-element.elementor-widget-html{width:100%;max-width:100%}
.elementor-widget-html{margin-bottom:0!important;margin-block-end:0!important}
.elementor-widget-html > .elementor-widget-container{padding:0!important;margin:0!important}

/* ---------- 11. HEADER (ElementsKit Header template, one HTML widget: paste/header.html) ---------- */
.g-header{position:fixed;left:0;right:0;top:0;z-index:1000;transition:background-color .5s var(--g-ease),box-shadow .5s var(--g-ease),transform .55s var(--g-ease)}
.admin-bar .g-header{top:32px}
@media (max-width:782px){.admin-bar .g-header{top:46px}}
@media (max-width:600px){.admin-bar .g-header{top:0}.admin-bar.g-scrolled .g-header{top:0}}
.g-scrolled .g-header,.g-light-top .g-header,.g-drawer-open .g-header{background:rgba(8,25,28,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.g-scrolled .g-header{box-shadow:0 1px 0 rgba(255,255,255,.06),0 14px 36px rgba(0,0,0,.2)}
.g-header-hidden .g-header{transform:translateY(-100%)}
.g-drawer-open .g-header{transform:none}
.g-announce{background:var(--g-amber);color:var(--g-ink);font-family:var(--g-f-label);font-size:12.5px;font-weight:600;letter-spacing:.02em;
  max-height:120px;overflow:hidden;transition:max-height .5s var(--g-ease),opacity .4s}
.g-announce__in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:var(--g-announce-h)}
.g-announce p{margin:0;line-height:1.45;padding:9px 0;color:var(--g-ink)}
body .g-announce a{color:var(--g-ink);font-weight:700;border-bottom:1px solid rgba(8,25,28,.4);white-space:nowrap}
body .g-announce a:hover{color:var(--g-ink);border-color:var(--g-ink)}
.g-announce .g-eco{display:flex;gap:18px;flex-shrink:0}
body .g-announce .g-eco a{border:0;opacity:.78;font-weight:600}
body .g-announce .g-eco a:hover{opacity:1}
.g-scrolled .g-announce{max-height:0;opacity:0}
.g-header__in{display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,24px);min-height:var(--g-header-h);transition:min-height .5s var(--g-ease)}
.g-scrolled .g-header__in{min-height:calc(var(--g-header-h) - 14px)}
.g-header .g-logo{display:block;flex-shrink:0;line-height:0;width:clamp(128px,9vw + 60px,176px);transition:width .5s var(--g-ease)}
.g-header .g-logo img,.elementor .g-header .g-logo img{display:block;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important}
.g-scrolled .g-header .g-logo{width:clamp(124px,7vw + 56px,150px)}
.g-nav{min-width:0}
.g-nav__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.g-nav__list > li{position:relative}
body .g-nav__list > li > a{display:inline-flex;align-items:center;gap:7px;font-family:var(--g-f-body);font-size:14.5px;font-weight:500;
  color:rgba(255,255,255,.86);padding:12px 14px;position:relative;letter-spacing:.01em;white-space:nowrap;transition:color .3s}
.g-nav__list > li > a::after{content:'';position:absolute;left:14px;right:14px;bottom:6px;height:1.5px;background:var(--g-amber);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--g-ease)}
body .g-nav__list > li:hover > a,body .g-nav__list > li:focus-within > a,body .g-nav__list > li > a.is-current{color:#fff}
.g-nav__list > li:hover > a::after,.g-nav__list > li:focus-within > a::after,.g-nav__list > li > a.is-current::after{transform:scaleX(1);transform-origin:left}
.g-caret{display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7;transition:transform .35s var(--g-ease)}
.g-nav__list > li:hover .g-caret,.g-nav__list > li:focus-within .g-caret{transform:rotate(225deg) translate(-1px,-1px)}
.g-sub{list-style:none;margin:0;position:absolute;left:0;top:100%;min-width:260px;padding:10px;background:#fff;border-radius:var(--g-radius-lg);
  border:1px solid var(--g-line);box-shadow:var(--g-shadow-lg);opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .3s var(--g-ease),transform .4s var(--g-ease),visibility .3s}
.g-sub::before,.g-mega::before{content:'';position:absolute;left:0;right:0;top:-14px;height:14px}
.g-nav__list > li:hover > .g-sub,.g-nav__list > li:focus-within > .g-sub{opacity:1;visibility:visible;transform:translateY(4px)}
body .g-sub a{display:block;padding:11px 14px;border-radius:8px;font-size:14.5px;font-weight:500;color:var(--g-ink);transition:background-color .3s,color .3s,padding-left .35s var(--g-ease)}
body .g-sub a:hover{background:var(--g-paper);color:var(--g-green);padding-left:18px}
.g-mega{position:absolute;left:50%;top:100%;width:min(760px,calc(100vw - 40px));padding-top:4px;opacity:0;visibility:hidden;transform:translate(-50%,8px);
  transition:opacity .3s var(--g-ease),transform .4s var(--g-ease),visibility .3s}
.g-nav__list > li:hover > .g-mega,.g-nav__list > li:focus-within > .g-mega{opacity:1;visibility:visible;transform:translate(-50%,4px)}
.g-mega__in{display:grid;grid-template-columns:1.05fr 1fr;background:#fff;border-radius:var(--g-radius-lg);border:1px solid var(--g-line);box-shadow:var(--g-shadow-lg);overflow:hidden}
.g-mega__feat{background:var(--g-ink);padding:30px;position:relative;overflow:hidden;isolation:isolate}
.g-mega__feat::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(70% 70% at 0% 0%,rgba(31,122,109,.4),transparent 70%)}
.g-mega__feat strong{display:block;font-family:var(--g-f-display);font-size:27px;font-weight:500;color:#fff;margin:12px 0 8px;line-height:1.15}
.g-mega__feat p{font-size:14px;line-height:1.65;color:var(--g-on-dark-muted);margin:0 0 18px}
body .g-mega__feat .g-link{color:var(--g-mint)}
.g-mega__links{padding:14px;display:flex;flex-direction:column}
body .g-mega__links a{display:block;padding:12px 14px;border-radius:10px;transition:background-color .3s,padding-left .35s var(--g-ease)}
body .g-mega__links a:hover{background:var(--g-paper);padding-left:18px}
.g-mega__links b{display:block;font-size:14.5px;font-weight:600;color:var(--g-ink)}
.g-mega__links span{display:block;font-size:12.5px;line-height:1.5;color:var(--g-muted);margin-top:2px}
.g-header__cta{flex-shrink:0}
.g-burger{display:none;width:46px;height:46px;flex-shrink:0;border:1px solid rgba(255,255,255,.25);border-radius:9px;background:transparent!important;position:relative;cursor:pointer;padding:0!important;box-shadow:none!important}
.g-burger span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:#fff;transition:transform .4s var(--g-ease),opacity .3s}
.g-burger span:nth-child(1){top:15px}.g-burger span:nth-child(2){top:22px}.g-burger span:nth-child(3){top:29px}
.g-burger:hover{border-color:rgba(255,255,255,.5)}
@media (max-width:1240px){body .g-nav__list > li > a{padding:12px 10px;font-size:14px}.g-nav__list > li > a::after{left:10px;right:10px}}
@media (max-width:1100px){body .g-nav__list > li > a{padding:12px 8px;font-size:13.5px}}
@media (max-width:1024px){
  .g-nav{display:none}.g-burger{display:block}.g-announce .g-eco{display:none}.g-announce{font-size:12px}
  .g-header__cta{margin-left:auto}
}
@media (max-width:479px){.g-header__cta{display:none}.g-announce{font-size:11.5px}}

/* ---------- 12. MOBILE DRAWER ---------- */
.g-drawer{position:fixed;inset:0;z-index:2000;visibility:hidden;pointer-events:none}
.g-drawer__overlay{position:absolute;inset:0;background:rgba(4,14,10,.6);opacity:0;transition:opacity .45s}
.g-drawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(400px,100vw);background:var(--g-ink);transform:translateX(100%);
  transition:transform .55s var(--g-ease);display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.g-drawer-open .g-drawer{visibility:visible;pointer-events:auto}
.g-drawer-open .g-drawer__overlay{opacity:1}
.g-drawer-open .g-drawer__panel{transform:none}
html.g-lock,.g-drawer-open{overflow:hidden}
.g-drawer__top{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--g-line-dark);flex-shrink:0}
.g-drawer__top img,.elementor .g-drawer__top img{display:block;width:132px!important;height:auto!important;max-width:132px!important}
.g-drawer__close{width:44px;height:44px;border:1px solid rgba(255,255,255,.25)!important;border-radius:9px;background:transparent!important;cursor:pointer;position:relative;padding:0!important}
.g-drawer__close::before,.g-drawer__close::after{content:'';position:absolute;left:12px;right:12px;top:20px;height:2px;background:#fff;border-radius:2px}
.g-drawer__close::before{transform:rotate(45deg)}.g-drawer__close::after{transform:rotate(-45deg)}
.g-mnav{list-style:none;margin:0;padding:8px 0}
.g-mnav > li{border-bottom:1px solid var(--g-line-dark)}
body .g-mnav > li > a,body .g-mnav__toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:15px 22px;min-height:54px;
  font-family:var(--g-f-display);font-size:clamp(19px,4.6vw,23px);font-weight:500;color:#fff;background:none!important;border:0!important;cursor:pointer;text-align:left;letter-spacing:-.01em;box-shadow:none!important;text-transform:none;line-height:1.3}
body .g-mnav > li > a:hover,body .g-mnav__toggle:hover{color:var(--g-mint)}
.g-mnav__toggle .g-caret{width:9px;height:9px}
.g-mnav__has.is-open .g-caret{transform:rotate(225deg)}
.g-mnav__sub{list-style:none;margin:0;padding:0 22px;max-height:0;overflow:hidden;transition:max-height .5s var(--g-ease),padding .4s}
.g-mnav__has.is-open .g-mnav__sub{max-height:480px;padding-bottom:14px}
body .g-mnav__sub a{display:block;padding:10px 0 10px 14px;font-size:15.5px;color:var(--g-on-dark-muted);border-left:1.5px solid var(--g-line-dark);transition:color .3s,border-color .3s}
body .g-mnav__sub a:hover,body .g-mnav__sub a.is-current{color:#fff;border-color:var(--g-amber)}
.g-drawer__foot{margin-top:auto;padding:22px;display:flex;flex-direction:column;gap:18px}
body .g-drawer__foot .g-btn{width:100%}
.g-drawer__eco{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13.5px}
body .g-drawer__eco a{color:var(--g-on-dark-muted)}
body .g-drawer__eco a:hover{color:#fff}

/* ---------- 13. FOOTER (ElementsKit Footer template, one HTML widget: paste/footer.html) ---------- */
.g-footer{background:var(--g-night);color:var(--g-on-dark-muted);position:relative;overflow:hidden;isolation:isolate}
.g-footer::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(50% 60% at 0% 0%,rgba(31,122,109,.15),transparent 70%),radial-gradient(40% 50% at 100% 100%,rgba(217,140,31,.06),transparent 70%)}
.g-footer__top{padding-top:clamp(60px,7vw,100px);padding-bottom:36px}
.g-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px)}
.g-footer__brand a{display:inline-block;line-height:0}
.g-footer__brand img,.elementor .g-footer__brand img{display:block;width:clamp(160px,10vw + 90px,200px)!important;height:auto!important;max-width:100%!important}
.g-footer__brand p{margin:22px 0 14px;max-width:38ch}
body .g-footer h4{font-family:var(--g-f-label);font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g-mint);margin:0 0 16px;line-height:1.4}
.g-footer p{font-size:15px;color:var(--g-on-dark-muted);font-weight:300;line-height:1.75}
.g-footer ul{list-style:none;margin:0;padding:0}
.g-footer li{padding:5px 0}
body .g-footer a{color:var(--g-on-dark-muted);font-size:15px;font-weight:300;transition:color .3s}
body .g-footer a:hover{color:#fff}
.g-footer__row2{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,4vw,56px);align-items:end;margin-top:clamp(40px,5vw,56px);padding-top:clamp(32px,4vw,44px);border-top:1px solid var(--g-line-dark)}
.g-footer__eco{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body .g-eco-card{display:block;border:1px solid var(--g-line-dark);border-radius:var(--g-radius-lg);padding:16px 18px;transition:border-color .4s,background-color .4s,transform .5s var(--g-ease)}
body .g-eco-card:hover{border-color:rgba(226,189,114,.35);background:rgba(255,255,255,.03);transform:translateY(-3px)}
.g-eco-card b{display:block;color:#fff;font-size:15px;font-weight:600;margin-bottom:2px}
.g-eco-card span{font-size:13px}
.g-footer .g-newsletter input[type=email]{background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.16);color:#fff;border-radius:var(--g-radius);padding:14px 16px;font-size:16px;font-family:var(--g-f-body);min-height:50px}
.g-footer .g-newsletter input::placeholder{color:rgba(255,255,255,.45)}
.g-footer .g-newsletter input:focus{outline:none;border-color:var(--g-mint)}
.g-disclaimer{font-size:12.5px!important;line-height:1.7;color:rgba(169,189,181,.75)!important;max-width:96ch;margin:44px 0 0}
.g-footer__bottom{border-top:1px solid var(--g-line-dark)}
.g-footer__bottom-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 24px;padding-top:22px;padding-bottom:26px;font-size:13.5px}
.g-footer__bottom-in nav{display:flex;flex-wrap:wrap;gap:8px 22px}
body .g-footer__bottom-in a{font-size:13.5px}
@media (max-width:1024px){.g-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.g-footer__brand{grid-column:1/-1}.g-footer__row2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.g-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g-footer__eco{grid-template-columns:minmax(0,1fr)}}
@media (max-width:380px){.g-footer__grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- 14. HOME COMPONENTS ---------- */
/* Hero */
.g-hero{position:relative;background:var(--g-ink);color:var(--g-on-dark);overflow:hidden;isolation:isolate;
  padding-top:calc(var(--g-head-total) + clamp(32px,5vw,80px));padding-bottom:0}
.g-hero__orb{position:absolute;border-radius:50%;z-index:-1;pointer-events:none}
.g-hero__orb--a{width:clamp(420px,60vw,900px);aspect-ratio:1;left:-22%;top:-30%;background:radial-gradient(circle,rgba(31,122,109,.36) 0%,rgba(31,122,109,0) 65%)}
.g-hero__orb--b{width:clamp(360px,48vw,720px);aspect-ratio:1;right:-18%;bottom:-20%;background:radial-gradient(circle,rgba(217,140,31,.14) 0%,rgba(217,140,31,0) 65%)}
.g-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(32px,5vw,80px);align-items:center;padding-bottom:clamp(52px,7vw,100px)}
body .g-hero__title{font-size:clamp(2.3rem,1.3rem + 4.2vw,5.2rem);line-height:1.03;letter-spacing:-.035em;margin:clamp(16px,2vw,24px) 0 clamp(18px,2vw,26px);max-width:13ch}
body .g-hero__title em{font-style:italic;color:var(--g-mint)}
body .g-hero .g-lead{max-width:52ch}
.g-hero__media{position:relative;aspect-ratio:4/4.6;max-width:560px;justify-self:end;width:100%}
body .g-hero__media img.g-hero__img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;border-radius:var(--g-radius-xl);filter:saturate(.88) contrast(1.04)}
.g-hero__media::after{content:'';position:absolute;inset:0;border-radius:var(--g-radius-xl);background:linear-gradient(180deg,rgba(8,25,28,0) 45%,rgba(8,25,28,.7));pointer-events:none}
.g-float{position:absolute;z-index:2;background:rgba(255,255,255,.97);border-radius:14px;padding:clamp(11px,1vw + 4px,16px) clamp(13px,1vw + 6px,18px);
  box-shadow:0 20px 44px rgba(0,0,0,.24);display:flex;align-items:center;gap:12px;animation:g-float 9s ease-in-out infinite;max-width:calc(100% - 24px)}
.g-float b{display:block;font-family:var(--g-f-display);font-size:clamp(18px,1.2vw + 8px,24px);font-weight:600;color:var(--g-ink);line-height:1}
.g-float span{display:block;font-family:var(--g-f-label);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--g-muted);margin-top:5px}
body .g-float img{width:clamp(34px,2vw + 14px,44px)!important;height:auto!important}
.g-float--a{left:-28px;top:12%}
.g-float--b{right:-18px;bottom:16%;animation-delay:-4s}
.g-float--c{left:8%;bottom:-22px;background:var(--g-amber);animation-delay:-2s}
.g-float--c b,.g-float--c span{color:var(--g-ink)}
@keyframes g-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.g-hero__stats{border-top:1px solid var(--g-line-dark);display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.g-hero__stats > div{padding:clamp(20px,2vw,28px) 0 clamp(22px,2vw,30px) clamp(14px,2vw,28px);border-right:1px solid var(--g-line-dark)}
.g-hero__stats > div:first-child{padding-left:0}
.g-hero__stats > div:last-child{border-right:0}
.g-hero__stats b{display:block;font-family:var(--g-f-display);font-size:clamp(28px,2.2vw + 12px,44px);font-weight:500;color:#fff;line-height:1;letter-spacing:-.02em}
.g-hero__stats span{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--g-on-dark-muted);margin-top:10px}
@media (max-width:1024px){.g-hero__grid{grid-template-columns:minmax(0,1fr)}.g-hero__media{justify-self:center;max-width:620px;aspect-ratio:4/3.1;margin:4px auto 18px}}
@media (max-width:767px){.g-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.g-hero__stats > div:nth-child(2){border-right:0}.g-hero__stats > div:nth-child(3){padding-left:0}
  .g-hero__stats > div:nth-child(-n+2){border-bottom:1px solid var(--g-line-dark)}.g-float--a{left:10px;top:10px}.g-float--b{right:10px;bottom:22%}.g-float--c{left:10px;bottom:-16px}}
@media (max-width:420px){.g-float--b{display:none}}

/* Connected areas */
.g-areas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
body .g-areas a{position:relative;display:flex;flex-direction:column;min-height:280px;padding:clamp(22px,1.4vw + 10px,28px) clamp(20px,1.2vw + 8px,24px);border-radius:var(--g-radius-lg);background:#fff;
  border:1px solid var(--g-line);color:var(--g-text);overflow:hidden;isolation:isolate;transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease),border-color .5s,color .4s}
.g-areas a::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--g-ink);transform:translateY(101%);transition:transform .6s var(--g-ease)}
.g-areas a:hover{transform:translateY(-4px);box-shadow:var(--g-shadow-lg);border-color:var(--g-ink)}
.g-areas a:hover::before{transform:none}
.g-num{font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--g-amber)}
.g-ico{width:46px;height:46px;border-radius:12px;background:rgba(31,122,109,.1);color:var(--g-green);display:grid;place-items:center;flex-shrink:0;transition:background-color .4s,color .4s}
.g-dark .g-ico{background:rgba(226,189,114,.12);color:var(--g-mint)}
.g-areas .g-ico{margin:20px 0 18px}
body .g-areas h3{font-size:clamp(19px,.6vw + 15px,21px);font-weight:600;margin-bottom:10px;transition:color .4s}
.g-areas p{font-size:14.5px;line-height:1.65;color:var(--g-muted);margin:0 0 20px!important;transition:color .4s}
.g-areas .g-link{margin-top:auto}
body .g-areas a:hover h3{color:#fff}
.g-areas a:hover p{color:var(--g-on-dark-muted)}
.g-areas a:hover .g-ico{background:rgba(226,189,114,.14);color:var(--g-mint)}
body .g-areas a:hover .g-link{color:var(--g-mint)}
@media (max-width:1180px){.g-areas{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.g-areas{grid-template-columns:repeat(2,minmax(0,1fr))}body .g-areas a{min-height:0}}
@media (max-width:520px){.g-areas{grid-template-columns:minmax(0,1fr);gap:10px}
  body .g-areas a{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:16px;align-items:start;padding:20px}
  .g-areas .g-num{display:none}.g-areas .g-ico{margin:0;grid-row:1/4}
  body .g-areas h3{margin-bottom:6px}.g-areas p{margin-bottom:12px!important}}

/* Feature (Researcher and other lead features) */
.g-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,90px);align-items:center}
.g-brandmark{display:inline-flex;align-items:center;gap:12px;font-family:var(--g-f-label);font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g-muted)}
body .g-brandmark img{width:34px!important;height:34px!important}
body .g-feature__title{font-size:clamp(2.6rem,1.6rem + 3.6vw,4.9rem);letter-spacing:-.035em;margin:16px 0 18px}
body .g-feature__title sup,body .g-phero h1 sup{font-size:.34em;color:var(--g-amber);top:-1.3em;font-family:var(--g-f-body);position:relative;vertical-align:baseline}
.g-pillars{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 6px}
.g-platforms{display:flex;flex-direction:column;gap:14px}
.g-platform{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(14px,1.4vw,20px);align-items:center;padding:clamp(18px,1.4vw + 8px,24px) clamp(18px,1.4vw + 10px,26px);background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);
  transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease),border-color .4s}
.g-platform:hover{transform:translateX(5px);box-shadow:var(--g-shadow);border-color:rgba(31,122,109,.35)}
.g-platform__ico{width:clamp(48px,2vw + 30px,64px);aspect-ratio:1;border-radius:16px;background:var(--g-ink);color:var(--g-mint);display:grid;place-items:center}
body .g-platform h4{margin-bottom:4px}
.g-platform p{font-size:14.5px;color:var(--g-muted);margin:0!important;line-height:1.6}
.g-note{font-size:13px;color:var(--g-muted);margin-top:18px!important;padding-left:14px;border-left:2px solid var(--g-amber);line-height:1.6}
.g-dark .g-note{color:var(--g-on-dark-muted)}
@media (max-width:900px){.g-feature{grid-template-columns:minmax(0,1fr)}}
@media (max-width:420px){.g-platform{grid-template-columns:minmax(0,1fr)}}

/* JV band */
.g-band{position:relative;overflow:hidden;isolation:isolate}
.g-band--ink{background:var(--g-ink);color:var(--g-on-dark)}
.g-band--amber{background:var(--g-amber);color:var(--g-ink)}
.g-band__in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(22px,4vw,56px);align-items:center;padding-top:clamp(44px,6vw,76px);padding-bottom:clamp(44px,6vw,76px)}
.g-band__count{font-family:var(--g-f-display);font-size:clamp(72px,8vw + 20px,150px);font-weight:500;line-height:.85;color:var(--g-amber);letter-spacing:-.05em}
.g-band__count small{display:block;font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--g-on-dark-muted);margin-top:14px}
body .g-band h2{font-size:clamp(24px,1.6vw + 16px,38px);margin:12px 0 12px}
.g-band p{color:var(--g-on-dark-muted);max-width:58ch;margin:0!important}
.g-band--amber p,body .g-band--amber h2{color:var(--g-ink)}
.g-band__dates{display:block;margin-top:12px!important;font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-amber-soft)!important}
.g-band__dates:empty,.g-jv-dates:empty{display:none!important}
.g-band__cta{display:flex;flex-direction:column;gap:12px}
@media (max-width:1024px){.g-band__in{grid-template-columns:minmax(0,1fr)}.g-band__cta{flex-direction:row;flex-wrap:wrap}}
@media (max-width:420px){body .g-band__cta .g-btn{width:100%}}

/* Brand portfolio */
.g-brands{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(12px,1.2vw,18px)}
body .g-brand{grid-column:span 2;position:relative;display:flex;flex-direction:column;padding:var(--g-card-pad);border-radius:var(--g-radius-lg);background:#fff;border:1px solid var(--g-line);
  color:var(--g-text);overflow:hidden;min-height:250px;isolation:isolate;transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease),border-color .4s}
body .g-brand--lg{grid-column:span 3;min-height:310px;background:linear-gradient(160deg,var(--g-ink) 0%,var(--g-ink-2) 100%);border-color:var(--g-ink);color:var(--g-on-dark)}
.g-brand--lg::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--g-mint),var(--g-amber));transform:scaleX(0);transform-origin:left;transition:transform .7s var(--g-ease)}
.g-brand--lg:hover::before{transform:scaleX(1)}
.g-brand:hover{transform:translateY(-4px);box-shadow:var(--g-shadow-lg);border-color:rgba(31,122,109,.35)}
.g-brand__top{display:flex;justify-content:flex-start;align-items:center;gap:10px;flex-wrap:wrap}
.g-brand .g-brand__top,.g-card .g-brand__top{justify-content:space-between}
body .g-brand h3{font-size:clamp(23px,1vw + 16px,30px);margin:16px 0 10px;color:var(--g-ink)}
body .g-brand--lg h3{color:#fff;font-size:clamp(27px,1.4vw + 16px,38px)}
.g-brand h3 sup{font-size:.4em;color:var(--g-amber);top:-1.1em;position:relative;vertical-align:baseline}
.g-brand p{font-size:15px;line-height:1.65;color:var(--g-muted);margin:0 0 18px!important}
.g-brand--lg p{color:var(--g-on-dark-muted)}
.g-formats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px!important}
.g-formats li{font-size:12.5px;padding:6px 11px;border-radius:99px;border:1px solid var(--g-line);color:var(--g-muted);line-height:1.3}
.g-brand--lg .g-formats li,.g-dark .g-formats li{border-color:var(--g-line-dark);color:var(--g-on-dark)}
.g-brand .g-link{margin-top:auto}
body .g-brand--lg .g-link{color:var(--g-mint)}
@media (max-width:1024px){.g-brands{grid-template-columns:repeat(2,minmax(0,1fr))}body .g-brand,body .g-brand--lg{grid-column:span 1}}
@media (max-width:640px){.g-brands{grid-template-columns:minmax(0,1fr)}body .g-brand,body .g-brand--lg{min-height:0}}

/* Process steps */
.g-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;counter-reset:step;border-top:1px solid var(--g-line);margin:0;padding:0;list-style:none}
.g-steps--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-dark .g-steps{border-color:var(--g-line-dark)}
.g-step{position:relative;padding:26px 22px 0 0}
.g-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:block;font-family:var(--g-f-display);font-size:clamp(28px,1vw + 20px,34px);font-weight:500;color:var(--g-amber);margin-bottom:12px;line-height:1}
.g-step::after{content:'';position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--g-amber)}
body .g-step h4{margin-bottom:8px}
.g-step p{font-size:14.5px;color:var(--g-muted);line-height:1.6;margin:0!important}
.g-dark .g-step p{color:var(--g-on-dark-muted)}
@media (max-width:1024px){.g-steps,.g-steps--4{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:30px}}
@media (max-width:767px){.g-steps,.g-steps--4{grid-template-columns:minmax(0,1fr);border-top:0;border-left:1px solid var(--g-line);padding-left:26px;row-gap:26px}
  .g-dark .g-steps{border-left-color:var(--g-line-dark)}.g-step{padding:0}.g-step::after{top:6px;left:-30px}.g-step::before{font-size:24px;margin-bottom:6px}}
.g-checks{margin:0;padding:0;list-style:none}
.g-checks li{position:relative;padding:10px 0 10px 32px;border-bottom:1px solid var(--g-line);font-size:15.5px;line-height:1.55}
.g-dark .g-checks li{border-color:var(--g-line-dark);color:var(--g-on-dark)}
.g-checks li::before{content:'';position:absolute;left:2px;top:17px;width:14px;height:8px;border-left:2px solid var(--g-green);border-bottom:2px solid var(--g-green);transform:rotate(-45deg)}
.g-dark .g-checks li::before{border-color:var(--g-mint)}
.g-checks--plain li{border-bottom:0;padding-block:6px}
.g-checks--plain li::before{top:13px}
.g-imgframe{position:relative;border-radius:var(--g-radius-lg);overflow:hidden;aspect-ratio:4/3.2;margin:0;background:var(--g-bone)}
.g-imgframe--tall{aspect-ratio:4/5}.g-imgframe--wide{aspect-ratio:16/9}.g-imgframe--square{aspect-ratio:1}
body .g-imgframe img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.4s var(--g-ease)}
.g-imgframe:hover img{transform:scale(1.03)}
.g-imgframe figcaption{position:absolute;left:clamp(10px,1.4vw,18px);bottom:clamp(10px,1.4vw,18px);right:clamp(10px,1.4vw,18px);background:rgba(8,25,28,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5;border-left:3px solid var(--g-amber)}
.g-imgframe figcaption b{display:block;font-family:var(--g-f-display);font-size:clamp(16px,.5vw + 13px,18px);font-weight:500}

/* Research initiatives and pathways */
.g-inits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--g-gap)}
body .g-init{display:flex;flex-direction:column;border-radius:var(--g-radius-lg);overflow:hidden;background:#fff;border:1px solid var(--g-line);color:var(--g-text);transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease)}
.g-init:hover{transform:translateY(-4px);box-shadow:var(--g-shadow-lg)}
.g-init__img{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--g-bone)}
body .g-init__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.3s var(--g-ease)}
.g-init:hover .g-init__img img{transform:scale(1.04)}
.g-init__img .g-tag{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.95)}
.g-init__body{padding:var(--g-card-pad);display:flex;flex-direction:column;flex:1}
body .g-init h3{font-size:clamp(22px,1vw + 15px,29px);margin-bottom:12px}
.g-init p{color:var(--g-muted);font-size:15.5px;line-height:1.7}
.g-init .g-link{margin-top:auto}
.g-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}
.g-paths--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.g-path{padding:clamp(18px,1vw + 12px,24px);border-radius:var(--g-radius-lg);border:1px solid var(--g-line);background:#fff;display:flex;flex-direction:column;transition:border-color .4s,transform .5s var(--g-ease)}
.g-path:hover{border-color:rgba(31,122,109,.4);transform:translateY(-3px)}
.g-path .g-tag,.g-path .g-status{margin-bottom:14px;align-self:flex-start}
body .g-path h4{margin-bottom:6px}
.g-path p{font-size:14px;color:var(--g-muted);margin:0 0 14px!important;line-height:1.6}
.g-path .g-link{margin-top:auto}
@media (max-width:1180px){.g-paths--5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1024px){.g-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.g-inits{grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px){.g-paths,.g-paths--5{grid-template-columns:minmax(0,1fr)}}

/* Pharmaceutical marks */
.g-pharma{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--g-line-dark);border:1px solid var(--g-line-dark);border-radius:var(--g-radius-lg);overflow:hidden}
.g-mark{position:relative;background:var(--g-ink);padding:clamp(24px,1.4vw + 12px,32px) clamp(20px,1.2vw + 10px,26px);display:flex;flex-direction:column;min-height:290px;transition:background-color .5s}
.g-mark::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--g-mint),var(--g-amber));transform:scaleX(0);transform-origin:left;transition:transform .7s var(--g-ease)}
.g-mark:hover{background:var(--g-ink-2)}
.g-mark:hover::before{transform:scaleX(1)}
.g-code{font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--g-on-dark-muted)}
body .g-mark h3{font-size:clamp(23px,1vw + 15px,30px);color:#fff;margin:14px 0 6px}
.g-mark h3 sup{font-size:.42em;color:var(--g-amber-soft);top:-1em;position:relative;vertical-align:baseline}
.g-sub-label{font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-mint);margin-bottom:20px}
.g-mark ul{margin-top:auto!important}
.g-mark li{font-size:14px;color:var(--g-on-dark);padding:5px 0;display:flex;gap:10px;align-items:center;line-height:1.45}
.g-mark li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--g-amber);flex-shrink:0}
.g-legal{margin-top:28px!important;padding:16px 20px;border-left:2px solid var(--g-amber);background:rgba(217,140,31,.06);font-size:13.5px;color:var(--g-muted);border-radius:0 8px 8px 0;line-height:1.65}
.g-dark .g-legal,.g-night .g-legal{color:var(--g-on-dark-muted)}
@media (max-width:1180px){.g-pharma{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.g-pharma{grid-template-columns:repeat(2,minmax(0,1fr))}.g-mark{min-height:0}}
@media (max-width:520px){.g-pharma{grid-template-columns:minmax(0,1fr)}}

/* Founder */
.g-founder{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,90px);align-items:center}
.g-founder__img{position:relative;border-radius:var(--g-radius-xl);overflow:hidden;aspect-ratio:4/4.7;background:var(--g-bone)}
body .g-founder__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;filter:grayscale(.3);transition:filter 1s,transform 1.4s var(--g-ease)}
.g-founder__img:hover img{filter:grayscale(0);transform:scale(1.03)}
.g-founder__img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(8,25,28,.8))}
.g-founder__cap{position:absolute;left:clamp(18px,2vw,26px);bottom:clamp(16px,2vw,24px);right:18px;z-index:2;color:#fff}
.g-founder__cap b{display:block;font-family:var(--g-f-display);font-size:clamp(21px,1vw + 14px,26px);font-weight:500}
.g-founder__cap span{font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g-mint)}
.g-quote{font-family:var(--g-f-display);font-style:italic;font-size:clamp(21px,1.4vw + 14px,32px);line-height:1.4;color:var(--g-ink);padding-left:clamp(18px,2vw,26px);border-left:3px solid var(--g-amber);margin:28px 0!important}
.g-dark .g-quote{color:#fff}
.g-quote cite{display:block;margin-top:12px;font-family:var(--g-f-label);font-style:normal;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-muted)}
.g-creds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--g-line);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;margin-top:26px}
.g-creds > div{background:#fff;padding:clamp(16px,1vw + 10px,22px)}
.g-creds b{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green);margin-bottom:6px}
.g-creds p{font-size:14.5px;color:var(--g-muted);margin:0!important;line-height:1.55}
@media (max-width:900px){.g-founder{grid-template-columns:minmax(0,1fr)}.g-founder__img{max-width:480px;width:100%}}
@media (max-width:560px){.g-creds{grid-template-columns:minmax(0,1fr)}}

/* FAQ and accordions (native details, no script needed) */
.g-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,90px);align-items:start}
.g-faq details,.g-acc details{border-bottom:1px solid var(--g-line)}
.g-faq details:first-of-type,.g-acc details:first-of-type{border-top:1px solid var(--g-line)}
.g-faq summary,.g-acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:clamp(18px,1.4vw + 8px,24px) 0;
  font-family:var(--g-f-display);font-size:clamp(18px,.6vw + 14px,22px);font-weight:500;color:var(--g-ink);line-height:1.35;transition:color .3s}
.g-faq summary::-webkit-details-marker,.g-acc summary::-webkit-details-marker{display:none}
.g-faq summary::after,.g-acc summary::after{content:'';flex-shrink:0;width:34px;height:34px;border-radius:50%;border:1px solid var(--g-line);
  background:linear-gradient(var(--g-green),var(--g-green)) center/12px 1.5px no-repeat,linear-gradient(var(--g-green),var(--g-green)) center/1.5px 12px no-repeat;transition:transform .45s var(--g-ease),background-color .3s}
.g-faq details[open] summary::after,.g-acc details[open] summary::after{transform:rotate(45deg);background-color:var(--g-paper)}
.g-faq summary:hover,.g-acc summary:hover{color:var(--g-green)}
.g-faq details > :not(summary),.g-acc details > :not(summary){color:var(--g-muted);padding:0 clamp(0px,3vw,50px) 22px 0;margin:0!important;font-size:16px;line-height:1.75}
.g-dark .g-acc details,.g-dark .g-faq details{border-color:var(--g-line-dark)}
.g-dark .g-acc summary,.g-dark .g-faq summary{color:#fff}
.g-dark .g-acc details > :not(summary){color:var(--g-on-dark-muted)}
@media (max-width:900px){.g-faq{grid-template-columns:minmax(0,1fr)}}

/* Closing call to action */
.g-cta{position:relative;background:var(--g-ink);overflow:hidden;isolation:isolate;text-align:center;padding-top:clamp(80px,10vw,150px);padding-bottom:clamp(80px,10vw,150px)}
.g-cta--compact{padding-top:var(--g-sec-y-sm);padding-bottom:var(--g-sec-y-sm)}
.g-cta__bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.2;filter:grayscale(.5)}
.g-cta::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,rgba(31,122,109,.28),rgba(8,25,28,.96) 70%)}
body .g-cta h2{font-size:clamp(2rem,1.2rem + 3.2vw,4rem);max-width:16ch;margin:20px auto 18px}
body .g-cta h2 em{font-style:italic;color:var(--g-mint)}
.g-cta p{color:var(--g-on-dark-muted);max-width:56ch;margin:0 auto!important;font-size:var(--g-fs-lead);font-weight:300}
.g-cta .g-btns{justify-content:center}
@media (max-width:480px){body .g-cta .g-btn{width:100%}}

/* ---------- 15. PAGE HERO (every interior page and the article templates) ----------
   <section class="g-phero"> dark by default. Variants: g-phero--light, g-phero--compact,
   g-phero--split (text + media), g-phero--image (background photo via .g-phero__bg) */
.g-phero{position:relative;background:var(--g-ink);color:var(--g-on-dark);overflow:hidden;isolation:isolate;
  padding-top:calc(var(--g-head-total) + clamp(36px,5vw,84px));padding-bottom:clamp(52px,6vw,96px)}
.g-phero::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(55% 70% at 8% 0%,rgba(31,122,109,.32),transparent 70%),radial-gradient(40% 55% at 100% 100%,rgba(217,140,31,.1),transparent 70%)}
.g-phero::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background-image:linear-gradient(rgba(226,189,114,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(226,189,114,.05) 1px,transparent 1px);background-size:88px 88px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 60%);mask-image:linear-gradient(90deg,transparent,#000 60%)}
.g-phero--compact{padding-bottom:clamp(40px,4vw,64px)}
.g-phero--light{background:var(--g-paper);color:var(--g-text)}
.g-phero--light::before{background:radial-gradient(55% 70% at 8% 0%,rgba(31,122,109,.12),transparent 70%)}
.g-phero--light::after{display:none}
.g-phero__bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.22;filter:grayscale(.4)}
.g-phero--image::before{background:linear-gradient(90deg,rgba(8,25,28,.97) 30%,rgba(8,25,28,.72)),radial-gradient(55% 70% at 8% 0%,rgba(31,122,109,.3),transparent 70%)}
.g-phero__in{max-width:900px}
body .g-phero h1{font-size:var(--g-fs-h1);line-height:1.05;letter-spacing:-.035em;margin:clamp(14px,1.6vw,22px) 0 clamp(14px,1.6vw,20px);max-width:18ch}
body .g-phero h1 em{font-style:italic;color:var(--g-mint)}
body .g-phero--light h1 em{color:var(--g-green)}
body .g-phero .g-lead{max-width:60ch}
.g-phero__split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,80px);align-items:center}
.g-phero__media{position:relative;border-radius:var(--g-radius-xl);overflow:hidden;aspect-ratio:4/3.4;background:var(--g-ink-2)}
body .g-phero__media img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover}
.g-phero__meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:26px;padding-top:22px;border-top:1px solid var(--g-line-dark);font-size:14px;color:var(--g-on-dark-muted)}
.g-phero--light .g-phero__meta{border-color:var(--g-line);color:var(--g-muted)}
.g-phero__meta b{color:#fff;font-weight:600}
.g-phero--light .g-phero__meta b{color:var(--g-ink)}
@media (max-width:900px){.g-phero__split{grid-template-columns:minmax(0,1fr)}.g-phero__media{max-width:560px;aspect-ratio:16/10}}

/* ---------- 16. BREADCRUMBS AND SUB NAVIGATION ---------- */
.g-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 6px;padding:0;list-style:none;font-family:var(--g-f-label);font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--g-on-dark-muted)}
.g-crumbs li{display:inline-flex;align-items:center;gap:10px}
.g-crumbs li + li::before{content:'';width:5px;height:5px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);opacity:.6}
body .g-crumbs a{color:var(--g-on-dark-muted)}
body .g-crumbs a:hover{color:#fff}
.g-crumbs [aria-current]{color:var(--g-mint)}
.g-phero--light .g-crumbs,body .g-phero--light .g-crumbs a{color:var(--g-muted)}
.g-phero--light .g-crumbs [aria-current]{color:var(--g-green)}
/* sticky in-page menu: <nav class="g-subnav"><div class="g-wrap"><a href="#id">..</a></div></nav> */
.g-subnav{position:sticky;top:calc(var(--g-head-now,var(--g-head-total)) - 1px);z-index:50;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--g-line);transition:top .55s var(--g-ease)}
.g-subnav .g-wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.g-subnav .g-wrap::-webkit-scrollbar{display:none}
body .g-subnav a{flex-shrink:0;scroll-snap-align:start;position:relative;padding:17px 14px;font-size:14px;font-weight:500;color:var(--g-muted);white-space:nowrap;transition:color .3s}
.g-subnav a::after{content:'';position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--g-amber);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--g-ease)}
body .g-subnav a:hover,body .g-subnav a.is-active{color:var(--g-ink)}
.g-subnav a.is-active::after{transform:scaleX(1)}
.g-subnav .g-wrap > a:first-child{margin-left:-14px}
[id]{scroll-margin-top:calc(var(--g-head-total) + 70px)}

/* ---------- 17. CARDS AND GRIDS ---------- */
.g-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:var(--g-gap)}
.g-cards--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-cards--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1024px){.g-cards--3,.g-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g-cards--2,.g-cards--3,.g-cards--4{grid-template-columns:minmax(0,1fr)}}
body .g-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;color:var(--g-text);
  transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease),border-color .5s}
body a.g-card:hover,body .g-card--hover:hover{transform:translateY(-4px);box-shadow:var(--g-shadow-lg);border-color:rgba(31,122,109,.35)}
.g-card__img{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--g-bone)}
body .g-card__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.2s var(--g-ease)}
a.g-card:hover .g-card__img img{transform:scale(1.04)}
.g-card__body{padding:var(--g-card-pad);display:flex;flex-direction:column;flex:1;gap:0}
.g-card__body > .g-ico{margin-bottom:18px}
.g-card__body > .g-tag,.g-card__body > .g-status{align-self:flex-start;margin-bottom:14px}
body .g-card h3{font-size:clamp(20px,.7vw + 15px,24px);font-weight:500;margin-bottom:10px}
body .g-card h4{margin-bottom:8px}
.g-card p{font-size:15px;color:var(--g-muted);line-height:1.65;margin:0 0 16px}
.g-card .g-checks{margin-bottom:18px}
.g-card .g-checks li{font-size:14.5px;padding-block:8px}
.g-card__foot{margin-top:auto;padding-top:6px}
body .g-card--dark,body .g-dark .g-card{background:var(--g-ink-2);border-color:var(--g-line-dark);color:var(--g-on-dark)}
body .g-card--dark h3,body .g-dark .g-card h3,body .g-dark .g-card h4{color:#fff}
.g-card--dark p,.g-dark .g-card p{color:var(--g-on-dark-muted)}
body .g-dark a.g-card:hover{border-color:rgba(226,189,114,.35);box-shadow:0 24px 56px rgba(0,0,0,.3)}
.g-card--paper{background:var(--g-paper)!important;border-color:transparent!important}
.g-card--line::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;z-index:2;background:linear-gradient(90deg,var(--g-green),var(--g-amber));transform:scaleX(0);transform-origin:left;transition:transform .7s var(--g-ease)}
.g-card--line:hover::before{transform:scaleX(1)}
.g-card--accent{border-top:3px solid var(--g-amber)!important}

/* ---------- 18. BRANDS AND PRODUCTS ----------
   Product concepts: neutral stage, no green circles behind products (Mike's brief). */
.g-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:var(--g-gap)}
.g-product{display:flex;flex-direction:column;background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;transition:box-shadow .6s var(--g-ease),transform .6s var(--g-ease)}
.g-product:hover{box-shadow:var(--g-shadow);transform:translateY(-3px)}
.g-product__stage{position:relative;aspect-ratio:4/4.2;background:linear-gradient(180deg,#FBFAF7,var(--g-bone));display:grid;place-items:center;padding:clamp(18px,3vw,34px)}
body .g-product__stage img{width:auto!important;max-width:78%!important;max-height:86%!important;height:auto!important;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(8,25,28,.14))}
.g-product__stage .g-tag{position:absolute;left:14px;top:14px}
.g-product__ph{font-family:var(--g-f-display);font-size:clamp(20px,1vw + 14px,26px);color:var(--g-muted);text-align:center;opacity:.7}
.g-product__body{padding:clamp(18px,1.2vw + 10px,24px);display:flex;flex-direction:column;flex:1}
body .g-product h3{font-size:clamp(19px,.5vw + 16px,22px);font-weight:500;margin-bottom:6px}
.g-product p{font-size:14.5px;color:var(--g-muted);line-height:1.6;margin:0 0 14px}
.g-product .g-formats{margin-bottom:14px!important}
.g-product__foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
/* brand detail facts row: role, audience, formats, status */
.g-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--g-line);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden}
.g-facts > div{background:#fff;padding:clamp(16px,1vw + 12px,24px)}
.g-facts dt,.g-facts b{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green);margin-bottom:8px}
.g-facts dd,.g-facts p{margin:0;font-size:15px;color:var(--g-text);line-height:1.55}
.g-phero .g-facts{background:var(--g-line-dark);border-color:var(--g-line-dark);margin-top:34px}
.g-phero .g-facts > div{background:rgba(255,255,255,.03)}
.g-phero .g-facts dd,.g-phero .g-facts p{color:var(--g-on-dark)}
.g-phero .g-facts dt,.g-phero .g-facts b{color:var(--g-mint)}
@media (max-width:900px){.g-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.g-facts{grid-template-columns:minmax(0,1fr)}}
/* anchored brand section on /brands/ */
.g-brandrow{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(40px,5vw,72px);border-top:1px solid var(--g-line)}
.g-brandrow:first-child{border-top:0;padding-top:0}
.g-brandrow--reverse > :first-child{order:2}
@media (max-width:900px){.g-brandrow{grid-template-columns:minmax(0,1fr)}.g-brandrow--reverse > :first-child{order:0}}

/* ---------- 19. RETAIL JV AVAILABILITY ----------
   Rows read their status from Appearance > Customize > GCRC Settings through tokens. */
.g-avail{border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;background:#fff}
.g-avail__row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.6fr) auto auto;gap:clamp(12px,2vw,28px);align-items:center;padding:clamp(16px,1.2vw + 10px,24px) clamp(18px,1.6vw + 10px,30px);border-top:1px solid var(--g-line);transition:background-color .3s}
.g-avail__row:first-child{border-top:0}
.g-avail__row:hover{background:var(--g-paper)}
.g-avail__row--head{background:var(--g-paper);font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-muted);padding-block:14px}
.g-avail__row--head:hover{background:var(--g-paper)}
body .g-avail h3{font-size:clamp(19px,.6vw + 15px,22px);font-weight:500}
.g-avail h3 sup{font-size:.45em;color:var(--g-amber);top:-.9em;position:relative;vertical-align:baseline}
.g-avail p{margin:0!important;font-size:14.5px;color:var(--g-muted);line-height:1.55}
.g-dark .g-avail{background:var(--g-ink-2);border-color:var(--g-line-dark)}
.g-dark .g-avail__row{border-color:var(--g-line-dark)}
.g-dark .g-avail__row:hover,.g-dark .g-avail__row--head{background:rgba(255,255,255,.03)}
.g-dark .g-avail p{color:var(--g-on-dark-muted)}
@media (max-width:900px){.g-avail__row{grid-template-columns:minmax(0,1fr) auto}.g-avail__row > p{grid-column:1/-1;order:3}.g-avail__row > .g-link,.g-avail__row > .g-btn{grid-column:1/-1;order:4;justify-self:start}.g-avail__row--head{display:none}}
/* open and closed window content: data-jv="open" shows only while the window is open */
.g-jv-closed [data-jv="open"],.g-jv-open [data-jv="closed"]{display:none!important}
.elementor-editor-active [data-jv]{outline:1px dashed rgba(217,140,31,.6);outline-offset:4px}
.g-countdown{display:inline-flex;gap:clamp(10px,1.4vw,18px)}
.g-countdown > span{display:flex;flex-direction:column;align-items:center;min-width:64px;padding:12px 10px;border:1px solid var(--g-line-dark);border-radius:12px;background:rgba(255,255,255,.03)}
.g-countdown b{font-family:var(--g-f-display);font-size:clamp(26px,1.4vw + 16px,38px);font-weight:500;color:#fff;line-height:1}
.g-countdown small{font-family:var(--g-f-label);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-on-dark-muted);margin-top:6px}

/* ---------- 20. RESEARCH, INITIATIVE AND PLANT CHAT PORTAL ---------- */
.g-objectives{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1px;background:var(--g-line);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;counter-reset:obj}
.g-objectives > div{background:#fff;padding:var(--g-card-pad);position:relative}
.g-objectives > div::before{counter-increment:obj;content:counter(obj,decimal-leading-zero);display:block;font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--g-amber);margin-bottom:14px}
body .g-objectives h4{margin-bottom:8px}
.g-objectives p{font-size:14.5px;color:var(--g-muted);margin:0!important;line-height:1.6}
.g-dark .g-objectives{background:var(--g-line-dark);border-color:var(--g-line-dark)}
.g-dark .g-objectives > div{background:var(--g-ink)}
.g-dark .g-objectives p{color:var(--g-on-dark-muted)}
/* stage tracker: planned, active, completed */
.g-stage{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--g-line);border-radius:99px;overflow:hidden;width:max-content;max-width:100%}
.g-stage span{padding:9px clamp(12px,1.4vw,18px);font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--g-muted);border-left:1px solid var(--g-line)}
.g-stage span:first-child{border-left:0}
.g-stage .is-on{background:var(--g-ink);color:var(--g-mint)}
.g-stage .is-done{background:rgba(31,122,109,.12);color:var(--g-green)}
.g-dark .g-stage{border-color:var(--g-line-dark)}.g-dark .g-stage span{border-color:var(--g-line-dark);color:var(--g-on-dark-muted)}
.g-dark .g-stage .is-on{background:var(--g-mint);color:var(--g-ink)}
/* Plant Chat portal: research platform link block */
.g-portal{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(26px,4vw,56px);
  border-radius:var(--g-radius-xl);background:linear-gradient(135deg,var(--g-ink) 0%,#0F3A2E 60%,#14483A 100%);color:var(--g-on-dark);overflow:hidden;isolation:isolate}
.g-portal::before{content:'';position:absolute;right:-12%;top:-40%;width:60%;aspect-ratio:1;border-radius:50%;z-index:-1;background:radial-gradient(circle,rgba(226,189,114,.2),transparent 70%)}
body .g-portal h2,body .g-portal h3{color:#fff}
.g-portal p{color:var(--g-on-dark-muted)}
.g-portal__list{display:grid;gap:10px}
.g-portal__list > div{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--g-line-dark);border-radius:12px;background:rgba(255,255,255,.03)}
.g-portal__list b{display:block;color:#fff;font-size:15px}
.g-portal__list span{font-size:13.5px;color:var(--g-on-dark-muted);line-height:1.5}
@media (max-width:900px){.g-portal{grid-template-columns:minmax(0,1fr)}}
/* comparison: reported experience vs clinical evidence */
.g-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden}
.g-compare > div{padding:var(--g-card-pad);background:#fff}
.g-compare > div + div{border-left:1px solid var(--g-line);background:var(--g-paper)}
body .g-compare h3{font-size:clamp(20px,.6vw + 16px,24px);margin:12px 0 14px}
@media (max-width:767px){.g-compare{grid-template-columns:minmax(0,1fr)}.g-compare > div + div{border-left:0;border-top:1px solid var(--g-line)}}

/* ---------- 21. TABS ----------
   <div class="g-tabs"><div class="g-tabs__list" role="tablist"><button class="g-tab" role="tab" aria-controls="p1">..</button></div>
   <div class="g-tabs__panel" id="p1" role="tabpanel">..</div></div>  gcrc.js wires the rest */
.g-tabs__list{display:inline-flex;gap:4px;padding:5px;border-radius:12px;background:var(--g-paper);border:1px solid var(--g-line);max-width:100%;overflow-x:auto;scrollbar-width:none}
.g-tabs__list::-webkit-scrollbar{display:none}
body button.g-tab{flex-shrink:0;border:0!important;background:transparent!important;color:var(--g-muted)!important;padding:12px clamp(14px,1.6vw,22px)!important;border-radius:8px!important;cursor:pointer;
  font-family:var(--g-f-label)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.11em!important;text-transform:uppercase;line-height:1.2!important;box-shadow:none!important;transition:background-color .35s,color .35s}
body button.g-tab:hover{color:var(--g-ink)!important}
body button.g-tab[aria-selected="true"]{background:var(--g-ink)!important;color:#fff!important}
.g-tabs__panel{padding-top:clamp(26px,3vw,40px)}
.g-js .g-tabs__panel[hidden]{display:none}
.g-tabs__panel.is-shown{animation:g-fade .5s var(--g-ease)}
@keyframes g-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.g-dark .g-tabs__list{background:rgba(255,255,255,.04);border-color:var(--g-line-dark)}
body .g-dark button.g-tab{color:var(--g-on-dark-muted)!important}
body .g-dark button.g-tab[aria-selected="true"]{background:var(--g-mint)!important;color:var(--g-ink)!important}

/* ---------- 22. TABLES AND CALLOUTS ---------- */
.g-table-wrap{overflow-x:auto;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);-webkit-overflow-scrolling:touch}
.g-table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px;margin:0;border:0}
.g-table th,.g-table td{padding:14px 18px;text-align:left;vertical-align:top;border:0;border-bottom:1px solid var(--g-line)}
.g-table th{background:var(--g-paper);font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-ink)}
.g-table tr:last-child td{border-bottom:0}
.g-table td:first-child{font-weight:600;color:var(--g-ink)}
.g-callout{display:flex;gap:16px;align-items:flex-start;padding:clamp(16px,1.2vw + 10px,24px);border-radius:var(--g-radius-lg);background:rgba(31,122,109,.07);border:1px solid rgba(31,122,109,.2);font-size:15px;line-height:1.65;color:var(--g-text)}
.g-callout > :last-child{margin-bottom:0!important}
.g-callout b,.g-callout strong{color:var(--g-ink)}
.g-callout::before{content:'i';flex-shrink:0;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--g-green);color:#fff;font:700 13px/1 var(--g-f-display);font-style:italic}
.g-callout--amber{background:rgba(217,140,31,.08);border-color:rgba(217,140,31,.28)}
.g-callout--amber::before{content:'!';background:var(--g-amber);color:var(--g-ink);font-style:normal}
.g-callout--plain::before{display:none}
.g-dark .g-callout{background:rgba(226,189,114,.07);border-color:rgba(226,189,114,.2);color:var(--g-on-dark)}
.g-dark .g-callout b,.g-dark .g-callout strong{color:#fff}
.g-pull{font-family:var(--g-f-display);font-size:clamp(24px,1.8vw + 14px,40px);line-height:1.3;letter-spacing:-.015em;color:var(--g-ink);max-width:30ch;margin:0!important}
.g-pull em{font-style:italic;color:var(--g-green)}
.g-dark .g-pull{color:#fff}.g-dark .g-pull em{color:var(--g-mint)}

/* ---------- 23. TIMELINE AND PEOPLE ---------- */
.g-timeline{position:relative;margin:0;padding:0 0 0 clamp(26px,3vw,40px);list-style:none;border-left:1px solid var(--g-line)}
.g-timeline > li{position:relative;padding:0 0 clamp(26px,3vw,40px)}
.g-timeline > li:last-child{padding-bottom:0}
.g-timeline > li::before{content:'';position:absolute;left:calc(clamp(26px,3vw,40px) * -1 - 6px);top:6px;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--g-amber)}
.g-timeline time,.g-timeline .g-when{display:block;font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green);margin-bottom:6px}
body .g-timeline h4{margin-bottom:6px}
.g-timeline p{font-size:15px;color:var(--g-muted);margin:0!important}
.g-dark .g-timeline{border-color:var(--g-line-dark)}
.g-dark .g-timeline > li::before{background:var(--g-ink)}
.g-dark .g-timeline p{color:var(--g-on-dark-muted)}
.g-person{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(16px,2vw,24px);align-items:center;padding:var(--g-card-pad);border:1px solid var(--g-line);border-radius:var(--g-radius-lg);background:#fff}
.g-person__img{width:clamp(72px,5vw + 40px,110px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--g-bone)}
body .g-person__img img{width:100%!important;height:100%!important;object-fit:cover}
body .g-person h3{font-size:clamp(20px,.6vw + 16px,24px);margin-bottom:4px}
.g-person .g-role{display:block;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-green);margin-bottom:8px}
.g-person p{font-size:14.5px;color:var(--g-muted);margin:0!important}
@media (max-width:420px){.g-person{grid-template-columns:minmax(0,1fr)}}

/* ---------- 24. CONTACT AND FORMS ---------- */
.g-contact{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(28px,5vw,72px);align-items:start}
.g-formcard{background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-xl);padding:clamp(22px,3vw,48px);box-shadow:var(--g-shadow)}
.g-info{display:grid;gap:12px}
.g-info > div,.g-info > a{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);background:#fff;color:var(--g-text);transition:border-color .3s}
body .g-info > a:hover{border-color:rgba(31,122,109,.4);color:var(--g-text)}
.g-info b{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green);margin-bottom:4px}
.g-info span{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.g-info .g-ico{width:40px;height:40px;border-radius:10px}
@media (max-width:900px){.g-contact{grid-template-columns:minmax(0,1fr)}}
.g-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.g-form .g-field{display:flex;flex-direction:column;gap:7px;min-width:0}
.g-form .g-field--full,.g-form fieldset{grid-column:1/-1}
.g-form fieldset{border:0;padding:0;margin:0;min-width:0}
.g-form legend{padding:0;margin-bottom:10px}
.g-form label,.g-form legend{font-family:var(--g-f-label);font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--g-ink)}
.g-form .g-req{color:var(--g-amber)}
.g-form .g-hint{font-size:13px;color:var(--g-muted);line-height:1.5;margin:0}
body .g-form input:not([type=checkbox]):not([type=radio]),body .g-form select,body .g-form textarea{font-family:var(--g-f-body);font-size:16px;color:var(--g-text);line-height:1.4;
  background:#fff;border:1.5px solid var(--g-line);border-radius:var(--g-radius);padding:14px 16px;width:100%;min-height:52px;box-shadow:none;margin:0;
  transition:border-color .3s,box-shadow .3s;-webkit-appearance:none;appearance:none}
body .g-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231F7A6D' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;padding-right:42px;text-overflow:ellipsis}
body .g-form textarea{min-height:150px;resize:vertical}
body .g-form input:focus,body .g-form select:focus,body .g-form textarea:focus{outline:none;border-color:var(--g-green);box-shadow:0 0 0 4px rgba(31,122,109,.12)}
body .g-form input:user-invalid,body .g-form select:user-invalid,body .g-form textarea:user-invalid{border-color:#C8664F}
.g-form .g-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
/* pill choices: <div class="g-choices"><label><input type="radio" name="x" value=".."><span>Label</span></label></div> */
.g-choices{display:flex;flex-wrap:wrap;gap:8px}
.g-choices label{position:relative;cursor:pointer;font-family:var(--g-f-body)!important;font-size:14.5px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.g-choices input{position:absolute;opacity:0;width:1px;height:1px}
.g-choices span{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1.5px solid var(--g-line);border-radius:99px;color:var(--g-text);background:#fff;transition:border-color .3s,background-color .3s,color .3s}
.g-choices label:hover span{border-color:rgba(31,122,109,.5)}
.g-choices input:checked + span{background:var(--g-ink);border-color:var(--g-ink);color:#fff}
.g-choices input:focus-visible + span{outline:2px solid var(--g-amber);outline-offset:2px}
.g-form .g-consent{grid-column:1/-1;display:block;position:relative;padding-left:30px;font-family:var(--g-f-body);font-size:13.5px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--g-muted);line-height:1.6}
.g-form .g-consent input{position:absolute;left:0;top:2px;width:18px;height:18px;padding:0;margin:0;accent-color:var(--g-green)}
.g-form .g-consent a{color:var(--g-green);text-decoration:underline;text-underline-offset:2px}
.g-form .g-submit{grid-column:1/-1;justify-self:start}
.g-form-status{grid-column:1/-1;font-size:15px;border-radius:var(--g-radius);padding:14px 16px;display:none;line-height:1.5}
.g-form-status.is-ok{display:block;background:rgba(31,122,109,.1);color:var(--g-leaf);border:1px solid rgba(31,122,109,.3)}
.g-form-status.is-err{display:block;background:#FDF1EE;color:var(--g-danger);border:1px solid #F0C9BF}
.g-form.is-sending .g-submit,.g-newsletter.is-sending button{opacity:.6;pointer-events:none}
.g-form.is-sending .g-submit::after{content:'';width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:g-spin .8s linear infinite}
@keyframes g-spin{to{transform:rotate(360deg)}}
.g-dark .g-form label,.g-dark .g-form legend{color:#fff}
body .g-dark .g-form input:not([type=checkbox]):not([type=radio]),body .g-dark .g-form select,body .g-dark .g-form textarea{background-color:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff}
.g-dark .g-form input::placeholder,.g-dark .g-form textarea::placeholder{color:rgba(255,255,255,.45)}
.g-newsletter{display:flex;gap:10px;flex-wrap:wrap}
.g-newsletter input[type=email]{flex:1 1 220px;min-width:0}
.g-newsletter .g-form-status{flex-basis:100%}
@media (max-width:640px){.g-form{grid-template-columns:minmax(0,1fr)}body .g-form .g-submit{justify-self:stretch;width:100%}}
@media (max-width:420px){body .g-newsletter button{width:100%}}

/* ---------- 25. PROSE (articles, legal pages, any long text: add class g-prose) ---------- */
.g-prose{font-size:clamp(16.5px,15.8px + .25vw,18px);line-height:1.8;color:var(--g-text);max-width:var(--g-max-text);overflow-wrap:break-word}
.g-prose > *:first-child{margin-top:0!important}
.g-prose > *:last-child{margin-bottom:0!important}
.g-prose p,.g-prose ul,.g-prose ol,.g-prose blockquote,.g-prose figure,.g-prose table,.g-prose pre,.g-prose .wp-block-image,.g-prose .wp-block-embed{margin:0 0 1.4em}
body .g-prose h2{font-family:var(--g-f-display);font-size:clamp(1.55rem,1.2rem + 1.3vw,2.3rem);font-weight:500;letter-spacing:-.02em;line-height:1.2;color:var(--g-ink);margin:2em 0 .7em}
body .g-prose h3{font-family:var(--g-f-display);font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem);font-weight:500;line-height:1.25;color:var(--g-ink);margin:1.7em 0 .6em}
body .g-prose h4{font-family:var(--g-f-body);font-size:1.05em;font-weight:600;color:var(--g-ink);margin:1.5em 0 .5em;letter-spacing:0}
.g-prose ul,.g-prose ol{padding-left:1.3em}
.g-prose li{margin:.45em 0;padding-left:.2em}
.g-prose ul li::marker{color:var(--g-amber)}
.g-prose ol li::marker{color:var(--g-green);font-weight:600}
body .g-prose a{color:var(--g-green);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:rgba(31,122,109,.45);transition:color .3s,text-decoration-color .3s}
body .g-prose a:hover{color:var(--g-ink);text-decoration-color:var(--g-amber)}
.g-prose strong,.g-prose b{color:var(--g-ink);font-weight:600}
.g-prose blockquote,.g-prose .wp-block-quote{border-left:3px solid var(--g-amber);padding:.2em 0 .2em 1.3em;font-family:var(--g-f-display);font-style:italic;font-size:1.2em;line-height:1.55;color:var(--g-ink);background:none}
.g-prose blockquote cite{display:block;margin-top:.6em;font-family:var(--g-f-label);font-style:normal;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-muted)}
.g-prose .wp-block-pullquote{border:0;border-block:1px solid var(--g-line);padding:1.6em 0;text-align:left}
.g-prose img{border-radius:var(--g-radius-lg);height:auto}
.g-prose figcaption,.g-prose .wp-element-caption{font-size:13.5px;color:var(--g-muted);margin-top:.7em;text-align:left;line-height:1.5}
.g-prose hr,.g-prose .wp-block-separator{border:0;height:1px;background:var(--g-line);margin:2.4em 0;opacity:1}
.g-prose table{width:100%;border-collapse:collapse;font-size:.92em}
@media (max-width:640px){.g-prose table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.g-prose th,.g-prose td{border:0;border-bottom:1px solid var(--g-line);padding:.7em .9em;text-align:left;vertical-align:top}
.g-prose th{background:var(--g-paper);font-family:var(--g-f-label);font-size:.78em;letter-spacing:.12em;text-transform:uppercase;color:var(--g-ink)}
.g-prose code{font-size:.88em;background:var(--g-paper);padding:.15em .4em;border-radius:4px}
.g-prose pre{background:var(--g-ink);color:var(--g-on-dark);padding:1.2em;border-radius:var(--g-radius-lg);overflow-x:auto;font-size:.88em}
.g-prose pre code{background:none;padding:0}
.g-prose .wp-block-embed iframe,.g-prose iframe{max-width:100%;border-radius:var(--g-radius-lg)}
.g-prose .wp-block-embed__wrapper{position:relative}
.g-prose .alignwide{margin-inline:calc(min(0px,(var(--g-max-text) - 1000px) / 2))}
.g-prose .aligncenter{margin-inline:auto}
.g-prose .alignleft{float:left;margin:.3em 1.4em 1em 0;max-width:50%}
.g-prose .alignright{float:right;margin:.3em 0 1em 1.4em;max-width:50%}
@media (max-width:640px){.g-prose .alignleft,.g-prose .alignright{float:none;margin:0 0 1.4em;max-width:100%}}
.g-prose .wp-block-button__link{background:var(--g-green);color:#fff!important;text-decoration:none!important;border-radius:var(--g-radius);font-family:var(--g-f-label);font-size:12.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;padding:15px 24px}
.g-prose::after{content:'';display:table;clear:both}

/* ---------- 26. RESEARCH ARTICLES (theme templates: home.php, archive.php, single.php) ---------- */
.g-main{display:block}
.g-search{display:flex;gap:8px;max-width:560px;margin-top:26px;position:relative}
body .g-search input[type=search]{flex:1;min-width:0;min-height:52px;padding:14px 16px 14px 46px;border-radius:var(--g-radius);border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;font:16px var(--g-f-body);box-shadow:none;margin:0}
body .g-search input[type=search]::placeholder{color:rgba(255,255,255,.5)}
body .g-search input[type=search]:focus{outline:none;border-color:var(--g-mint)}
.g-search::before{content:'';position:absolute;left:17px;top:17px;width:13px;height:13px;border:2px solid rgba(255,255,255,.6);border-radius:50%;pointer-events:none}
.g-search::after{content:'';position:absolute;left:30px;top:31px;width:7px;height:2px;background:rgba(255,255,255,.6);transform:rotate(45deg);pointer-events:none}
.g-search--light input[type=search]{border-color:var(--g-line)!important;background:#fff!important;color:var(--g-text)!important}
.g-search--light input[type=search]::placeholder{color:var(--g-muted)!important}
.g-search--light::before{border-color:var(--g-muted)}.g-search--light::after{background:var(--g-muted)}
.g-chipsbar{position:sticky;top:calc(var(--g-head-now,var(--g-head-total)) - 1px);z-index:40;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--g-line);transition:top .55s var(--g-ease)}
.g-chips{display:flex;gap:8px;padding-block:14px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.g-chips::-webkit-scrollbar{display:none}
body a.g-chip,body button.g-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px!important;border-radius:99px!important;border:1.5px solid var(--g-line)!important;background:#fff!important;
  color:var(--g-text)!important;font:500 14px/1.2 var(--g-f-body)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;box-shadow:none!important;white-space:nowrap;transition:border-color .3s,background-color .3s,color .3s}
body a.g-chip:hover,body button.g-chip:hover{border-color:rgba(31,122,109,.5)!important}
body a.g-chip.is-active,body button.g-chip.is-active{background:var(--g-ink)!important;border-color:var(--g-ink)!important;color:#fff!important}
.g-chip small{font-size:11.5px;opacity:.6}
.g-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,32px)}
@media (max-width:1024px){.g-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g-posts{grid-template-columns:minmax(0,1fr)}}
.g-post{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);overflow:hidden;transition:transform .6s var(--g-ease),box-shadow .6s var(--g-ease),border-color .4s}
.g-post:hover{transform:translateY(-4px);box-shadow:var(--g-shadow-lg);border-color:rgba(31,122,109,.3)}
.g-post__img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,var(--g-ink),var(--g-ink-3))}
body .g-post__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;transition:transform 1.2s var(--g-ease)}
.g-post:hover .g-post__img img{transform:scale(1.04)}
.g-post__img--empty::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='88'%3E%3Cpath d='M0 .5h88M.5 0v88' stroke='%238FD9B8' stroke-opacity='.12'/%3E%3C/svg%3E")}
.g-post__body{padding:clamp(18px,1.4vw + 10px,26px);display:flex;flex-direction:column;flex:1}
.g-post__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px;color:var(--g-muted);margin-bottom:12px}
.g-post__meta .g-tag{position:relative;z-index:2}
body .g-post h3,body .g-post h2{font-size:clamp(19px,.6vw + 15px,23px);font-weight:500;line-height:1.28;margin:0 0 10px}
body .g-post h3 a,body .g-post h2 a{color:var(--g-ink)}
.g-post h3 a::after,.g-post h2 a::after{content:'';position:absolute;inset:0;z-index:1}
body .g-post:hover h3 a,body .g-post:hover h2 a{color:var(--g-green)}
.g-post p{font-size:14.5px;color:var(--g-muted);line-height:1.65;margin:0 0 16px}
.g-post__type{margin-top:auto;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-amber-ink)}
/* featured first article */
.g-post--feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);margin-bottom:clamp(18px,2vw,32px)}
.g-post--feature .g-post__img{aspect-ratio:auto;min-height:340px}
.g-post--feature .g-post__body{padding:clamp(22px,3vw,48px);justify-content:center}
body .g-post--feature h2{font-size:clamp(24px,1.4vw + 16px,36px);margin-bottom:14px}
.g-post--feature p{font-size:16px}
@media (max-width:900px){.g-post--feature{grid-template-columns:minmax(0,1fr)}.g-post--feature .g-post__img{min-height:0;aspect-ratio:16/9}}
.g-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:clamp(40px,5vw,64px)}
body .g-pager .page-numbers{display:inline-grid;place-items:center;min-width:46px;height:46px;padding:0 14px;border-radius:var(--g-radius);border:1.5px solid var(--g-line);color:var(--g-ink);font-weight:500;transition:all .3s}
body .g-pager a.page-numbers:hover{border-color:var(--g-green);color:var(--g-green)}
body .g-pager .page-numbers.current{background:var(--g-ink);border-color:var(--g-ink);color:#fff}
.g-pager .dots{border:0!important}
.g-empty{text-align:center;padding:clamp(40px,6vw,80px) 20px;border:1px dashed var(--g-line);border-radius:var(--g-radius-lg);background:var(--g-paper)}
body .g-empty h2{font-size:var(--g-fs-h3);margin-bottom:10px}
.g-empty p{color:var(--g-muted);max-width:48ch;margin:0 auto 20px}
.g-empty .g-search{margin:0 auto}
/* single article */
.g-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:1100;pointer-events:none}
.g-progress span{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--g-green),var(--g-amber));transform-origin:left;transform:scaleX(0)}
.admin-bar .g-progress{top:32px}
@media (max-width:782px){.admin-bar .g-progress{top:46px}}
.g-phero--article{padding-bottom:clamp(90px,10vw,150px)}
.g-phero--article .g-wrap{max-width:calc(900px + var(--g-pad-x) * 2)}
body .g-phero--article h1{font-size:clamp(2rem,1.3rem + 2.8vw,3.9rem);max-width:22ch}
.g-byline{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin-top:26px;font-size:14px;color:var(--g-on-dark-muted)}
.g-byline img{width:40px!important;height:40px!important;border-radius:50%}
.g-byline b{color:#fff;font-weight:600}
.g-byline > span{display:inline-flex;align-items:center;gap:10px}
.g-byline > span + span::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--g-amber)}
.g-single__hero{position:relative;max-width:1100px;margin:calc(clamp(60px,7vw,110px) * -1) auto 0;padding-inline:var(--g-pad-x);z-index:2}
body .g-single__hero img{display:block;width:100%!important;height:auto!important;aspect-ratio:16/8.5;object-fit:cover;border-radius:var(--g-radius-xl);box-shadow:var(--g-shadow-lg)}
.g-single__hero figcaption{font-size:13px;color:var(--g-muted);margin-top:10px}
.g-single__layout{display:grid;grid-template-columns:230px minmax(0,var(--g-max-text));gap:clamp(40px,5vw,80px);justify-content:center;padding-top:clamp(44px,5vw,80px);padding-bottom:clamp(40px,5vw,72px)}
.g-single__layout--notoc{grid-template-columns:minmax(0,var(--g-max-text))}
.g-single__aside{position:relative}
.g-single__aside > div{position:sticky;top:calc(var(--g-head-now,var(--g-head-total)) + 30px);transition:top .55s var(--g-ease)}
.g-toc{border:0;margin:0 0 28px}
.g-toc summary{list-style:none;cursor:pointer;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g-muted);margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}
.g-toc summary::-webkit-details-marker{display:none}
.g-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--g-line)}
body .g-toc a{display:block;padding:7px 0 7px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:14px;line-height:1.45;color:var(--g-muted);transition:color .3s,border-color .3s}
body .g-toc a:hover{color:var(--g-ink)}
body .g-toc a.is-active{color:var(--g-ink);border-left-color:var(--g-amber);font-weight:500}
.g-toc .is-h3 a{padding-left:28px;font-size:13.5px}
.g-share{display:flex;gap:8px;flex-wrap:wrap}
body .g-share a,body .g-share button{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1.5px solid var(--g-line)!important;background:#fff!important;color:var(--g-ink)!important;padding:0!important;cursor:pointer;box-shadow:none!important;transition:border-color .3s,color .3s}
body .g-share a:hover,body .g-share button:hover{border-color:var(--g-green)!important;color:var(--g-green)!important}
.g-share button.is-copied{border-color:var(--g-green)!important;background:rgba(31,122,109,.1)!important}
.g-share__label{display:block;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g-muted);margin-bottom:12px}
@media (max-width:1024px){
  .g-single__layout{grid-template-columns:minmax(0,var(--g-max-text))}
  .g-single__aside > div{position:static}
  .g-toc{border:1px solid var(--g-line);border-radius:var(--g-radius-lg);padding:14px 18px;background:var(--g-paper)}
  .g-toc summary{margin:0}.g-toc[open] summary{margin-bottom:12px}
  .g-toc summary::after{content:'+';font-size:18px;color:var(--g-green)}.g-toc[open] summary::after{content:'\2212'}
  .g-single__aside .g-share{display:none}
}
.g-single__after{max-width:calc(var(--g-max-text) + var(--g-pad-x) * 2);margin-inline:auto;padding-inline:var(--g-pad-x);padding-bottom:clamp(50px,6vw,90px);display:grid;gap:22px}
@media (min-width:1025px){.g-single__after{max-width:calc(var(--g-max-text) + 230px + clamp(40px,5vw,80px) + var(--g-pad-x) * 2);padding-left:calc(var(--g-pad-x) + 230px + clamp(40px,5vw,80px))}}
.g-single__after--notoc{padding-left:var(--g-pad-x)!important;max-width:calc(var(--g-max-text) + var(--g-pad-x) * 2)!important}
.g-sources{border:1px solid var(--g-line);border-radius:var(--g-radius-lg);padding:clamp(18px,1.4vw + 10px,26px);background:var(--g-paper)}
body .g-sources h2{font-family:var(--g-f-label);font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g-ink);margin:0 0 14px}
.g-sources ol{margin:0;padding-left:1.2em}
.g-sources li{font-size:14.5px;line-height:1.6;margin:.45em 0;overflow-wrap:anywhere}
body .g-sources a{color:var(--g-green);text-decoration:underline;text-underline-offset:3px}
.g-author{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:clamp(18px,1.4vw + 10px,26px);border:1px solid var(--g-line);border-radius:var(--g-radius-lg)}
body .g-author img{width:64px!important;height:64px!important;border-radius:50%}
.g-author b{display:block;font-family:var(--g-f-display);font-size:20px;font-weight:500;color:var(--g-ink)}
.g-author span{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green);margin-bottom:4px}
.g-author p{margin:6px 0 0!important;font-size:14.5px;color:var(--g-muted)}
.g-postnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body .g-postnav a{display:block;padding:18px 20px;border:1px solid var(--g-line);border-radius:var(--g-radius-lg);color:var(--g-ink);transition:border-color .3s,transform .5s var(--g-ease)}
body .g-postnav a:hover{border-color:rgba(31,122,109,.4);transform:translateY(-2px)}
.g-postnav small{display:block;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-muted);margin-bottom:6px}
.g-postnav b{font-family:var(--g-f-display);font-weight:500;font-size:17px;line-height:1.35}
.g-postnav .is-next{text-align:right;grid-column:2}
@media (max-width:560px){.g-postnav{grid-template-columns:minmax(0,1fr)}.g-postnav .is-next{grid-column:auto;text-align:left}}

/* ---------- 27. 404, SEARCH, THANK YOU, BACK TO TOP ---------- */
.g-404{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;padding-bottom:clamp(60px,8vw,110px)}
.g-404__num{font-family:var(--g-f-display);font-size:clamp(110px,18vw,260px);font-weight:500;line-height:.85;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1.5px rgba(226,189,114,.5);margin-bottom:10px}
.g-404__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
body .g-404__links a{padding:10px 16px;border:1px solid var(--g-line-dark);border-radius:99px;color:var(--g-on-dark);font-size:14.5px;transition:border-color .3s,color .3s}
body .g-404__links a:hover{border-color:var(--g-mint);color:#fff}
.g-thanks{text-align:center;max-width:680px;margin-inline:auto}
.g-thanks__icon{width:84px;height:84px;margin:0 auto 26px;border-radius:50%;display:grid;place-items:center;background:rgba(226,189,114,.14);color:var(--g-mint)}
.g-phero--light .g-thanks__icon,.g-section .g-thanks__icon{background:rgba(31,122,109,.1);color:var(--g-green)}
.g-thanks__icon path{stroke-dasharray:40;stroke-dashoffset:40;animation:g-draw .9s .3s var(--g-ease) forwards}
@keyframes g-draw{to{stroke-dashoffset:0}}
.g-thanks .g-lead{margin-inline:auto}
.g-thanks .g-btns{justify-content:center}
.g-top{position:fixed;right:clamp(14px,2vw,26px);bottom:clamp(14px,2vw,26px);z-index:900;width:46px;height:46px;border-radius:50%;border:0!important;padding:0!important;cursor:pointer;
  background:var(--g-ink)!important;color:#fff!important;display:grid;place-items:center;box-shadow:0 10px 26px rgba(8,25,28,.28)!important;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .4s,transform .5s var(--g-ease),visibility .4s,background-color .3s}
.g-top.is-on{opacity:1;visibility:visible;transform:none}
.g-top:hover{background:var(--g-green)!important}
.g-drawer-open .g-top{opacity:0;visibility:hidden}

/* ---------- 28. ELEMENTSKIT AND ASTRA INTEGRATION ----------
   Only the ElementsKit header and footer are ever shown. Astra's own header and
   footer are removed in functions.php; these rules are a visual safety net. */
/* ElementsKit wraps the GCRC header in <header id="masthead"> and the footer in <footer id="colophon">.
   Those wrappers must always show. Only Astra's own builder rows are hidden. */
body:has(.g-header) :is(#ast-desktop-header,#ast-mobile-header,#ast-fixed-header,.main-header-bar-wrap,.ast-mobile-header-wrap,.ast-above-header-wrap,.ast-below-header-wrap){display:none!important}
body:has(.g-footer) :is(.site-above-footer-wrap,.site-primary-footer-wrap,.site-below-footer-wrap,.ast-small-footer,.footer-adv){display:none!important}
#masthead:has(.g-header),#colophon:has(.g-footer),.ekit-template-content-header,.ekit-template-content-footer{display:block!important;visibility:visible!important;opacity:1!important;
  background:none!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;min-height:0!important;transform:none!important}
#masthead:has(.g-header){position:static!important;height:auto}
.ekit-template-content-markup,.ekit-template-content-header,.ekit-template-content-footer{margin:0;padding:0}
.ekit-template-content-header .elementor-section-wrap,.ekit-template-content-header .e-con{min-height:0}
/* Astra containers: full width for Elementor pages and GCRC templates */
.ast-page-builder-template .site-content > .ast-container,.g-tpl .site-content > .ast-container{max-width:none!important;width:100%;padding:0!important;display:block!important;margin:0}
.g-tpl #primary,.g-tpl .content-area{margin:0!important;padding:0!important;width:100%!important;float:none!important}
.g-tpl .site-content{padding:0!important}
.ast-page-builder-template .entry-header,.ast-page-builder-template .ast-archive-description{margin:0}
.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{background:transparent}
.site-content,#page{overflow:visible}
/* pages that start light get a solid header and top offset */
.g-light-top:not(.g-tpl) .site-content{padding-top:var(--g-head-total)}
/* Astra scroll-to-top and default header remnants never compete with ours */
#ast-scroll-top{display:none!important}

/* ---------- 29. UTILITIES ---------- */
.g-center{text-align:center}.g-center .g-lead,.g-center .g-btns{margin-inline:auto;justify-content:center}
.g-mw-sm{max-width:560px}.g-mw-md{max-width:760px}.g-mw-lg{max-width:960px}
.g-mx-auto{margin-inline:auto}
.g-mt-0{margin-top:0!important}.g-mt-1{margin-top:12px!important}.g-mt-2{margin-top:24px!important}.g-mt-3{margin-top:clamp(32px,4vw,48px)!important}.g-mt-4{margin-top:clamp(44px,6vw,72px)!important}
.g-mb-0{margin-bottom:0!important}.g-mb-2{margin-bottom:24px!important}.g-mb-3{margin-bottom:clamp(32px,4vw,48px)!important}
.g-muted{color:var(--g-muted)!important}.g-white{color:#fff!important}.g-mint{color:var(--g-mint)!important}.g-amber{color:var(--g-amber)!important}
.g-nowrap{white-space:nowrap}
.g-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.g-ratio-card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.g-round img,img.g-round{border-radius:var(--g-radius-lg)}
@media (max-width:767px){.g-hide-mobile{display:none!important}}
@media (min-width:768px){.g-only-mobile{display:none!important}}
@media (max-width:1024px){.g-hide-tablet{display:none!important}}

/* ---------- 30. PRINT ---------- */
@media print{
  .g-header,.g-drawer,.g-footer,.g-top,.g-progress,.g-subnav,.g-chipsbar,.g-share,.g-cta,.g-marquee{display:none!important}
  .g-hero,.g-phero,.g-dark,.g-band--ink{background:#fff!important;color:#000!important;padding-top:20px!important}
  body :is(.g-hero,.g-phero,.g-dark) :is(h1,h2,h3,h4,p){color:#000!important}
  .g-js .g-reveal,.g-js .g-stagger > *{opacity:1!important;transform:none!important}
  .g-prose a::after{content:' (' attr(href) ')';font-size:.8em;color:#555}
}

/* share row under the article: shown on tablet and phone, or when there is no side column */
@media (min-width:1025px){.g-share--after.is-dup{display:none}}
[data-cat][hidden],[data-g-filter] [hidden]{display:none!important}

/* tags and eyebrows on dark heroes and panels */
:is(.g-phero:not(.g-phero--light),.g-dark,.g-night,.g-portal) .g-tag:not(.g-tag--line):not(.g-tag--ink){background:rgba(226,189,114,.13);color:var(--g-mint)}
:is(.g-phero:not(.g-phero--light),.g-dark,.g-night,.g-portal) .g-tag--amber{background:rgba(232,176,80,.16);color:var(--g-amber-soft)}
.g-portal .g-eyebrow{color:var(--g-mint)!important}
@media (max-width:1024px){.g-single__layout{gap:0}.g-toc{margin-bottom:32px}}
@media (max-width:560px){.g-phero--article .g-crumbs li:last-child{display:none}}

/* Optional smooth scrolling (GCRC > Site, off by default). Required Lenis rules. */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}

/* Conditional form questions (Contact page) */
.g-js [data-g-when][hidden]{display:none!important}
.g-form [data-g-when]{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;padding:20px;border-radius:var(--g-radius-lg);background:var(--g-paper);border:1px solid var(--g-line)}
.g-form [data-g-when] > .g-when-title{grid-column:1/-1;margin:0;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--g-green)}
.g-form [data-g-when]:not([hidden]){animation:g-fade .45s var(--g-ease)}
@media (max-width:640px){.g-form [data-g-when]{grid-template-columns:minmax(0,1fr);padding:16px}}
/* page level helpers used by interior pages */
.g-anchor-card{scroll-margin-top:calc(var(--g-head-total) + 80px)}
.g-markrow{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,4vw,56px);padding:clamp(26px,3vw,40px) 0;border-top:1px solid var(--g-line-dark)}
.g-markrow:first-child{border-top:0;padding-top:0}
body .g-markrow h3{font-size:clamp(28px,1.6vw + 18px,44px);color:#fff}
.g-markrow h3 sup{font-size:.4em;color:var(--g-amber-soft);top:-1.1em;position:relative;vertical-align:baseline}
.g-markrow .g-facts{background:var(--g-line-dark);border-color:var(--g-line-dark)}
.g-markrow .g-facts > div{background:rgba(255,255,255,.03)}
.g-markrow .g-facts dd{color:var(--g-on-dark)}
.g-markrow .g-facts dt{color:var(--g-mint)}
.g-markrow p{color:var(--g-on-dark-muted)}
@media (max-width:900px){.g-markrow{grid-template-columns:minmax(0,1fr)}}
.g-facts dd .g-status{margin-top:2px}
.g-brandrow .g-facts{margin:22px 0}
.g-markrow .g-facts,.g-brandrow .g-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:420px){.g-markrow .g-facts,.g-brandrow .g-facts{grid-template-columns:minmax(0,1fr)}}
.g-steps.g-steps--2{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:28px}
@media (max-width:767px){.g-steps.g-steps--2{grid-template-columns:minmax(0,1fr)}}

/* notes and legal lines inside dark page heroes */
.g-phero:not(.g-phero--light) :is(.g-note,.g-legal){color:var(--g-on-dark-muted)}
body .g-btn:disabled,body .g-btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none!important;pointer-events:none}
body .g-hero__title{margin-bottom:clamp(22px,2.6vw,32px)}

/* =====================================================================
   31. OCTOBER 2026 UPDATES
   ===================================================================== */
/* Gold brand bar: the GCRC name, centered above the menu */
.g-announce--brand .g-announce__in{justify-content:center;min-height:44px}
.g-announce__name{margin:0!important;padding:10px 0!important;font-family:var(--g-f-label);font-size:clamp(12.5px,.45vw + 10.8px,16px);font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--g-ink)!important;text-align:center;line-height:1.35}
@media (max-width:420px){.g-announce__name{letter-spacing:.08em}}
/* Clean hero: one CTA, larger image, no text over the photo */
.g-hero--clean .g-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.g-hero--clean .g-hero__media{max-width:660px;aspect-ratio:4/4.9}
body .g-hero--clean .g-hero__title{margin-top:0}
.g-hero__more{display:inline-flex;margin-left:6px;font-size:15px;color:var(--g-on-dark-muted)}
body .g-hero__more a{color:var(--g-mint);text-decoration:underline;text-underline-offset:3px}
@media (max-width:1024px){.g-hero--clean .g-hero__media{aspect-ratio:4/3.4;max-width:680px}}
/* Objectives without numbers */
.g-objectives--plain > div::before{display:none}
/* Team */
.g-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--g-gap)}
.g-team .g-person{grid-template-columns:auto minmax(0,1fr);align-items:start;height:100%}
.g-person__img--initials{display:grid;place-items:center;background:var(--g-ink);color:var(--g-mint);font-family:var(--g-f-display);font-size:clamp(24px,1.4vw + 14px,34px);font-weight:500}
.g-person .g-tag{margin-top:10px}
/* Pathway cards with a small image */
.g-path__img{position:relative;aspect-ratio:3/2;border-radius:10px;overflow:hidden;margin-bottom:16px;background:var(--g-bone)}
body .g-path__img img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover}
/* Highlighted name link */
body a.g-namelink{color:var(--g-green);font-weight:600;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;text-decoration-color:rgba(217,140,31,.6)}
body a.g-namelink:hover{color:var(--g-ink);text-decoration-color:var(--g-amber)}
/* Blank GCRC certificate (Education) */
.g-cert{position:relative;max-width:620px;margin-inline:auto;padding:14px;background:#FBF9F4;border-radius:6px;box-shadow:var(--g-shadow-lg)}
.g-cert__in{border:2px solid var(--g-amber);outline:1px solid rgba(217,140,31,.45);outline-offset:-9px;padding:clamp(26px,4vw,48px) clamp(20px,4vw,44px);text-align:center;
  background:radial-gradient(60% 50% at 50% 0%,rgba(31,122,109,.07),transparent 70%)}
body .g-cert__seal{width:64px!important;height:auto!important;margin:0 auto 12px}
.g-cert__org{display:block;font-family:var(--g-f-label);font-size:clamp(11px,.4vw + 9px,13px);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g-ink)}
.g-cert__kicker{display:block;margin:18px 0 6px;font-family:var(--g-f-display);font-style:italic;font-size:clamp(20px,1.2vw + 14px,28px);color:var(--g-green)}
.g-cert__line{display:block;width:70%;margin:26px auto 8px;border-bottom:1px solid #C9C2B0;height:1px}
.g-cert__hint{display:block;font-size:12px;color:var(--g-muted);letter-spacing:.06em}
.g-cert__text{margin:18px 0 0!important;font-size:15px;color:var(--g-text)}
.g-cert__signs{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}
.g-cert__signs span{display:block;border-top:1px solid #C9C2B0;padding-top:8px;font-size:12px;color:var(--g-muted)}
.g-cert__sample{position:absolute;right:-8px;top:18px;transform:rotate(4deg);background:var(--g-amber);color:var(--g-ink);font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:4px;box-shadow:var(--g-shadow)}
/* Footer: two partner cards, GCRC USA */
.g-footer__eco--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-footer__usa{color:#fff;font-weight:600;letter-spacing:.04em}
@media (max-width:640px){.g-footer__eco--2{grid-template-columns:minmax(0,1fr)}}
.g-phero__split .g-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:420px){.g-phero__split .g-facts{grid-template-columns:minmax(0,1fr)}}
body .g-cert p.g-cert__text{color:var(--g-text)!important}
.g-objectives--trio{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.g-objectives--trio{grid-template-columns:minmax(0,1fr)}}
body .g-hero--clean .g-hero__title{font-size:clamp(2.2rem,1.1rem + 3.2vw,4.3rem);max-width:none}
.g-hero--clean .g-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
@media (max-width:1024px){.g-hero--clean .g-hero__grid{grid-template-columns:minmax(0,1fr)}}
.g-team{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.g-team .g-person{grid-template-columns:minmax(0,1fr);gap:16px;align-content:start}
.g-team .g-person__img{width:84px}
.g-team .g-person h3{overflow-wrap:normal}

/* ===================================================================
   32. SURVEY STUDY  {{gcrc:survey}}
   =================================================================== */
.g-survey{background:#fff;border:1px solid var(--g-line);border-radius:var(--g-radius-xl);padding:clamp(20px,3.2vw,52px);box-shadow:var(--g-shadow);max-width:880px;margin-inline:auto;scroll-margin-top:calc(var(--g-head-total) + 16px)}
.g-survey h3{font-family:var(--g-f-display);font-weight:500;font-size:clamp(1.45rem,1.1rem + 1vw,2rem);line-height:1.2;color:var(--g-ink);margin:12px 0 20px!important}
.g-survey h3 small{font-family:var(--g-f-body);font-size:.5em;color:var(--g-muted);font-weight:500;letter-spacing:.02em}
.g-survey p{color:var(--g-text);line-height:1.65;margin:0 0 12px}
.g-survey .g-survey__small{font-size:14px;color:var(--g-muted)}
.g-survey a{color:var(--g-green);text-decoration:underline;text-underline-offset:2px}
.g-survey__bar{height:6px;border-radius:6px;background:var(--g-bone);overflow:hidden;margin-bottom:8px}
.g-survey__bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--g-green),var(--g-mint));border-radius:6px;transition:width .5s var(--g-ease)}
.g-survey__count{font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g-muted);margin:0 0 18px!important}
.g-survey__step[hidden]{display:none!important}
.g-survey__step.is-active{animation:g-fade .45s var(--g-ease)}
.g-survey__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.g-sq{border:0;margin:0;padding:22px 0;border-top:1px solid var(--g-line);min-width:0}
.g-sq[hidden]{display:none!important}
.g-survey__step > .g-sq:first-of-type{border-top:0}
.g-sq legend{display:flex;gap:12px;align-items:flex-start;padding:0;margin:0 0 12px;font-family:var(--g-f-body);font-size:clamp(16px,15.4px + .2vw,18px);font-weight:600;line-height:1.5;color:var(--g-ink);text-transform:none;letter-spacing:0;float:left;width:100%}
.g-sq legend + *{clear:both}
.g-sq__n{flex:none;display:grid;place-items:center;min-width:30px;height:30px;padding:0 6px;border-radius:99px;background:rgba(31,122,109,.1);color:var(--g-green);font-family:var(--g-f-label);font-size:13px;font-weight:700;margin-top:-2px}
.g-sq .g-req{color:var(--g-amber)}
.g-sq__hint{clear:both;font-size:13.5px!important;color:var(--g-muted)!important;margin:-4px 0 12px 42px!important}
.g-sq__opts{clear:both;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.g-opt{position:relative;display:block;cursor:pointer;margin:0}
.g-opt input{position:absolute;opacity:0;width:1px;height:1px}
.g-opt span{display:flex;align-items:center;gap:12px;height:100%;padding:13px 16px;border:1.5px solid var(--g-line);border-radius:12px;background:#fff;font-size:15px;line-height:1.45;color:var(--g-text);transition:border-color .2s,background-color .2s,box-shadow .2s}
.g-opt span::before{content:'';flex:none;width:18px;height:18px;border:1.5px solid #B9C6C0;border-radius:50%;background:#fff;transition:all .2s}
.g-sq--multi .g-opt span::before{border-radius:5px}
.g-opt:hover span{border-color:#B9D6CA;background:#FAFCFB}
.g-opt input:focus-visible + span{box-shadow:0 0 0 4px rgba(31,122,109,.18);border-color:var(--g-green)}
.g-opt input:checked + span{border-color:var(--g-green);background:rgba(31,122,109,.06);color:var(--g-ink)}
.g-opt input:checked + span::before{border-color:var(--g-green);background:var(--g-green) radial-gradient(circle,#fff 0 3px,transparent 3.5px)}
.g-sq--multi .g-opt input:checked + span::before{background:var(--g-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' stroke='%23fff' stroke-width='2.2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.g-opt input:disabled + span{opacity:.45;cursor:not-allowed}
.g-sq--scale .g-sq__opts{grid-template-columns:repeat(5,minmax(0,1fr))}
.g-sq--scale .g-opt span{flex-direction:column;justify-content:flex-start;text-align:center;gap:8px;padding:14px 8px;font-size:13px}
body .g-survey .g-sq select,body .g-survey .g-sq__other,body .g-survey .g-survey__signup input[type=email]{width:100%;height:auto;min-height:50px;font-family:var(--g-f-body);font-size:16px;color:var(--g-text);padding:13px 16px;border:1.5px solid var(--g-line);border-radius:12px;background-color:#fff;line-height:1.4;box-shadow:none}
body .g-survey .g-sq select{max-width:420px;clear:both;display:block;appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231F7A6D' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
body .g-survey .g-sq__other{margin-top:10px;max-width:520px;display:block}
body .g-survey .g-sq__other[hidden]{display:none}
.g-sq select:focus,.g-sq__other:focus,.g-survey__signup input:focus{outline:none;border-color:var(--g-green);box-shadow:0 0 0 4px rgba(31,122,109,.12)}
.g-sq__err{display:none;margin:10px 0 0!important;font-size:14px!important;color:var(--g-danger)!important}
.g-sq.is-invalid .g-sq__err{display:block}
.g-sq.is-invalid .g-opt span{border-color:#E2B3A7}
.g-survey__status{display:none;margin:14px 0 0!important;padding:12px 16px;border-radius:var(--g-radius);background:#FDF1EE;color:var(--g-danger)!important;border:1px solid #F0C9BF;font-size:15px}
.g-survey__status.is-on{display:block}
.g-survey__nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:22px;border-top:1px solid var(--g-line)}
.g-survey__nav [data-next],.g-survey__nav [data-submit]{margin-left:auto}
.g-survey__nav [hidden]{display:none!important}
.g-survey.is-sending [data-submit]{opacity:.6;pointer-events:none}
.g-survey__notice{padding:18px 20px;border-radius:var(--g-radius-lg);background:var(--g-paper);border:1px solid var(--g-line);margin-bottom:20px}
.g-survey__notice h3{margin-top:0}
.g-survey__adminnote{font-size:13.5px!important;padding:10px 14px;border-radius:8px;background:#FCF3E6;color:var(--g-amber-ink)!important;border:1px solid #F1D7AE}
.g-survey__done{text-align:center;padding:8px 0}
.g-survey__done:focus{outline:none}
.g-survey__done .g-thanks__icon{background:rgba(31,122,109,.1);color:var(--g-green);width:74px;height:74px;margin-bottom:18px}
.g-survey__signup{max-width:620px;margin:24px auto 18px;padding:20px;border-radius:var(--g-radius-lg);background:var(--g-paper);border:1px solid var(--g-line);text-align:left}
.g-survey__signup label{display:block;font-size:14.5px;line-height:1.55;color:var(--g-text);margin-bottom:12px}
.g-survey__signrow{display:flex;gap:10px}
.g-survey__signrow input[type=email]{flex:1;min-width:0}
.g-survey__signstatus{font-size:14px!important;margin:10px 0 0!important;color:var(--g-leaf)!important}
.g-survey__signstatus.is-err{color:var(--g-danger)!important}
.g-survey__share{background:none;border:0;padding:0;font:inherit;color:var(--g-green);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
@media (max-width:640px){
  .g-sq__opts{grid-template-columns:minmax(0,1fr)}
  .g-sq--scale .g-sq__opts{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .g-sq--scale .g-opt span{padding:10px 4px;font-size:11.5px}
  .g-sq__hint{margin-left:0!important}
  .g-survey__signrow{flex-direction:column}
  .g-survey__nav .g-btn{flex:1;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.g-survey__step.is-active{animation:none}.g-survey__bar span{transition:none}}

/* Article pages: Astra's boxed post padding and narrow container never wrap GCRC articles (full width hero) */
body.g-tpl .g-article,
body.g-tpl.ast-separate-container .ast-article-single,
body.g-tpl.ast-separate-container .ast-article-post,
body.g-tpl.ast-narrow-container .site-content > .ast-container{padding:0!important;margin:0!important;max-width:none!important;width:100%!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}
body.g-tpl.ast-separate-container,body.g-tpl.ast-separate-container #page,body.g-tpl.ast-separate-container .site-content{background-color:#fff}

/* ===================================================================
   33. HOME HERO "LAB" (October 27, 2026)
   Edge to edge photo, fine research grid, gold accents and an area index,
   so the GCRC home page is clearly different from Plant Chat.
   =================================================================== */
.g-lab{position:relative;background:var(--g-night);color:var(--g-on-dark);overflow:hidden;isolation:isolate;padding-top:0}
.g-lab::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:56px 56px;-webkit-mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.55) 45%,transparent 62%);mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.55) 45%,transparent 62%)}
.g-lab::after{content:'';position:absolute;left:-10%;top:10%;width:60%;height:80%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(31,122,109,.22),transparent)}
.g-lab__grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);min-height:clamp(640px,calc(100svh - 104px),900px)}
.g-lab__text{align-self:center;padding:calc(var(--g-head-total) + clamp(32px,3.5vw,56px)) clamp(28px,4vw,64px) clamp(40px,4.5vw,72px) max(var(--g-pad-x),calc((100vw - var(--g-max)) / 2 + var(--g-pad-x)))}
.g-lab__kicker{display:inline-flex;align-items:center;gap:12px;font-family:var(--g-f-label);font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g-mint);
  padding-left:44px;position:relative;margin-bottom:clamp(20px,2.4vw,30px)}
.g-lab__kicker::before{content:'';position:absolute;left:0;top:50%;width:32px;height:1px;background:var(--g-mint)}
.g-lab__kicker i{width:4px;height:4px;border-radius:50%;background:var(--g-amber);display:inline-block}
body .g-lab .g-lab__title{font-family:var(--g-f-display);font-weight:500;color:#fff;font-size:clamp(2.3rem,1.1rem + 2.9vw,4.1rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 clamp(18px,2vw,26px);max-width:none}
body .g-lab .g-lab__title em{font-style:italic;color:var(--g-mint)}
body .g-lab p.g-lab__lead{color:var(--g-on-dark-muted);font-size:var(--g-fs-lead);line-height:1.65;max-width:50ch;margin:0 0 clamp(26px,3vw,36px)}
.g-lab__facts{display:flex;flex-wrap:wrap;gap:clamp(18px,3vw,40px);margin:clamp(28px,3vw,40px) 0 0;padding:clamp(18px,2vw,24px) 0 0;border-top:1px solid var(--g-line-dark)}
.g-lab__facts div{margin:0}
.g-lab__facts dt{font-family:var(--g-f-display);font-size:clamp(26px,1.4vw + 16px,38px);font-weight:500;line-height:1;color:#fff}
.g-lab__facts dd{margin:8px 0 0;font-family:var(--g-f-label);font-size:10.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--g-on-dark-muted)}
.g-lab__media{position:relative;min-height:100%}
body .g-lab__media img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;object-position:center 30%;border-radius:0!important;filter:saturate(.9) contrast(1.05)}
.g-lab__media::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--g-night) 0%,rgba(4,13,15,.35) 14%,rgba(4,13,15,0) 34%),linear-gradient(0deg,rgba(4,13,15,.55),transparent 30%),linear-gradient(180deg,rgba(4,13,15,.75) 0%,rgba(4,13,15,0) calc(var(--g-head-total) + 40px))}
.g-lab__index{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--g-ink);border-top:1px solid rgba(226,189,114,.28)}
.g-lab__index a{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:clamp(20px,2vw,28px) clamp(18px,2vw,30px);color:var(--g-on-dark)!important;text-decoration:none!important;border-right:1px solid var(--g-line-dark);transition:background-color .35s var(--g-ease)}
.g-lab__index a:last-child{border-right:0}
.g-lab__index a::before{content:'';position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--g-amber);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--g-ease)}
.g-lab__index a:hover{background:var(--g-ink-2)}
.g-lab__index a:hover::before{transform:scaleX(1)}
.g-lab__index span{grid-row:1 / 3;align-self:center;font-family:var(--g-f-label);font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--g-mint)}
.g-lab__index b{align-self:end;font-family:var(--g-f-display);font-weight:500;font-size:clamp(17px,.5vw + 14px,21px);color:#fff;line-height:1.2}
.g-lab__index small{grid-column:2;align-self:start;margin-top:4px;font-size:13px;line-height:1.4;color:var(--g-on-dark-muted)}
.g-lab__index svg{grid-row:1 / 3;grid-column:3;align-self:center;color:var(--g-mint);transition:transform .35s var(--g-ease)}
.g-lab__index a:hover svg{transform:translateX(4px)}
@media (min-width:1025px){.g-lab__index{padding-left:max(0px,calc((100vw - var(--g-max)) / 2 + var(--g-pad-x) - clamp(18px,2vw,30px)));padding-right:max(0px,calc((100vw - var(--g-max)) / 2 + var(--g-pad-x) - clamp(18px,2vw,30px)))}}
@media (max-width:1024px){
  .g-lab__grid{grid-template-columns:minmax(0,1fr);min-height:0}
  .g-lab__media{order:-1;min-height:0;aspect-ratio:16/11;margin-top:var(--g-head-total)}
  .g-lab__media::before{background:linear-gradient(0deg,var(--g-night) 0%,rgba(4,13,15,0) 40%)}
  .g-lab__text{padding:clamp(24px,4vw,40px) var(--g-pad-x) clamp(40px,6vw,64px)}
  .g-lab::before{-webkit-mask-image:linear-gradient(180deg,transparent 30%,#000 60%);mask-image:linear-gradient(180deg,transparent 30%,#000 60%)}
  .g-lab__index{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g-lab__index a:nth-child(2){border-right:0}
  .g-lab__index a:nth-child(-n+2){border-bottom:1px solid var(--g-line-dark)}
}
@media (max-width:560px){
  .g-lab__media{aspect-ratio:4/3.4}
  .g-lab__index{grid-template-columns:minmax(0,1fr)}
  .g-lab__index a{border-right:0;border-bottom:1px solid var(--g-line-dark)}
  .g-lab__index a:last-child{border-bottom:0}
}
@media (prefers-reduced-motion:reduce){.g-lab__index a::before,.g-lab__index svg{transition:none}}
