/*
Theme Name: Climarq
Theme URI: https://climarq.com
Author: Climarq Air Solutions
Description: Portfolio theme for Climarq Air Solutions
Version: 4.0
Text Domain: climarq
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

/* ── TOKENS ──────────────────────────────── */
:root {
  --navy:     #0C2340;
  --navy-2:   #163354;
  --blue:     #1A67A8;
  --sky:      #4BAAD3;
  --ice:      #EBF5FB;
  --white:    #FFFFFF;
  --off:      #F6F9FC;
  --border:   #E0E8F0;
  --border-2: #C8D8E8;
  --text:     #1A2635;
  --mid:      #3D5A72;
  --muted:    #6B8AA0;
  --light:    #A8C0D0;
  --font-d: 'DM Serif Display', Georgia, serif;
  --font-b: 'Plus Jakarta Sans', system-ui, sans-serif;
  --apple: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --apple-spring: cubic-bezier(0.34, 1.3, 0.64, 1);
  --ease: all .22s ease;
  --r: 8px;
  --r-lg: 14px;
  --shadow: 0 4px 20px rgba(12,35,64,.08);
  --shadow-lg: 0 12px 40px rgba(12,35,64,.14);
}

/* ── RESET ───────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--navy)}
body{background:var(--white);color:var(--text);font-family:var(--font-b);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}

/* ── LAYOUT ──────────────────────────────── */
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 32px}
.section{padding:96px 0}
.section-sm{padding:56px 0}
.duo-panels{display:grid;grid-template-columns:1fr 1fr}
.pd-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}

/* ── TYPE ────────────────────────────────── */
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--sky);margin-bottom:14px;display:block}
.display{font-family:var(--font-d);font-size:clamp(40px,6vw,80px);font-weight:400;color:var(--white);line-height:1.05;letter-spacing:-.01em}
.display em{font-style:italic;color:var(--sky)}
.heading{font-family:var(--font-d);font-size:clamp(28px,4vw,52px);font-weight:400;color:var(--text);line-height:1.08;letter-spacing:-.01em}
.heading em{font-style:italic;color:var(--blue)}
.heading-white{color:var(--white)}
.heading-white em{color:var(--sky)}
.body-lg{font-size:16px;color:var(--muted);line-height:1.8;max-width:540px}
.rule{width:48px;height:3px;background:var(--blue);border-radius:2px;margin:20px 0}
.rule.center{margin:20px auto}
.rule.white{background:rgba(255,255,255,.4)}

/* ── BUTTONS ─────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 26px;border-radius:var(--r);font-family:var(--font-b);font-size:13px;font-weight:600;letter-spacing:.03em;cursor:pointer;transition:var(--ease);border:2px solid transparent;white-space:nowrap}
.btn-primary{background:var(--blue);color:var(--white);border-color:var(--blue)}
.btn-primary:hover{background:#155892;border-color:#155892;color:var(--white);transform:translateY(-1px);box-shadow:0 6px 20px rgba(26,103,168,.35)}
.btn-outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.5)}
.btn-outline:hover{background:rgba(255,255,255,.12);border-color:var(--white);color:var(--white)}
.btn-dark{background:var(--navy);color:var(--white);border-color:var(--navy)}
.btn-dark:hover{background:var(--navy-2);color:var(--white)}
.btn-ghost{background:transparent;color:var(--blue);border-color:var(--border-2)}
.btn-ghost:hover{border-color:var(--blue);background:var(--ice)}
.btn-sm{height:38px;padding:0 18px;font-size:12px}
.btn-lg{height:54px;padding:0 36px;font-size:14px}
.btn-full{width:100%;justify-content:center}

/* ── NAVIGATION ──────────────────────────── */
#nav{position:fixed;inset:0 0 auto 0;z-index:100;height:68px;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);display:flex;align-items:center;transition:box-shadow .3s}
/* drawer button must override .nav-drawer a selector */
.nav-drawer .btn{font-family:var(--font-b)!important;padding:0 24px!important;border-bottom:none!important;height:46px!important}
.nav-drawer .btn-primary{color:var(--white)!important}
#nav.scrolled{box-shadow:var(--shadow)}
.nav-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 32px;display:flex;align-items:center}
.nav-logo{margin-right:auto;display:flex;flex-direction:row;align-items:center;gap:10px;line-height:1}
.nav-logo-text{display:flex;flex-direction:column;line-height:1}
.nav-logo-name{font-family:var(--font-d);font-size:20px;font-weight:400;letter-spacing:.08em;color:var(--navy)}
.nav-logo-sub{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.nav-links{display:flex;gap:2px;list-style:none;margin-right:24px}
.nav-links a{display:block;padding:7px 13px;font-size:13px;font-weight:500;color:var(--mid);border-radius:6px;transition:var(--ease)}
.nav-links a:hover{color:var(--navy);background:var(--off)}
.nav-links a.active{color:var(--blue);font-weight:600}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;margin-left:auto}
.nav-toggle span{display:block;width:22px;height:1.5px;background:var(--navy);transition:var(--ease)}
.nav-drawer{display:none;position:fixed;inset:68px 0 0 0;background:var(--white);border-top:1px solid var(--border);z-index:99;padding:24px 32px;flex-direction:column;gap:0}
.nav-drawer.open{display:flex}
.nav-drawer a{padding:15px 0;font-size:17px;font-family:var(--font-d);color:var(--text);border-bottom:1px solid var(--border);transition:var(--ease)}
.nav-drawer a:hover{color:var(--blue);padding-left:8px}
.nav-drawer .btn{margin-top:20px;align-self:flex-start}

