/*
Theme Name: Flash Glass Industry
Theme URI: https://www.flashglassindustry.co.ke
Author: Flash Glass Industry
Author URI: https://www.flashglassindustry.co.ke
Description: Premium glass and aluminium specialists — Kenya's leading glass solutions provider. Custom WordPress theme for Flash Glass Industry.
Version: 1.0.0
License: All Rights Reserved
License URI: https://www.flashglassindustry.co.ke
Text Domain: flashglass
Tags: business, portfolio, one-page, custom-menu, featured-images, responsive-layout
*/

/* ═══════════════════════════════════════════
   FLASH GLASS INDUSTRY — Lens Theme v3
   Light / Professional / WordPress-ready
═══════════════════════════════════════════ */
:root {
  --blue:     #1A6FA8;
  --blue-dk:  #0D4F7C;
  --blue-lt:  #5FA8DF;
  --ice:      #B8D8F5;
  --sky-bg:   #EBF4FC;
  --white:    #FFFFFF;
  --off-white:#F7FAFE;
  --light:    #F0F6FC;
  --mid:      #E2EEF8;
  --steel:    #1C2E3E;
  --charcoal: #0B1622;
  --text:     #1A2B3C;
  --text-2:   #4A6070;
  --text-3:   #8AA5B8;
  --gold:     #D4A84B;
  --border:   #D0E4F0;
  --border-dk:#B0CEE4;
  --radius:   6px;
  --shadow:   0 2px 20px rgba(26,111,168,.10);
  --shadow-md:0 6px 36px rgba(26,111,168,.16);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--white);color:var(--text);
  font-family:'Outfit',sans-serif;
  font-weight:400;font-size:16px;line-height:1.65;
  overflow-x:hidden;
}
img{display:block;width:100%;height:100%;object-fit:cover}
a{text-decoration:none;color:inherit}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-thumb{background:var(--blue-lt);border-radius:2px}

/* ── TOP BAR ── */
.topbar{
  background:var(--steel);
  padding:.4rem 2.5rem;
  display:flex;justify-content:space-between;align-items:center;
  font-size:11.5px;font-weight:500;letter-spacing:.06em;
  text-transform:uppercase;color:rgba(255,255,255,.6);
}
.topbar a{color:var(--ice);font-weight:600;transition:color .2s;display:inline-flex;align-items:center;gap:.35rem}
.topbar a:hover{color:#fff}
.topbar-right{display:flex;gap:1.8rem;align-items:center}
@media(max-width:768px){.topbar{display:none}}

/* ── NAV ── */
nav{
  position:sticky;top:0;left:0;right:0;z-index:500;
  background:var(--white);
  border-bottom:1px solid var(--border);
  box-shadow:0 1px 12px rgba(26,111,168,.08);
  display:flex;justify-content:space-between;align-items:center;
  padding:0 2.5rem;height:72px;
  transition:box-shadow .3s;
}
.nav-logo{display:flex;align-items:center;gap:.8rem;cursor:pointer;flex-shrink:0}
.nav-logo-img{
  width:52px;height:52px;object-fit:contain;flex-shrink:0;
  transition:transform .3s;
  filter:drop-shadow(0 2px 8px rgba(26,111,168,.25));
}
.nav-logo:hover .nav-logo-img{transform:scale(1.05)}
.nav-logo-text{font-family:'Cormorant Garamond',serif;font-size:17px;letter-spacing:.04em;font-weight:600;line-height:1.15;color:var(--steel)}
.nav-logo-text span{display:block;font-family:'Outfit',sans-serif;font-size:9px;letter-spacing:.2em;color:var(--blue);font-weight:600;text-transform:uppercase;margin-top:2px}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}
.nav-links a{
  font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--text-2);font-weight:600;transition:color .2s;
  position:relative;padding-bottom:3px;white-space:nowrap;
}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--blue);transition:width .25s;border-radius:1px}
.nav-links a:hover{color:var(--blue)}
.nav-links a:hover::after{width:100%}
.nav-cta{
  background:var(--blue);color:#fff;
  font-family:'Outfit',sans-serif;font-size:12px;
  letter-spacing:.07em;text-transform:uppercase;font-weight:700;
  padding:.6rem 1.4rem;border:none;cursor:pointer;
  transition:all .22s;border-radius:3px;white-space:nowrap;flex-shrink:0;
  box-shadow:0 2px 12px rgba(26,111,168,.3);display:inline-block;
}
.nav-cta:hover{background:var(--blue-dk);transform:translateY(-1px);box-shadow:0 4px 18px rgba(26,111,168,.4)}
.nav-mob{display:none;background:none;border:none;color:var(--steel);cursor:pointer;padding:.4rem;flex-shrink:0}
@media(max-width:960px){.nav-links{display:none}.nav-mob{display:flex;align-items:center;justify-content:center}.nav-cta{display:none}}
@media(max-width:600px){nav{padding:0 1rem;height:64px}}

