/*
Theme Name: Gajanand Nonwoven
Theme URI: https://gajanandsoftech.in/
Author: Gajanand Softech
Author URI: https://gajanandsoftech.in/
Description: A clean, responsive WordPress theme for a non-woven bag manufacturer. Designed for product catalogues, manufacturing information and enquiry-led sales.
Version: 1.2.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: gajanand-nonwoven
*/

/* Universal design tokens */
:root {
  --gs-primary: #174b3a;
  --gs-primary-dark: #10372b;
  --gs-accent: #d9a441;
  --gs-text: #202923;
  --gs-muted: #66736b;
  --gs-surface: #ffffff;
  --gs-soft: #f4f7f4;
  --gs-border: #e3e9e4;
  --gs-radius: 14px;
  --gs-radius-lg: 24px;
  --gs-container: 1180px;
  --gs-font: Arial, Helvetica, sans-serif;
  --gs-heading-font: Arial, Helvetica, sans-serif;
  --gs-shadow: 0 12px 35px rgba(20, 50, 35, .08);
}

/* Universal reset and base typography */
*,
*::before,
*::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--gs-text);
  background: var(--gs-surface);
  font-family: var(--gs-font);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }
a { color: var(--gs-primary); text-decoration: none; }
a:hover { color: var(--gs-primary-dark); }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 .65em;
  color: var(--gs-text);
  font-family: var(--gs-heading-font);
  line-height: 1.16;
  font-weight: 700;
}
p { margin: 0 0 1.15em; }
ul, ol { padding-left: 1.25rem; }

.gs-container {
  width: min(var(--gs-container), calc(100% - 40px));
  margin-inline: auto;
}

.gs-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  padding: 12px 22px;
  border: 1px solid var(--gs-primary);
  border-radius: 8px;
  background: var(--gs-primary);
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
  transition: .2s ease;
}
.gs-button:hover {
  background: var(--gs-primary-dark);
  border-color: var(--gs-primary-dark);
  color: #fff;
  transform: translateY(-1px);
}
.gs-button--outline { background: transparent; color: var(--gs-primary); }
.gs-button--outline:hover { color: #fff; }

.gs-eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--gs-primary);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.gs-section { padding: 76px 0; }
.gs-section--soft { background: var(--gs-soft); }
.gs-section-heading { max-width: 700px; margin: 0 auto 38px; text-align: center; }
.gs-section-heading h2 { margin-bottom: 12px; font-size: clamp(28px, 4vw, 42px); }
.gs-section-heading p { color: var(--gs-muted); }

.screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.skip-link:focus {
  position: fixed; z-index: 99999; top: 10px; left: 10px;
  width: auto; height: auto; clip: auto; padding: 12px 16px;
  background: #fff; color: #000;
}
.alignwide { max-width: 1200px; margin-inline: auto; }
.alignfull { width: 100%; }
.wp-caption { max-width: 100%; }
.wp-caption-text, .gallery-caption { color: var(--gs-muted); font-size: 13px; }
.sticky { display: block; }
.bypostauthor { display: block; }


