/* ============================================================
   SAHU AGRO BUSINESS PVT. LTD. — Design tokens
   Two engines, one seam: fuel-grade ethanol (amber/heat) and
   cold storage (ice/steel), split by the diagonal red stripe
   lifted straight from the company mark.
   ============================================================ */

@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/space-grotesk-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/space-grotesk-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/space-grotesk-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/inter-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/jetbrains-mono-latin-500-normal.woff2') format('woff2');}

:root{
  --black: #1c2b1e;       /* forest-green ink, used for header/footer/dark sections */
  --black-soft: #253a27;
  --white: #f5f1e6;       /* warm cream page background */
  --paper: #ece6d3;       /* card / panel background */
  --red: #c8102e;         /* kept from the logo mark, used sparingly */
  --steel: #57624f;       /* body copy on cream */
  --steel-light: #9aa68f; /* muted copy on dark */
  --amber: #b98a3e;
  --amber-deep: #6b4a1d;
  --ice: #7fa7b0;
  --ice-deep: #2c4a44;
  --sage: #9fae7e;        /* ticker band / mid accent */
  --sage-pale: #e7ead3;   /* pale sage section background */
  --mint-chip: #b7dfae;   /* icon chip background */

  --display: 'Space Grotesk', 'Arial', sans-serif;
  --body: 'Inter', -apple-system, sans-serif;
  --mono: 'JetBrains Mono', monospace;

  --seam: 6deg; /* the diagonal angle borrowed from the logo stripe */
  --container: 1180px;
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family: var(--body);
  color: var(--black);
  background: var(--white);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul{ list-style:none; }

h1,h2,h3,h4{
  font-family: var(--display);
  letter-spacing:-0.01em;
  font-weight:700;
  line-height:1.08;
  color: var(--black);
}
h1{ font-size: clamp(2.4rem, 5.4vw, 4.2rem); }
h2{ font-size: clamp(1.8rem, 3.4vw, 2.5rem); }
h3{ font-size: 1.2rem; }

.eyebrow{
  font-family: var(--mono);
  font-size:0.72rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color: var(--red);
  display:inline-block;
  margin-bottom:0.9rem;
}
.pill-label{
  display:inline-flex; align-items:center;
  font-family: var(--body); font-weight:600; font-size:0.78rem;
  background: var(--sage-pale); color: var(--black-soft);
  padding:0.35rem 0.9rem; border-radius:999px;
  margin-bottom:1rem;
}

.container{
  max-width: var(--container);
  margin:0 auto;
  padding: 0 1.6rem;
}

/* Focus visibility, kept even where we style away default outlines */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline: 3px solid var(--red);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
  /* The brand ticker is decorative, slow and linear — keep it moving non-stop on every device */
  .ticker-track{ animation-duration:30s !important; animation-iteration-count:infinite !important; }
}

/* ---------------- Header ---------------- */
.site-header{
  position:sticky; top:0; z-index:100;
  background: var(--black);
  transition: background .25s ease;
}
.site-header.transparent{
  position:fixed; top:0; left:0; right:0;
  background: transparent;
}
.site-header.transparent.scrolled{
  background: var(--black);
  box-shadow: 0 4px 14px rgba(0,0,0,0.2);
}
.site-header .container{
  display:flex; align-items:center; justify-content:space-between;
  height:96px;
  max-width:none; padding:0 2.5rem;
}
.brand{ display:flex; align-items:center; gap:0.7rem; }
.brand img{ height:58px; width:auto; }
.brand span{
  display:none;
}
.primary-nav{ }
.header-right{ display:flex; align-items:center; gap:1rem; }

.nav-links{
  display:flex; align-items:center; gap:2.2rem;
  font-family: var(--body);
  font-weight:500;
  font-size:0.95rem;
}
.nav-links a{
  color: var(--white);
  padding:0.4rem 0 0.3rem;
  border-bottom:2px solid transparent;
  transition: border-color .15s ease;
}
.nav-links a:hover, .nav-links a[aria-current="page"]{
  border-color: var(--sage);
}
.nav-cta{
  display:inline-block;
  font-family: var(--body); font-weight:600; font-size:0.9rem;
  background: var(--sage); color: var(--black);
  padding:0.75rem 1.5rem; border-radius:999px;
  transition: background .15s ease, transform .15s ease;
  white-space:nowrap;
}
.nav-cta:hover{ background: var(--white); transform: translateY(-1px); }

