/* ===========================================================
   TOTAL DESIGN LLC — Design System
   Global sourcing & trading house connecting Asia / Europe /
   Middle East factories with Latin American businesses.
   =========================================================== */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;0,9..144,900;1,9..144,400;1,9..144,500&family=Libre+Franklin:wght@300;400;500;600;700;800&display=swap');

:root{
  --navy-deep:#081522;
  --navy:#0d2438;
  --navy-soft:#123049;
  --gold:#c6a15b;
  --gold-light:#e7cd8d;
  --gold-dim:rgba(198,161,91,.35);
  --cream:#f6f1e6;
  --paper:#fbf8f2;
  --ink:#151d27;
  --ink-soft:#4d5a68;
  --ink-faint:#8592a0;
  --line:rgba(198,161,91,.28);
  --line-soft:rgba(13,36,56,.1);
  --radius:2px;
  --shadow-lg:0 30px 60px -25px rgba(8,21,34,.35);
  --shadow-sm:0 10px 24px -14px rgba(8,21,34,.25);
  --font-display:'Fraunces', 'Georgia', serif;
  --font-body:'Libre Franklin', 'Segoe UI', sans-serif;
  --maxw:1240px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{font-family:var(--font-display);margin:0;font-weight:600;letter-spacing:-.01em;}
p{margin:0;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,4vw,56px);}
section{position:relative;}
::selection{background:var(--gold);color:var(--navy-deep);}

/* ---------- utility ---------- */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-body);font-size:12.5px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold);font-weight:600;
  margin-bottom:18px;
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--gold);}
.on-dark .eyebrow{color:var(--gold-light);}
.section-head{max-width:680px;margin-bottom:56px;}
.section-head h2{font-size:clamp(30px,4vw,44px);line-height:1.12;color:var(--navy);}
.section-head p{margin-top:18px;font-size:17px;line-height:1.7;color:var(--ink-soft);}
.on-dark .section-head h2{color:var(--paper);}
.on-dark .section-head p{color:#c4d0da;}

.btn{
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 28px;font-family:var(--font-body);font-weight:600;font-size:14.5px;
  letter-spacing:.03em;border-radius:var(--radius);border:1px solid transparent;
  cursor:pointer;transition:.25s ease;white-space:nowrap;
}
.btn-gold{background:var(--gold);color:var(--navy-deep);}
.btn-gold:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:var(--shadow-sm);}
.btn-outline{border-color:rgba(255,255,255,.35);color:var(--paper);}
.btn-outline:hover{border-color:var(--gold);color:var(--gold-light);}
.btn-outline-dark{border-color:var(--navy);color:var(--navy);}
.btn-outline-dark:hover{border-color:var(--gold);color:var(--navy);background:rgba(198,161,91,.08);}
.btn svg{width:16px;height:16px;flex:none;transition:transform .25s;}
.btn:hover svg{transform:translateX(3px);}