/* ── MOBILE MENU ── */
.mob-menu{
  position:fixed;inset:0;background:var(--white);z-index:600;
  display:flex;flex-direction:column;justify-content:center;
  padding:2rem 2rem;
  transform:translateX(100%);transition:transform .38s cubic-bezier(.77,0,.18,1);
  border-left:3px solid var(--blue);
}
.mob-menu.open{transform:translateX(0)}
.mob-menu a{
  font-family:'Cormorant Garamond',serif;font-size:2.4rem;letter-spacing:.02em;
  color:var(--steel);line-height:1.4;transition:color .2s;padding:.2rem 0;
  border-bottom:1px solid var(--border);
}
.mob-menu a:last-of-type{border-bottom:none}
.mob-menu a:hover{color:var(--blue)}
.mob-close{
  position:absolute;top:1.2rem;right:1.2rem;
  background:none;border:none;color:var(--text-2);cursor:pointer;font-size:1.6rem;
}
.mob-cta-wrap{margin-top:1.5rem}
.mob-cta-wrap a{
  display:inline-block;background:var(--blue);color:#fff!important;
  font-family:'Outfit',sans-serif!important;font-size:13px!important;
  letter-spacing:.08em;text-transform:uppercase;font-weight:700!important;
  padding:.85rem 2rem;border-radius:3px;border-bottom:none!important;
}
.mob-contact-info{
  margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border);
  display:flex;flex-direction:column;gap:.7rem;
}
.mob-contact-info a{
  font-family:'Outfit',sans-serif!important;font-size:.9rem!important;
  font-style:normal;letter-spacing:.04em;color:var(--text-2)!important;
  line-height:1.3;padding:.1rem 0;border-bottom:none!important;
}
.mob-contact-info a.wa{color:#16a34a!important;font-weight:600!important}

/* ══ HERO ══ */
.hero{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:calc(100vh - 72px);max-height:900px;overflow:hidden;
}
.hero-img{position:relative;overflow:hidden}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:55% center;transition:transform 8s ease}
.hero-img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to right,transparent 55%,var(--white) 100%);
}
.hero-text{
  background:var(--white);display:flex;flex-direction:column;
  justify-content:center;padding:3rem 4rem 3rem 3rem;
}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:.6rem;
  font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--blue);font-weight:700;margin-bottom:1.4rem;
}
.hero-eyebrow::before{content:'';width:24px;height:2px;background:var(--blue)}
.hero-h1{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.6rem,3.5vw,4.4rem);
  font-weight:300;line-height:1.1;letter-spacing:-.01em;
  margin-bottom:1.2rem;color:var(--steel);
}
.hero-h1 em{font-style:italic;color:var(--blue)}
.hero-h1 strong{font-weight:600;color:var(--steel)}
.hero-sub{font-size:1rem;color:var(--text-2);max-width:420px;line-height:1.75;margin-bottom:2rem;font-weight:300}
.hero-btns{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:2.5rem}
.btn-primary{
  background:var(--blue);color:#fff;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;padding:.8rem 1.8rem;border:none;
  cursor:pointer;border-radius:3px;transition:all .22s;
  box-shadow:0 3px 16px rgba(26,111,168,.3);display:inline-block;
}
.btn-primary:hover{background:var(--blue-dk);transform:translateY(-2px);box-shadow:0 6px 22px rgba(26,111,168,.38)}
.btn-outline{
  background:transparent;color:var(--blue);font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;padding:.78rem 1.8rem;
  border:2px solid var(--blue);cursor:pointer;border-radius:3px;transition:all .22s;display:inline-block;
}
.btn-outline:hover{background:var(--blue);color:#fff}
.hero-stats{display:flex;gap:2rem;padding-top:2rem;border-top:1px solid var(--border);flex-wrap:wrap}
.hstat{display:flex;flex-direction:column;gap:.1rem}
.hstat-n{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600;color:var(--blue);line-height:1}
.hstat-l{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:600}
@media(max-width:860px){
  .hero{grid-template-columns:1fr;min-height:auto;max-height:none}
  .hero-img{height:52vw;min-height:220px;max-height:360px}
  .hero-img img{height:100%}
  .hero-img-overlay{background:linear-gradient(to bottom,transparent 40%,var(--white) 100%)}
  .hero-text{padding:1.5rem 1.4rem 2.5rem;order:2}
  .hero-img{order:1}
  .hero-h1{font-size:clamp(2rem,8vw,2.8rem)}
  .hero-stats{gap:1.2rem}
  .hero-btns{flex-direction:column;gap:.7rem}
  .btn-primary,.btn-outline{width:100%;text-align:center;padding:.85rem 1rem}
}

/* ══ TRUST BAR ══ */
.trust-bar{
  background:var(--sky-bg);
  border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:1.1rem 2.5rem;
  display:flex;align-items:center;justify-content:center;
  gap:2.5rem;flex-wrap:wrap;
}
.trust-item{
  display:flex;align-items:center;gap:.55rem;
  font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--text-2);font-weight:600;white-space:nowrap;
}
.trust-sep{color:var(--border-dk)}
@media(max-width:600px){
  .trust-bar{gap:.8rem 1.5rem;padding:.9rem 1rem;justify-content:flex-start}
  .trust-sep{display:none}.trust-item{font-size:10.5px}
}