.nav-toggle{
  display:none;
  background:none; border:2px solid var(--white); color:var(--white);
  width:44px; height:40px; border-radius:2px; cursor:pointer;
  font-family: var(--mono); font-size:1.1rem;
}

/* Desktop: true 3-column grid so the nav is centered regardless of logo/button width */
@media (min-width: 781px){
  .site-header .container{
    display:grid;
    grid-template-columns: auto 1fr auto;
    align-items:center;
    column-gap:2rem;
  }
  .primary-nav{ display:flex; justify-content:center; }
  .header-right{ justify-content:flex-end; }
}

@media (max-width: 780px){
  .brand img{ height:44px; }
  .nav-links{
    position:absolute; top:96px; left:0; right:0;
    background: var(--black);
    flex-direction:column; gap:0;
    max-height:0; overflow:hidden;
    border-bottom: 0 solid var(--black-soft);
    transition: max-height .25s ease;
    box-shadow: 0 8px 12px rgba(0,0,0,0.25);
  }
  .nav-links.open{ max-height:360px; border-bottom-width:1px; padding:0.4rem 0 0.8rem; }
  .nav-links li{ width:100%; }
  /* Full-width block links = big, easy tap targets, and no lines through the text */
  .nav-links a{
    display:block; width:100%;
    padding:1.05rem 1.6rem; min-height:56px;
    text-align:center; font-size:1.1rem;
    border-bottom:0;
    -webkit-tap-highlight-color: rgba(143,166,106,0.25);
  }
  .nav-links a:hover{ border-color:transparent; }
  .nav-links a:active{ background: rgba(255,255,255,0.08); }
  .nav-links a[aria-current="page"]{ color: var(--sage); border-color:transparent; font-weight:600; }
  .nav-toggle{ display:block; width:48px; height:44px; }
  .nav-cta{ padding:0.6rem 1.1rem; font-size:0.85rem; }
}


/* ---------------- Diagonal seam divider (signature motif) ---------------- */
.seam{
  height: 34px;
  background: var(--black);
  position:relative;
  overflow:hidden;
}
.seam::before{
  content:"";
  position:absolute; inset:-2px -2px auto -2px;
  height:14px; top:50%; transform:translateY(-50%) rotate(calc(-1 * var(--seam)));
  background: var(--white);
}
.seam::after{
  content:"";
  position:absolute; inset:-2px -2px auto -2px;
  height:5px; top:calc(50% + 8px); transform:translateY(-50%) rotate(calc(-1 * var(--seam)));
  background: var(--red);
}

/* ---------------- Hero: two-pillar split ---------------- */
.hero{
  position:relative;
  display:grid;
  grid-template-columns: 1fr 1fr;
  min-height: 560px;
  background: var(--black);
  overflow:hidden;
}
.hero-panel{
  position:relative;
  padding: 6.5rem 3rem 4rem;
  display:flex; flex-direction:column; justify-content:flex-end;
  color: var(--white);
}
.hero-panel.fuel{
  background: linear-gradient(160deg, var(--amber-deep) 0%, var(--black) 78%);
}
.hero-panel.cold{
  background: linear-gradient(200deg, var(--ice-deep) 0%, var(--black) 78%);
}
.hero-panel .tag{
  font-family: var(--mono); font-size:0.78rem; letter-spacing:0.16em;
  text-transform:uppercase; opacity:0.85; margin-bottom:0.6rem;
}
.hero-panel h2{ font-size: clamp(1.6rem, 3.2vw, 2.3rem); margin-bottom:0.7rem; }
.hero-panel p{ max-width: 34ch; opacity:0.85; font-size:0.98rem; }
.hero-panel .stat{
  font-family: var(--mono); font-size:0.8rem; margin-top:1.4rem;
  border-top:1px solid rgba(255,255,255,0.25); padding-top:0.8rem;
  letter-spacing:0.04em;
}
.hero-seam{
  position:absolute; top:0; bottom:0; left:50%;
  width:160px; margin-left:-80px;
  transform: skewX(calc(-1 * var(--seam)));
  z-index:2; pointer-events:none;
}
.hero-seam::before{
  content:""; position:absolute; inset:0;
  background: var(--white);
  clip-path: polygon(46% 0, 54% 0, 54% 100%, 46% 100%);
}
.hero-seam::after{
  content:""; position:absolute; inset:0;
  background: var(--red);
  clip-path: polygon(49% 0, 52% 0, 52% 100%, 49% 100%);
}
.hero-mark{
  position:absolute; left:50%; top:2.2rem; transform:translateX(-50%);
  z-index:3; text-align:center; color:var(--white);
}
.hero-mark img{ height:56px; margin:0 auto 0.6rem; }
.hero-mark .est{
  font-family: var(--mono); font-size:0.7rem; letter-spacing:0.18em; opacity:0.75;
}
@media (max-width: 780px){
  .hero{ grid-template-columns:1fr; min-height:auto; }
  .hero-panel{ padding: 3rem 1.6rem 2.4rem; }
  .hero-panel.fuel{ padding-top:7.5rem; }
  .hero-seam{ display:none; }
  .hero-mark{ top:1.4rem; }
}