/* ---------- header ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:20px 0;transition:background .35s ease, padding .35s ease, box-shadow .35s ease;
}
.site-header .container{display:flex;align-items:center;justify-content:space-between;max-width:1360px;gap:18px;}
.site-header.scrolled{
  background:rgba(8,21,34,.92);backdrop-filter:blur(10px);
  padding:14px 0;box-shadow:0 6px 30px -14px rgba(0,0,0,.4);
}
.logo{display:flex;align-items:center;gap:11px;font-family:var(--font-display);color:var(--paper);flex:none;}
.logo-mark{
  width:38px;height:38px;border:1px solid var(--gold);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;color:var(--gold);font-size:16px;
  transform:rotate(45deg);flex:none;
}
.logo-mark span{transform:rotate(-45deg);}
.logo-text{line-height:1.1;}
.logo-text b{display:block;font-size:18px;letter-spacing:.02em;font-weight:600;}
.logo-text small{display:block;font-family:var(--font-body);font-size:10px;letter-spacing:.24em;color:var(--gold-light);text-transform:uppercase;margin-top:2px;}

.nav-desktop{display:flex;align-items:center;gap:24px;flex:1;justify-content:center;}
.nav-desktop a{
  font-size:12.5px;font-weight:500;letter-spacing:.03em;color:#dbe3ea;
  text-transform:uppercase;position:relative;padding:4px 0;white-space:nowrap;
}
.nav-desktop a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);transition:width .25s;}
.nav-desktop a:hover{color:var(--gold-light);}
.nav-desktop a:hover::after{width:100%;}

.header-actions{display:flex;align-items:center;gap:16px;flex:none;}
.lang-switch{
  display:flex;align-items:center;gap:0;border:1px solid rgba(255,255,255,.28);
  border-radius:20px;overflow:hidden;font-size:12px;font-weight:700;letter-spacing:.04em;
}
.lang-switch button{
  background:none;border:none;color:#cfd8e0;padding:7px 13px;cursor:pointer;
  font-family:var(--font-body);font-weight:700;font-size:12px;letter-spacing:.03em;transition:.2s;
}
.lang-switch button.active{background:var(--gold);color:var(--navy-deep);}
.burger{display:none;background:none;border:none;cursor:pointer;padding:4px;}
.burger span{display:block;width:24px;height:2px;background:var(--paper);margin:5px 0;transition:.25s;}

.mobile-nav{
  position:fixed;inset:0;background:var(--navy-deep);z-index:99;
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  gap:26px;padding:0 32px;transform:translateY(-100%);transition:transform .4s ease;
}
.mobile-nav.open{transform:translateY(0);}
.mobile-nav a{font-family:var(--font-display);font-size:30px;color:var(--paper);}
.mobile-nav .lang-switch{margin-top:10px;}

/* ---------- hero ---------- */
.hero{
  background:radial-gradient(120% 100% at 85% -10%, #16324c 0%, var(--navy) 45%, var(--navy-deep) 100%);
  color:var(--paper);padding:168px 0 120px;position:relative;overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(198,161,91,.16) 1px, transparent 1px);
  background-size:26px 26px;mask-image:linear-gradient(180deg,black,transparent 85%);
  opacity:.6;pointer-events:none;
}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;position:relative;z-index:1;}
.hero h1{font-size:clamp(38px,5.4vw,64px);line-height:1.06;font-weight:600;}
.hero h1 em{color:var(--gold-light);font-style:italic;font-weight:500;}
.hero-sub{margin-top:26px;font-size:18px;line-height:1.75;color:#c4d0da;max-width:520px;}
.hero-cta{display:flex;gap:16px;margin-top:42px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:40px;margin-top:64px;flex-wrap:wrap;}
.hero-stats div b{display:block;font-family:var(--font-display);font-size:26px;color:var(--gold-light);}
.hero-stats div span{font-size:12.5px;color:#9fb0bd;letter-spacing:.03em;}

/* trade-route diagram */
.route-diagram{position:relative;aspect-ratio:1/1;max-width:520px;margin:0 auto;}
.route-diagram svg{width:100%;height:100%;}
.route-diagram .node-label{
  font-family:var(--font-body);font-size:11px;letter-spacing:.05em;fill:#dbe3ea;text-transform:uppercase;
}
.route-diagram .node-label.gold{fill:var(--gold-light);font-weight:700;}
.route-line{stroke:var(--gold);stroke-width:1;stroke-dasharray:4 5;opacity:.55;fill:none;}
.route-line.solid{stroke-dasharray:none;opacity:.9;stroke-width:1.4;}
.route-dot{fill:var(--navy-deep);stroke:var(--gold);stroke-width:1.4;}
.route-dot.big{fill:var(--gold);}

/* ---------- marquee strip ---------- */
.trust-strip{background:var(--paper);border-bottom:1px solid var(--line-soft);border-top:1px solid var(--line-soft);padding:28px 0;}
.trust-strip .container{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.trust-strip span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-weight:600;}

/* ---------- about ---------- */
.about{padding:120px 0;background:var(--paper);}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;}
.about-media{position:relative;}
.about-media .frame-main{position:relative;overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));}
.about-media .frame-main img{height:520px;object-fit:cover;width:100%;}
.about-media .frame-tag{
  position:absolute;left:-28px;bottom:36px;background:var(--navy);color:var(--paper);
  padding:22px 26px;max-width:230px;box-shadow:var(--shadow-lg);border-left:3px solid var(--gold);
}
.about-media .frame-tag b{display:block;font-family:var(--font-display);font-size:26px;color:var(--gold-light);}
.about-media .frame-tag span{font-size:12.5px;color:#c4d0da;line-height:1.5;display:block;margin-top:4px;}
.about-copy p{font-size:16.5px;line-height:1.85;color:var(--ink-soft);margin-bottom:18px;}
.about-points{margin-top:30px;display:grid;gap:18px;}
.about-points li{display:flex;gap:14px;align-items:flex-start;font-size:15px;color:var(--ink);}
.about-points svg{flex:none;width:20px;height:20px;color:var(--gold);margin-top:2px;}

/* ---------- regions ---------- */
.regions{padding:120px 0;background:var(--navy-deep);color:var(--paper);position:relative;}
.regions::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 50% at 100% 0%, rgba(198,161,91,.10), transparent 60%);
}
.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);position:relative;z-index:1;}
.region-card{background:var(--navy-deep);padding:38px 28px;transition:.3s;}
.region-card:hover{background:var(--navy-soft);}
.region-card .num{font-family:var(--font-display);font-size:13px;color:var(--gold);letter-spacing:.1em;}
.region-card h3{margin-top:16px;font-size:21px;color:var(--paper);}
.region-card p{margin-top:12px;font-size:14px;line-height:1.7;color:#a9b7c3;}

/* ---------- services ---------- */
.services{padding:120px 0;background:var(--cream);}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line-soft);}
.service-card{background:var(--paper);padding:42px 34px;transition:.3s;}
.service-card:hover{background:var(--navy);}
.service-card:hover h3,.service-card:hover p{color:var(--paper);}
.service-card:hover .icon-badge{background:var(--gold);}
.service-card:hover .icon-badge svg{color:var(--navy-deep);}
.icon-badge{
  width:52px;height:52px;border-radius:50%;background:var(--navy);
  display:flex;align-items:center;justify-content:center;margin-bottom:26px;transition:.3s;
}
.icon-badge svg{width:24px;height:24px;color:var(--gold-light);transition:.3s;}
.service-card h3{font-size:20px;color:var(--navy);margin-bottom:12px;transition:.3s;}
.service-card p{font-size:14.5px;line-height:1.75;color:var(--ink-soft);transition:.3s;}