/* ══ SECTION COMMONS ══ */
section{padding:5rem 2.5rem}
@media(max-width:768px){section{padding:3.5rem 1.2rem}}
.section-label{
  display:inline-flex;align-items:center;gap:.6rem;
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--blue);font-weight:700;margin-bottom:.9rem;
}
.section-label::before{content:'';width:22px;height:2px;background:var(--blue)}
.section-h{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.9rem,3.5vw,3rem);font-weight:300;line-height:1.18;
  margin-bottom:.8rem;color:var(--steel);
}
.section-h em{font-style:italic;color:var(--blue)}
.section-desc{color:var(--text-2);max-width:560px;font-weight:300;line-height:1.8}
.max-w{max-width:1280px;margin-left:auto;margin-right:auto}

/* ══ INTRO / ABOUT ══ */
#intro{background:var(--white)}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.intro-text p{color:var(--text-2);font-weight:300;line-height:1.8;margin-bottom:1rem}
.intro-cta{margin-top:1.5rem;display:inline-block}
.intro-highlights{
  display:flex;gap:2.5rem;margin-top:2rem;padding-top:2rem;
  border-top:1px solid var(--border);flex-wrap:wrap;
}
.ih-item{display:flex;flex-direction:column;gap:.1rem}
.ih-n{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:600;color:var(--blue);line-height:1}
.ih-l{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:600}
.intro-visual{position:relative;padding-bottom:1.5rem}
.intro-img-wrap{border-radius:8px;overflow:hidden;box-shadow:var(--shadow-md);aspect-ratio:4/5}
.intro-img-wrap img{width:100%;height:100%;object-fit:cover}
.intro-img-sm{
  position:absolute;bottom:-1rem;left:-1.2rem;width:48%;
  border-radius:6px;overflow:hidden;box-shadow:var(--shadow-md);
  border:4px solid var(--white);aspect-ratio:4/3;
}
.intro-img-sm img{width:100%;height:100%;object-fit:cover}
.intro-badge{
  position:absolute;top:1.5rem;right:-1rem;
  background:var(--blue);color:#fff;border-radius:6px;
  padding:1rem 1.2rem;text-align:center;box-shadow:var(--shadow-md);
}
.intro-badge .big{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600;line-height:1}
.intro-badge .small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;opacity:.85;margin-top:.2rem}
@media(max-width:860px){
  .intro-grid{grid-template-columns:1fr;gap:2.5rem}
  .intro-visual{margin-bottom:2rem}
  .intro-img-sm{bottom:-.5rem;left:-.5rem;width:42%}
  .intro-badge{top:1rem;right:.5rem}
}