/* ---------------- Sections ---------------- */
section{ padding: 4.6rem 0; }
.section-head{ max-width: 640px; margin-bottom: 2.6rem; }
.section-head p{ color: var(--steel); font-size:1.02rem; }

.pillars{
  display:grid; grid-template-columns:1fr 1fr; gap: 2.4rem;
}
.pillar-card{
  border:1px solid #ddd8ca; background: var(--paper);
  padding: 2.2rem;
  position:relative;
}
.pillar-card::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:5px;
}
.pillar-card.fuel::before{ background: var(--amber); }
.pillar-card.cold::before{ background: var(--ice); }
.pillar-card h3{ margin-bottom:0.8rem; }
.pillar-card p{ color: var(--steel); margin-bottom:1.2rem; }
.pillar-card a{
  font-family: var(--mono); font-size:0.82rem; letter-spacing:0.06em;
  border-bottom: 2px solid var(--red); padding-bottom:2px;
}
@media (max-width: 780px){ .pillars{ grid-template-columns:1fr; } }

.stat-strip{
  background: var(--black); color: var(--white);
  display:grid; grid-template-columns: repeat(3, 1fr);
}
.stat-strip div{
  padding: 2.4rem 1.6rem; text-align:center;
  border-left: 1px solid rgba(255,255,255,0.12);
}
.stat-strip div:first-child{ border-left:none; }
.stat-strip .num{ font-family: var(--display); font-size:2.1rem; color: var(--white); }
.stat-strip .label{ font-family: var(--mono); font-size:0.72rem; letter-spacing:0.12em; text-transform:uppercase; color: var(--steel-light); margin-top:0.4rem; }
@media (max-width: 700px){
  .stat-strip{ grid-template-columns:1fr; }
  .stat-strip div{ border-left:none; border-top:1px solid rgba(255,255,255,0.12); }
  .stat-strip div:first-child{ border-top:none; }
}

.cta-band{
  background: var(--black); color: var(--white);
  text-align:center; padding: 3.8rem 1.6rem;
}
.cta-band h2{ margin-bottom:1.2rem; color: var(--white); }
.btn{
  display:inline-block; font-family: var(--display); text-transform:uppercase;
  letter-spacing:0.06em; font-size:0.9rem;
  padding: 0.9rem 2rem; border:2px solid currentColor;
  transition: background .15s ease, color .15s ease;
}
.cta-band .btn{ color: var(--white); }
.cta-band .btn:hover{ background: var(--white); color: var(--black); }
.btn.dark{ color: var(--black); }
.btn.dark:hover{ background: var(--black); color: var(--white); }
.btn.solid{ background: var(--black); color: var(--white); border-color:var(--black); }
.btn.solid:hover{ background: transparent; color: var(--black); }

.btn.pill{
  border-radius:999px; border:none;
  background: var(--black); color: var(--white);
  font-family: var(--body); text-transform:none; letter-spacing:0;
  font-weight:600; padding:1rem 1.8rem;
}
.btn.pill:hover{ background: var(--black-soft); }
.btn.pill.on-dark{ background: var(--sage); color: var(--black); }
.btn.pill.on-dark:hover{ background: var(--white); }
.btn.pill.outline{ background:transparent; color:var(--black); border:2px solid var(--black); padding:0.95rem 1.75rem; }
.btn.pill.outline:hover{ background: var(--black); color: var(--white); }