/* ---------- process ---------- */
.process{padding:120px 0;background:var(--paper);}
.process-list{border-top:1px solid var(--line-soft);}
.process-item{
  display:grid;grid-template-columns:110px 1fr 1.3fr;gap:32px;padding:34px 0;
  border-bottom:1px solid var(--line-soft);align-items:start;
}
.process-item .pnum{font-family:var(--font-display);font-size:38px;color:var(--gold-dim);font-weight:400;}
.process-item h4{font-size:19px;color:var(--navy);}
.process-item p{font-size:14.5px;color:var(--ink-soft);line-height:1.75;}

/* ---------- gallery (factories/team) ---------- */
.gallery{padding:120px 0;background:var(--navy);color:var(--paper);}
.gallery-grid{
  display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:130px;gap:14px;margin-top:20px;
}
.gallery-grid figure{position:relative;overflow:hidden;border-radius:var(--radius);margin:0;background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));}
.gallery-grid figure img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.gallery-grid figure:hover img{transform:scale(1.08);}
.gallery-grid figure figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:14px 16px;
  background:linear-gradient(0deg,rgba(8,21,34,.85),transparent);
  font-size:12px;letter-spacing:.03em;color:#e8edf1;opacity:0;transition:opacity .3s;
}
.gallery-grid figure:hover figcaption{opacity:1;}
.gallery-grid figure.g1{grid-column:span 3;grid-row:span 2;}
.gallery-grid figure.g2{grid-column:span 3;grid-row:span 1;}
.gallery-grid figure.g3{grid-column:span 3;grid-row:span 1;}
.gallery-grid figure.g4{grid-column:span 2;grid-row:span 2;}
.gallery-grid figure.g5{grid-column:span 2;grid-row:span 2;}
.gallery-grid figure.g6{grid-column:span 2;grid-row:span 2;}
.gallery-note{margin-top:26px;font-size:13px;color:#9fb0bd;font-style:italic;}

/* ---------- catalog teaser / CTA ---------- */
.catalog-cta{padding:110px 0;background:var(--gold);position:relative;overflow:hidden;}
.catalog-cta::before{
  content:"";position:absolute;right:-80px;top:-80px;width:340px;height:340px;border:1px solid rgba(8,21,34,.15);border-radius:50%;
}
.catalog-cta-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center;position:relative;z-index:1;}
.catalog-cta h2{font-size:clamp(28px,3.6vw,40px);color:var(--navy-deep);line-height:1.15;}
.catalog-cta p{margin-top:18px;font-size:16px;color:#3a2f16;line-height:1.7;max-width:520px;}
.catalog-cta .btn-gold{background:var(--navy-deep);color:var(--gold-light);}
.catalog-cta .btn-gold:hover{background:#0b1c2c;}

/* ---------- contact ---------- */
.contact{padding:120px 0;background:var(--paper);}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;}
.contact-info h2{font-size:clamp(28px,3.6vw,38px);color:var(--navy);line-height:1.15;}
.contact-info p{margin-top:18px;font-size:16px;color:var(--ink-soft);line-height:1.75;max-width:420px;}
.contact-detail{display:flex;gap:16px;margin-top:28px;align-items:flex-start;}
.contact-detail svg{width:20px;height:20px;color:var(--gold);flex:none;margin-top:3px;}
.contact-detail b{display:block;font-size:14px;color:var(--navy);}
.contact-detail span{font-size:14px;color:var(--ink-soft);}
.contact-form{background:var(--cream);padding:44px;border:1px solid var(--line-soft);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.form-field{display:flex;flex-direction:column;gap:8px;}
.form-field.full{grid-column:1/-1;}
.form-field label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;}
.form-field input,.form-field select,.form-field textarea{
  border:1px solid rgba(13,36,56,.18);background:var(--paper);padding:13px 14px;font-family:var(--font-body);
  font-size:14.5px;color:var(--ink);border-radius:var(--radius);
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--gold);}
.form-field textarea{resize:vertical;min-height:110px;}
.contact-form .btn{width:100%;justify-content:center;margin-top:6px;}
.form-note{font-size:12.5px;color:var(--ink-faint);margin-top:14px;line-height:1.6;}