/* ══ PRODUCTS ══ */
#products{background:var(--off-white)}
.products-header{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem;
}
.products-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;
}
.prod-card{
  position:relative;overflow:hidden;border-radius:8px;cursor:pointer;
  background:var(--mid);box-shadow:var(--shadow);
  transition:transform .3s,box-shadow .3s;
}
.prod-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.prod-card img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .6s cubic-bezier(.2,0,.2,1);
}
.prod-card:hover img{transform:scale(1.06)}
.prod-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(10,30,50,.85) 0%,rgba(10,30,50,.15) 55%,transparent 100%);
}
.prod-body{position:absolute;bottom:0;left:0;right:0;padding:1.4rem}
.prod-tag{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ice);font-weight:700;margin-bottom:.35rem;opacity:.9}
.prod-name{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:400;color:#fff;line-height:1.2;margin-bottom:.25rem}
.prod-desc{font-size:.8rem;color:rgba(255,255,255,.72);line-height:1.55;margin-bottom:.5rem}
.prod-link{
  display:inline-flex;align-items:center;gap:.35rem;
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ice);font-weight:700;
  opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s;
}
.prod-card:hover .prod-link{opacity:1;transform:translateY(0)}
/* First card spans 2 cols, wider aspect */
.prod-card.prod-featured{grid-column:span 2;aspect-ratio:16/7}
.prod-card:not(.prod-featured){aspect-ratio:4/3}
@media(max-width:860px){
  .products-grid{grid-template-columns:1fr 1fr;gap:1rem}
  .prod-card.prod-featured{grid-column:span 2;aspect-ratio:16/9}
}
@media(max-width:560px){
  .products-grid{grid-template-columns:1fr;gap:.9rem}
  .prod-card.prod-featured{grid-column:span 1;aspect-ratio:4/3}
  .prod-link{opacity:1;transform:none}
}

/* ══ WHY US ══ */
#why{background:var(--white)}
.why-top{max-width:600px;margin:0 auto 3rem;text-align:center}
.why-top .section-label{justify-content:center}
.why-top .section-label::before{display:none}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.why-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:8px;padding:2rem 1.8rem;
  transition:border-color .3s,box-shadow .3s,transform .3s;
}
.why-card:hover{border-color:var(--blue-lt);box-shadow:0 4px 24px rgba(26,111,168,.12);transform:translateY(-3px)}
.why-icon{
  width:48px;height:48px;background:var(--sky-bg);border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;margin-bottom:1.2rem;transition:background .3s;
}
.why-card:hover .why-icon{background:var(--blue)}
.why-card h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--steel)}
.why-card p{font-size:.87rem;color:var(--text-2);line-height:1.75;font-weight:300}
@media(max-width:860px){.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.why-grid{grid-template-columns:1fr;gap:1rem}}

/* ══ GALLERY MOSAIC ══ */
#gallery{background:var(--white);padding:5rem 0}
.gallery-header{padding:0 2.5rem;max-width:1280px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem}
.gallery-mosaic{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:280px 280px;
  gap:4px;max-width:1280px;margin:0 auto;
}
.gal-cell{overflow:hidden;position:relative;cursor:pointer;background:var(--mid)}
.gal-cell img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.gal-cell:hover img{transform:scale(1.05)}
.gal-cell:first-child{grid-row:span 2}
.gal-overlay{
  position:absolute;inset:0;
  background:rgba(10,30,50,0);transition:background .3s;
  display:flex;align-items:center;justify-content:center;
}
.gal-cell:hover .gal-overlay{background:rgba(10,30,50,.3)}
.gal-label{
  position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(to top,rgba(10,30,50,.82),transparent);
  padding:1.2rem 1rem .8rem;
}
.gal-cat{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ice);font-weight:700;margin-bottom:.2rem}
.gal-title{font-family:'Cormorant Garamond',serif;font-size:1.05rem;color:#fff;font-weight:400;line-height:1.2}
.gal-view{
  color:#fff;font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;
  opacity:0;transition:opacity .3s;
  background:rgba(26,111,168,.85);padding:.45rem 1rem;border-radius:3px;
}
.gal-cell:hover .gal-view{opacity:1}
@media(max-width:860px){
  .gallery-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:180px 180px 180px}
  .gal-cell:first-child{grid-row:span 1}
  #gallery{padding:3.5rem 0}
}
@media(max-width:520px){
  .gallery-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:140px 140px 140px 140px}
  .gallery-header{padding:0 1.2rem}
}