/* ── HERO ────────────────────────────────── */
#hero{
  min-height:100svh;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  padding:100px 0 72px;
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-2) 55%, #1a4a7a 100%);
  background-size:cover;
  background-position:center;
  transform:scaleX(-1);
}
/* Dark overlay on top of any background image */
#hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(105deg, rgba(12,35,64,.92) 0%, rgba(12,35,64,.75) 55%, rgba(12,35,64,.45) 100%);
  z-index:0;
}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;transform:scaleX(-1);}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(75,170,211,.15);border:1px solid rgba(75,170,211,.35);border-radius:100px;padding:5px 16px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sky);margin-bottom:24px}
.hero-badge-dot{width:6px;height:6px;background:var(--sky);border-radius:50%;animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.hero-title{font-family:var(--font-d);font-size:clamp(42px,6.5vw,82px);font-weight:400;color:var(--white);line-height:.98;letter-spacing:-.02em;margin-bottom:24px}
.hero-title em{font-style:italic;color:var(--sky);display:block}
.hero-desc{font-size:16px;color:rgba(255,255,255,.7);line-height:1.8;max-width:460px;margin-bottom:36px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:52px}
.hero-stats{display:flex;gap:0;max-width:max-content}
.hero-stat{padding:16px 28px;border:1px solid rgba(255,255,255,.12);border-right:none;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}
.hero-stat:first-child{border-radius:var(--r) 0 0 var(--r)}
.hero-stat:last-child{border-right:1px solid rgba(255,255,255,.12);border-radius:0 var(--r) var(--r) 0}
.hero-stat-n{font-family:var(--font-d);font-size:26px;color:var(--white);line-height:1}
.hero-stat-l{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:4px}

/* Hero right: image cards */
.hero-cards{display:flex;flex-direction:column;gap:14px}
.hero-card{background:rgba(255,255,255,.03);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg);padding:22px 24px;transition:var(--ease)}
.hero-card:hover{background:rgba(255,255,255,.07);border-color:rgba(75,170,211,.3)}
.hero-card-label{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--sky);margin-bottom:6px}
.hero-card-title{font-family:var(--font-d);font-size:17px;color:var(--white);margin-bottom:6px;line-height:1.2}
.hero-card-desc{font-size:12px;color:rgba(255,255,255,.55);line-height:1.5;margin-bottom:10px}
.hero-card-price{font-family:var(--font-d);font-size:20px;color:var(--sky)}
.hero-card-price small{font-family:var(--font-b);font-size:11px;color:rgba(255,255,255,.45);margin-left:4px}
.hero-card-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* ── INFO BAR ────────────────────────────── */
.info-bar{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.info-bar-item{padding:26px 28px;border-right:1px solid var(--border);display:flex;gap:14px;align-items:center;background:var(--white);transition:background .2s}
.info-bar-item:last-child{border-right:none}
.info-bar-item:hover{background:var(--ice)}
.info-bar-icon{width:40px;height:40px;background:var(--ice);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}
.info-bar-label{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.info-bar-value{font-size:14px;font-weight:600;color:var(--text);line-height:1.4}
.info-bar-value a{color:var(--text)}
.info-bar-value a:hover{color:var(--blue)}

/* ── SECTION HEADER ──────────────────────── */
.sec-header{margin-bottom:52px}
.sec-header.center{text-align:center}
.sec-header.center .body-lg{margin:0 auto}
.sec-header.center .rule{margin:20px auto}

/* ── SERVICE CARDS ───────────────────────── */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.svc-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:36px 30px;display:flex;flex-direction:column;transition:var(--ease);position:relative;overflow:hidden}
.svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--sky));transform:scaleX(0);transform-origin:left;transition:transform .3s}
.svc-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--border-2)}
.svc-card:hover::after{transform:scaleX(1)}
.svc-num{font-size:11px;font-weight:700;letter-spacing:.2em;color:var(--muted);margin-bottom:16px}
.svc-icon{width:52px;height:52px;background:var(--ice);border:1px solid var(--border);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:18px}
.svc-title{font-family:var(--font-d);font-size:22px;color:var(--text);margin-bottom:12px;line-height:1.15}
.svc-desc{font-size:14px;color:var(--muted);line-height:1.7;flex:1;margin-bottom:22px}
.svc-price{font-family:var(--font-d);font-size:15px;color:var(--text);margin-bottom:18px}
.svc-price strong{color:var(--blue)}
.svc-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--blue);transition:gap .18s}
.svc-card:hover .svc-link{gap:10px}

/* ── PRODUCT CARDS ───────────────────────── */
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.prod-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:var(--ease);display:flex;flex-direction:column}
.prod-card:hover{border-color:var(--blue);box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.prod-visual{height:200px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.prod-visual img{width:100%;height:100%;object-fit:contain;padding:12px;transition:transform .4s}
.prod-card:hover .prod-visual img{transform:scale(1.05)}
.panel-ac-img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .4s ease;padding:16px}
.prod-card:hover .panel-ac-img,.feature-panel-visual:hover .panel-ac-img{transform:scale(1.04)}
.feature-panel-visual .prod-visual-placeholder{display:flex;align-items:center;justify-content:center}
.feature-panel-visual .panel-ac-img{padding:0;object-fit:contain}
/* styled placeholder when no image */
.prod-visual-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 20px}
.prod-visual-placeholder .brand-name{font-family:var(--font-d);font-size:13px;letter-spacing:.18em;font-weight:700;text-transform:uppercase;opacity:.55}
.prod-visual-placeholder svg{width:100%;flex:1;min-height:0}
.prod-brand-tag{position:absolute;top:10px;left:10px;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:4px 9px;border-radius:4px;color:var(--white)}
.prod-body{padding:18px;flex:1;display:flex;flex-direction:column}
.prod-name{font-family:var(--font-d);font-size:16px;color:var(--text);margin-bottom:3px;line-height:1.2}
.prod-model{font-size:11px;color:var(--muted);letter-spacing:.04em;margin-bottom:12px}
.prod-specs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.prod-tag{font-size:10px;font-weight:600;color:var(--blue);background:var(--ice);border:1px solid var(--border);border-radius:4px;padding:3px 9px;letter-spacing:.04em}
.prod-features{list-style:none;display:flex;flex-direction:column;gap:5px;margin-bottom:16px;flex:1}
.prod-features li{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}
.prod-features li::before{content:'';width:4px;height:4px;background:var(--sky);border-radius:50%;flex-shrink:0}