/* ---------- footer ---------- */
.site-footer{background:var(--navy-deep);color:#a9b7c3;padding:76px 0 30px;}
.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:50px;}
.footer-col h4{color:var(--paper);font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px;font-family:var(--font-body);font-weight:700;}
.footer-col ul{display:grid;gap:12px;}
.footer-col a{font-size:14px;color:#a9b7c3;}
.footer-col a:hover{color:var(--gold-light);}
.footer-col p{font-size:14px;line-height:1.75;color:#8fa0af;max-width:280px;}
.footer-bottom{
  margin-top:60px;padding-top:26px;border-top:1px solid rgba(255,255,255,.08);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12.5px;color:#748393;
}

/* ---------- catalog page ---------- */
.page-hero{
  background:linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);color:var(--paper);
  padding:168px 0 90px;position:relative;overflow:hidden;
}
.page-hero::before{
  content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(198,161,91,.14) 1px, transparent 1px);
  background-size:26px 26px;mask-image:linear-gradient(180deg,black,transparent 80%);opacity:.6;
}
.page-hero h1{font-size:clamp(34px,4.6vw,52px);position:relative;z-index:1;}
.page-hero p{margin-top:18px;max-width:560px;font-size:16.5px;color:#c4d0da;line-height:1.75;position:relative;z-index:1;}
.breadcrumb{font-size:12.5px;letter-spacing:.05em;color:var(--gold-light);margin-bottom:20px;position:relative;z-index:1;}
.breadcrumb a{color:#c4d0da;}
.breadcrumb a:hover{color:var(--gold-light);}

.catalog-filters{
  background:var(--paper);border-bottom:1px solid var(--line-soft);
  padding:26px 0;position:sticky;top:0;z-index:40;
}
.catalog-filters.scrolled{box-shadow:0 6px 20px -16px rgba(8,21,34,.3);}
.filter-row{display:flex;gap:10px;flex-wrap:wrap;}
.filter-chip{
  border:1px solid var(--line-soft);background:var(--paper);padding:9px 18px;font-size:13px;
  font-weight:600;letter-spacing:.02em;border-radius:22px;cursor:pointer;color:var(--ink-soft);transition:.2s;
}
.filter-chip.active,.filter-chip:hover{border-color:var(--gold);color:var(--navy);background:rgba(198,161,91,.1);}

.catalog-section{padding:80px 0 60px;background:var(--paper);}
.catalog-group{margin-bottom:64px;}
.catalog-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line-soft);padding-bottom:18px;margin-bottom:30px;}
.catalog-group-head h3{font-size:24px;color:var(--navy);}
.catalog-group-head span{font-size:12.5px;color:var(--ink-faint);letter-spacing:.04em;text-transform:uppercase;}
.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.catalog-card{
  border:1px solid var(--line-soft);background:var(--cream);transition:.25s;position:relative;overflow:hidden;
}
.catalog-card:hover{border-color:var(--gold);transform:translateY(-4px);box-shadow:var(--shadow-sm);}
.catalog-card .cc-media{height:150px;position:relative;background:linear-gradient(135deg,var(--navy-soft),var(--navy-deep));overflow:hidden;}
.catalog-card .cc-media img{width:100%;height:100%;object-fit:cover;opacity:.75;}
.catalog-card .cc-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,21,34,.1),rgba(8,21,34,.75));}
.catalog-card .cc-tag{
  position:absolute;top:14px;left:14px;z-index:2;background:var(--gold);color:var(--navy-deep);
  font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;
}
.catalog-card .cc-body{padding:22px 22px 24px;}
.catalog-card h4{font-size:16.5px;color:var(--navy);margin-bottom:8px;}
.catalog-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;margin-bottom:18px;}
.catalog-card .cc-link{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--navy);letter-spacing:.02em;}
.catalog-card .cc-link svg{width:15px;height:15px;color:var(--gold);}
.catalog-card.cc-empty{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:34px 26px;min-height:212px;border-style:dashed;background:transparent;}
.catalog-card.cc-empty span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:10px;}
.catalog-card.cc-empty p{color:var(--ink-faint);}