/* Homepage client logo visibility and responsive layout (v1.1.1). */
.gs-home-clients { display:block; visibility:visible; }
.gs-client-logo { background:#f8faf8; min-width:0; }
.gs-client-logo img { display:block; max-width:100%; max-height:68px; object-fit:contain; filter:none; opacity:1; }
.gs-client-logo:hover img { filter:none; opacity:1; }


/* -------------------------------------------------------
   GAJANAND NONWOVEN — PREMIUM CLASSIC DESIGN SYSTEM
   Display: Playfair Display | Body/UI: DM Sans
   Palette: deep ink, warm ivory, muted terracotta, antique brass
-------------------------------------------------------- */
:root{
 --gs-primary:#263a35;--gs-primary-dark:#172923;--gs-accent:#ad6c4d;
 --gs-text:#252a27;--gs-muted:#73756e;--gs-surface:#fffefa;--gs-soft:#f3f0e8;
 --gs-border:#ded9ce;--gs-radius:3px;--gs-radius-lg:5px;--gs-container:1200px;
 --gs-font:"DM Sans",Arial,sans-serif;--gs-heading-font:"Playfair Display",Georgia,serif;
 --gs-shadow:0 16px 45px rgba(35,42,37,.09);
}
body{background:var(--gs-surface);font-family:var(--gs-font);font-size:15px;line-height:1.75;letter-spacing:.005em}
h1,h2,h3,h4,h5,h6{font-family:var(--gs-heading-font);font-weight:500;letter-spacing:-.025em;color:var(--gs-primary)}
h1{font-size:clamp(44px,6vw,76px);line-height:1.04}
h2{font-size:clamp(32px,4vw,49px);line-height:1.12}
h3{font-size:25px}
a{color:var(--gs-accent)}
.gs-container{width:min(var(--gs-container),calc(100% - 52px))}
.gs-button{background:var(--gs-primary);border:1px solid var(--gs-primary);border-radius:2px;padding:14px 25px;min-height:51px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.gs-button:hover{background:var(--gs-accent);border-color:var(--gs-accent);transform:none}
.gs-button--outline{background:transparent;color:var(--gs-primary);border-color:var(--gs-primary)}
.gs-eyebrow{font-family:var(--gs-font);font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--gs-accent);margin-bottom:17px}
.gs-section{padding:96px 0}
.gs-section--soft{background:var(--gs-soft)}
.gs-section-heading{max-width:740px;margin:0 auto 48px;text-align:center}
.gs-section-heading h2{font-size:clamp(34px,4vw,50px)}
.gs-section-heading p{color:var(--gs-muted);font-size:15px}
.gs-section-heading--left{text-align:left;margin-left:0}
.gs-site-header{position:relative;z-index:50;background:#fffefa;border-bottom:1px solid var(--gs-border)}
.gs-topline{background:var(--gs-primary);color:#e7e1d5;font-size:9px;letter-spacing:.19em;font-weight:700}
.gs-topline .gs-container{display:flex;justify-content:space-between;padding:8px 0}
.gs-header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.gs-brand{display:flex;flex-direction:column;gap:2px;min-width:180px}
.gs-brand .custom-logo{max-height:59px;width:auto}
.gs-brand-name{font-family:var(--gs-heading-font);font-size:27px;font-weight:600;color:var(--gs-primary)}
.gs-brand-tagline{font-size:9px;color:var(--gs-muted);letter-spacing:.13em;text-transform:uppercase}
.gs-navigation{display:flex;align-items:center;gap:29px}
.gs-menu{display:flex;align-items:center;gap:29px;list-style:none;margin:0;padding:0}
.gs-menu a{color:#3e4640;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.gs-menu a:hover,.gs-menu .current-menu-item>a{color:var(--gs-accent)}
.gs-header-cta{display:inline-flex;gap:12px;align-items:center;background:var(--gs-accent);color:#fff;padding:13px 18px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.gs-header-cta:hover{color:#fff;background:var(--gs-primary)}
.gs-menu-toggle{display:none;border:0;background:transparent;padding:8px}
.gs-menu-toggle span:not(.screen-reader-text){display:block;width:24px;height:2px;background:var(--gs-primary);margin:5px}
.gs-site-footer{background:#202f2a;color:#d4d4cb;padding-top:70px}
.gs-footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:70px;padding-bottom:55px}
.gs-footer-kicker{display:block;color:#c28a6c;font-size:9px;letter-spacing:.2em;font-weight:700;margin-bottom:10px}
.gs-footer-brand{display:inline-block;color:#fff;font-family:var(--gs-heading-font);font-size:32px;margin-bottom:12px}
.gs-site-footer h3{font-family:var(--gs-font);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#fff;margin-bottom:22px}
.gs-site-footer p{font-size:13px;color:#c7cbc3;max-width:370px}
.gs-site-footer p span{font-size:9px;letter-spacing:.17em;color:#c28a6c;font-weight:700}
.gs-site-footer a{color:#e3e4dc}
.gs-site-footer a:hover{color:#d8a88d}
.gs-footer-menu{list-style:none;margin:0;padding:0}
.gs-footer-menu li{margin:8px 0;font-size:13px}
.gs-footer-bottom{padding:18px 0;border-top:1px solid rgba(255,255,255,.13);font-size:10px;letter-spacing:.05em;color:#aeb7af}
.gs-footer-bottom .gs-container{display:flex;justify-content:space-between;gap:20px}
.gs-floating-whatsapp{position:fixed;z-index:40;right:22px;bottom:22px;padding:13px 19px;background:#526d5e;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.15)}
.gs-floating-whatsapp:hover{color:#fff;background:var(--gs-accent)}
/* Home page: retain editable home content, restyle its existing sections */
.gs-home-hero{background-color:var(--gs-primary)!important;background-image:linear-gradient(90deg,rgba(27,43,37,.96),rgba(27,43,37,.73)),var(--gs-hero-image)!important}
.gs-home-hero-inner{min-height:590px;padding-block:90px}
.gs-home-hero h1{font-family:var(--gs-heading-font);font-weight:500;letter-spacing:-.035em;font-size:clamp(47px,6vw,76px);max-width:690px}
.gs-home-hero p{font-size:16px;line-height:1.85;color:#e0e2db}
.gs-home-hero .gs-eyebrow{color:#d5a486}
.gs-home-hero .gs-button{background:var(--gs-accent);border-color:var(--gs-accent)}
.gs-home-hero .gs-button--outline{background:transparent;border-color:#d9d9cf;color:#fff}
.gs-hero-art img{border-radius:2px;box-shadow:22px 22px 0 rgba(173,108,77,.32)}
.gs-home-stats{gap:0;margin-top:-1px;background:#fffefa;border:1px solid var(--gs-border);box-shadow:none}
.gs-home-stat{border:0;border-right:1px solid var(--gs-border);border-radius:0;box-shadow:none;background:transparent;padding:25px 14px}
.gs-home-stat:last-child{border-right:0}
.gs-home-stat strong{font-family:var(--gs-heading-font);font-size:23px;font-weight:500;color:var(--gs-primary)}
.gs-home-stat span{font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.gs-home-intro-visual{border-radius:2px;background:#e9e3d7}
.gs-home-intro h2{font-size:clamp(34px,4.2vw,52px)}
.gs-home-product{border:0;border-bottom:1px solid var(--gs-border);border-radius:0;background:transparent}
.gs-home-product:hover{transform:translateY(-3px);box-shadow:none}
.gs-home-product-image{height:260px;background:var(--gs-soft)}
.gs-home-product-body{padding:19px 0 24px}
.gs-home-product h3{font-size:23px}
.gs-home-cta{padding:55px 60px;border-radius:2px;background:var(--gs-primary)}
.gs-home-cta .gs-button{background:#fff;border-color:#fff;color:var(--gs-primary)}
.gs-home-clients{padding:82px 0 72px;background:#fffefa}
.gs-client-logos{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--gs-border);border-bottom:1px solid var(--gs-border)}
.gs-client-logo{min-height:125px;border:0;border-right:1px solid var(--gs-border);border-radius:0;background:transparent;padding:22px}
.gs-client-logo:last-child{border-right:0}
.gs-client-logo img{max-height:68px;filter:grayscale(1);opacity:.76}
.gs-client-logo:hover img{filter:none;opacity:1}
.gs-home-gallery-section{background:#f0ede5}
.gs-home-gallery-head h2{font-size:clamp(36px,4.4vw,52px)}
.gs-work-grid{grid-auto-rows:175px;gap:12px}
.gs-work-tile{border-radius:1px;background:#ddd7ca}
.gs-home-gallery-head .gs-button{background:transparent;color:var(--gs-primary);border-color:var(--gs-primary)}
/* Interior page design */
.gs-interior-hero{padding:88px 0 80px;background:#f1eee6;border-bottom:1px solid var(--gs-border)}
.gs-interior-hero h1{max-width:900px;margin-bottom:20px}
.gs-interior-lead{max-width:730px;color:#666b64;font-size:17px;line-height:1.8}
.gs-interior-hero--dark{background:var(--gs-primary);border:0}
.gs-interior-hero--dark h1{color:#fff}
.gs-interior-hero--dark .gs-interior-lead{color:#d8ddd5}
.gs-interior-hero--dark .gs-eyebrow{color:#d5a486}
.gs-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.gs-story-copy h2{font-size:clamp(38px,4.3vw,56px);margin-bottom:25px}
.gs-story-copy h2 em{color:var(--gs-accent);font-weight:500}
.gs-story-copy p{color:#686d66}
.gs-story-rule{width:75px;height:1px;background:var(--gs-accent);margin:30px 0 15px}
.gs-small-note{font-size:9px;letter-spacing:.16em;font-weight:700;color:var(--gs-muted)}
.gs-story-image img{width:100%;height:480px;object-fit:cover}
.gs-image-placeholder,.gs-video-placeholder{min-height:420px;background:#e4ded1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#77766e}
.gs-image-placeholder span,.gs-video-placeholder span{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--gs-primary)}
.gs-image-placeholder small,.gs-video-placeholder small{margin-top:10px;font-size:12px}
.gs-image-caption{padding:12px 0;border-bottom:1px solid var(--gs-border);font-family:var(--gs-heading-font);font-style:italic;color:var(--gs-muted);font-size:15px}
.gs-about-principles{background:#f2efe8}
.gs-principle-grid,.gs-process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--gs-border);border-bottom:1px solid var(--gs-border)}
.gs-principle-grid article,.gs-process-steps article{padding:30px 32px 32px 0;border-right:1px solid var(--gs-border);margin-right:32px}
.gs-principle-grid article:last-child,.gs-process-steps article:last-child{border-right:0;margin-right:0}
.gs-principle-grid article>span,.gs-process-steps article>span{display:block;color:var(--gs-accent);font-size:11px;letter-spacing:.15em;margin-bottom:24px}
.gs-principle-grid h3,.gs-process-steps h3{font-size:25px;margin-bottom:12px}
.gs-principle-grid p,.gs-process-steps p{font-size:13px;color:var(--gs-muted);margin:0}
.gs-editorial-content{padding-top:60px;padding-bottom:60px}
.gs-page-content{max-width:850px;margin:auto}
.gs-page-content h2,.gs-page-content h3{margin-top:1.5em}
.gs-interior-cta{padding:54px 0;background:#e9e3d7}
.gs-interior-cta .gs-container{display:flex;justify-content:space-between;align-items:center;gap:30px}
.gs-interior-cta h2{font-size:clamp(30px,3.8vw,44px);margin:0}
.gs-interior-cta .gs-eyebrow{margin-bottom:8px}
.gs-process-media{background:#f4f1ea}
.gs-process-video{position:relative;width:100%;aspect-ratio:16/9;background:#1c2923;margin-bottom:28px}
.gs-process-video iframe{position:absolute;inset:0;width:100%;height:100%}
.gs-video-placeholder{min-height:390px;margin-bottom:28px;background:#ddd6c8}
.gs-video-link{padding:35px;background:#e5ded1;margin-bottom:25px}
.gs-video-link a{font-weight:700}
.gs-process-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:95px;gap:12px}
.gs-process-photo{margin:0;overflow:hidden;background:#ddd7ca}
.gs-process-photo img{width:100%;height:100%;object-fit:cover}
.gs-process-photo--1{grid-column:span 7;grid-row:span 4}
.gs-process-photo--2{grid-column:span 5;grid-row:span 3}
.gs-process-photo--3{grid-column:span 5;grid-row:span 3}
.gs-process-photo--4{grid-column:span 4;grid-row:span 3}
.gs-process-photo--5{grid-column:span 3;grid-row:span 3}
.gs-process-empty{padding:26px;border:1px dashed #c9c2b5;color:var(--gs-muted);font-size:13px}
.gs-contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:75px;align-items:start}
.gs-contact-aside{padding:38px;background:var(--gs-primary);color:#e5e7df}
.gs-contact-aside h2{color:#fff;font-size:36px}
.gs-contact-aside>p{color:#cbd2c9;font-size:14px}
.gs-contact-detail{padding:18px 0;border-top:1px solid rgba(255,255,255,.18)}
.gs-contact-detail>span{display:block;color:#d5a486;font-size:9px;letter-spacing:.18em;font-weight:700;margin-bottom:5px}
.gs-contact-detail a,.gs-contact-detail p{color:#fff;margin:0;font-size:14px}
.gs-button--light{margin-top:15px;background:#fff;color:var(--gs-primary);border-color:#fff}
.gs-button--light:hover{color:#fff}
.gs-contact-form-wrap{padding:8px 0}
.gs-contact-form-wrap h2{font-size:37px;margin-bottom:25px}
.gs-form-row{margin-bottom:19px}
.gs-form-row label{display:block;margin-bottom:7px;color:#4c544d;font-size:11px;letter-spacing:.08em;font-weight:700;text-transform:uppercase}
.gs-form-row input,.gs-form-row textarea{width:100%;padding:14px 15px;border:1px solid #d9d4c9;border-radius:1px;background:#fffefa;color:var(--gs-text);font-size:14px}
.gs-form-row input:focus,.gs-form-row textarea:focus{outline:1px solid var(--gs-accent);border-color:var(--gs-accent)}
.gs-form-row textarea{min-height:145px;resize:vertical}
.gs-form-footnote{font-size:11px;color:var(--gs-muted);margin-top:13px}
.gs-contact-alert{padding:14px 17px;margin-bottom:22px;background:#e8eee8;color:#294b39;font-size:13px}
.gs-contact-alert.is-error{background:#f5e8e2;color:#8b3f2c}
@media(max-width:900px){
 .gs-menu-toggle{display:block}.gs-navigation{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 26px;background:#fffefa;border-bottom:1px solid var(--gs-border);box-shadow:var(--gs-shadow);align-items:stretch;flex-direction:column;gap:18px}.gs-navigation.is-open{display:flex}.gs-menu{align-items:stretch;flex-direction:column;gap:15px}.gs-header-cta{text-align:center;justify-content:center}
 .gs-footer-grid{grid-template-columns:1fr 1fr;gap:35px}.gs-story-grid{gap:40px}.gs-contact-layout{gap:35px}
}
@media(max-width:700px){
 .gs-container{width:min(var(--gs-container),calc(100% - 34px))}.gs-section{padding:68px 0}
 .gs-topline .gs-container span:last-child{display:none}.gs-header-inner{min-height:78px}
 .gs-home-hero-inner{min-height:auto;padding-block:65px}.gs-home-hero h1{font-size:46px}.gs-hero-art{min-height:220px}
 .gs-home-stats{grid-template-columns:1fr;margin-top:0}.gs-home-stat{border-right:0;border-bottom:1px solid var(--gs-border)}.gs-home-products{grid-template-columns:1fr}
 .gs-home-cta{padding:32px 25px;display:block}.gs-home-cta .gs-button{margin-top:22px}
 .gs-client-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.gs-client-logo{border-bottom:1px solid var(--gs-border);min-height:95px}
 .gs-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:115px;gap:8px}.gs-work-tile:nth-child(1){grid-row:span 2}.gs-work-tile:nth-child(4){grid-row:span 2}
 .gs-interior-hero{padding:65px 0 58px}.gs-interior-hero h1{font-size:48px}.gs-interior-lead{font-size:15px}
 .gs-story-grid,.gs-contact-layout{grid-template-columns:1fr;gap:35px}.gs-story-image img{height:330px}
 .gs-principle-grid,.gs-process-steps{grid-template-columns:1fr}.gs-principle-grid article,.gs-process-steps article{border-right:0;border-bottom:1px solid var(--gs-border);margin:0;padding:25px 0}
 .gs-process-gallery{grid-template-columns:repeat(6,1fr);grid-auto-rows:75px;gap:8px}.gs-process-photo--1{grid-column:span 6;grid-row:span 3}.gs-process-photo--2,.gs-process-photo--3{grid-column:span 3;grid-row:span 2}.gs-process-photo--4,.gs-process-photo--5{grid-column:span 3;grid-row:span 2}
 .gs-interior-cta .gs-container{display:block}.gs-interior-cta .gs-button{margin-top:22px}
 .gs-footer-grid{grid-template-columns:1fr;gap:25px}.gs-footer-bottom .gs-container{display:block}.gs-footer-bottom .gs-container span{display:block;margin:4px 0}
}


/* -------------------------------------------------------
   HOMEPAGE LAYOUT REPAIR — v1.2.1
   Explicit grid/flex definitions were missing from the
   premium stylesheet. Keep these rules scoped to the home.
-------------------------------------------------------- */
.gs-home-hero {
  background-size: cover !important;
  background-position: center !important;
}
.gs-home-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  align-items: center;
  gap: clamp(38px, 6vw, 86px);
}
.gs-home-hero-inner > div:first-child { min-width: 0; }
.gs-hero-art {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gs-hero-art img {
  display: block;
  width: 100%;
  height: 420px;
  object-fit: cover;
}
.gs-home-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.gs-home-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(38px, 7vw, 95px);
}
.gs-home-intro-visual {
  min-height: 390px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 35px;
}
.gs-home-products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 28px;
}
.gs-home-product { min-width: 0; }
.gs-home-product-image {
  display: block;
  width: 100%;
  height: 260px;
  overflow: hidden;
}
.gs-home-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gs-home-product-body { min-width: 0; }
.gs-home-clients .gs-container { min-width: 0; }
.gs-client-logos {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: stretch;
}
.gs-client-logo {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.gs-client-logo img {
  display: block;
  width: 100%;
  max-width: 190px;
  height: 72px;
  object-fit: contain;
}
.gs-home-gallery-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 35px;
  margin-bottom: 38px;
}
.gs-home-gallery-head > div { max-width: 680px; }
.gs-home-gallery-head h2 { margin-bottom: 12px; }
.gs-home-gallery-head p { color: var(--gs-muted); margin-bottom: 0; }
.gs-work-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: 88px;
  gap: 12px;
}
.gs-work-tile {
  display: block;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  position: relative;
}
.gs-work-tile img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
}
.gs-work-tile:hover img { transform: scale(1.035); }
.gs-work-tile:nth-child(1) { grid-column: span 5; grid-row: span 4; }
.gs-work-tile:nth-child(2) { grid-column: span 4; grid-row: span 3; }
.gs-work-tile:nth-child(3) { grid-column: span 3; grid-row: span 3; }
.gs-work-tile:nth-child(4) { grid-column: span 4; grid-row: span 3; }
.gs-work-tile:nth-child(5) { grid-column: span 3; grid-row: span 2; }
.gs-work-tile:nth-child(6) { grid-column: span 5; grid-row: span 2; }
.gs-work-tile:nth-child(n+7) { grid-column: span 3; grid-row: span 2; }

@media (max-width: 900px) {
  .gs-home-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: 30px; }
  .gs-hero-art img { height: 340px; }
  .gs-home-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gs-client-logos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .gs-home-hero-inner { display: grid; grid-template-columns: 1fr; gap: 30px; }
  .gs-hero-art { min-height: 0; }
  .gs-hero-art img { height: 260px; box-shadow: 10px 10px 0 rgba(173,108,77,.25); }
  .gs-home-stats { grid-template-columns: 1fr; }
  .gs-home-intro { grid-template-columns: 1fr; gap: 30px; }
  .gs-home-intro-visual { min-height: 260px; }
  .gs-home-products { grid-template-columns: 1fr; gap: 24px; }
  .gs-home-product-image { height: 250px; }
  .gs-client-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gs-client-logo { border-right: 1px solid var(--gs-border); }
  .gs-home-gallery-head { display: block; }
  .gs-home-gallery-head .gs-button { margin-top: 22px; }
  .gs-work-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-auto-rows: 72px;
    gap: 8px;
  }
  .gs-work-tile:nth-child(1) { grid-column: span 6; grid-row: span 3; }
  .gs-work-tile:nth-child(2),
  .gs-work-tile:nth-child(3),
  .gs-work-tile:nth-child(4),
  .gs-work-tile:nth-child(5),
  .gs-work-tile:nth-child(6),
  .gs-work-tile:nth-child(n+7) { grid-column: span 3; grid-row: span 2; }
}