/* Brand-specific product visual colors */
.prod-daikin{background:linear-gradient(135deg,#e8f4f0,#d0eae6)}
.prod-daikin .brand-name{color:#006e51}
.prod-mitsubishi{background:linear-gradient(135deg,#e8eef8,#d0ddf0)}
.prod-mitsubishi .brand-name{color:#1a3a7a}
.prod-samsung{background:linear-gradient(135deg,#eaecf4,#d8dcee)}
.prod-samsung .brand-name{color:#1428a0}
.prod-lg{background:linear-gradient(135deg,#fdeaea,#f8d8d8)}
.prod-lg .brand-name{color:#a50034}
.prod-panasonic{background:linear-gradient(135deg,#e8eef8,#d8e4f0)}
.prod-panasonic .brand-name{color:#003087}
.prod-carrier{background:linear-gradient(135deg,#e4f0f8,#cce4f4)}
.prod-carrier .brand-name{color:#004b87}

/* ── FEATURED PRODUCTS SECTION ──────────────────────── */
.fp-products-section{background:var(--off);border-top:1px solid var(--border);}
.fp-products-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:48px;}
.fp-products-intro{font-size:15px;color:var(--muted);line-height:1.7;margin-top:10px;max-width:480px;}
.fp-see-all{align-self:flex-end;flex-shrink:0;}
.fp-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:40px;}
.fp-prod-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .28s,transform .28s;cursor:default;}
.fp-prod-card:hover{box-shadow:0 12px 40px rgba(12,35,64,.12);transform:translateY(-4px);}
.fp-card-visual{padding:24px 20px 16px;display:flex;flex-direction:column;gap:12px;position:relative;min-height:180px;}
.fp-card-badges{display:flex;justify-content:space-between;align-items:center;}
.fp-card-brand-badge{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:4px 10px;border-radius:4px;color:#fff;}
.fp-card-type-badge{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:rgba(0,0,0,.05);border:1px solid var(--border);border-radius:4px;padding:3px 8px;}
.fp-card-ac-wrap{flex:1;display:flex;align-items:center;}
.fp-card-ac-wrap svg{width:100%;}
.fp-card-body{padding:16px 18px 12px;flex:1;}
.fp-card-model{font-family:var(--font-d);font-size:16px;color:var(--text);margin-bottom:4px;line-height:1.2;}
.fp-card-tagline{font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:12px;}
.fp-card-specs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px;}
.fp-card-feats{list-style:none;display:flex;flex-direction:column;gap:5px;}
.fp-card-feats li{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px;}
.fp-card-feats li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--sky);flex-shrink:0;}
.fp-card-foot{padding:14px 18px 16px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;}
.fp-card-price-label{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:1px;}
.fp-card-price-val{font-family:var(--font-d);font-size:20px;color:var(--text);}
.fp-card-actions{display:flex;gap:8px;flex-shrink:0;}
.fp-cta-strip{background:var(--navy);border-radius:var(--r-lg);padding:32px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.fp-cta-text{flex:1;}
.fp-cta-title{font-family:var(--font-d);font-size:22px;color:var(--white);margin-bottom:6px;}
.fp-cta-desc{font-size:13px;color:rgba(255,255,255,.55);line-height:1.6;}
.fp-cta-btns{display:flex;gap:12px;flex-shrink:0;}
@media(max-width:900px){.fp-products-grid{grid-template-columns:repeat(2,1fr);}.fp-products-header{flex-direction:column;align-items:flex-start;}.fp-cta-strip{flex-direction:column;}.fp-cta-btns{flex-wrap:wrap;}}
@media(max-width:520px){.fp-products-grid{grid-template-columns:1fr;}}

/* ── PRICING ─────────────────────────────── */
.pricing-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.price-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:var(--ease)}
.price-card:hover{border-color:var(--blue);box-shadow:var(--shadow-lg)}
.price-card.featured{background:var(--navy);border-color:var(--navy)}
.price-badge{background:var(--sky);color:var(--white);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;text-align:center;padding:6px;display:none}
.price-card.featured .price-badge{display:block}
.price-head{padding:30px 30px 22px;border-bottom:1px solid var(--border)}
.price-card.featured .price-head{border-bottom-color:rgba(255,255,255,.1)}
.price-tier{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.price-card.featured .price-tier{color:var(--sky)}
.price-name{font-family:var(--font-d);font-size:22px;color:var(--text);margin-bottom:4px}
.price-card.featured .price-name{color:var(--white)}
.price-tag{font-size:12px;color:var(--muted);margin-bottom:18px}
.price-card.featured .price-tag{color:rgba(255,255,255,.5)}
.price-amount{font-family:var(--font-d);font-size:40px;color:var(--blue);line-height:1}
.price-card.featured .price-amount{color:var(--sky)}
.price-amount sub{font-size:13px;font-family:var(--font-b);color:var(--muted)}
.price-card.featured .price-amount sub{color:rgba(255,255,255,.4)}
.price-freq{font-size:11px;color:var(--muted);margin-top:8px}
.price-card.featured .price-freq{color:rgba(255,255,255,.5)}
.price-body{padding:22px 30px;flex:1;display:flex;flex-direction:column;gap:8px}
.price-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--mid);line-height:1.5}
.price-card.featured .price-item{color:rgba(255,255,255,.7)}
.price-check{flex-shrink:0;width:16px;height:16px;border-radius:50%;background:var(--ice);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--blue);margin-top:1px}
.price-card.featured .price-check{background:rgba(75,170,211,.2);border-color:rgba(75,170,211,.4);color:var(--sky)}
.price-foot{padding:20px 30px 26px;border-top:1px solid var(--border)}
.price-card.featured .price-foot{border-top-color:rgba(255,255,255,.1)}

/* ── TROUBLE GRID ────────────────────────── */
.trouble-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.trouble-item{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:22px 14px;text-align:center;cursor:default;transition:var(--ease)}
.trouble-item:hover{background:var(--navy);border-color:var(--navy);transform:translateY(-3px);box-shadow:var(--shadow)}
.trouble-item:hover .trouble-n,.trouble-item:hover .trouble-name{color:var(--white)}
.trouble-item:hover .trouble-icon-wrap{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2)}
.trouble-n{font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--muted);margin-bottom:10px;transition:color .2s}
.trouble-icon-wrap{width:42px;height:42px;background:var(--ice);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-size:19px;transition:var(--ease)}
.trouble-name{font-size:12px;font-weight:600;color:var(--text);line-height:1.35;transition:color .2s}

/* ── INSTALL ─────────────────────────────── */
.install-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.install-feat-list{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.install-feat{padding:18px 22px;border-bottom:1px solid var(--border);display:flex;gap:14px;align-items:flex-start;transition:background .2s}
.install-feat:last-child{border-bottom:none}
.install-feat:hover{background:var(--ice)}
.install-feat-icon{width:36px;height:36px;background:var(--ice);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.install-feat-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:2px}
.install-feat-desc{font-size:12px;color:var(--muted)}
.install-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;position:sticky;top:88px;box-shadow:var(--shadow)}
.install-panel-price{padding:36px;text-align:center;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.install-panel-label{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:10px}
.install-panel-amount{font-family:var(--font-d);font-size:52px;color:var(--white);line-height:1}
.install-panel-note{font-size:11px;color:rgba(255,255,255,.4);margin-top:8px;font-style:italic}
.install-panel-body{padding:22px 26px}
.install-panel-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--mid)}
.install-panel-row:last-child{border-bottom:none}
.install-panel-row .ck{color:var(--blue);flex-shrink:0;font-weight:700}
.install-warranty{margin:0 26px 22px;padding:14px 18px;background:var(--ice);border:1px solid var(--border);border-radius:var(--r);font-size:12px;color:var(--mid);display:flex;align-items:center;gap:10px}

/* ── ABOUT ───────────────────────────────── */
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.about-panel{background:linear-gradient(135deg,var(--navy),var(--navy-2));border-radius:var(--r-lg);padding:64px 48px;text-align:center;color:var(--white)}
.about-panel-name{font-family:var(--font-d);font-size:52px;letter-spacing:.08em;color:var(--white);line-height:1;margin-bottom:6px}
.about-panel-sub{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:24px}
.about-divider{width:32px;height:1px;background:rgba(255,255,255,.25);margin:0 auto 20px}
.about-panel-tagline{font-family:var(--font-d);font-size:16px;font-style:italic;color:var(--sky)}
.about-panel-stats{display:flex;justify-content:center;gap:28px;margin-top:32px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1)}
.about-stat-n{font-family:var(--font-d);font-size:28px;color:var(--white)}
.about-stat-l{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:3px}
.about-values{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.about-value{background:var(--off);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;transition:var(--ease)}
.about-value:hover{border-color:var(--blue);box-shadow:var(--shadow)}
.about-value-title{font-size:13px;font-weight:700;color:var(--text);margin-bottom:3px}
.about-value-desc{font-size:12px;color:var(--muted)}

/* ── WHY US ──────────────────────────────── */
.why-layout{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:start}
.why-list{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.why-item{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;gap:16px;align-items:flex-start;transition:background .2s}
.why-item:last-child{border-bottom:none}
.why-item:hover{background:var(--ice)}
.why-item-num{flex-shrink:0;width:24px;margin-top:2px;display:flex;align-items:flex-start;}
.why-item-title{font-size:14px;font-weight:700;color:var(--text);margin-bottom:3px}
.why-item-desc{font-size:13px;color:var(--muted);line-height:1.6}

/* ── CONTACT ─────────────────────────────── */
.contact-layout{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:start}
.contact-info-block{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.contact-info-item{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;gap:14px;align-items:flex-start;transition:background .2s}
.contact-info-item:last-child{border-bottom:none}
.contact-info-item:hover{background:var(--ice)}
.contact-info-icon{width:36px;height:36px;background:var(--ice);border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.contact-info-label{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.contact-info-value{font-size:14px;font-weight:600;color:var(--text);line-height:1.5}
.contact-info-value a{color:var(--text)}
.contact-info-value a:hover{color:var(--blue)}
.form-wrap{background:var(--off);border:1px solid var(--border);border-radius:var(--r-lg);padding:36px;box-shadow:var(--shadow)}
.form-title{font-family:var(--font-d);font-size:26px;color:var(--text);margin-bottom:4px}
.form-subtitle{font-size:13px;color:var(--muted);margin-bottom:26px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-group{margin-bottom:14px}
.form-group label{display:block;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-bottom:7px}
.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--white);border:1.5px solid var(--border);border-radius:var(--r);padding:11px 14px;font-family:var(--font-b);font-size:14px;color:var(--text);outline:none;transition:var(--ease);-webkit-appearance:none}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--light)}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,103,168,.1)}
.form-group textarea{resize:vertical;min-height:100px}

/* ── PAGE HERO ───────────────────────────── */
.page-hero{padding:140px 0 64px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--navy),var(--navy-2));background-size:cover;background-position:center;position:relative}
.page-hero::before{content:'';position:absolute;inset:0;background:rgba(12,35,64,.82)}
.page-hero .wrap{position:relative}
.page-hero .eyebrow{color:var(--sky)}
.page-hero .display,.page-hero .heading{color:var(--white)}
.page-hero .body-lg{color:rgba(255,255,255,.65)}
.page-hero .rule{background:var(--sky)}

/* ── BRAND STRIP ─────────────────────────── */
.brand-strip{display:flex;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.brand-item{flex:1;padding:22px 16px;text-align:center;border-right:1px solid var(--border);font-family:var(--font-d);font-size:19px;color:var(--light);letter-spacing:.06em;transition:var(--ease)}
.brand-item:last-child{border-right:none}
.brand-item:hover{color:var(--navy);background:var(--ice)}

/* ── PRODUCT DETAIL PAGE ─────────────────── */
.pd-hero{padding:108px 0 72px;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.pd-hero::before{content:'';position:absolute;inset:0;background:inherit;opacity:.06;z-index:0}
.pd-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;position:relative;z-index:1}
.pd-visual{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg)}
.pd-visual img{width:100%;height:100%;object-fit:cover}
.pd-visual .prod-visual-placeholder{width:100%;height:100%;border-radius:0;padding:24px}
.pd-visual .brand-name{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;opacity:.5}
.pd-visual svg{width:100%;flex:1;min-height:0}
.pd-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-bottom:20px}
.pd-breadcrumb a{color:var(--muted);transition:color .2s}
.pd-breadcrumb a:hover{color:var(--blue)}
.pd-breadcrumb-sep{opacity:.4}
.pd-brand-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:100px;color:var(--white);font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px}
.pd-title{font-family:var(--font-d);font-size:clamp(32px,5vw,60px);color:var(--text);line-height:1;letter-spacing:-.02em;margin-bottom:14px}
.pd-short-desc{font-size:15px;color:var(--mid);line-height:1.8;margin-bottom:22px;max-width:480px}
.pd-price-row{display:flex;align-items:baseline;gap:10px;margin-bottom:28px}
.pd-price{font-family:var(--font-d);font-size:44px;color:var(--navy);line-height:1}
.pd-price-note{font-size:12px;color:var(--muted);letter-spacing:.06em}
.pd-specs-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.pd-actions{display:flex;gap:12px;flex-wrap:wrap}

/* Main body 2-col */
.pd-body{display:grid;grid-template-columns:1fr 360px;gap:52px;align-items:start;padding:64px 0 80px}
.pd-sticky{position:sticky;top:88px;display:flex;flex-direction:column;gap:16px}

/* Sticky CTA panel */
.pd-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.pd-panel-top{padding:28px;background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.pd-panel-price-label{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:6px}
.pd-panel-price{font-family:var(--font-d);font-size:38px;color:var(--white);line-height:1;margin-bottom:4px}
.pd-panel-price-note{font-size:11px;color:rgba(255,255,255,.4);font-style:italic}
.pd-panel-body{padding:20px}
.pd-panel-row{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--mid);padding:10px 0;border-bottom:1px solid var(--border)}
.pd-panel-row:last-child{border-bottom:none}
.pd-panel-ck{color:var(--blue);font-weight:700;flex-shrink:0;font-size:12px;margin-top:1px}
.pd-install-card{background:var(--off);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;text-align:center}
.pd-install-card-label{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.pd-install-card-price{font-family:var(--font-d);font-size:24px;color:var(--navy);margin-bottom:12px}

/* Left content */
.pd-section-label{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.pd-spec-table{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-bottom:36px}
.pd-spec-row{display:flex;border-bottom:1px solid var(--border)}
.pd-spec-row:last-child{border-bottom:none}
.pd-spec-key{width:150px;flex-shrink:0;padding:14px 18px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--off);border-right:1px solid var(--border)}
.pd-spec-val{padding:14px 18px;font-size:14px;color:var(--text);font-weight:500}
.pd-feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:36px}
.pd-feat-item{background:var(--off);border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;display:flex;align-items:flex-start;gap:10px;transition:var(--ease)}
.pd-feat-item:hover{border-color:var(--blue);background:var(--ice);transform:translateY(-2px)}
.pd-feat-n{font-size:10px;font-weight:700;color:var(--blue);flex-shrink:0;letter-spacing:.06em;margin-top:1px}
.pd-feat-icon{flex-shrink:0;width:32px;height:32px;border-radius:var(--r);background:var(--ice);border:1px solid var(--border-2);display:flex;align-items:center;justify-content:center;color:var(--blue)}
.pd-feat-icon svg{width:16px;height:16px}
.pd-feat-item:hover .pd-feat-icon{background:var(--blue);border-color:var(--blue);color:var(--white)}
.pd-feat-text{font-size:13px;color:var(--text);font-weight:500;line-height:1.4}
.pd-desc{font-size:15px;color:var(--mid);line-height:1.85}

/* Related products */
.pd-related{padding:64px 0;border-top:1px solid var(--border);background:var(--off)}
.pd-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* Animations */
.pd-hero .pd-visual{opacity:0;transform:translateX(40px);transition:opacity .9s var(--apple) .15s,transform .9s var(--apple) .15s}
.pd-hero .pd-left{opacity:0;transform:translateX(-40px);transition:opacity .9s var(--apple),transform .9s var(--apple)}
.pd-hero.in-view .pd-visual,.pd-hero.in-view .pd-left{opacity:1;transform:none}
.pd-body .pd-feat-item{opacity:0;transform:translateY(16px);transition:opacity .5s var(--apple),transform .5s var(--apple)}
.pd-body .pd-feat-item.visible{opacity:1;transform:none}
[data-pd-reveal]{opacity:0;transform:translateY(20px);transition:opacity .65s var(--apple),transform .65s var(--apple)}
[data-pd-reveal].visible{opacity:1;transform:none}

/* Responsive */
@media(max-width:900px){
  .pd-hero-inner{grid-template-columns:1fr;gap:32px}
  .pd-body{grid-template-columns:1fr;gap:32px}
  .pd-sticky{position:static}
  .pd-feat-grid{grid-template-columns:1fr}
  .pd-related-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .pd-price{font-size:36px}
  .pd-title{font-size:32px}
  .pd-related-grid{grid-template-columns:1fr}
}

/* ── CTA SECTION ─────────────────────────── */
.cta-section{background:var(--white);padding:80px 0;text-align:center;position:relative;overflow:hidden;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.cta-section::before{display:none;}

/* ── FOOTER ──────────────────────────────── */
#footer{background:var(--navy);color:var(--white);padding:64px 0 max(32px,calc(32px + env(safe-area-inset-bottom,0px)))}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:48px;margin-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-logo-name{font-family:var(--font-d);font-size:20px;letter-spacing:.08em;color:var(--white)}
.footer-logo-sub{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-top:3px}
.footer-brand-desc{font-size:13px;color:rgba(255,255,255,.45);line-height:1.75;margin:16px 0;}
.footer-tagline-text{font-family:var(--font-d);font-size:14px;font-style:italic;color:var(--sky)}
.footer-col-title{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:18px}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:13px;color:rgba(255,255,255,.45);transition:color .2s}
.footer-links a:hover{color:var(--white)}
.footer-contact-line{font-size:13px;color:rgba(255,255,255,.45);margin-bottom:8px;display:flex;gap:8px}
.footer-contact-line a{color:rgba(255,255,255,.45)}
.footer-contact-line a:hover{color:var(--white)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.footer-copy{font-size:12px;color:rgba(255,255,255,.3)}
.footer-motto{font-family:var(--font-d);font-size:13px;font-style:italic;color:var(--sky)}

/* ── BACK TO TOP ─────────────────────────── */
#btt{position:fixed;bottom:28px;right:28px;width:42px;height:42px;background:var(--blue);color:var(--white);border:none;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;opacity:0;pointer-events:none;transition:var(--ease);z-index:50;box-shadow:0 4px 16px rgba(26,103,168,.3)}
#btt.show{opacity:1;pointer-events:all}
#btt:hover{background:var(--navy);transform:translateY(-2px)}

/* ── SCROLL PROGRESS BAR ─────────────────── */
#scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--sky));z-index:999;transform:scaleX(0);transform-origin:left;will-change:transform;pointer-events:none}

/* ── KEYFRAMES ───────────────────────────── */
@keyframes climFadeUp{
  from{opacity:0;transform:translateY(32px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes climFadeIn{
  from{opacity:0}
  to{opacity:1}
}
@keyframes climSlideRight{
  from{opacity:0;transform:translateX(48px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes climSlideLeft{
  from{opacity:0;transform:translateX(-48px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes climScale{
  from{opacity:0;transform:scale(0.9) translateY(20px)}
  to{opacity:1;transform:scale(1) translateY(0)}
}
@keyframes climLineReveal{
  from{opacity:0;transform:translateY(100%)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes navDrop{
  from{opacity:0;transform:translateY(-100%)}
  to{opacity:1;transform:translateY(0)}
}

/* ── HERO ENTRANCE (CSS animation on load) ── */
#nav{animation:navDrop .6s var(--apple) both}
.hero-anim-badge  {animation:climFadeUp .7s var(--apple) .10s both}
.hero-anim-title  {animation:climFadeUp 1s var(--apple) .28s both}
.hero-anim-desc   {animation:climFadeUp .7s var(--apple) .52s both}
.hero-anim-actions{animation:climFadeUp .7s var(--apple) .68s both}
.hero-anim-stats  {animation:climFadeUp .7s var(--apple) .84s both}
.hero-anim-cards  {animation:climSlideRight 1s var(--apple) .38s both}
.strip-anim       {animation:climFadeIn .6s var(--apple) 1s both}

/* ── SCROLL REVEAL ───────────────────────── */
[data-reveal]{
  opacity:0;
  transform:translateY(32px);
  transition:opacity .75s var(--apple), transform .75s var(--apple);
  will-change:transform,opacity;
}
[data-reveal].visible{opacity:1;transform:none}

/* ── FEATURE PANEL REVEAL ────────────────── */
.feature-panel .feature-panel-eyebrow,
.feature-panel .feature-panel-title,
.feature-panel .feature-panel-sub,
.feature-panel .feature-panel-actions,
.feature-panel .feature-panel-visual,
.feature-panel-half-inner > *{
  opacity:0;
  transform:translateY(36px);
  transition:opacity .9s var(--apple), transform .9s var(--apple);
  will-change:transform,opacity;
}
.feature-panel.in-view .feature-panel-eyebrow{opacity:1;transform:none;transition-delay:.00s}
.feature-panel.in-view .feature-panel-title  {opacity:1;transform:none;transition-delay:.13s}
.feature-panel.in-view .feature-panel-sub    {opacity:1;transform:none;transition-delay:.26s}
.feature-panel.in-view .feature-panel-actions{opacity:1;transform:none;transition-delay:.38s}
.feature-panel.in-view .feature-panel-visual {opacity:1;transform:none;transition-delay:.52s}
.feature-panel.in-view .feature-panel-half-inner > *{opacity:1;transform:none}
.feature-panel.in-view .feature-panel-half-inner > *:nth-child(1){transition-delay:.00s}
.feature-panel.in-view .feature-panel-half-inner > *:nth-child(2){transition-delay:.12s}
.feature-panel.in-view .feature-panel-half-inner > *:nth-child(3){transition-delay:.24s}
.feature-panel.in-view .feature-panel-half-inner > *:nth-child(4){transition-delay:.36s}
.feature-panel.in-view .feature-panel-half-inner > *:nth-child(5){transition-delay:.48s}

/* price row in feature panels */
.fp-price-row{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .8s var(--apple) .6s, transform .8s var(--apple) .6s;
}
.feature-panel.in-view .fp-price-row{opacity:1;transform:none}

/* ── CARD STAGGER ────────────────────────── */
/* JS applies --stagger-delay via style attr; CSS reads it */
.brand-card,.prod-card,.svc-card,.trouble-item,.lineup-item{
  transition-delay:var(--stagger-delay,0ms) !important;
}

/* ── LINEUP STRIP REVEAL ─────────────────── */
.lineup-item{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .5s var(--apple), transform .5s var(--apple);
  transition-delay:var(--stagger-delay,0ms);
}
.lineup-visible .lineup-item{opacity:1;transform:none}

/* ─────────────────────────────────────────────────────────
   ADVANCED ANIMATION EFFECTS
   ───────────────────────────────────────────────────────── */

/* ── 1. WORD CLIP REVEAL (feature panel titles) ── */
/* JS adds .fp-split + wraps words in .fp-word > .fp-word-inner */
.feature-panel .feature-panel-title.fp-split{opacity:1;transform:none;transition:none}
.fp-word{display:inline-block;overflow:hidden;line-height:1.08;padding-bottom:.04em;vertical-align:bottom}
.fp-word-inner{display:inline-block;transform:translateY(112%);transition:transform 0.85s cubic-bezier(0.25,0.46,0.45,0.94)}
.feature-panel.in-view .fp-word-inner{transform:translateY(0)}

/* ── 2. CLIP-PATH WIPE on panel visuals ────── */
/* JS adds .fp-wipe-l or .fp-wipe-r to .feature-panel-visual */
.feature-panel .feature-panel-visual.fp-wipe-l{opacity:1;transform:none;clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(0.25,0.46,0.45,0.94) .44s}
.feature-panel .feature-panel-visual.fp-wipe-r{opacity:1;transform:none;clip-path:inset(0 0 0 100%);transition:clip-path 1.1s cubic-bezier(0.25,0.46,0.45,0.94) .44s}
.feature-panel.in-view .feature-panel-visual.fp-wipe-l,
.feature-panel.in-view .feature-panel-visual.fp-wipe-r{clip-path:inset(0 0% 0 0%)}

/* ── 3. AUTO-SCROLL MARQUEE (lineup strip) ─── */
@keyframes clim-marquee{to{transform:translateX(-50%)}}
.lineup-track{display:flex}
.lineup-play{overflow:hidden!important}
.lineup-play .lineup-track{animation:clim-marquee 58s linear infinite}
.lineup-play .lineup-item{opacity:1!important;transform:none!important;flex-shrink:0}
.product-lineup:hover .lineup-track,
.product-lineup:focus-within .lineup-track{animation-play-state:paused}

/* ── 4. CURSOR SPOTLIGHT (dark panels) ─────── */
#clim-spot{position:fixed;width:700px;height:700px;border-radius:50%;pointer-events:none;z-index:9999;top:0;left:0;opacity:0;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(75,170,211,.15) 0%,transparent 62%);transition:opacity .5s ease;will-change:left,top}

/* ── 5. SERVICE CARD SPRING POP ─────────────── */
@keyframes svc-pop{
  0%  {opacity:0;transform:translateY(32px) scale(.95)}
  55% {transform:translateY(-5px) scale(1.015)}
  100%{opacity:1;transform:none}
}
.svc-card.svc-in{animation:svc-pop .78s cubic-bezier(0.34,1.3,0.64,1) both}

/* ── 6. WHY-ITEM SLIDE FROM RIGHT ────────────── */
[data-why]{opacity:0;transform:translateX(44px);transition:opacity .62s cubic-bezier(0.25,0.46,0.45,0.94) var(--stagger-delay,0ms),transform .62s cubic-bezier(0.25,0.46,0.45,0.94) var(--stagger-delay,0ms)}
[data-why].why-in{opacity:1;transform:none}

/* ── 7. EYEBROW UNDERLINE GROW ───────────────── */
.feature-panel-eyebrow{position:relative;display:inline-block}
.feature-panel-eyebrow::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:currentColor;opacity:.4;transition:width 0.7s cubic-bezier(0.25,0.46,0.45,0.94) .85s}
.feature-panel.in-view .feature-panel-eyebrow::after{width:100%}

/* ── FILTERS ─────────────────────────────── */
.filter-bar{display:flex;flex-direction:column;gap:14px;margin-bottom:36px;padding:20px 24px;background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);}
.filter-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.filter-group-label{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);width:60px;flex-shrink:0;}
.filter-tabs{display:flex;gap:6px;flex-wrap:wrap;}
.filter-tab{height:34px;padding:0 16px;border-radius:100px;font-size:12px;font-weight:600;background:var(--off);border:1.5px solid var(--border);color:var(--muted);cursor:pointer;transition:var(--ease);}
.filter-tab:hover{color:var(--blue);border-color:var(--blue);background:var(--ice);}
.filter-tab.active{background:var(--blue);border-color:var(--blue);color:var(--white);}

/* ── RESPONSIVE ──────────────────────────── */
@media(max-width:1024px){
  .hero-inner{grid-template-columns:1fr}
  .hero-cards{display:none}
  .why-layout{grid-template-columns:1fr;gap:40px}
  .about-layout{grid-template-columns:1fr;gap:40px}
  .install-layout{grid-template-columns:1fr}
  .install-panel{position:static}
  .footer-grid{grid-template-columns:1fr 1fr}
  .trouble-grid{grid-template-columns:repeat(4,1fr)}
  .products-grid{grid-template-columns:repeat(3,1fr)}
}
/* ── BRAND CARDS (homepage) ──────────────── */
.brands-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.brand-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:26px 14px 20px;text-align:center;transition:var(--ease);display:block;text-decoration:none}
.brand-card:hover{border-color:var(--blue);box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.brand-card-logo{font-family:var(--font-d);font-size:21px;letter-spacing:.06em;margin-bottom:7px;transition:color .2s}
.brand-card-tagline{font-size:10px;color:var(--muted);line-height:1.4;margin-bottom:8px;min-height:28px}
.brand-card-count{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--white);padding:3px 9px;border-radius:100px;margin-bottom:10px}
.brand-card-bar{height:3px;border-radius:2px;margin:0 auto;width:28px;transition:width .3s ease}
.brand-card:hover .brand-card-bar{width:100%}
.brand-daikin .brand-card-logo{color:#006e51}
.brand-daikin .brand-card-count{background:#006e51}
.brand-mitsubishi .brand-card-logo{color:#1a3a7a}
.brand-mitsubishi .brand-card-count{background:#1a3a7a}
.brand-samsung .brand-card-logo{color:#1428a0}
.brand-samsung .brand-card-count{background:#1428a0}
.brand-lg .brand-card-logo{color:#a50034}
.brand-lg .brand-card-count{background:#a50034}
.brand-panasonic .brand-card-logo{color:#003087}
.brand-panasonic .brand-card-count{background:#003087}
.brand-carrier .brand-card-logo{color:#004b87}
.brand-carrier .brand-card-count{background:#004b87}

/* ── PRODUCT PRICE ───────────────────────── */
.prod-price{font-family:var(--font-d);font-size:19px;color:var(--navy);margin:10px 0;line-height:1}
.prod-price small{font-family:var(--font-b);font-size:11px;color:var(--muted);margin-left:4px}

/* ── APPLE-STYLE FEATURE PANELS ──────────── */
.feature-panel{min-height:90vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;padding:80px 0}
.feature-panel-inner{position:relative;z-index:1;max-width:760px;margin:0 auto}
.feature-panel-eyebrow{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:18px;display:block}
.feature-panel-title{font-family:var(--font-d);font-size:clamp(44px,7vw,90px);line-height:.95;letter-spacing:-.02em;margin-bottom:20px}
.feature-panel-sub{font-size:19px;line-height:1.6;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto}
.feature-panel-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.feature-panel-visual{margin-top:52px;display:flex;justify-content:center}
.feature-panel-visual .prod-visual-placeholder{width:340px;height:240px;border-radius:var(--r-lg);margin:0 auto;background:none!important;box-shadow:none!important;padding:20px 16px}
.feature-panel-visual .brand-name{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;opacity:.5}
.feature-panel-visual svg{width:100%;flex:1;min-height:0}

/* light panel */
.fp-light{background:var(--white);color:var(--text)}
.fp-light .feature-panel-eyebrow{color:var(--blue)}
.fp-light .feature-panel-title{color:var(--text)}
.fp-light .feature-panel-sub{color:var(--muted)}

/* dark panel */
.fp-dark{background:var(--navy);color:var(--white)}
.fp-dark .feature-panel-eyebrow{color:var(--sky)}
.fp-dark .feature-panel-title{color:var(--white)}
.fp-dark .feature-panel-sub{color:rgba(255,255,255,.65)}
.fp-dark .feature-panel-visual .prod-visual-placeholder{width:476px;height:336px;}

/* tinted panels */
.fp-midea{background:linear-gradient(160deg,#eef5ff,#d6e8ff)}
.fp-midea .feature-panel-eyebrow{color:#1a5fa8}
.fp-midea .feature-panel-title{color:#003a6e}
.fp-midea .feature-panel-sub{color:#2060a0}
.fp-midea .feature-panel-visual .prod-visual-placeholder{width:476px;height:336px;}

.fp-samsung{background:linear-gradient(160deg,#eceffe,#dde3fb)}
.fp-samsung .feature-panel-eyebrow{color:#1428a0}
.fp-samsung .feature-panel-title{color:#0a1a6a}
.fp-samsung .feature-panel-sub{color:#2a3a8a}
.fp-samsung .feature-panel-visual .prod-visual-placeholder{width:476px;height:336px;}

.fp-lg{background:linear-gradient(160deg,#fdf0f3,#fde0e7)}
.fp-lg .feature-panel-eyebrow{color:#a50034}
.fp-lg .feature-panel-title{color:#6b001f}
.fp-lg .feature-panel-sub{color:#8c0030}
.fp-lg .feature-panel-visual .prod-visual-placeholder{width:476px;height:336px;}

.fp-panasonic{background:linear-gradient(160deg,#eef2fc,#dde6f8)}
.fp-panasonic .feature-panel-eyebrow{color:#003087}
.fp-panasonic .feature-panel-title{color:#001a52}
.fp-panasonic .feature-panel-sub{color:#1a3a80}
.fp-panasonic .feature-panel-visual .prod-visual-placeholder{width:437px;}

/* ── PRODUCT STRIP (Apple "lineup" row) ─── */
.product-lineup{display:flex;overflow-x:auto;gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);scrollbar-width:none}
.product-lineup::-webkit-scrollbar{display:none}
.lineup-item{flex:0 0 220px;padding:28px 20px;text-align:center;border-right:1px solid var(--border);transition:background .2s;cursor:pointer;overflow:hidden}
.lineup-item:last-child{border-right:none}
.lineup-item:hover{background:var(--ice)}
.lineup-item-brand{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lineup-item-name{font-family:var(--font-d);font-size:13px;color:var(--text);margin-bottom:4px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lineup-item-price{font-size:13px;color:var(--blue);font-weight:600}

/* ── WC OVERRIDES ────────────────────────── */
.woocommerce .products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0 !important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:100% !important;float:none !important}
.woocommerce a.button,.woocommerce button.button{background:var(--blue);color:var(--white);border-radius:var(--r);padding:10px 20px;font-family:var(--font-b);font-size:13px;font-weight:600;border:none;transition:var(--ease)}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--navy)}

@media(max-width:1024px){
  .brands-grid{grid-template-columns:repeat(3,1fr)}
  .feature-panel{min-height:auto;padding:80px 0}
}
@media(max-width:768px){
  .wrap{padding:0 20px}
  .section{padding:60px 0}
  .section-sm{padding:40px 0}
  .nav-links,#nav .btn{display:none}
  .nav-toggle{display:flex}
  .services-grid{grid-template-columns:1fr}
  .pricing-wrap{grid-template-columns:1fr}
  .products-grid{grid-template-columns:repeat(2,1fr)}
  .hiw-grid{grid-template-columns:repeat(2,1fr)!important}
  .hiw-connector{display:none!important}
  .contact-layout{grid-template-columns:1fr}
  .info-bar{grid-template-columns:1fr}
  .info-bar-item{border-right:none;border-bottom:1px solid var(--border)}
  .info-bar-item:last-child{border-bottom:none}
  .trouble-grid{grid-template-columns:repeat(2,1fr)}
  .about-values{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .form-row{grid-template-columns:1fr}
  .brand-strip{flex-wrap:wrap}
  .brand-item{flex:0 0 33.33%;border-bottom:1px solid var(--border)}
  .brands-grid{grid-template-columns:repeat(2,1fr)}
  .feature-panel-title{font-size:clamp(36px,8vw,60px)}
  .feature-panel-visual .prod-visual-placeholder{width:100%}
  /* brand-specific visual width overrides (higher specificity wins without !important) */
  .fp-dark .feature-panel-visual .prod-visual-placeholder,
  .fp-midea .feature-panel-visual .prod-visual-placeholder,
  .fp-samsung .feature-panel-visual .prod-visual-placeholder,
  .fp-lg .feature-panel-visual .prod-visual-placeholder,
  .fp-panasonic .feature-panel-visual .prod-visual-placeholder{width:100%!important;height:auto!important}
  /* panasonic + carrier side-by-side collapse */
  .duo-panels{grid-template-columns:1fr}
  /* why us inline grid — handled by .why-layout class at 1024px */
  /* product detail why-buy grid */
  .pd-why-grid{grid-template-columns:1fr}
  /* contact strip separators */
  .contact-sep{display:none}
  /* page hero */
  .page-hero{padding:100px 0 48px}
  /* breadcrumb on product detail */
  .pd-breadcrumb{display:none}
}
@media(max-width:480px){
  .products-grid{grid-template-columns:1fr}
  .trouble-grid{grid-template-columns:1fr 1fr}
  .form-wrap{padding:24px}
  /* hero stats — 2×2 grid with gap */
  .hero-stats{flex-wrap:wrap;max-width:100%;gap:8px}
  .hero-stat{border:1px solid rgba(255,255,255,.12)!important;border-radius:var(--r)!important;flex:1 0 calc(50% - 8px)}
  .duo-panels{grid-template-columns:1fr}
  .feature-panel{padding:60px 0}
  /* hiw cta buttons stack vertically */
  .hiw-cta{flex-direction:column!important;padding:0}
  .hiw-cta .btn{width:100%!important;justify-content:center!important}
  /* breadcrumb hidden on mobile */
  .pd-breadcrumb{display:none}
}