/* ---------------- Photo hero (home) ---------------- */
.photo-hero{
  position:relative;
  min-height: 640px;
  display:flex; align-items:flex-end;
  overflow:hidden;
}
.hero-slide{
  position:absolute; inset:0;
  background-size:cover; background-position:center;
  opacity:0; z-index:0;
  transition: opacity 1.4s ease;
}
.hero-slide.active{ opacity:1; }
.photo-hero::after{
  content:""; position:absolute; inset:0; z-index:1;
  background: linear-gradient(180deg, rgba(15,23,16,0.25) 0%, rgba(15,23,16,0.35) 55%, rgba(15,23,16,0.6) 100%);
}
.photo-hero-inner{
  position:relative; z-index:2; width:100%;
  padding: 3rem 0 3.4rem;
}
.photo-hero h1{
  color: var(--white); max-width: 26ch;
  font-size: clamp(2.2rem, 5.6vw, 4rem);
  margin-bottom:2rem;
  text-shadow: 0 2px 18px rgba(0,0,0,0.25);
}
.photo-hero h1 .line{ white-space:nowrap; }
@media (max-width: 700px){
  .photo-hero{ min-height:520px; }
}

/* ---------------- Marquee ticker ---------------- */
.ticker{
  background: var(--sage);
  overflow:hidden;
  padding: 0.9rem 0;
}
.ticker-track{
  display:flex; width:max-content;
  animation: ticker-scroll 30s linear infinite;
}
.ticker-set{
  display:flex; flex-shrink:0;
}
.ticker-set span{
  font-family: var(--display); font-weight:600; font-size:0.98rem;
  color: var(--black); white-space:nowrap; padding-right:2.2rem;
}
@keyframes ticker-scroll{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}

/* ---------------- Refining / feature cards with photos ---------------- */
.feature-grid{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:1.8rem;
}
.feature-card{
  background: var(--paper);
  border-radius: 18px;
  overflow:hidden;
}
.feature-card .photo{
  aspect-ratio: 4/3; background-size:cover; background-position:center;
}
.feature-card .body{ padding:1.6rem 1.7rem 1.9rem; }
.feature-card h3{ margin-bottom:0.6rem; }
.feature-card p{ color: var(--steel); font-size:0.95rem; margin-bottom:1.1rem; }
.feature-card a{
  font-family: var(--body); font-weight:600; font-size:0.9rem;
  color: var(--amber-deep); text-decoration:underline; text-underline-offset:3px;
}
@media (max-width: 900px){ .feature-grid{ grid-template-columns:1fr; } }

/* ---------------- Full-bleed image band ---------------- */
.image-band{
  padding: 0 0 4.6rem;
}
.image-band .frame{
  border-radius:20px; overflow:hidden; aspect-ratio: 16/8;
  background-size:cover; background-position:center;
}

/* ---------------- Invest / split CTA ---------------- */
.invest-split{
  background: var(--sage-pale);
  padding: 4.5rem 0;
}
.invest-split .container{
  display:grid; grid-template-columns: 1fr 1.4fr; gap:2.5rem; align-items:center;
}
.invest-split .kicker{
  font-family: var(--body); font-weight:600; color:var(--steel); margin-bottom:0.8rem;
}
.invest-split h2{ margin-bottom:1.6rem; }
@media (max-width: 800px){
  .invest-split .container{ grid-template-columns:1fr; text-align:left; }
}