.catalog-access{background:var(--navy-deep);color:var(--paper);padding:70px 0;margin-top:20px;}
.catalog-access .container{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;}
.catalog-access h3{font-size:24px;max-width:460px;line-height:1.3;}
.catalog-access p{margin-top:10px;color:#a9b7c3;font-size:14.5px;max-width:460px;line-height:1.65;}

/* ---------- reveal animation ---------- */
[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s ease, transform .8s ease;}
[data-reveal].in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){
  [data-reveal]{opacity:1;transform:none;transition:none;}
}
/* Si por algún motivo JS no revela el contenido a tiempo, no debe quedar invisible */
.no-js [data-reveal],
[data-reveal].reveal-fallback{opacity:1;transform:none;}

/* ---------- responsive ---------- */
@media (max-width: 1180px){
  .header-actions .btn-gold{display:none;}
}
@media (max-width: 1080px){
  .hero-grid{grid-template-columns:1fr;}
  .route-diagram{max-width:400px;margin-top:40px;}
  .about-grid,.contact-grid{grid-template-columns:1fr;}
  .about-media{order:2;margin-top:40px;}
  .region-grid{grid-template-columns:repeat(2,1fr);}
  .service-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .catalog-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-grid{grid-template-columns:repeat(4,1fr);}
}
@media (max-width: 760px){
  .nav-desktop,.header-actions .lang-switch{display:none;}
  .burger{display:block;}
  .hero{padding:140px 0 80px;}
  .hero-cta{flex-direction:column;align-items:stretch;}
  .hero-stats{gap:26px;}
  .service-grid,.region-grid{grid-template-columns:1fr;}
  .process-item{grid-template-columns:60px 1fr;}
  .process-item p{grid-column:1/-1;}
  .footer-grid{grid-template-columns:1fr;gap:36px;}
  .catalog-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px;}
  .gallery-grid figure.g1,.gallery-grid figure.g2,.gallery-grid figure.g3,.gallery-grid figure.g4,.gallery-grid figure.g5,.gallery-grid figure.g6{grid-column:span 1;grid-row:span 1;}
  .catalog-cta-grid{grid-template-columns:1fr;}
  .catalog-access .container{flex-direction:column;align-items:flex-start;}
  .about-media .frame-tag{position:static;margin-top:-40px;margin-left:16px;max-width:none;}
}