/* ══ STATS STRIP ══ */
.stats-strip{
  background:var(--steel);padding:3.5rem 2.5rem;
}
.stats-inner{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:2rem;max-width:1100px;margin:0 auto;text-align:center;
}
.stat-item .stat-n{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:600;color:var(--ice);line-height:1}
.stat-item .stat-l{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:.35rem}
@media(max-width:700px){.stats-inner{grid-template-columns:1fr 1fr;gap:2rem}}

/* ══ PROCESS ══ */
#process{background:var(--sky-bg);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.process-top{text-align:center;max-width:580px;margin:0 auto 3.5rem}
.process-top .section-label{justify-content:center}
.process-top .section-label::before{display:none}
.process-steps{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1.5rem;position:relative;
}
.process-steps::before{
  content:'';position:absolute;top:32px;
  left:calc(12.5% + 20px);right:calc(12.5% + 20px);
  height:2px;background:var(--border-dk);pointer-events:none;z-index:0;
}
.proc-step{text-align:center;position:relative;z-index:1}
.proc-num{
  width:64px;height:64px;border:2px solid var(--blue);border-radius:50%;
  display:flex;align-items:center;justify-content:center;margin:0 auto 1.2rem;
  font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;
  color:var(--blue);background:var(--white);transition:all .3s;
}
.proc-step:hover .proc-num{background:var(--blue);color:#fff}
.proc-step h3{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;margin-bottom:.4rem;color:var(--steel)}
.proc-step p{font-size:.83rem;color:var(--text-2);line-height:1.7;font-weight:300}
@media(max-width:768px){.process-steps{grid-template-columns:1fr 1fr;gap:2rem}.process-steps::before{display:none}}
@media(max-width:480px){
  .process-steps{grid-template-columns:1fr;gap:1.5rem}
  .proc-step{text-align:left;display:flex;align-items:flex-start;gap:1rem}
  .proc-num{flex-shrink:0;margin:0;width:50px;height:50px;font-size:1.3rem}
}

/* ══ TESTIMONIALS ══ */
#testimonials{background:var(--off-white)}
.testi-top{text-align:center;max-width:580px;margin:0 auto 3rem}
.testi-top .section-label{justify-content:center}
.testi-top .section-label::before{display:none}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.testi-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:8px;padding:2rem;box-shadow:var(--shadow);
  transition:box-shadow .3s,transform .3s;
}
.testi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}
.testi-stars{color:#F59E0B;font-size:1rem;letter-spacing:.05rem;margin-bottom:1rem}
.testi-quote{
  font-family:'Cormorant Garamond',serif;font-size:1.1rem;
  font-weight:300;font-style:italic;line-height:1.65;color:var(--steel);margin-bottom:1.5rem;
}
.testi-quote::before{content:'\201C';font-size:2.8rem;line-height:0;vertical-align:-.6rem;color:var(--blue);opacity:.3;margin-right:.15rem}
.testi-author{display:flex;align-items:center;gap:.8rem}
.testi-av{
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  background:var(--blue);display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:.85rem;color:#fff;
}
.testi-name{font-size:.88rem;font-weight:700;color:var(--steel)}
.testi-role{font-size:.78rem;color:var(--text-3)}
@media(max-width:860px){.testi-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.testi-grid{grid-template-columns:1fr;gap:1rem}}

/* ══ CTA STRIP ══ */
.cta-strip{
  background:var(--blue);padding:5rem 2.5rem;text-align:center;
}
.cta-strip h2{
  font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,4vw,3.2rem);
  font-weight:300;color:#fff;line-height:1.2;margin-bottom:.8rem;
}
.cta-strip h2 em{font-style:italic;color:var(--ice)}
.cta-strip p{color:rgba(255,255,255,.75);margin-bottom:2rem;font-weight:300;max-width:500px;margin-left:auto;margin-right:auto}
.cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.btn-white{
  background:#fff;color:var(--blue);font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;padding:.85rem 2rem;border:none;cursor:pointer;
  border-radius:3px;transition:all .22s;display:inline-block;
}
.btn-white:hover{background:var(--off-white);transform:translateY(-1px)}
.btn-white-outline{
  background:transparent;color:#fff;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;padding:.83rem 2rem;
  border:2px solid rgba(255,255,255,.55);cursor:pointer;border-radius:3px;
  transition:all .22s;display:inline-block;
}
.btn-white-outline:hover{background:rgba(255,255,255,.1);border-color:#fff}
@media(max-width:560px){
  .cta-strip{padding:3.5rem 1.2rem}
  .cta-btns{flex-direction:column;align-items:stretch;max-width:320px;margin:0 auto}
  .btn-white,.btn-white-outline{text-align:center;padding:.9rem 1rem}
}

/* ══ CONTACT ══ */
#contact{background:var(--white)}
.contact-inner{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}
.contact-items{display:grid;gap:1rem;margin-top:1.5rem}
.ci-item{display:flex;align-items:flex-start;gap:.9rem}
.ci-icon{
  width:40px;height:40px;flex-shrink:0;background:var(--sky-bg);
  border:1px solid var(--border);border-radius:6px;
  display:flex;align-items:center;justify-content:center;font-size:1.1rem;
}
.ci-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:700;margin-bottom:.15rem}
.ci-value{font-size:.9rem;color:var(--steel);font-weight:500}
.ci-value a{color:var(--blue);transition:color .2s}
.ci-value a:hover{color:var(--blue-dk)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.form-group{margin-bottom:1rem}
label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-weight:700;margin-bottom:.4rem}
input,textarea,select{
  width:100%;background:var(--off-white);border:1.5px solid var(--border);
  border-radius:5px;padding:.72rem .9rem;color:var(--text);
  font-family:'Outfit',sans-serif;font-size:.9rem;
  transition:border-color .2s,background .2s;outline:none;
}
input:focus,textarea:focus,select:focus{
  border-color:var(--blue);background:var(--white);
  box-shadow:0 0 0 3px rgba(26,111,168,.08);
}
textarea{resize:vertical;min-height:120px}
select option{background:var(--white);color:var(--text)}
.form-submit{
  background:var(--blue);color:#fff;font-size:12.5px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:700;padding:.85rem 2rem;border:none;
  cursor:pointer;border-radius:3px;transition:all .22s;width:100%;
  box-shadow:0 3px 14px rgba(26,111,168,.3);
}
.form-submit:hover{background:var(--blue-dk);transform:translateY(-1px)}
@media(max-width:860px){
  .contact-inner{grid-template-columns:1fr;gap:2.5rem}
  .form-row{grid-template-columns:1fr}
}