/* ---------------- Icon cards (Sector Influence) ---------------- */
.icon-cards{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem;
}
.icon-card{ background: var(--paper); border-radius:16px; padding:1.8rem; }
.icon-chip{
  width:44px; height:44px; border-radius:8px;
  background: var(--mint-chip);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:1.4rem;
}
.icon-chip.white{ background: #fdfcf7; box-shadow: inset 0 0 0 1px #e3ded0; }
.icon-chip svg{ width:22px; height:22px; }
.icon-card h3{ margin-bottom:0.6rem; font-size:1.05rem; }
.icon-card p{ color: var(--steel); font-size:0.93rem; }
@media (max-width: 900px){ .icon-cards{ grid-template-columns:1fr; } }

/* ---------------- Footer teaser band ---------------- */
.footer-teaser{
  background: var(--sage);
  padding: 4.4rem 1.6rem;
  text-align:center;
}
.footer-teaser h2{
  font-style:italic;
  max-width: 22ch; margin:0 auto;
  font-size: clamp(1.7rem, 4vw, 2.6rem);
}

/* ---------------- About page ---------------- */
/* ---------------- Our Story split (About page) ---------------- */
.story-split{
  display:grid; grid-template-columns: 1fr 1fr; gap:3.2rem; align-items:center;
}
.story-photo{
  aspect-ratio: 4/5; border-radius:22px; overflow:hidden;
  background-size:cover; background-position:center;
}
.story-copy h2{ margin-bottom:1.2rem; }
.story-copy p{ color: var(--steel); font-size:1.02rem; }
@media (max-width: 850px){
  .story-split{ grid-template-columns:1fr; }
  .story-photo{ aspect-ratio:16/10; background-position:center 72%; }
}

/* ---------------- Board of Directors ---------------- */
.directors-grid{
  display:grid; grid-template-columns:repeat(4, 1fr); gap:1.6rem;
}
.director-card{ text-align:left; }
.director-avatar{
  aspect-ratio: 1/1; border-radius:16px;
  background: var(--paper);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:1rem; overflow:hidden;
}
.director-avatar img{ width:100%; height:100%; object-fit:cover; object-position:center top; display:block; }
.director-avatar span{
  font-family: var(--display); font-weight:700; font-size:2.2rem;
  color: var(--sage-deep, var(--black)); opacity:0.55;
}
.director-card h3{ font-size:1.02rem; }
.director-card .role{
  font-family: var(--body); font-size:0.85rem; color: var(--steel);
  margin-top:0.2rem;
}
@media (max-width: 900px){ .directors-grid{ grid-template-columns:repeat(2, 1fr); } }
@media (max-width: 520px){ .directors-grid{ grid-template-columns:1fr 1fr; gap:1.1rem; } }

/* ---------------- Insights / article page ---------------- */
.article-hero{
  aspect-ratio: 21/9; border-radius:22px; overflow:hidden;
  background-size:cover; background-position:center;
  margin-bottom:2.2rem;
}
.article-meta{
  font-family: var(--mono); font-size:0.78rem; letter-spacing:0.08em;
  text-transform:uppercase; color: var(--steel); margin-bottom:0.8rem;
}
.article-body{ max-width: 720px; }
.article-body p{ color: var(--steel); font-size:1.05rem; margin-bottom:1.3rem; }
.article-body h2{ font-size:1.5rem; margin:2rem 0 1rem; }
.article-body ul{ margin: 0 0 1.3rem 1.2rem; color: var(--steel); }
.article-body li{ list-style: disc; margin-bottom:0.5rem; font-size:1.02rem; }

.timeline{
  border-left: 3px solid var(--red);
  padding-left: 1.8rem;
  display:grid; gap:1.8rem;
}
.timeline .yr{ font-family: var(--mono); color:var(--red); font-size:0.85rem; }

.values-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem;
}
.value-card{ background: var(--paper); border-radius:16px; padding:1.9rem; }
.value-card h3{ margin-bottom:0.6rem; color: var(--black); }
.value-card p{ color: var(--steel); font-size:0.94rem; }
@media (max-width: 780px){ .values-grid{ grid-template-columns:1fr; } }

/* ---------------- Products page ---------------- */
.product-block{
  display:grid; grid-template-columns: 1fr 1fr; gap:3.2rem; align-items:center;
  padding: 4rem 0;
}
.product-block.reverse{ direction:rtl; }
.product-block.reverse > *{ direction:ltr; }
.product-visual{
  aspect-ratio: 4/3; border-radius:22px; overflow:hidden;
  background-size:cover; background-position:center;
}
.spec-list{ margin-top:1.4rem; display:grid; gap:0.6rem; }
.spec-list div{
  display:flex; justify-content:space-between; font-family: var(--mono);
  font-size:0.86rem; border-bottom:1px dashed #cfc9b8; padding-bottom:0.5rem;
}
.spec-list span:first-child{ color: var(--steel); }
@media (max-width: 850px){
  .product-block, .product-block.reverse{ grid-template-columns:1fr; direction:ltr; }
}

