


/* Version 2 shared tokens and base roles. archivo-v2.css finishes the role mapping.
   Protected role declarations deliberately override
   legacy component specificity; layout and brand colours remain component-owned. */
:root {
  --site-font-body:Archivo,Arial,sans-serif;
  --site-font-hero:var(--site-font-body);
  --site-type-hero:1.75rem;
  --site-type-section:1.3125rem;
  --site-type-home-feature:var(--site-type-section);
  --site-type-subheading:1rem;
  --site-type-closing:var(--site-type-section);
  --site-type-body:.875rem;
  --site-type-note:.8125rem;
  --site-type-control:.8125rem;
  --site-type-card-copy:.8125rem;
  --site-type-input:.875rem;
  --site-type-navigation:.8125rem;
  --site-type-tagline:.6875rem;
  --site-leading-hero:1.15;
  --site-leading-heading:1.25;
  --site-leading-body:1.65;
  --site-leading-ui:1.5;
  --site-tracking-hero:-.02em;
  --site-tracking-heading:-.015em;
  --site-weight-heading:600;
  --site-weight-navigation:500;
  --site-measure-lead:60ch;
  --site-measure-prose:65ch;
  --site-gap-heading:.5rem;
  --site-gap-intro:.75rem;
  --site-space-section:clamp(36px,3.6vw,52px);
  --site-space-grid:clamp(20px,2.4vw,32px);
  /* Compatibility aliases: components cannot introduce another size scale. */
  --site-type-title:var(--site-type-hero);
  --site-type-range-title:var(--site-type-hero);
  --site-type-story:var(--site-type-subheading);
  --site-type-card:.9375rem;
  --site-type-content:var(--site-type-subheading);
  --site-type-functional:var(--site-type-subheading);
  --site-type-reading:var(--site-type-input);
  --site-type-label:var(--site-type-note);
  --site-type-table:.875rem;
  --site-type-metric:1rem;
  --site-leading-display:var(--site-leading-hero);
  --site-tracking-display:var(--site-tracking-hero);
}
@media(max-width:800px) {
  :root { --site-type-hero:1.5rem; --site-type-section:1.1875rem; --site-space-section:36px; }
}
body.brand-identity.type-system {
  font-family:var(--site-font-body); font-size:var(--site-type-body);
  font-weight:400; line-height:var(--site-leading-body); font-kerning:normal;
  -webkit-text-size-adjust:100%; text-size-adjust:100%;
}
body.brand-identity.type-system :is(main h2,main h3,main h4,.fc-trade-band h2) {
  font-family:var(--site-font-body)!important;
  letter-spacing:var(--site-tracking-heading)!important;
  line-height:var(--site-leading-heading)!important;
  text-wrap:balance;
}
body.brand-identity.type-system main h1 {
  font-family:var(--site-font-hero)!important;
  font-size:var(--site-type-hero)!important;
  line-height:var(--site-leading-hero)!important;
  letter-spacing:var(--site-tracking-hero)!important;
  font-optical-sizing:auto; font-synthesis:none; text-transform:none;
  font-weight:600!important; text-wrap:balance;
  overflow-wrap:normal;
}
body.brand-identity.type-system :is(main h2,.fc-trade-band h2) { font-size:var(--site-type-section)!important; font-weight:var(--site-weight-heading)!important; }
body.brand-identity.type-system.home-page :is(#plant-needs-title,#apply-title,#action-title) {
  font-size:var(--site-type-home-feature)!important;
  max-width:100%;
  white-space:normal;
}
body.brand-identity.type-system main :is(h3,h4) { font-size:var(--site-type-subheading)!important; font-weight:500!important; line-height:1.4!important; letter-spacing:normal!important; }
body.brand-identity.type-system.home-page #formulas .gl-formula-name { font:600 var(--site-type-card)/1.4 var(--site-font-body)!important; letter-spacing:normal!important; }
body.brand-identity.type-system main :is(h1,h2,h3,h4) > span {
  font-family:inherit!important; font-size:inherit!important;
  font-weight:inherit!important; line-height:inherit!important; letter-spacing:inherit!important;
}
body.brand-identity.type-system :is(main p,.needs > li,.needs > li > div,.application-guide,.tech-advantage-list dd,.technology-benefit-group dd,.direct-contact address,.direct-contact a,.bi-close-copy p,.bi-close-note) {
  font:400 var(--site-type-body)/var(--site-leading-body) var(--site-font-body)!important;
  letter-spacing:0!important; text-align:left; text-wrap:pretty;
}
body.brand-identity.type-system :is(strong,b) { font-weight:600; }
body.brand-identity.type-system :is(.needs b,.tech-advantage-list dt,.technology-benefit-group dt,.igc-pouch-name,.fc-range-tile > span,main summary,.igc-specifications summary strong) {
  font:500 var(--site-type-subheading)/1.4 var(--site-font-body)!important;
  letter-spacing:var(--site-tracking-heading)!important;
}
body.brand-identity.type-system .needs b { display:block; margin-bottom:6px; }
body.brand-identity.type-system :is(.garden-range-lead,.rr-tech-lead,.fc-product-hero-inner .lead,.fc-contact-hero p,.gl-hero-description) {
  max-width:var(--site-measure-lead); margin-top:var(--site-gap-intro);
}
body.brand-identity.type-system .fc-product-hero-inner .lead { margin-block:1.5rem; }
body.brand-identity.type-system :is(.section-heading p,.section-lead,.product-best-for,.technology-release-intro p) { max-width:var(--site-measure-prose); }
/* Secondary copy has one role, including expanded panels and form feedback. */
body.brand-identity.type-system :is(main .note,main .pack-info,main .product-handling,main .rr-tech-detail,main .rr-tech-caption,main .tech-note,main .tech-handling-note,main .application-index,main .application-dose-note,main .calc small,main .product-choice small,main .bi-table-hint,main .rr-root-note,main .technology-release-figure figcaption,main .technology-conditions p,main .igc-order-note,main .form-actions p,main figure figcaption:not(.gl-handnote),main .igc-kit-facts dt,main .trial-formula-name,.bi-close-note) {
  font:400 var(--site-type-note)/1.5 var(--site-font-body)!important;
  letter-spacing:0!important;
}
body.brand-identity.type-system :is(.technology-conditions li,.technology-chart-labels,.technology-release-stages li,.tech-chart-stages,.tech-chart figcaption,.igc-specifications summary span span,.igc-range-details summary span) {
  font:400 var(--site-type-note)/1.5 var(--site-font-body)!important;
}
body.brand-identity.type-system .technology-release-stages li strong { font-size:inherit; font-weight:600; }
/* Tables use the same body size on phones, with horizontal scrolling as needed. */
body.brand-identity.type-system main :is(table,th,td) {
  font:400 var(--site-type-table)/1.55 var(--site-font-body)!important;
  letter-spacing:0!important; font-variant-numeric:lining-nums tabular-nums;
}
body.brand-identity.type-system main th { font-weight:500!important; }
body.brand-identity.type-system .dose-table :is(th span,td small) { font-size:var(--site-type-note)!important; }
body.brand-identity.type-system :is(.facts b,.calc output) {
  font:600 var(--site-type-metric)/1.3 var(--site-font-body)!important;
  letter-spacing:var(--site-tracking-heading)!important;
  font-variant-numeric:lining-nums tabular-nums;
}
body.brand-identity.type-system .facts span { font-size:var(--site-type-note)!important; line-height:1.5; }
/* Controls retain comfortable targets while their labels stay restrained. */
body.brand-identity.type-system :is(main button,.button,.btn,.text-link,.coming-link,.product-back,.product-sections a,.tech-page-nav a,.pouch-panorama-name,.igc-page-nav a,.igc-text-link,.trial-categories button,.rr-steps button,.rr-animation-controls button,.rr-animation-controls a,.bi-tablet-controls button) {
  font:500 var(--site-type-control)/var(--site-leading-ui) var(--site-font-body)!important;
  letter-spacing:0!important;
}
body.brand-identity.type-system :is(.field label,.calc-controls label,.fc-product-interest legend,.product-choice,.igc-kit-inclusions dt) {
  font:500 var(--site-type-note)/1.5 var(--site-font-body)!important;
  letter-spacing:0!important;
}
body.brand-identity.type-system .field label span { font-size:inherit!important; font-weight:400; }
body.brand-identity.type-system :is(input,select,textarea) {
  font:400 var(--site-type-input)/1.5 var(--site-font-body)!important;
}
body.brand-identity.type-system .form-status { font:400 var(--site-type-body)/1.6 var(--site-font-body)!important; }
/* Compact cards are an intentional smaller-copy role, shared on every page. */
body.brand-identity.type-system .catalogue-card .detail-copy > p {
  font:400 var(--site-type-card-copy)/1.5 var(--site-font-body)!important;
  margin-block:10px 16px;
}
body.brand-identity.type-system :is(.catalogue-card .fc-product-button,.gl-formula-link) {
  font:500 var(--site-type-card-copy)/1.5 var(--site-font-body)!important;
  min-height:44px;
}
body.brand-identity.type-system .catalogue-card h3 { min-height:2.6em; }
body.brand-identity.type-system .fc-benefits h2 {
  font:600 var(--site-type-card)/1.4 var(--site-font-body)!important; letter-spacing:0!important;
}
body.brand-identity.type-system.home-page .gl-benefits h2 { font-weight:400!important; }
body.brand-identity.type-system .fc-benefits p { font:400 var(--site-type-note)/1.5 var(--site-font-body)!important; }
body.brand-identity.type-system .site-footer :is(h2,h3) { font:600 var(--site-type-note)/1.5 var(--site-font-body); letter-spacing:0; }
body.brand-identity.type-system .site-footer :is(p,address,a,.footer-legal,.footer-origin) { font-size:var(--site-type-note); line-height:1.65; }
body.brand-identity.type-system .rr-utility > .container { justify-content:flex-end; }
body.brand-identity.type-system .rr-utility span { font-size:var(--site-type-tagline); font-weight:400; line-height:1.4; gap:7px; text-align:right; }
body.brand-identity.type-system .rr-utility svg { width:12px; height:12px; }
body.brand-identity.type-system ::selection { background:#d6e7d1; color:#064b38; }
body.brand-identity.type-system :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #8c5a22; outline-offset:4px; }
body.brand-identity.type-system :is(input,textarea) { caret-color:#064b38; }
@media(max-width:620px) { body.brand-identity.type-system .catalogue-card h3 { min-height:0; } }
/* Photo annotations use the same sans-serif family as every other text role. */
body.brand-identity.type-system.home-page .rr-hero .gl-hero-note {
  left:auto;
  right:clamp(160px,15vw,250px);
  top:auto;
  bottom:9%;
  width:clamp(9.5rem,14vw,13rem);
  font-family:var(--site-font-body);
  font-size:1.125rem;
  font-weight:500;
  line-height:1.3;
  letter-spacing:0;
  text-align:center;
  color:#fff;
  transform:none;
  text-shadow:0 2px 5px rgb(8 26 17 / .75);
}
body.brand-identity.type-system.home-page .rr-hero .gl-hero-note .gl-ink-underline { width:70%; height:18px; margin:2px auto 0; }
body.brand-identity.type-system.home-page .gl-retail-photo figcaption { font-size:var(--site-type-note); line-height:1.5; }
@media(max-width:1000px) {
  body.brand-identity.type-system.home-page .rr-hero .gl-hero-note { left:44%; right:auto; bottom:5%; width:42%; font-size:1rem; }
}

@media(max-width:580px) {
  body.brand-identity.type-system.home-page .rr-hero .gl-hero-note { width:45%; font-size:.875rem; }
}
/* Compact primary navigation: lighter labels, retained pointer and touch targets. */
body.brand-identity.type-system .header-inner #main-nav { gap:18px; }
body.brand-identity.type-system .header-inner #main-nav a:not(.nav-contact) {
  display:inline-flex; align-items:center;
  font-family:var(--site-font-body);
  font-size:var(--site-type-navigation);
  font-weight:var(--site-weight-navigation);
  line-height:1.4; letter-spacing:0;
  min-height:44px; padding-block:8px;
}
body.brand-identity.type-system .header-inner #main-nav .nav-contact {
  font-size:var(--site-type-navigation); font-weight:500;
  line-height:1.4; min-height:44px; padding:8px 18px;
}
@media(min-width:1001px) {
  body.brand-identity.type-system .header-inner { grid-template-columns:auto minmax(0,1fr); }
  body.brand-identity.type-system .header-inner #main-nav { justify-self:end; margin-left:auto; }
}
@media(min-width:1001px) and (max-width:1100px) {
  body.brand-identity.type-system .header-inner #main-nav { gap:13px; }
}
@media(max-width:1000px) {
  body.brand-identity.type-system .header-inner #main-nav { gap:2px; padding-block:10px 14px; }
  body.brand-identity.type-system .header-inner #main-nav a:not(.nav-contact) { font-size:var(--site-type-navigation); padding-block:8px; }
  body.brand-identity.type-system .header-inner #main-nav .nav-contact { font-size:var(--site-type-navigation); }
}
/* A quiet home shortcut with a full-size touch and keyboard target. */
body.brand-identity.type-system .header-inner #main-nav .nav-home {
  justify-content:center;
  min-width:44px;
  padding:8px 12px;
  border-radius:8px;
  color:#064b38;
  text-decoration:none;
}
body.brand-identity.type-system .header-inner #main-nav .nav-home svg {
  display:block;
  width:20px;
  height:20px;
  flex:none;
}
body.brand-identity.type-system .header-inner #main-nav .nav-home:is(:hover,[aria-current="page"]) {
  background:#eaf0e8;
  text-decoration:none;
}
body.brand-identity.type-system .header-inner #main-nav .nav-home-label { display:none; }
@media(max-width:1000px) {
  body.brand-identity.type-system .header-inner #main-nav .nav-home { justify-content:flex-start; gap:8px; }
  body.brand-identity.type-system .header-inner #main-nav .nav-home-label { display:inline; }
}