/* ══ FAQ ══ */
#faq{background:var(--off-white);border-top:1px solid var(--border)}
.faq-inner{max-width:760px;margin:0 auto}
.faq-header{text-align:center;margin-bottom:2.5rem}
.faq-header .section-label{justify-content:center}
.faq-header .section-label::before{display:none}
.faq-list{display:grid;gap:.7rem}
.faq-item{
  background:var(--white);border:1px solid var(--border);
  border-radius:6px;overflow:hidden;transition:border-color .2s,box-shadow .2s;
}
.faq-item:hover{border-color:var(--blue-lt);box-shadow:0 2px 12px rgba(26,111,168,.08)}
.faq-q{
  width:100%;background:none;border:none;color:var(--steel);padding:1rem 1.3rem;
  text-align:left;font-family:'Outfit',sans-serif;font-size:.9rem;font-weight:600;
  cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:background .2s;
}
.faq-q:hover{background:var(--sky-bg)}
.faq-q.open{color:var(--blue)}
.faq-arrow{font-size:1rem;transition:transform .3s;flex-shrink:0;opacity:.5}
.faq-q.open .faq-arrow{transform:rotate(180deg);opacity:1;color:var(--blue)}
.faq-a{
  font-size:.87rem;color:var(--text-2);line-height:1.75;
  padding:0 1.3rem;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s;
}
.faq-a.open{max-height:200px;padding:.1rem 1.3rem 1.1rem}