/* ---------------- Contact page ---------------- */
.contact-grid{
  display:grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap:2.4rem;
}
.contact-row a, .contact-row .val{ overflow-wrap:anywhere; }
.contact-card{ background: var(--paper); color:var(--black); padding:2.4rem; border-radius:20px; }
.contact-card h3{ color: var(--black); margin-bottom:1.4rem; }
.contact-row{ margin-bottom:1.3rem; }
.contact-row .lbl{ font-family: var(--mono); font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase; color: var(--steel); margin-bottom:0.3rem; }
.contact-row a{ color: var(--black); border-bottom:1px solid var(--sage); }
.contact-row a, .contact-row div.val{ font-size:1.05rem; }

form.enquiry{ display:grid; gap:1.1rem; }
.field label{ display:block; font-family: var(--mono); font-size:0.75rem; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:0.4rem; color: var(--steel); }
.field input, .field textarea, .field select{
  width:100%; padding:0.8rem 0.9rem; border:1px solid #d7d1bd; border-radius:10px; background: var(--white);
  font-family: var(--body); font-size:0.98rem;
}
.field input:focus, .field textarea:focus, .field select:focus{
  border-color: var(--sage);
}
.field textarea{ min-height:120px; resize:vertical; }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.map-embed{ border:0; width:100%; height:280px; border-radius:16px; filter:grayscale(0.15); }

/* ---------------- Footer ---------------- */
footer{ background: var(--black); color: var(--steel-light); padding: 3rem 0 2rem; }
footer .container{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:1.6rem; align-items:center; max-width:none; padding:0 2.5rem; }
footer.split .container{ display:block; }
footer .fbrand{ display:flex; align-items:center; gap:0.7rem; color:var(--white); font-family:var(--display); font-weight:700; }
footer .fbrand img{ height:26px; }
footer small{ font-family: var(--mono); font-size:0.72rem; letter-spacing:0.04em; }
footer .fnav{ display:flex; gap:1.4rem; font-size:0.85rem; }
footer .fnav a:hover{ color: var(--white); }

footer.split{ padding: 4rem 0 2rem; }
footer.split .cols{
  display:grid; grid-template-columns: minmax(0,1fr) auto; gap:2rem;
  padding-bottom:2.6rem; margin-bottom:1.8rem; border-bottom:1px solid rgba(245,241,230,0.12);
}
footer.split .brand-block{ max-width:420px; }
footer.split .brand-block img{ height:30px; margin-bottom:1.4rem; }
footer.split h4{ color: var(--white); font-family:var(--display); font-size:1rem; margin-bottom:1rem; }
footer.split .brand-block h4{ margin-top:1.6rem; }
footer.split .brand-block a{ color: var(--white); display:block; margin-bottom:0.3rem; }
footer.split .brand-block a:hover{ color: var(--sage); }
footer.split .reg-details{ color: var(--steel-light); font-size:0.85rem; line-height:1.6; margin-top:0.3rem; }
footer.split .explore{ text-align:right; justify-self:end; }
footer.split .explore a{ display:block; color: var(--steel-light); margin-bottom:0.6rem; font-size:0.92rem; }
footer.split .explore a:hover{ color: var(--white); }
footer.split .bottom{ display:flex; justify-content:center; width:100%; }
footer.split .bottom small{ text-align:center; width:100%; }
@media (max-width: 700px){
  footer.split .cols{ grid-template-columns:1fr; }
  footer.split .brand-block{ max-width:none; }
  footer.split .explore{ text-align:left; justify-self:start; }
}

/* Contact page on phones/tablets: stack details card and enquiry form */
@media (max-width: 850px){
  .contact-grid{ grid-template-columns: minmax(0,1fr); gap:2rem; }
  .contact-card{ padding:1.6rem 1.3rem; }
  .map-embed{ height:240px; }
  .field input, .field textarea, .field select{ font-size:16px; } /* stops iPhone zooming on focus */
  form.enquiry .btn{ width:100%; justify-self:stretch !important; text-align:center; }
}