/* ══ FOOTER ══ */
footer{background:var(--steel);color:rgba(255,255,255,.8)}
.footer-main{
  display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:2.5rem;
  max-width:1280px;margin:0 auto;padding:3.5rem 2.5rem 2.5rem;
}
.footer-brand-logo{
  width:60px;height:60px;object-fit:contain;margin-bottom:.9rem;
  filter:drop-shadow(0 2px 10px rgba(184,216,245,.3));
}
.footer-brand-name{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:#fff;margin-bottom:.6rem}
.footer-brand-name span{display:block;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ice);font-family:'Outfit',sans-serif;font-weight:400;margin-top:2px}
.footer-brand-desc{font-size:.84rem;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:1.3rem}
.social-row{display:flex;gap:.55rem}
.social-btn{
  width:34px;height:34px;background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.15);border-radius:5px;
  display:flex;align-items:center;justify-content:center;
  font-size:.8rem;font-weight:700;color:rgba(255,255,255,.7);transition:all .2s;
}
.social-btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.footer-col h4{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.9);margin-bottom:.9rem}
.footer-col ul{list-style:none;display:grid;gap:.45rem}
.footer-col li a{font-size:.84rem;color:rgba(255,255,255,.5);transition:color .2s}
.footer-col li a:hover{color:var(--ice)}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);padding:1.1rem 2.5rem;
  display:flex;justify-content:space-between;align-items:center;
  font-size:.74rem;color:rgba(255,255,255,.3);letter-spacing:.04em;flex-wrap:wrap;gap:.5rem;
}
.footer-bottom span{color:var(--ice)}
@media(max-width:860px){.footer-main{grid-template-columns:1fr 1fr;padding:2.5rem 1.4rem;gap:2rem}.footer-bottom{padding:.9rem 1.4rem;justify-content:center;text-align:center}}
@media(max-width:520px){.footer-main{grid-template-columns:1fr}}

/* ══ REVEAL ANIMATIONS ══ */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s cubic-bezier(.2,0,.2,1),transform .65s cubic-bezier(.2,0,.2,1)}
.reveal-l{opacity:0;transform:translateX(-28px);transition:opacity .65s .08s cubic-bezier(.2,0,.2,1),transform .65s .08s cubic-bezier(.2,0,.2,1)}
.reveal-r{opacity:0;transform:translateX(28px);transition:opacity .65s .08s cubic-bezier(.2,0,.2,1),transform .65s .08s cubic-bezier(.2,0,.2,1)}
.reveal.visible,.reveal-l.visible,.reveal-r.visible{opacity:1;transform:none}
.d1{transition-delay:.06s}.d2{transition-delay:.14s}.d3{transition-delay:.22s}.d4{transition-delay:.30s}

/* ══ TOUCH OVERRIDES ══ */
@media(hover:none){
  .prod-link{opacity:1!important;transform:none!important}
  .gal-view{opacity:1!important}
  .gal-overlay{background:rgba(10,30,50,.2)!important}
}

/* ══ FIXED ELEMENTS ══ */
#wa-float{
  position:fixed;bottom:5.5rem;right:1.4rem;z-index:400;
  width:52px;height:52px;background:#25D366;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,.4);transition:transform .2s;
}
#wa-float:hover{transform:scale(1.1)}
#sticky-mob{
  display:none;position:fixed;bottom:0;left:0;right:0;z-index:399;
  background:var(--white);border-top:1.5px solid var(--border);
  padding:.65rem 1rem;justify-content:space-between;align-items:center;gap:.5rem;
  box-shadow:0 -2px 12px rgba(26,111,168,.1);
}
#scrolltop{
  position:fixed;bottom:9rem;right:1.2rem;z-index:390;
  width:38px;height:38px;border-radius:50%;
  background:var(--white);border:1.5px solid var(--border);
  color:var(--blue);font-size:1rem;cursor:pointer;
  display:none;align-items:center;justify-content:center;
  box-shadow:var(--shadow);transition:all .2s;
}
#scrolltop:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
@media(max-width:768px){
  #sticky-mob{display:flex}
  body{padding-bottom:54px}
  #wa-float{bottom:5rem}
  #scrolltop{bottom:8.5rem;right:.8rem}
  input,textarea,select{font-size:16px}
}
@media(min-width:769px){
  #wa-float{bottom:2rem;right:2rem;width:52px;height:52px}
}
