/* ==========================================================================
   WBA — Weston Business Authority  |  Shared stylesheet
   One design system for every page. Edit a token here, every page updates.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --navy:#00224d; --navy2:#003474; --blue:#044bad; --light:#b3d4ff;
  --gold:#f5c416; --ink:#0a1424; --cream:#f6f3ec; --paper:#fbfaf7;
  --maxw:1100px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Segoe UI',system-ui,Arial,sans-serif;background:#fff;color:#1a1f2e;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{display:block;}

/* ===== NAV (multi-page) ===== */
nav{background:var(--navy);padding:0 2.5rem;height:62px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:200;box-shadow:0 2px 24px rgba(0,15,45,0.35);}
.nav-logo img{height:34px;width:auto;display:block;}
.nav-links{display:flex;gap:1.8rem;align-items:center;}
.nav-links a:not(.nav-wa){font-size:0.74rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,0.6);transition:color 0.2s;position:relative;padding-bottom:3px;}
.nav-links a:not(.nav-wa)::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1.5px;background:var(--gold);transition:width 0.25s;}
.nav-links a:not(.nav-wa):hover{color:#fff;}
.nav-links a:not(.nav-wa):hover::after{width:100%;}
.nav-links a.active{color:#fff;}
.nav-links a.active::after{width:100%;}
.nav-wa{background:var(--gold);color:var(--ink)!important;padding:0.5rem 1.2rem;border-radius:3px;font-weight:900;font-size:0.74rem;letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:6px;transition:background 0.2s;}
.nav-wa:hover{background:#ffd83d;}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;}
.nav-toggle span{width:24px;height:2px;background:#fff;border-radius:2px;transition:0.25s;}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-toggle.open span:nth-child(2){opacity:0;}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ===== TRUST BAR ===== */
.trust-bar{background:var(--ink);border-bottom:1px solid rgba(245,196,22,0.12);overflow:hidden;}
.trust-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:1.5rem;padding:0.85rem 2.5rem;}
.trust-label{display:flex;align-items:center;gap:8px;flex-shrink:0;border-right:1px solid rgba(255,255,255,0.1);padding-right:1.5rem;}
.trust-stars{color:var(--gold);font-size:0.8rem;letter-spacing:1px;}
.trust-label span{font-size:0.62rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.45);}
.trust-track-wrap{flex:1;overflow:hidden;position:relative;height:20px;}
.trust-track{display:flex;gap:3rem;position:absolute;white-space:nowrap;animation:scroll-left 38s linear infinite;}
.trust-quote{font-size:0.78rem;color:rgba(255,255,255,0.55);font-style:italic;}
.trust-quote b{color:var(--light);font-style:normal;font-weight:700;}
@keyframes scroll-left{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ===== HERO (home) ===== */
.hero{position:relative;min-height:80vh;display:flex;flex-direction:column;justify-content:center;padding:4rem 8vw;overflow:hidden;background:var(--navy);}
.hero-bg{position:absolute;inset:0;background:url('https://res.cloudinary.com/du3psvz2u/image/upload/v1776172045/20251120_092235_rgcbxz.jpg') center/cover;opacity:0.32;}
.hero-grad{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,20,55,0.95) 30%,rgba(0,34,77,0.55) 70%,rgba(4,75,173,0.25) 100%);}
.hero-glow{position:absolute;top:-30%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(245,196,22,0.08) 0%,transparent 60%);pointer-events:none;}
.hero-content{position:relative;z-index:1;max-width:680px;}
.hero-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(179,212,255,0.12);border:1px solid rgba(179,212,255,0.25);color:var(--light);font-size:0.64rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;padding:0.4rem 1rem;border-radius:2px;margin-bottom:1.75rem;}
.hero h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:900;line-height:1.02;color:#fff;text-transform:uppercase;letter-spacing:-1px;margin-bottom:1.5rem;}
.hero h1 .gold{color:var(--gold);}
.hero h1 .lblue{color:var(--light);}
.hero-sub{font-size:1.05rem;color:rgba(255,255,255,0.7);line-height:1.8;max-width:480px;margin-bottom:2.25rem;}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;}
.hero-stats{display:flex;gap:2.5rem;flex-wrap:wrap;}
.hstat-num{font-size:1.55rem;font-weight:900;color:var(--gold);line-height:1;}
.hstat-lbl{font-size:0.62rem;font-weight:600;color:rgba(255,255,255,0.45);text-transform:uppercase;letter-spacing:1px;margin-top:3px;}

/* ===== PAGE HERO (sub-pages) ===== */
.page-hero{position:relative;background:var(--navy);padding:4rem 2.5rem 3.25rem;overflow:hidden;border-bottom:1px solid rgba(179,212,255,0.08);}
.page-hero::before{content:'';position:absolute;inset:0;background:url('https://res.cloudinary.com/du3psvz2u/image/upload/v1776172045/20251120_092235_rgcbxz.jpg') center/cover;opacity:0.14;}
.page-hero::after{content:'';position:absolute;top:-40%;right:-10%;width:520px;height:520px;background:radial-gradient(circle,rgba(245,196,22,0.09) 0%,transparent 62%);pointer-events:none;}
.page-hero .inner{position:relative;z-index:1;}
.crumb{font-size:0.62rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(179,212,255,0.6);margin-bottom:0.85rem;}
.crumb a:hover{color:var(--gold);}
.page-hero h1{font-size:clamp(2rem,4.5vw,3.2rem);font-weight:900;text-transform:uppercase;line-height:1.05;color:#fff;letter-spacing:-0.5px;}
.page-hero h1 em{font-style:normal;color:var(--gold);}
.page-hero p{font-size:1rem;color:rgba(255,255,255,0.6);line-height:1.75;max-width:560px;margin-top:1rem;}

/* ===== BUTTONS ===== */
.btn-primary{background:var(--gold);color:var(--ink);padding:0.95rem 2rem;font-weight:900;font-size:0.82rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;font-family:inherit;transition:all 0.2s;}
.btn-primary:hover{background:#ffd83d;transform:translateY(-2px);box-shadow:0 10px 28px rgba(245,196,22,0.35);}
.btn-ghost{background:rgba(255,255,255,0.04);color:#fff;border:1.5px solid rgba(179,212,255,0.3);padding:0.95rem 2rem;font-weight:700;font-size:0.82rem;letter-spacing:1.5px;text-transform:uppercase;border-radius:3px;display:inline-flex;align-items:center;gap:8px;transition:all 0.2s;}
.btn-ghost:hover{border-color:var(--light);background:rgba(179,212,255,0.1);}

/* ===== QUICK CONTACT BAR ===== */
.quickbar{background:var(--cream);border-top:1px solid rgba(0,0,0,0.06);border-bottom:1px solid rgba(0,0,0,0.06);padding:1.35rem 2.5rem;}
.quickbar-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;}
.quickbar-text{font-size:1rem;font-weight:900;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink);}
.quickbar-text span{display:block;font-size:0.72rem;font-weight:600;letter-spacing:0.3px;text-transform:none;color:rgba(0,20,55,0.65);margin-top:2px;}
.quickform{display:flex;gap:0.6rem;flex-wrap:wrap;flex:1;max-width:560px;min-width:280px;}
.quickform input{flex:1;min-width:120px;background:rgba(255,255,255,0.85);border:1px solid rgba(0,20,55,0.15);border-radius:3px;padding:0.7rem 0.9rem;font-size:0.82rem;color:var(--ink);font-family:inherit;outline:none;}
.quickform input:focus{background:#fff;border-color:var(--navy);}
.quickform button{background:var(--ink);color:#fff;border:none;padding:0.7rem 1.4rem;font-weight:900;font-size:0.75rem;letter-spacing:1px;text-transform:uppercase;border-radius:3px;cursor:pointer;font-family:inherit;transition:background 0.2s;white-space:nowrap;}
.quickform button:hover{background:#001530;}

/* ===== CLIENTS ===== */
.clients{background:var(--paper);padding:2.75rem 2.5rem;border-bottom:1px solid rgba(0,0,0,0.05);}
.clients-lbl{text-align:center;font-size:0.6rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(0,0,0,0.3);margin-bottom:1.5rem;}
.clients-row{max-width:1000px;margin:0 auto;display:flex;justify-content:center;flex-wrap:wrap;gap:0.65rem;}
.c-chip{background:#fff;border:1px solid rgba(0,0,0,0.08);border-radius:4px;padding:0.6rem 1.1rem;display:flex;flex-direction:column;align-items:center;gap:1px;transition:all 0.2s;cursor:default;}
.c-chip:hover{border-color:rgba(4,75,173,0.3);box-shadow:0 4px 14px rgba(4,75,173,0.1);transform:translateY(-2px);}
.c-name{font-size:0.76rem;font-weight:800;text-transform:uppercase;letter-spacing:0.5px;color:var(--navy);}
.c-type{font-size:0.6rem;color:rgba(0,0,0,0.4);}
.c-more{background:var(--navy);color:#fff!important;border-color:var(--navy);cursor:pointer;}
.c-more .c-name{color:#fff;}
.c-hidden{display:none;}

/* ===== SECTIONS / TYPE ===== */
.s-navy{background:var(--navy);padding:5rem 2.5rem;}
.s-navy2{background:var(--navy2);padding:5rem 2.5rem;}
.s-white{background:#fff;padding:5rem 2.5rem;}
.s-paper{background:var(--paper);padding:5rem 2.5rem;}
.s-cream{background:var(--cream);padding:5rem 2.5rem;}
.s-gold{background:var(--gold);padding:5rem 2.5rem;}
.inner{max-width:var(--maxw);margin:0 auto;}
.eyebrow{font-size:0.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;margin-bottom:0.7rem;display:flex;align-items:center;gap:10px;}
.eyebrow::before{content:'';width:24px;height:1.5px;flex-shrink:0;}
.on-dark .eyebrow{color:var(--gold);}
.on-dark .eyebrow::before{background:var(--gold);}
.on-light .eyebrow{color:var(--blue);}
.on-light .eyebrow::before{background:var(--blue);}
.on-gold .eyebrow{color:rgba(0,20,55,0.55);}
.on-gold .eyebrow::before{background:rgba(0,20,55,0.35);}
.h2{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:900;text-transform:uppercase;line-height:1.1;margin-bottom:1rem;}
.on-dark .h2{color:#fff;}
.on-light .h2{color:var(--navy);}
.on-gold .h2{color:var(--ink);}
.h2 em{font-style:normal;}
.on-dark .h2 em{color:var(--gold);}
.on-light .h2 em{color:var(--blue);}
.body-copy{font-size:0.9rem;line-height:1.8;max-width:540px;margin-bottom:2rem;}
.on-dark .body-copy{color:rgba(255,255,255,0.55);}
.on-light .body-copy{color:#4a5568;}

/* ===== ABOUT ===== */
.about-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:4rem;align-items:center;}
.about-right{display:grid;grid-template-columns:1fr 1fr;gap:0.85rem;}
.astat{background:rgba(255,255,255,0.05);border:1px solid rgba(179,212,255,0.12);border-radius:5px;padding:1.4rem;text-align:center;}
.astat-num{font-size:1.7rem;font-weight:900;color:var(--gold);line-height:1;}
.astat-lbl{font-size:0.63rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,0.4);margin-top:0.3rem;}
.since-tag{grid-column:span 2;background:rgba(245,196,22,0.08);border:1px solid rgba(245,196,22,0.18);border-radius:4px;padding:0.7rem;text-align:center;font-size:0.78rem;color:rgba(255,255,255,0.5);}
.since-tag strong{color:var(--gold);}

/* ===== WHO ===== */
.who-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;}
.who-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:6px;padding:1.6rem 1.25rem;text-align:center;transition:all 0.2s;cursor:default;}
.who-card:hover{border-color:rgba(4,75,173,0.3);box-shadow:0 10px 28px rgba(4,75,173,0.1);transform:translateY(-3px);}
.who-ico{font-size:1.9rem;margin-bottom:0.7rem;}
.who-card h3{font-size:0.78rem;font-weight:800;text-transform:uppercase;letter-spacing:0.6px;color:var(--navy);margin-bottom:0.3rem;}
.who-card p{font-size:0.74rem;color:#6b7280;line-height:1.5;}

/* ===== SERVICES GRID ===== */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem;}
.svc-card{background:rgba(255,255,255,0.04);border:1px solid rgba(179,212,255,0.1);border-radius:8px;padding:1.75rem 1.4rem;position:relative;overflow:hidden;transition:all 0.2s;display:flex;flex-direction:column;}
.svc-card.square{aspect-ratio:1/1;}
.svc-card::after{content:'';position:absolute;bottom:0;left:0;width:0;height:3px;background:var(--gold);transition:width 0.3s;}
.svc-card:hover{border-color:rgba(245,196,22,0.35);background:rgba(255,255,255,0.08);transform:translateY(-3px);}
.svc-card:hover::after{width:100%;}
.svc-ico{font-size:1.7rem;margin-bottom:0.9rem;}
.svc-card h3{font-size:0.8rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--gold);margin-bottom:0.5rem;}
.svc-card p{font-size:0.78rem;color:rgba(255,255,255,0.55);line-height:1.65;}
.svc-card .svc-list{list-style:none;margin-top:0.75rem;}
.svc-card .svc-list li{font-size:0.74rem;color:rgba(255,255,255,0.5);padding:0.28rem 0;display:flex;gap:8px;line-height:1.4;}
.svc-card .svc-list li::before{content:'✓';color:var(--gold);font-weight:900;flex-shrink:0;}

/* ===== WEEKLY / NEWS FEATURE ===== */
.weekly{background:var(--ink);}
.weekly-inner{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:200px 1fr;gap:0;align-items:stretch;}
.weekly-img{position:relative;cursor:pointer;overflow:hidden;min-height:100%;}
.weekly-img img{width:100%;height:100%;object-fit:cover;opacity:0.85;transition:opacity 0.2s;}
.weekly-img:hover img{opacity:1;}
.weekly-badge{position:absolute;top:0.75rem;left:0.75rem;background:var(--gold);color:var(--ink);font-size:0.55rem;font-weight:900;letter-spacing:2px;text-transform:uppercase;padding:0.25rem 0.6rem;}
.weekly-expand{position:absolute;bottom:0.75rem;right:0.75rem;background:rgba(0,0,0,0.6);color:#fff;font-size:0.6rem;padding:0.2rem 0.5rem;border-radius:2px;}
.weekly-body{padding:2.5rem 3rem;display:flex;flex-direction:column;justify-content:center;}
.weekly-eyebrow{font-size:0.6rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem;}
.weekly-title{font-size:clamp(1.1rem,2.2vw,1.55rem);font-weight:900;text-transform:uppercase;color:#fff;line-height:1.15;margin-bottom:0.75rem;}
.weekly-text{font-size:0.84rem;color:rgba(255,255,255,0.5);line-height:1.75;margin-bottom:1.1rem;max-width:560px;}
.weekly-cta{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--ink);padding:0.6rem 1.3rem;font-size:0.72rem;font-weight:900;letter-spacing:1px;text-transform:uppercase;border-radius:3px;align-self:flex-start;transition:background 0.2s;}
.weekly-cta:hover{background:#ffd83d;}

/* ===== NEWS GRID ===== */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;}
.news-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:8px;padding:1.6rem;transition:all 0.2s;display:flex;flex-direction:column;}
.news-card:hover{border-color:rgba(4,75,173,0.3);box-shadow:0 12px 32px rgba(0,34,77,0.1);transform:translateY(-3px);}
.news-tag{font-size:0.58rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--blue);margin-bottom:0.6rem;}
.news-card h3{font-size:0.95rem;font-weight:800;color:var(--navy);line-height:1.3;margin-bottom:0.5rem;}
.news-card p{font-size:0.79rem;color:#6b7280;line-height:1.6;margin-bottom:0.9rem;flex:1;}
.news-card a.news-link{font-size:0.72rem;font-weight:900;letter-spacing:0.5px;text-transform:uppercase;color:var(--blue);align-self:flex-start;}

/* ===== PAIN ===== */
.pain-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.06);margin-top:2rem;}
.pain-item{background:var(--navy2);padding:1.3rem 1.1rem;display:flex;flex-direction:column;gap:0.6rem;transition:background 0.2s;}
.pain-item:hover{background:#0a4490;}
.pain-x{width:20px;height:20px;border:1.5px solid rgba(245,196,22,0.4);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:0.65rem;font-weight:900;color:var(--gold);}
.pain-item p{font-size:0.76rem;font-weight:600;color:rgba(255,255,255,0.65);line-height:1.45;text-transform:uppercase;letter-spacing:0.2px;}

/* ===== CASES ===== */
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;}
.case-card{border-radius:8px;overflow:hidden;transition:all 0.25s;background:#fff;border:1px solid rgba(0,0,0,0.07);}
.case-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,34,77,0.14);}
.case-img{height:180px;position:relative;overflow:hidden;}
.case-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s;}
.case-card:hover .case-img img{transform:scale(1.05);}
.case-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,20,55,0.92) 0%,transparent 55%);}
.case-badge{position:absolute;bottom:0.9rem;left:0.9rem;background:var(--gold);color:var(--ink);font-size:0.6rem;font-weight:900;text-transform:uppercase;letter-spacing:1.5px;padding:0.26rem 0.7rem;border-radius:2px;}
.case-body{padding:1.4rem;}
.case-type{font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--blue);margin-bottom:0.3rem;}
.case-body h3{font-size:1rem;font-weight:800;color:var(--navy);margin-bottom:0.5rem;}
.case-body p{font-size:0.79rem;color:#6b7280;line-height:1.65;margin-bottom:0.85rem;}
.case-tags{display:flex;flex-wrap:wrap;gap:0.4rem;}
.case-tag{background:#eef3fc;color:var(--blue);font-size:0.6rem;font-weight:700;padding:0.22rem 0.6rem;border-radius:2px;text-transform:uppercase;letter-spacing:0.3px;}

/* ===== TESTIMONIALS ===== */
.testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:2.5rem;}
.testi-card{background:#fff;border:1px solid rgba(4,75,173,0.12);border-radius:8px;padding:1.75rem;position:relative;}
.testi-card .quote{font-size:2.5rem;color:rgba(4,75,173,0.1);font-family:Georgia,serif;line-height:0.5;height:18px;}
.stars{color:var(--gold);font-size:0.85rem;margin-bottom:0.6rem;letter-spacing:2px;}
.testi-text{font-size:0.84rem;color:#374151;line-height:1.75;margin-bottom:1rem;}
.testi-author{font-size:0.72rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--navy);}

/* ===== PRICING ===== */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;}
.price-card{background:#fff;border:1px solid rgba(0,0,0,0.08);border-radius:8px;padding:2rem 1.75rem;position:relative;transition:transform 0.2s,box-shadow 0.2s;}
.price-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,34,77,0.1);}
.price-card.feat{background:var(--navy);border-color:var(--blue);box-shadow:0 20px 50px rgba(0,34,77,0.2);}
.price-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--ink);font-size:0.6rem;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;padding:0.3rem 1rem;border-radius:2px;white-space:nowrap;}
.price-tier{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:var(--blue);margin-bottom:0.3rem;}
.price-card.feat .price-tier{color:var(--gold);}
.price-name{font-size:1.05rem;font-weight:900;color:var(--navy);margin-bottom:0.85rem;}
.price-card.feat .price-name{color:#fff;}
.price-amount{display:flex;align-items:baseline;gap:6px;margin-bottom:0.3rem;}
.price-from{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#9ca3af;}
.price-num{font-size:2.2rem;font-weight:900;color:var(--navy);line-height:1;}
.price-card.feat .price-num{color:#fff;}
.price-mo{font-size:0.8rem;color:#9ca3af;font-weight:600;}
.price-card.feat .price-from,.price-card.feat .price-mo{color:rgba(255,255,255,0.5);}
.price-intro{font-size:0.74rem;color:var(--blue);font-weight:700;margin-bottom:1.1rem;background:#eef3fc;border-radius:3px;padding:0.4rem 0.7rem;display:inline-block;}
.price-card.feat .price-intro{background:rgba(245,196,22,0.12);color:var(--gold);}
.price-was{font-size:1rem;color:#9ca3af;text-decoration:line-through;font-weight:700;align-self:baseline;}
.price-card.feat .price-was{color:rgba(255,255,255,0.4);}
.price-then{font-size:0.74rem;color:#6b7280;font-weight:600;margin-bottom:0.85rem;}
.price-card.feat .price-then{color:rgba(255,255,255,0.5);}
.price-save{display:inline-flex;align-items:center;gap:5px;background:#e6f7ec;color:#16a34a;font-size:0.68rem;font-weight:900;letter-spacing:0.5px;text-transform:uppercase;padding:0.34rem 0.75rem;border-radius:3px;margin-bottom:1.25rem;}
.price-card.feat .price-save{background:rgba(245,196,22,0.15);color:var(--gold);}
.price-features{list-style:none;margin-bottom:1.5rem;}
.price-features li{font-size:0.79rem;color:#374151;padding:0.4rem 0;border-bottom:1px solid rgba(0,0,0,0.05);display:flex;gap:9px;align-items:flex-start;line-height:1.4;}
.price-card.feat .price-features li{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.08);}
.price-features li::before{content:'✓';color:var(--blue);font-weight:900;font-size:0.72rem;margin-top:1px;flex-shrink:0;}
.price-card.feat .price-features li::before{color:var(--gold);}
.price-btn{width:100%;justify-content:center;background:var(--blue);color:#fff;padding:0.8rem;font-weight:900;font-size:0.78rem;letter-spacing:1px;text-transform:uppercase;border-radius:3px;display:flex;align-items:center;gap:8px;cursor:pointer;border:none;font-family:inherit;transition:all 0.2s;}
.price-btn:hover{background:#0357c9;transform:translateY(-1px);}
.price-card.feat .price-btn{background:var(--gold);color:var(--ink);}
.price-card.feat .price-btn:hover{background:#ffd83d;}
.price-note{text-align:center;font-size:0.8rem;color:#6b7280;margin-top:1.75rem;line-height:1.7;max-width:560px;margin-left:auto;margin-right:auto;}
.price-note strong{color:var(--navy);}

/* ===== EXTRAS ===== */
.extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;}
.extra-card{background:rgba(255,255,255,0.04);border:1px solid rgba(179,212,255,0.12);border-radius:8px;padding:1.75rem;transition:all 0.2s;}
.extra-card:hover{border-color:rgba(245,196,22,0.3);background:rgba(255,255,255,0.07);}
.extra-ico{width:46px;height:46px;background:rgba(245,196,22,0.1);border:1px solid rgba(245,196,22,0.2);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1rem;}
.extra-card h3{font-size:0.82rem;font-weight:800;text-transform:uppercase;letter-spacing:0.8px;color:var(--gold);margin-bottom:0.4rem;}
.extra-card p{font-size:0.78rem;color:rgba(255,255,255,0.5);line-height:1.65;margin-bottom:0.85rem;}
.extra-price{font-size:0.78rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:0.5px;}
.extra-price span{color:var(--gold);}

/* ===== HOW ===== */
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2.5rem;position:relative;}
.how-steps::before{content:'';position:absolute;top:24px;left:calc(16.6% + 24px);right:calc(16.6% + 24px);height:1px;background:linear-gradient(90deg,transparent,rgba(245,196,22,0.3),rgba(245,196,22,0.3),transparent);}
.how-step{text-align:center;}
.how-num{width:48px;height:48px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:1.1rem;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;}
.how-step h3{font-size:0.74rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--gold);margin-bottom:0.4rem;}
.how-step p{font-size:0.82rem;color:rgba(255,255,255,0.5);line-height:1.7;}

/* ===== AVENUES ===== */
.av-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-top:2rem;}
.av-pills{display:flex;flex-wrap:wrap;gap:0.45rem;}
.av-pill{background:rgba(179,212,255,0.07);border:1px solid rgba(179,212,255,0.16);border-radius:2px;padding:0.4rem 0.9rem;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.4px;color:rgba(255,255,255,0.62);transition:all 0.2s;}
.av-pill:hover{background:rgba(179,212,255,0.14);color:#fff;}
.av-note-box{background:rgba(0,15,40,0.5);border-left:2px solid var(--gold);padding:1.5rem;font-size:0.85rem;color:rgba(255,255,255,0.55);line-height:1.8;}
.av-note-box strong{color:#fff;display:block;margin-bottom:0.4rem;}

/* ===== AREAS ===== */
.areas-pills{display:flex;flex-wrap:wrap;gap:0.55rem;margin-top:1.5rem;}
.area-pill{border-radius:2px;padding:0.45rem 1rem;font-size:0.75rem;font-weight:700;letter-spacing:0.5px;border:1px solid rgba(255,255,255,0.08);color:rgba(255,255,255,0.45);transition:all 0.2s;}
.area-pill:hover{border-color:rgba(245,196,22,0.3);color:rgba(255,255,255,0.78);}
.area-pill.pri{border-color:rgba(245,196,22,0.4);color:var(--gold);background:rgba(245,196,22,0.06);}
.areas-note{font-size:0.75rem;color:rgba(255,255,255,0.25);margin-top:1.25rem;}

/* ===== FAQ ===== */
.faq{max-width:760px;margin:2.5rem auto 0;}
.faq-item{border-bottom:1px solid rgba(0,0,0,0.1);}
.faq-q{width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:inherit;font-size:0.92rem;font-weight:800;color:var(--navy);padding:1.15rem 2.5rem 1.15rem 0;position:relative;display:flex;}
.faq-q::after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.3rem;font-weight:400;color:var(--blue);transition:transform 0.2s;}
.faq-item.open .faq-q::after{content:'–';}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.faq-a p{font-size:0.85rem;color:#4a5568;line-height:1.8;padding:0 0 1.2rem;max-width:660px;}

/* ===== CTA BAND ===== */
.cta-band{background:var(--gold);padding:3.5rem 2.5rem;text-align:center;}
.cta-band .inner{max-width:680px;}
.cta-band h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900;text-transform:uppercase;color:var(--ink);line-height:1.1;margin-bottom:0.7rem;}
.cta-band p{font-size:0.92rem;color:rgba(0,20,55,0.7);line-height:1.7;margin-bottom:1.6rem;max-width:480px;margin-left:auto;margin-right:auto;}
.cta-band .btn-primary{background:var(--ink);color:#fff;}
.cta-band .btn-primary:hover{background:#001530;box-shadow:0 10px 28px rgba(0,15,45,0.3);}

/* ===== CONTACT ===== */
.booking-wrap{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-top:2.5rem;}
.booking-left p{font-size:0.88rem;color:#4a5568;line-height:1.85;margin-bottom:1.5rem;}
.booking-promises{display:flex;flex-direction:column;gap:0.6rem;}
.bpromise{display:flex;gap:10px;align-items:flex-start;font-size:0.83rem;color:#4a5568;}
.bpromise::before{content:'✓';color:var(--blue);font-weight:900;flex-shrink:0;}
.booking-form-box{background:#fff;border-radius:8px;padding:2rem;border:1px solid rgba(0,0,0,0.08);box-shadow:0 6px 30px rgba(0,34,77,0.08);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;margin-bottom:0.75rem;}
.form-row.full{grid-template-columns:1fr;}
input,textarea,select{width:100%;background:var(--paper);border:1px solid rgba(0,0,0,0.1);border-radius:3px;padding:0.72rem 0.9rem;color:#1a1f2e;font-size:0.85rem;font-family:inherit;outline:none;transition:all 0.2s;}
input:focus,textarea:focus,select:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(4,75,173,0.08);}
input::placeholder,textarea::placeholder{color:rgba(0,0,0,0.28);}
select option{background:#fff;}
textarea{resize:vertical;min-height:85px;}
.send-status{font-size:0.78rem;margin-top:0.6rem;text-align:center;}
.send-status.err{color:#dc2626;}
.send-status.ok{color:#16a34a;}
.form-wa{font-size:0.7rem;color:rgba(0,0,0,0.35);margin-top:0.6rem;text-align:center;}
.form-wa a{color:var(--blue);}

/* ===== MODAL / LIGHTBOX ===== */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,10,30,0.8);backdrop-filter:blur(5px);z-index:600;align-items:center;justify-content:center;padding:1rem;}
.modal-bg.show{display:flex;}
.modal{background:#fff;border-radius:8px;padding:3rem 2.5rem;max-width:380px;width:100%;text-align:center;}
.modal-ico{font-size:3rem;margin-bottom:1rem;}
.modal h3{font-size:1rem;font-weight:900;text-transform:uppercase;color:var(--navy);margin-bottom:0.5rem;}
.modal p{font-size:0.85rem;color:#6b7280;line-height:1.75;margin-bottom:1.5rem;}
.lightbox{display:none;position:fixed;inset:0;background:rgba(0,5,20,0.92);z-index:700;align-items:center;justify-content:center;padding:2rem;cursor:zoom-out;}
.lightbox.show{display:flex;}
.lightbox img{max-width:90%;max-height:90%;border-radius:6px;}

/* ===== FOOTER ===== */
footer{background:var(--ink);padding:3rem 2.5rem 2rem;border-top:1px solid rgba(179,212,255,0.07);}
.footer-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:3rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,0.05);}
.footer-brand img{height:32px;}
.footer-brand p{font-size:0.78rem;color:rgba(255,255,255,0.3);margin-top:0.85rem;line-height:1.8;max-width:260px;}
.footer-col h4{font-size:0.6rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.22);margin-bottom:1rem;}
.footer-col a{display:block;font-size:0.8rem;color:rgba(255,255,255,0.38);margin-bottom:0.55rem;transition:color 0.2s;}
.footer-col a:hover{color:var(--gold);}
.footer-bottom{max-width:var(--maxw);margin:1.5rem auto 0;display:flex;justify-content:space-between;font-size:0.65rem;color:rgba(255,255,255,0.14);flex-wrap:wrap;gap:0.5rem;}

/* ===== REVEAL ===== */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.6s ease,transform 0.6s ease;}
.reveal.in{opacity:1;transform:none;}

/* ===== RESPONSIVE ===== */
@media(max-width:960px){
  .about-grid,.booking-wrap,.av-grid,.weekly-inner{grid-template-columns:1fr;}
  .how-steps{grid-template-columns:1fr;gap:1.5rem;}
  .how-steps::before{display:none;}
  .footer-grid{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .pain-grid{grid-template-columns:repeat(2,1fr);}
  .who-grid,.cases-grid,.price-grid,.extras-grid,.testi-grid,.news-grid{grid-template-columns:1fr;}
  .weekly-img{min-height:180px;}
}
@media(max-width:720px){
  .nav-toggle{display:flex;}
  .nav-links{position:absolute;top:62px;right:0;left:0;background:var(--navy);flex-direction:column;align-items:stretch;gap:0;padding:0.5rem 1.25rem 1.25rem;box-shadow:0 14px 30px rgba(0,15,45,0.4);max-height:0;overflow:hidden;transition:max-height 0.3s ease,padding 0.3s ease;}
  .nav-links.open{max-height:420px;}
  .nav-links a:not(.nav-wa){padding:0.85rem 0;border-bottom:1px solid rgba(255,255,255,0.06);}
  .nav-wa{margin-top:0.85rem;justify-content:center;}
}
@media(max-width:640px){
  .trust-label{display:none;}
  .form-row{grid-template-columns:1fr;}
  .svc-grid{grid-template-columns:1fr;}
  .pain-grid{grid-template-columns:1fr;}
  .s-navy,.s-navy2,.s-white,.s-paper,.s-cream,.s-gold{padding:3.5rem 1.25rem;}
  nav{padding:0 1.25rem;}
  .hero{padding:3rem 1.5rem;}
  .quickbar-inner{flex-direction:column;align-items:stretch;}
  .page-hero{padding:3rem 1.25rem 2.5rem;}
}

/* ==========================================================================
   AAA POLISH — accessibility, focus, motion, performance niceties
   ========================================================================== */

/* Keep anchor links clear of the sticky nav */
html{scroll-padding-top:74px;}

/* Branded text selection */
::selection{background:var(--gold);color:var(--ink);}

/* Visible keyboard focus (mouse clicks stay clean via :focus-visible) */
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px;}
nav :focus-visible,.hero :focus-visible,.page-hero :focus-visible,.cta-band :focus-visible{outline-color:#fff;}

/* Skip-to-content link (injected by main.js, shown on keyboard focus) */
.skip-link{position:absolute;left:-9999px;top:auto;z-index:900;background:var(--gold);color:var(--ink);font-weight:900;font-size:0.78rem;letter-spacing:0.5px;text-transform:uppercase;padding:0.7rem 1.1rem;border-radius:0 0 4px 0;}
.skip-link:focus{left:0;top:0;}

/* Floating WhatsApp button on mobile (injected by main.js) */
.wa-fab{position:fixed;right:1rem;bottom:1rem;z-index:150;display:none;align-items:center;gap:8px;background:#25D366;color:#06351c;font-weight:900;font-size:0.8rem;letter-spacing:0.3px;padding:0.8rem 1.1rem;border-radius:50px;box-shadow:0 8px 24px rgba(0,0,0,0.28);text-transform:uppercase;}
.wa-fab svg{width:18px;height:18px;flex-shrink:0;}
.wa-fab:hover{background:#1fbe5a;}
@media(max-width:720px){.wa-fab{display:inline-flex;}}

/* Respect users who prefer less motion */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.001ms!important;animation-iteration-count:1!important;transition-duration:0.001ms!important;scroll-behavior:auto!important;}
  .reveal{opacity:1!important;transform:none!important;}
  .trust-track{animation:none!important;transform:none!important;}
}

/* ===== LEGAL PAGES + FOOTER LINKS ===== */
.footer-bottom a{color:rgba(255,255,255,0.4);transition:color 0.2s;}
.footer-bottom a:hover{color:var(--gold);}
.legal{max-width:760px;margin:0 auto;}
.legal .updated{font-size:0.78rem;color:#9ca3af;margin-bottom:2rem;}
.legal h2{font-size:1.05rem;font-weight:900;text-transform:uppercase;letter-spacing:0.5px;color:var(--navy);margin:2.25rem 0 0.75rem;}
.legal h2:first-of-type{margin-top:0;}
.legal p{font-size:0.9rem;color:#4a5568;line-height:1.85;margin-bottom:1rem;}
.legal ul{margin:0 0 1.1rem 1.2rem;}
.legal li{font-size:0.9rem;color:#4a5568;line-height:1.8;margin-bottom:0.4rem;}
.legal strong{color:var(--navy);}
.legal a{color:var(--blue);font-weight:600;}
.legal a:hover{text-decoration:underline;}

/* ===== PRICING — scope/starting-point styling ===== */
.price-sub{font-size:0.76rem;color:#6b7280;line-height:1.5;margin:-0.3rem 0 1rem;min-height:2.3em;}
.price-card.feat .price-sub{color:rgba(255,255,255,0.55);}
.price-startat{font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#9ca3af;}
.price-card.feat .price-startat{color:rgba(255,255,255,0.5);}
.price-offer{max-width:680px;margin:2rem auto 0;text-align:center;background:#eef3fc;border:1px dashed rgba(4,75,173,0.35);border-radius:6px;padding:0.95rem 1.3rem;font-size:0.83rem;color:var(--navy);font-weight:600;line-height:1.6;}
.price-offer strong{color:var(--blue);}
.price-lead{max-width:600px;margin-bottom:1.5rem;}
.price-promises{display:flex;flex-wrap:wrap;gap:0.55rem;margin-bottom:0.5rem;}
.price-chip{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid rgba(4,75,173,0.18);border-radius:50px;padding:0.4rem 0.9rem;font-size:0.74rem;font-weight:700;color:var(--navy);}
.price-chip::before{content:'✓';color:var(--blue);font-weight:900;}

/* ==========================================================================
   AAA ART DIRECTION — typography, texture, motion, signature details
   ========================================================================== */

/* Typography system: Inter for reading, Space Grotesk for display */
body{font-family:'Inter','Segoe UI',system-ui,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
h1,h2,h3,h4,.hero h1,.page-hero h1,.h2,.weekly-title,.price-name,.case-body h3,.who-card h3,.svc-card h3,.extra-card h3,.testi-author,.modal h3,.legal h2,.cta-band h2{font-family:'Space Grotesk','Segoe UI',sans-serif;letter-spacing:-0.02em;}
.eyebrow,.price-tier,.hstat-lbl,.astat-lbl,.crumb,.clients-lbl,.trust-label span,.nav-links a:not(.nav-wa),.nav-wa,.btn-primary,.btn-ghost,.price-btn,.price-startat,.area-pill,.av-pill,.case-type,.news-tag,.price-chip,.how-step h3,.weekly-eyebrow,.footer-col h4{font-family:'Space Grotesk','Segoe UI',sans-serif;}
.hstat-num,.astat-num,.price-num,.how-num,.local-stat b{font-family:'Space Grotesk',sans-serif;letter-spacing:-0.03em;}
.hero h1,.page-hero h1{letter-spacing:-0.035em;}

/* Subtle film grain for depth */
body::after{content:'';position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* Scroll progress bar (injected by main.js) */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),#ffe071);z-index:500;transition:width 0.08s linear;box-shadow:0 0 12px rgba(245,196,22,0.5);}

/* Kinetic services ticker */
.ticker{background:var(--ink);overflow:hidden;border-top:1px solid rgba(245,196,22,0.12);border-bottom:1px solid rgba(245,196,22,0.12);padding:1.15rem 0;}
.ticker-track{display:inline-flex;white-space:nowrap;animation:scroll-left 32s linear infinite;}
.ticker-track span{font-family:'Space Grotesk',sans-serif;font-size:1.45rem;font-weight:700;text-transform:uppercase;letter-spacing:0.02em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,0.32);padding:0 1.4rem;}
.ticker-track span.on{color:var(--gold);-webkit-text-stroke:1px var(--gold);}
.ticker:hover .ticker-track{animation-play-state:paused;}

/* Scroll cue under hero */
.scroll-cue{position:absolute;bottom:1.4rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:7px;color:rgba(255,255,255,0.5);font-size:0.58rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;font-family:'Space Grotesk',sans-serif;}
.scroll-cue::after{content:'';width:1px;height:34px;background:linear-gradient(rgba(255,255,255,0.6),transparent);animation:cue 1.8s ease-in-out infinite;}
@keyframes cue{0%,100%{opacity:0.2;transform:scaleY(0.6);}50%{opacity:1;transform:scaleY(1);}}

/* Embedded map */
.map-frame{margin-top:2.5rem;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,0.12);box-shadow:0 18px 50px rgba(0,15,45,0.3);line-height:0;}
.map-frame iframe{width:100%;height:340px;border:0;filter:grayscale(0.25) contrast(1.05);}

/* Local section */
.local-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:3.5rem;align-items:center;margin-top:1.25rem;}
.local-copy p{font-size:0.92rem;color:#4a5568;line-height:1.9;margin-bottom:1.1rem;}
.local-copy p strong{color:var(--navy);}
.on-dark .local-copy p{color:rgba(255,255,255,0.62);}
.on-dark .local-copy p strong{color:#fff;}
.local-stats{display:grid;gap:0.85rem;}
.local-stat{display:flex;align-items:baseline;gap:0.9rem;border-left:2px solid var(--gold);padding:0.4rem 0 0.4rem 1.1rem;}
.local-stat b{font-size:1.7rem;font-weight:700;color:var(--navy);}
.on-dark .local-stat b{color:var(--gold);}
.local-stat span{font-size:0.82rem;color:#6b7280;line-height:1.4;}
.on-dark .local-stat span{color:rgba(255,255,255,0.5);}
@media(max-width:860px){.local-grid{grid-template-columns:1fr;gap:2rem;}}

@media(prefers-reduced-motion:reduce){
  .ticker-track{animation:none!important;}
  .scroll-cue::after{animation:none!important;}
}

/* ===== BUILD / CREATE / GROW — capability cards + pillars ===== */
.cap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;}
.cap-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:8px;padding:1.5rem 1.3rem;transition:all 0.2s;}
.cap-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(0,34,77,0.12);border-color:rgba(4,75,173,0.25);}
.cap-ico{font-size:1.6rem;margin-bottom:0.7rem;}
.cap-card h3{font-family:'Space Grotesk',sans-serif;font-size:0.85rem;font-weight:800;text-transform:uppercase;letter-spacing:0.4px;color:var(--navy);margin-bottom:0.4rem;}
.cap-card p{font-size:0.76rem;color:#6b7280;line-height:1.55;}
.tag-new{display:inline-block;margin-top:0.65rem;font-family:'Space Grotesk',sans-serif;font-size:0.55rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--blue);background:#eef3fc;padding:0.2rem 0.55rem;border-radius:3px;}
@media(max-width:960px){.cap-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.cap-grid{grid-template-columns:1fr;}}

.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem;}
.pillar{background:rgba(255,255,255,0.04);border:1px solid rgba(179,212,255,0.12);border-radius:10px;padding:2rem 1.75rem;transition:all 0.2s;}
.pillar:hover{border-color:rgba(245,196,22,0.35);background:rgba(255,255,255,0.07);transform:translateY(-4px);}
.pillar-k{font-family:'Space Grotesk',sans-serif;font-size:0.6rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,0.4);}
.pillar h3{font-family:'Space Grotesk',sans-serif;font-size:1.55rem;font-weight:700;color:var(--gold);margin:0.3rem 0 0.55rem;letter-spacing:-0.02em;}
.pillar > p{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.6;margin-bottom:1.1rem;}
.pillar ul{list-style:none;display:flex;flex-wrap:wrap;gap:0.4rem;}
.pillar li{font-family:'Space Grotesk',sans-serif;font-size:0.7rem;font-weight:600;color:rgba(255,255,255,0.72);background:rgba(179,212,255,0.07);border:1px solid rgba(179,212,255,0.14);border-radius:50px;padding:0.3rem 0.7rem;}
@media(max-width:860px){.pillar-grid{grid-template-columns:1fr;}}

/* ===== WESTON GUIDE ===== */
.guide-hero{position:relative;min-height:64vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);}
.guide-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;}
.guide-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,12,34,0.94) 4%,rgba(0,20,55,0.45) 55%,rgba(0,20,55,0.2) 100%);}
.guide-hero-content{position:relative;z-index:1;width:100%;max-width:var(--maxw);margin:0 auto;padding:0 2.5rem 3rem;}
.guide-hero .crumb{color:rgba(255,255,255,0.7);}
.guide-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.4rem,6vw,4rem);font-weight:700;text-transform:uppercase;color:#fff;line-height:1;letter-spacing:-0.035em;}
.guide-hero h1 em{font-style:normal;color:var(--gold);}
.guide-hero p{font-size:1.05rem;color:rgba(255,255,255,0.78);line-height:1.7;max-width:600px;margin-top:1rem;}

.jump-nav{background:var(--ink);position:sticky;top:62px;z-index:100;border-bottom:1px solid rgba(245,196,22,0.14);}
.jump-nav-inner{max-width:var(--maxw);margin:0 auto;display:flex;flex-wrap:wrap;gap:0.5rem;padding:0.85rem 2.5rem;}
.jump-nav a{font-family:'Space Grotesk',sans-serif;font-size:0.68rem;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;color:rgba(255,255,255,0.55);border:1px solid rgba(255,255,255,0.12);border-radius:50px;padding:0.4rem 0.9rem;transition:all 0.2s;}
.jump-nav a:hover{color:var(--ink);background:var(--gold);border-color:var(--gold);}

.goodto-pills{display:flex;flex-wrap:wrap;gap:0.55rem;margin-top:1.5rem;}
.goodto-pills .area-pill{color:var(--navy);border-color:rgba(4,75,173,0.2);background:#fff;}
.goodto-pills .area-pill:hover{border-color:var(--blue);color:var(--blue);}

.event-list{margin-top:2rem;display:grid;gap:0.9rem;}
.event-row{display:grid;grid-template-columns:150px 1fr;gap:1.25rem;background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:8px;padding:1.3rem 1.5rem;align-items:center;transition:all 0.2s;}
.event-row:hover{border-color:rgba(4,75,173,0.25);box-shadow:0 12px 30px rgba(0,34,77,0.1);transform:translateY(-2px);}
.event-when{font-family:'Space Grotesk',sans-serif;font-weight:700;color:var(--blue);font-size:0.8rem;text-transform:uppercase;letter-spacing:0.5px;}
.event-info h3{font-family:'Space Grotesk',sans-serif;font-size:0.98rem;font-weight:800;color:var(--navy);margin-bottom:0.25rem;}
.event-info p{font-size:0.8rem;color:#6b7280;line-height:1.55;}
@media(max-width:600px){.event-row{grid-template-columns:1fr;gap:0.35rem;}}

.suggest-box{max-width:640px;margin:2.5rem auto 0;background:rgba(255,255,255,0.05);border:1px solid rgba(179,212,255,0.15);border-radius:10px;padding:2rem;}
.suggest-box h3{font-family:'Space Grotesk',sans-serif;font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:0.4rem;text-align:center;}
.suggest-box > p{font-size:0.83rem;color:rgba(255,255,255,0.55);text-align:center;margin-bottom:1.4rem;line-height:1.6;}
.regen-support{background:rgba(0,15,40,0.4);border-left:2px solid var(--gold);border-radius:0 6px 6px 0;padding:1.5rem 1.75rem;margin-top:1.75rem;}
.regen-support h3{font-family:'Space Grotesk',sans-serif;font-size:0.95rem;color:var(--gold);margin-bottom:0.8rem;text-transform:uppercase;letter-spacing:0.5px;}
.regen-support ul{list-style:none;display:grid;gap:0.7rem;}
.regen-support li{font-size:0.85rem;color:rgba(255,255,255,0.62);line-height:1.6;padding-left:1.3rem;position:relative;}
.regen-support li::before{content:'→';position:absolute;left:0;color:var(--gold);font-weight:900;}
.regen-support a{color:var(--light);font-weight:600;}
.regen-support a:hover{color:var(--gold);}
.guide-note{font-size:0.76rem;color:#9ca3af;margin-top:1.5rem;font-style:italic;}
.on-dark .guide-note{color:rgba(255,255,255,0.35);}

/* ===== WORK SHOWCASE (design/print/signage proof) ===== */
.showcase-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:2.5rem;}
.shot{position:relative;border-radius:10px;overflow:hidden;border:1px solid rgba(0,0,0,0.08);box-shadow:0 10px 30px rgba(0,34,77,0.08);}
.shot img{width:100%;height:300px;object-fit:cover;display:block;transition:transform 0.5s ease;}
.shot:hover img{transform:scale(1.05);}
.shot-cap{position:absolute;left:0;right:0;bottom:0;padding:1.9rem 1.25rem 1.1rem;background:linear-gradient(to top,rgba(0,14,38,0.92),rgba(0,14,38,0.35) 60%,transparent);}
.shot-cap b{display:block;font-family:'Space Grotesk',sans-serif;color:#fff;font-size:1rem;font-weight:700;}
.shot-cap span{font-size:0.76rem;color:rgba(255,255,255,0.72);}
@media(max-width:640px){.showcase-grid{grid-template-columns:1fr;}.shot img{height:240px;}}

/* ===== LIVE NEWS FEED (business + tourism) ===== */
.feed-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:2.5rem;}
.feed-head{font-family:'Space Grotesk',sans-serif;font-size:0.95rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:0.5px;padding-bottom:0.75rem;border-bottom:2px solid var(--gold);margin-bottom:0.3rem;}
.feed-list{display:flex;flex-direction:column;}
.feed-item{display:flex;justify-content:space-between;gap:1.1rem;align-items:baseline;padding:0.85rem 0;border-bottom:1px solid rgba(0,0,0,0.07);}
.feed-title{font-size:0.86rem;font-weight:600;color:#1f2937;line-height:1.4;transition:color 0.15s;}
.feed-item:hover .feed-title{color:var(--blue);}
.feed-meta{font-family:'Space Grotesk',sans-serif;font-size:0.66rem;font-weight:700;color:#9ca3af;white-space:nowrap;flex-shrink:0;text-transform:uppercase;letter-spacing:0.5px;}
.feed-loading,.feed-empty{font-size:0.82rem;color:#9ca3af;padding:0.85rem 0;font-style:italic;}
@media(max-width:700px){.feed-grid{grid-template-columns:1fr;gap:2rem;}}

/* Clickable client chips + pillars */
a.c-chip{cursor:pointer;}
a.pillar{display:block;text-decoration:none;}
.pillar-more{display:inline-block;margin-top:1rem;font-family:'Space Grotesk',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;color:var(--gold);}
.pillar:hover .pillar-more{text-decoration:underline;}

/* ===== BLOG / GUIDES ===== */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;}
.blog-card{background:#fff;border:1px solid rgba(0,0,0,0.07);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:all .2s;text-decoration:none;}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,34,77,.12);border-color:rgba(4,75,173,.2);}
.blog-card-img{height:170px;background:var(--navy);overflow:hidden;}
.blog-card-img img{width:100%;height:100%;object-fit:cover;}
.blog-card-body{padding:1.4rem;display:flex;flex-direction:column;flex:1;}
.blog-cat{font-family:'Space Grotesk',sans-serif;font-size:.58rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--blue);margin-bottom:.5rem;}
.blog-card h3{font-family:'Space Grotesk',sans-serif;font-size:1.02rem;font-weight:800;color:var(--navy);line-height:1.3;margin-bottom:.5rem;}
.blog-card p{font-size:.8rem;color:#6b7280;line-height:1.6;flex:1;margin-bottom:.9rem;}
.blog-read{font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.5px;text-transform:uppercase;color:var(--blue);}
.blog-empty{margin-top:2.5rem;text-align:center;color:#6b7280;font-size:.9rem;line-height:1.8;}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr;}}

/* ===== ARTICLE ===== */
.article{max-width:760px;margin:0 auto;}
.article-cover{width:100%;border-radius:10px;margin-bottom:2rem;max-height:420px;object-fit:cover;}
.article-meta{font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#9ca3af;margin-bottom:2rem;}
.article-body{font-size:1rem;line-height:1.85;color:#333;}
.article-body h2{font-family:'Space Grotesk',sans-serif;font-size:1.4rem;color:var(--navy);margin:2rem 0 .8rem;}
.article-body h3{font-family:'Space Grotesk',sans-serif;font-size:1.1rem;color:var(--navy);margin:1.6rem 0 .6rem;}
.article-body p{margin-bottom:1.1rem;}
.article-body ul,.article-body ol{margin:0 0 1.1rem 1.4rem;}
.article-body li{margin-bottom:.5rem;}
.article-body a{color:var(--blue);font-weight:600;text-decoration:underline;}
.article-body img{max-width:100%;border-radius:8px;margin:1.2rem 0;}
.article-body blockquote{border-left:3px solid var(--gold);padding-left:1.2rem;color:#4a5568;font-style:italic;margin:1.2rem 0;}
.article-body code{background:#f1f3f7;padding:.15rem .4rem;border-radius:3px;font-size:.9em;}
.article-body pre{background:var(--ink);color:#e6edf3;padding:1.1rem;border-radius:8px;overflow:auto;margin:1.2rem 0;}
.article-body iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:8px;margin:1.2rem 0;}

/* ===== ADMIN ===== */
.admin-wrap{max-width:920px;margin:0 auto;}
.admin-login{max-width:380px;margin:0 auto;}
.admin-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap;}
.admin-tab{font-family:'Space Grotesk',sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.5rem 1rem;border-radius:50px;border:1px solid rgba(0,0,0,.12);cursor:pointer;background:#fff;color:var(--navy);}
.admin-tab.on{background:var(--navy);color:#fff;border-color:var(--navy);}
.admin-list{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;}
.admin-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:6px;padding:.8rem 1rem;font-size:.85rem;}
.admin-row .muted{color:#9ca3af;font-size:.72rem;}
.admin-actions{display:flex;gap:.4rem;flex-shrink:0;}
.admin-btn{font-size:.72rem;font-weight:700;padding:.4rem .8rem;border-radius:4px;border:none;cursor:pointer;font-family:inherit;}
.admin-btn.edit{background:#eef3fc;color:var(--blue);}
.admin-btn.del{background:#fdeaea;color:#dc2626;}
.admin-btn.ok{background:#e6f7ec;color:#16a34a;}
.admin-note{font-size:.78rem;color:#4a5568;background:#f8fafc;border:1px solid rgba(0,0,0,.06);border-radius:6px;padding:.85rem 1rem;margin-bottom:1.25rem;line-height:1.6;}
.admin-note code{background:#eef1f6;padding:.1rem .35rem;border-radius:3px;font-size:.9em;}
.field{margin-bottom:.9rem;}
.field label{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--navy);margin-bottom:.3rem;}
.submit-ack{background:#e6f7ec;border:1px solid rgba(22,163,74,.3);color:#166534;border-radius:8px;padding:1.4rem;text-align:center;font-size:.92rem;line-height:1.6;margin-top:1rem;}

/* ===== ADMIN EDITOR (AAA) ===== */
.cover-field{display:flex;gap:.4rem;}
.cover-field input{flex:1;}
.tag-box{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;}
.tag-chip{display:inline-flex;align-items:center;gap:6px;background:#eef3fc;color:var(--blue);border:1px solid rgba(4,75,173,.2);border-radius:50px;padding:.3rem .7rem;font-size:.75rem;font-weight:700;}
.tag-chip button{background:none;border:none;color:var(--blue);cursor:pointer;font-size:.95rem;line-height:1;padding:0;}
.tag-input-row{display:flex;gap:.4rem;}
.tag-input-row input{flex:1;}
.tag-suggest{margin-top:.6rem;}
.tag-suggest .tsg-label{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin:.4rem 0 .3rem;}
.tag-suggest .tsg-row{display:flex;flex-wrap:wrap;gap:.4rem;}
.tag-sug{cursor:pointer;background:#fff;border:1px dashed rgba(0,0,0,.22);border-radius:50px;padding:.3rem .7rem;font-size:.72rem;font-weight:700;color:#4a5568;}
.tag-sug:hover{border-color:var(--blue);color:var(--blue);}
.tag-sug.auto{border-color:rgba(245,196,22,.55);color:#8a6d00;background:#fffdf5;}
.md-toolbar{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;background:#f4f6fa;border:1px solid rgba(0,0,0,.1);border-bottom:none;border-radius:6px 6px 0 0;padding:.5rem;}
.md-toolbar button{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;cursor:pointer;font-size:.78rem;font-weight:700;padding:.35rem .55rem;font-family:inherit;color:var(--navy);}
.md-toolbar button:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.md-toolbar .sep{width:1px;height:20px;background:rgba(0,0,0,.14);margin:0 .25rem;}
.md-toolbar select{font-size:.74rem;padding:.32rem;border-radius:4px;max-width:140px;}
.md-split{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(0,0,0,.1);border-radius:0 0 6px 6px;overflow:hidden;}
.md-split textarea{border:none;border-right:1px solid rgba(0,0,0,.1);border-radius:0;min-height:360px;font-family:'Courier New',monospace;font-size:.85rem;line-height:1.6;resize:vertical;}
.md-preview{padding:1.25rem;overflow:auto;max-height:560px;background:#fff;font-size:.92rem;}
.md-preview:empty::before{content:'Live preview appears here as you type…';color:#9ca3af;font-style:italic;}
@media(max-width:820px){.md-split{grid-template-columns:1fr;}.md-split textarea{border-right:none;border-bottom:1px solid rgba(0,0,0,.1);}}
.editor-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-top:1rem;}
.editor-actions select{max-width:150px;}
.pv-modal{display:none;position:fixed;inset:0;background:rgba(0,10,30,.85);backdrop-filter:blur(4px);z-index:800;padding:2rem 1rem;overflow:auto;}
.pv-modal.show{display:block;}
.pv-sheet{max-width:820px;margin:0 auto;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.4);}
.pv-head{background:var(--navy);color:#fff;padding:.85rem 1.25rem;display:flex;justify-content:space-between;align-items:center;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:1px;}
.pv-close{background:var(--gold);color:var(--ink);border:none;border-radius:4px;padding:.4rem .9rem;font-weight:800;cursor:pointer;font-family:inherit;}
.pv-body{padding:2rem;}
.pv-body h1{font-family:'Space Grotesk',sans-serif;color:var(--navy);font-size:2rem;line-height:1.1;margin-bottom:.5rem;}

/* ===== BLOCK RENDER (post page + preview) ===== */
.blk-body{margin-bottom:1.2rem;}
.blk-image{margin:1.5rem 0;}
.blk-image img{width:100%;border-radius:8px;display:block;}
.blk-image figcaption{font-size:.8rem;color:#9ca3af;text-align:center;margin-top:.5rem;font-style:italic;}
.blk-imagetext{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin:2rem 0;}
.blk-imagetext.img-right{direction:rtl;}
.blk-imagetext.img-right>*{direction:ltr;}
.blk-it-img img{width:100%;border-radius:8px;display:block;}
.blk-button{text-align:center;margin:1.75rem 0;}
.blk-link{margin:1rem 0;font-weight:600;}
.blk-section{border-radius:10px;padding:2rem;margin:2rem 0;}
.blk-section h2{margin-bottom:.75rem;}
.blk-section.bg-cream{background:var(--cream);}
.blk-section.bg-white{background:#fff;border:1px solid rgba(0,0,0,.08);}
.blk-section.bg-navy{background:var(--navy);color:#fff;}
.blk-section.bg-navy h2{color:var(--gold);}
.blk-section.bg-navy a{color:var(--light);}
.blk-section.bg-gold{background:var(--gold);color:var(--ink);}
@media(max-width:640px){.blk-imagetext{grid-template-columns:1fr;}.blk-imagetext.img-right{direction:ltr;}}

/* ===== BLOCK BUILDER (admin) ===== */
.builder{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0;}
.blk-card{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:1rem;}
.blk-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;}
.blk-card-type{font-family:'Space Grotesk',sans-serif;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--blue);}
.blk-ctrls{display:flex;gap:.3rem;}
.blk-ctrls button{background:#f1f3f7;border:1px solid rgba(0,0,0,.1);border-radius:4px;cursor:pointer;font-size:.8rem;padding:.25rem .55rem;font-family:inherit;line-height:1;}
.blk-ctrls button:hover{background:var(--navy);color:#fff;}
.blk-card .field{margin-bottom:.5rem;}
.blk-card textarea{min-height:80px;}
.blk-row2{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;}
.add-block-bar{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0;}
.add-block-bar button{background:#eef3fc;border:1px dashed rgba(4,75,173,.35);color:var(--blue);border-radius:6px;cursor:pointer;font-weight:700;font-size:.76rem;padding:.5rem .8rem;font-family:inherit;}
.add-block-bar button:hover{background:var(--blue);color:#fff;border-style:solid;}
.builder-empty{color:#9ca3af;font-style:italic;padding:1.25rem;text-align:center;border:1px dashed rgba(0,0,0,.15);border-radius:8px;}
.prompt-tool{background:#f8fafc;border:1px solid rgba(0,0,0,.08);border-radius:8px;padding:1.25rem;margin:1.25rem 0;}
.prompt-tool h3{font-family:'Space Grotesk',sans-serif;font-size:.9rem;color:var(--navy);margin-bottom:.4rem;}
.prompt-tool p.hint{font-size:.78rem;color:#6b7280;margin-bottom:.75rem;line-height:1.5;}
.prompt-out{position:relative;margin-top:.6rem;}
.prompt-out textarea{background:#fff;font-size:.8rem;min-height:120px;font-family:'Courier New',monospace;}
.copy-btn{position:absolute;top:.5rem;right:.5rem;background:var(--navy);color:#fff;border:none;border-radius:4px;padding:.35rem .7rem;font-size:.72rem;font-weight:700;cursor:pointer;font-family:inherit;}
.copy-btn:hover{background:var(--blue);}
.preview-banner{background:var(--gold);color:var(--ink);text-align:center;padding:.6rem;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:1px;}

/* ==========================================================================
   ADMIN — modern product redesign (scoped so it never touches public pages)
   ========================================================================== */
.admin-shell{background:#eef1f6;padding:2.75rem 1.5rem 5rem;min-height:60vh;}
.admin-wrap{max-width:880px;margin:0 auto;}

/* Tabs */
.admin-wrap .admin-tabs{gap:.5rem;margin-bottom:1.5rem;}
.admin-tab{background:#fff;border:1px solid #e3e7ee;color:#5b6472;border-radius:10px;padding:.62rem 1.15rem;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.3px;box-shadow:0 1px 2px rgba(10,20,40,.04);transition:all .15s;}
.admin-tab:hover{border-color:#c7d0dc;}
.admin-tab.on{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 6px 16px rgba(0,34,77,.18);}

/* The editor / login card */
.admin-wrap .booking-form-box{background:#fff;border:1px solid #e6e9f0;border-radius:16px;box-shadow:0 1px 3px rgba(10,20,40,.05),0 16px 44px rgba(10,20,40,.05);padding:2rem;}
.admin-login{max-width:400px;margin:2rem auto;}

/* Inputs — airy, soft, focus ring */
.admin-wrap input[type=text],.admin-wrap input[type=email],.admin-wrap input[type=password],.admin-wrap textarea,.admin-wrap select{
  background:#fbfcfe;border:1px solid #e0e5ee;border-radius:10px;padding:.82rem .95rem;font-size:.9rem;color:#1a2233;transition:border .15s,box-shadow .15s,background .15s;}
.admin-wrap input:focus,.admin-wrap textarea:focus,.admin-wrap select:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(4,75,173,.12);outline:none;}
.admin-wrap textarea{min-height:96px;line-height:1.6;resize:vertical;}
.admin-wrap input::placeholder,.admin-wrap textarea::placeholder{color:#aab2c0;}
.admin-wrap .field label,.admin-wrap>section label,.admin-wrap label{display:block;font-family:'Space Grotesk',sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:#8b94a4;margin-bottom:.35rem;}

/* One consistent button system */
.admin-wrap button{font-family:'Space Grotesk',sans-serif;cursor:pointer;transition:all .15s;}
.admin-btn{border-radius:9px;font-weight:700;font-size:.76rem;padding:.62rem 1rem;border:1px solid transparent;box-shadow:0 1px 2px rgba(10,20,40,.04);}
.admin-btn.edit{background:#eef3fc;color:var(--blue);border-color:#d8e4fb;}
.admin-btn.edit:hover{background:var(--blue);color:#fff;border-color:var(--blue);}
.admin-btn.ok{background:#e9f9ef;color:#0f9a4d;border-color:#c7efd6;}
.admin-btn.ok:hover{background:#0f9a4d;color:#fff;border-color:#0f9a4d;}
.admin-btn.del{background:#fdecec;color:#dc2626;border-color:#f6d3d3;}
.admin-btn.del:hover{background:#dc2626;color:#fff;border-color:#dc2626;}
.admin-wrap .btn-primary{border-radius:10px;padding:.8rem 1.5rem;box-shadow:0 6px 18px rgba(245,196,22,.4);}

/* Add-block toolbar */
.add-block-bar{gap:.5rem;padding:1rem;background:#f6f8fc;border:1px solid #e6e9f0;border-radius:12px;margin:.85rem 0 1.4rem;}
.add-block-bar button{background:#fff;border:1px solid #e0e5ee;color:var(--navy);border-radius:9px;font-weight:700;font-size:.78rem;padding:.62rem .9rem;box-shadow:0 1px 2px rgba(10,20,40,.05);}
.add-block-bar button:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,34,77,.2);}

/* Prompt tool — the "tech" moment */
.prompt-tool{background:linear-gradient(180deg,#eef5ff,#f7fbff);border:1px solid #d9e6fb;border-radius:14px;padding:1.6rem;margin:1.6rem 0;}
.prompt-tool h3{font-family:'Space Grotesk',sans-serif;font-size:1.02rem;color:var(--navy);margin-bottom:.4rem;}
.prompt-tool p.hint{font-size:.82rem;color:#6b7585;line-height:1.55;margin-bottom:1rem;}
.prompt-out{position:relative;margin-top:.7rem;}
.prompt-out textarea{background:#0d1b33;color:#cfe0ff;border:1px solid #0d1b33;font-family:'Courier New',monospace;font-size:.8rem;line-height:1.65;border-radius:10px;padding:1rem;min-height:130px;}
.prompt-out textarea:focus{box-shadow:0 0 0 3px rgba(4,75,173,.35);}
.copy-btn{position:absolute;top:.6rem;right:.6rem;background:var(--gold);color:var(--ink);border:none;border-radius:8px;padding:.4rem .85rem;font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:800;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.25);}
.copy-btn:hover{background:#ffd83d;}

/* Block cards */
.builder{gap:.85rem;}
.blk-card{background:#fff;border:1px solid #e6e9f0;border-radius:12px;box-shadow:0 1px 2px rgba(10,20,40,.04);padding:1.15rem 1.2rem;transition:box-shadow .15s,border-color .15s;}
.blk-card:hover{box-shadow:0 8px 24px rgba(10,20,40,.08);border-color:#d4dce8;}
.blk-card-head{margin-bottom:.85rem;}
.blk-card-type{color:#fff;background:var(--blue);padding:.28rem .65rem;border-radius:6px;font-size:.6rem;letter-spacing:1px;}
.blk-ctrls button{background:#f2f4f8;border:1px solid #e4e8f0;border-radius:8px;width:32px;height:30px;color:#5b6472;font-size:.85rem;line-height:1;}
.blk-ctrls button:hover{background:var(--navy);color:#fff;border-color:var(--navy);}
.builder-empty{background:#fff;border:1px dashed #cfd6e2;border-radius:12px;color:#8b94a4;padding:1.5rem;}

/* Action bar */
.editor-actions{gap:.75rem;margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid #edf0f5;}
.editor-actions select{max-width:150px;border-radius:9px;}

/* Post list */
.admin-list{gap:.6rem;margin-top:1.6rem;}
.admin-row{background:#fff;border:1px solid #e6e9f0;border-radius:11px;box-shadow:0 1px 2px rgba(10,20,40,.04);padding:1rem 1.2rem;}
.admin-row:hover{border-color:#d4dce8;}
.admin-note{background:#fff;border:1px solid #e6e9f0;border-radius:11px;color:#5b6472;}
.admin-note code{background:#eef1f6;color:var(--navy);}

/* Per-block background/padding (post page + preview) */
.blk-wrap.has-bg{padding:1.75rem;border-radius:10px;}
.blk-wrap.pad-sm{padding:1.1rem 1.25rem;}
.blk-wrap.pad-lg{padding:2.75rem;}
.blk-wrap.bg-cream{background:var(--cream);}
.blk-wrap.bg-white{background:#fff;border:1px solid rgba(0,0,0,.08);}
.blk-wrap.bg-navy{background:var(--navy);color:#fff;}
.blk-wrap.bg-navy h2,.blk-wrap.bg-navy h3{color:var(--gold);}
.blk-wrap.bg-navy a{color:var(--light);}
.blk-wrap.bg-gold{background:var(--gold);color:var(--ink);}

/* Title + slug with chain link */
.titleslug{display:flex;align-items:stretch;gap:0;margin-bottom:.75rem;}
.titleslug input{flex:1;border-radius:10px;}
.titleslug input:first-child{border-top-right-radius:0;border-bottom-right-radius:0;}
.titleslug input:last-child{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none;}
.chain{background:#f2f4f8;border:1px solid #e0e5ee;border-left:none;border-right:none;color:#8b94a4;cursor:pointer;padding:0 .7rem;font-size:.95rem;display:flex;align-items:center;}
.chain.on{color:var(--blue);background:#eef3fc;}
.chain:hover{color:var(--navy);}

/* Collapsible AI panel */
.ai-toggle{width:100%;text-align:left;background:linear-gradient(180deg,#eef5ff,#f7fbff);border:1px solid #d9e6fb;border-radius:12px;padding:.9rem 1.15rem;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.9rem;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;align-items:center;margin:1.4rem 0 0;}
.ai-toggle .chev{transition:transform .2s;color:var(--blue);}
.ai-toggle.open .chev{transform:rotate(180deg);}
.prompt-tool{margin-top:.5rem;border-radius:0 0 12px 12px;}

/* Prompt "key" field — single line + copy icon */
.key-field{display:flex;align-items:stretch;border:1px solid #d9e6fb;border-radius:9px;overflow:hidden;margin-top:.5rem;background:#0d1b33;}
.key-field input{flex:1;border:none!important;border-radius:0!important;background:#0d1b33!important;color:#cfe0ff!important;font-family:'Courier New',monospace;font-size:.8rem;white-space:nowrap;overflow-x:auto;box-shadow:none!important;}
.key-copy{background:var(--gold);color:var(--ink);border:none;padding:0 1rem;cursor:pointer;font-size:1rem;font-weight:800;}
.key-copy:hover{background:#ffd83d;}

/* Block style controls */
.blk-style{margin-top:.6rem;padding-top:.6rem;border-top:1px dashed #e4e8f0;}
.blk-style .blk-row2{align-items:center;}
.blk-style input[type=color]{width:100%;height:38px;padding:2px;border-radius:8px;cursor:pointer;}
.blk-style .sl{font-size:.62rem;color:#8b94a4;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.2rem;display:block;}

/* Tag chips */
.tag-box{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;}
.tag-chip{display:inline-flex;align-items:center;gap:6px;background:#eef3fc;color:var(--blue);border:1px solid #d8e4fb;border-radius:50px;padding:.32rem .75rem;font-size:.75rem;font-weight:700;}
.tag-chip button{background:none;border:none;color:var(--blue);cursor:pointer;font-size:.95rem;line-height:1;padding:0;}
.tag-chip button:hover{color:#dc2626;}

/* Template bar */
.tpl-bar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;background:#fff;border:1px solid #e6e9f0;border-radius:14px;box-shadow:0 1px 3px rgba(10,20,40,.05);padding:1rem 1.25rem;margin-bottom:1rem;}
.tpl-bar label{display:inline!important;margin:0!important;color:#5b6472!important;}
.tpl-bar select{max-width:260px;}
.tpl-bar .spacer{flex:1;}
@media(max-width:560px){.tpl-bar .spacer{display:none;}}

/* ===== CTA band → navy (less "gambling", more premium) ===== */
.cta-band{background:var(--navy);}
.cta-band h2{color:#fff;}
.cta-band p{color:rgba(255,255,255,.62);}
.cta-band .btn-primary{background:var(--gold);color:var(--ink);}
.cta-band .btn-primary:hover{background:#ffd83d;box-shadow:0 10px 28px rgba(245,196,22,.3);}

/* ===== ADMIN — de-Scratch: calmer, more professional ===== */
.blk-card-type{background:none!important;color:#98a2b3!important;padding:0!important;font-size:.64rem!important;letter-spacing:1.5px;font-weight:700;}
.blk-ctrls button{background:transparent;border:1px solid #e4e8f0;color:#9aa4b2;width:30px;height:30px;border-radius:7px;font-size:.82rem;box-shadow:none;}
.blk-ctrls button:hover{background:#f2f5f9;color:var(--navy);border-color:#cfd7e2;}
.blk-card{box-shadow:none;border-color:#e8ebf1;}
.blk-card:hover{box-shadow:0 4px 18px rgba(10,20,40,.06);border-color:#dbe1ea;}
.add-block-bar{background:transparent;border:1px dashed #dbe1ea;}
.add-block-bar button{background:#fff;border:1px solid #e4e8f0;color:#4a5568;box-shadow:none;font-weight:600;}
.add-block-bar button:hover{background:#f6f8fc;color:var(--navy);border-color:#c9d2de;transform:none;box-shadow:none;}
.admin-btn.edit{background:#f2f5f9;color:#4a5568;border-color:#e4e8f0;box-shadow:none;}
.admin-btn.edit:hover{background:#e7ecf3;color:var(--navy);border-color:#d4dce6;}
.admin-btn.ok{background:#f2f5f9;color:#4a5568;border-color:#e4e8f0;box-shadow:none;}
.admin-btn.ok:hover{background:#0f9a4d;color:#fff;border-color:#0f9a4d;}
.admin-btn.del{box-shadow:none;}
.admin-tab{box-shadow:none;}
.tpl-bar{box-shadow:none;}
.admin-row{box-shadow:none;}

/* Prompt output — readable dark panel (not a cramped one-liner) */
.prompt-out textarea{display:block;width:100%;min-height:120px;background:#0d1b33;color:#cfe0ff;border:1px solid #12233f;border-radius:10px;padding:1rem 1rem;font-family:'Courier New',monospace;font-size:.8rem;line-height:1.65;white-space:pre-wrap;overflow:auto;}
.prompt-out textarea:focus{box-shadow:0 0 0 3px rgba(4,75,173,.3);border-color:#12233f;}
.prompt-out .copy-btn{position:absolute;top:.55rem;right:.55rem;}

/* Chain link/unlink — clear states */
.chain{font-size:1rem;}
.chain.on{color:var(--blue);background:#eaf1fd;}
.chain:not(.on){color:#c0392b;background:#fbecea;}

/* ==========================================================================
   BLOG READING EXPERIENCE — byline, helpful votes, actions, related, search
   ========================================================================== */

/* Byline */
.byline{display:flex;align-items:center;gap:.85rem;margin:0 0 2rem;padding-bottom:1.4rem;border-bottom:1px solid rgba(0,0,0,.08);}
.byline-ico{width:44px;height:44px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;}
.byline-ico img{width:26px;height:26px;object-fit:contain;}
.byline-txt{display:flex;flex-direction:column;line-height:1.35;}
.byline-txt b{font-family:'Space Grotesk',sans-serif;font-size:.9rem;color:var(--navy);}
.byline-txt span{font-size:.76rem;color:#8b94a4;}

/* Image annotations */
.blk-image figcaption{font-size:.78rem;color:#8b94a4;text-align:center;margin-top:.55rem;font-style:italic;padding:0 1rem;}

/* Article foot: helpful + actions */
.article-foot{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(0,0,0,.08);}
.helpful{text-align:center;background:#f8fafc;border:1px solid #eceff4;border-radius:14px;padding:1.75rem 1.5rem;}
.helpful-q{font-family:'Space Grotesk',sans-serif;font-weight:700;color:var(--navy);font-size:1rem;margin-bottom:1rem;}
.helpful-btns{display:flex;gap:.6rem;justify-content:center;}
.helpful-btns button{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.85rem;padding:.65rem 1.4rem;border-radius:50px;border:1px solid #dfe4ec;background:#fff;color:#374151;cursor:pointer;transition:all .15s;}
.helpful-btns button:hover{border-color:var(--navy);color:var(--navy);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,34,77,.1);}
.helpful-thanks{color:#0f9a4d;font-weight:600;font-size:.9rem;margin-top:.25rem;}
.helpful-count{font-size:.78rem;color:#8b94a4;margin-top:.8rem;}
.article-actions{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-top:1rem;}
.article-actions button{font-family:'Space Grotesk',sans-serif;font-size:.74rem;font-weight:600;color:#6b7585;background:none;border:1px solid transparent;border-radius:50px;padding:.45rem .9rem;cursor:pointer;transition:all .15s;}
.article-actions button:hover{color:var(--navy);border-color:#dfe4ec;background:#f8fafc;}
.act-form{margin-top:1rem;background:#fff;border:1px solid #e6e9f0;border-radius:12px;padding:1.25rem;max-width:560px;margin-left:auto;margin-right:auto;}
.act-form-label{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.85rem;color:var(--navy);margin-bottom:.6rem;}
.act-form textarea{min-height:80px;margin-bottom:.5rem;}
.act-form input{margin-bottom:.6rem;}

/* Related posts */
.related .blog-grid{margin-top:2rem;}

/* Blog search */
.blog-search{position:relative;max-width:560px;margin:0 0 1.1rem;}
.blog-search .bs-ico{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9aa4b2;display:flex;pointer-events:none;}
#blogSearch{width:100%;background:#fff;border:1px solid #e0e5ee;border-radius:50px;padding:.9rem 1.25rem .9rem 2.8rem;font-size:.92rem;color:#1a2233;box-shadow:0 2px 10px rgba(10,20,40,.05);outline:none;transition:all .15s;font-family:inherit;}
#blogSearch:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(4,75,173,.12),0 2px 10px rgba(10,20,40,.05);}
.search-drop{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #e6e9f0;border-radius:14px;box-shadow:0 18px 50px rgba(10,20,40,.15);overflow:hidden;z-index:80;}
.search-drop a{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.85rem 1.15rem;border-bottom:1px solid #f1f3f7;transition:background .12s;}
.search-drop a:last-child{border-bottom:none;}
.search-drop a:hover{background:#f6f8fc;}
.search-drop a b{font-family:'Space Grotesk',sans-serif;font-size:.86rem;color:var(--navy);font-weight:700;}
.search-drop a span{font-size:.68rem;color:#9aa4b2;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;font-family:'Space Grotesk',sans-serif;}
.sd-none{padding:.85rem 1.15rem;font-size:.82rem;color:#9aa4b2;font-style:italic;}
.tag-cloud{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.75rem;}
.tag-cloud .tag-go{font-family:'Space Grotesk',sans-serif;font-size:.72rem;font-weight:600;color:#5b6472;background:#fff;border:1px solid #e0e5ee;border-radius:50px;padding:.35rem .8rem;cursor:pointer;transition:all .15s;}
.tag-cloud .tag-go:hover{color:var(--blue);border-color:var(--blue);}

/* Card tags on the Blog index */
.card-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.8rem;}
.card-tag{font-family:'Space Grotesk',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#8b94a4;background:#f2f4f8;border-radius:4px;padding:.2rem .5rem;}

/* Admin: annotation toggle */
.anno-wrap{display:flex;gap:.45rem;align-items:center;}
.anno-wrap input[type=text]{flex:1;}
.anno-tog{display:inline-flex!important;align-items:center;gap:5px;font-size:.68rem!important;color:#8b94a4!important;margin:0!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;white-space:nowrap;}
.anno-tog input{width:auto!important;}

/* ==========================================================================
   ═══ V2 — MODERN DESIGN LAYER ═══
   Appended last so it refines everything above. Softer surfaces, bigger
   radii, layered shadows, mesh-gradient heroes, bento grids.
   ========================================================================== */

:root{
  --r-sm:12px; --r:18px; --r-lg:26px; --r-xl:34px;
  --sky:#3b82f6; --cyan:#38bdf8; --mint:#2dd4a7;
  --ink-2:#0b1220; --slate:#5b6577; --line:#e7eaf1;
  --sh-1:0 1px 2px rgba(10,20,40,.04), 0 2px 10px rgba(10,20,40,.05);
  --sh-2:0 2px 6px rgba(10,20,40,.05), 0 14px 38px rgba(10,20,40,.09);
  --sh-3:0 8px 24px rgba(10,20,40,.09), 0 30px 70px rgba(10,20,40,.14);
  --sh-gold:0 10px 30px rgba(245,196,22,.32);
}

/* ---------- Type: tighter, more confident ---------- */
.hero h1,.page-hero h1{letter-spacing:-.045em;line-height:.97;}
.h2{letter-spacing:-.035em;}
body{font-size:16.5px;}

/* ---------- Buttons ---------- */
.btn-primary{border-radius:100px;padding:1rem 1.9rem;letter-spacing:.4px;font-size:.8rem;box-shadow:var(--sh-gold);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 38px rgba(245,196,22,.42);}
.btn-ghost{border-radius:100px;padding:1rem 1.9rem;letter-spacing:.4px;font-size:.8rem;border-width:1px;backdrop-filter:blur(6px);}
.btn-dark{background:var(--ink-2);color:#fff;border-radius:100px;padding:1rem 1.9rem;font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.4px;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;transition:all .2s;box-shadow:0 8px 24px rgba(11,18,32,.28);}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(11,18,32,.36);}
.btn-white{background:#fff;color:var(--navy);border-radius:100px;padding:1rem 1.9rem;font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.4px;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;transition:all .2s;box-shadow:0 8px 24px rgba(0,0,0,.18);}
.btn-white:hover{transform:translateY(-2px);}

/* ---------- Nav: floating glass ---------- */
nav{background:rgba(0,20,45,.82);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid rgba(255,255,255,.07);box-shadow:none;height:66px;}
.nav-links a:not(.nav-wa){font-size:.76rem;letter-spacing:.4px;text-transform:none;font-weight:600;color:rgba(255,255,255,.66);}
.nav-wa{border-radius:100px;padding:.55rem 1.15rem;}

/* ---------- Section rhythm: kill the zebra ---------- */
.s-white,.s-paper,.s-cream{background:#fff;padding:6rem 2.5rem;}
.s-paper{background:linear-gradient(180deg,#fbfcfe,#f5f7fb);}
.s-cream{background:#f7f9fc;}
.s-navy,.s-navy2{padding:6rem 2.5rem;position:relative;overflow:hidden;}
.s-navy{background:var(--ink-2);}
.s-navy2{background:var(--navy);}
.s-navy::after,.s-navy2::after{content:'';position:absolute;top:-40%;right:-15%;width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.14),transparent 62%);pointer-events:none;}
@media(max-width:640px){.s-white,.s-paper,.s-cream,.s-navy,.s-navy2,.s-gold{padding:4rem 1.35rem;}}

/* ---------- Eyebrow to pill ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.66rem;letter-spacing:1.6px;padding:.42rem .9rem;border-radius:100px;margin-bottom:1.2rem;}
.eyebrow::before{width:6px;height:6px;border-radius:50%;}
.on-light .eyebrow{background:#eef4ff;color:var(--blue);}
.on-light .eyebrow::before{background:var(--blue);}
.on-dark .eyebrow{background:rgba(245,196,22,.13);color:var(--gold);}
.on-dark .eyebrow::before{background:var(--gold);}

/* ---------- HERO v2: mesh gradient ---------- */
.hero{min-height:92vh;padding:7rem 8vw 5rem;background:var(--ink-2);}
.hero-bg{opacity:.16;filter:saturate(.5);}
.hero-grad{background:linear-gradient(115deg,rgba(11,18,32,.96) 26%,rgba(0,34,77,.82) 58%,rgba(4,75,173,.34) 100%);}
.hero-glow{top:-25%;right:-8%;width:820px;height:820px;background:radial-gradient(circle,rgba(59,130,246,.22) 0%,transparent 60%);}
.hero::before{content:'';position:absolute;bottom:-30%;left:-12%;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle,rgba(245,196,22,.13) 0%,transparent 62%);pointer-events:none;}
.hero-content{max-width:900px;}
.hero h1{font-size:clamp(2.9rem,7.4vw,5.6rem);}
.hero-pill{border-radius:100px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);backdrop-filter:blur(8px);padding:.5rem 1.15rem;font-size:.66rem;letter-spacing:1.4px;}
.hero-pill .dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(45,212,167,.2);animation:pulse 2.2s infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.45;}}
.hero-sub{font-size:1.12rem;max-width:560px;color:rgba(255,255,255,.72);}
.hero-stats{gap:3rem;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.1);}
.hstat-num{font-size:1.85rem;}

/* ---------- BENTO GRID ---------- */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-top:2.75rem;}
.bento-item{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:2rem;box-shadow:var(--sh-1);transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s;position:relative;overflow:hidden;display:flex;flex-direction:column;}
.bento-item:hover{transform:translateY(-4px);box-shadow:var(--sh-2);}
.b-3{grid-column:span 3;} .b-2{grid-column:span 2;} .b-4{grid-column:span 4;} .b-6{grid-column:span 6;}
.bento-item .b-ico{width:46px;height:46px;border-radius:14px;background:#eef4ff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.1rem;}
.bento-item h3{font-family:'Space Grotesk',sans-serif;font-size:1.08rem;font-weight:700;color:var(--navy);margin-bottom:.5rem;letter-spacing:-.02em;}
.bento-item p{font-size:.9rem;color:var(--slate);line-height:1.65;}
.bento-item.dark{background:var(--ink-2);border-color:rgba(255,255,255,.1);}
.bento-item.dark h3{color:#fff;} .bento-item.dark p{color:rgba(255,255,255,.62);}
.bento-item.dark .b-ico{background:rgba(245,196,22,.14);color:var(--gold);}
.bento-item.accent{background:linear-gradient(150deg,#04357d,#022a63);border:none;}
.bento-item.accent h3{color:#fff;} .bento-item.accent p{color:rgba(255,255,255,.75);}
.bento-item.accent .b-ico{background:rgba(255,255,255,.14);color:#fff;}
.b-big{font-family:'Space Grotesk',sans-serif;font-size:2.6rem;font-weight:700;letter-spacing:-.04em;color:var(--navy);line-height:1;margin-bottom:.35rem;}
.bento-item.dark .b-big,.bento-item.accent .b-big{color:var(--gold);}
@media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr);}.b-3,.b-2,.b-4,.b-6{grid-column:span 2;}}
@media(max-width:560px){.bento{grid-template-columns:1fr;}.b-3,.b-2,.b-4,.b-6{grid-column:span 1;}.bento-item{padding:1.6rem;}}

/* ---------- Step rail ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.75rem;counter-reset:s;}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:2rem 1.6rem;position:relative;transition:all .25s;}
.step:hover{transform:translateY(-4px);box-shadow:var(--sh-2);border-color:#d5dded;}
.step-n{counter-increment:s;font-family:'Space Grotesk',sans-serif;font-size:.7rem;font-weight:800;letter-spacing:1.4px;color:var(--blue);background:#eef4ff;width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;}
.step-n::before{content:'0' counter(s);}
.step h3{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700;color:var(--navy);margin-bottom:.45rem;letter-spacing:-.02em;}
.step p{font-size:.87rem;color:var(--slate);line-height:1.65;}
@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.steps{grid-template-columns:1fr;}}

/* ---------- Offer card (the free-website centrepiece) ---------- */
.offer{background:linear-gradient(155deg,#0b1220,#032a5e 58%,#04357d);border-radius:var(--r-xl);padding:3.5rem;color:#fff;position:relative;overflow:hidden;box-shadow:var(--sh-3);}
.offer::after{content:'';position:absolute;top:-45%;right:-10%;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(245,196,22,.17),transparent 62%);pointer-events:none;}
.offer-in{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:3.5rem;align-items:center;}
.offer h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:700;letter-spacing:-.035em;line-height:1.06;margin-bottom:1rem;}
.offer h2 em{font-style:normal;color:var(--gold);}
.offer p{color:rgba(255,255,255,.72);font-size:1rem;line-height:1.75;margin-bottom:1.5rem;}
.offer-price{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);padding:2.25rem;text-align:center;backdrop-filter:blur(10px);}
.op-free{font-family:'Space Grotesk',sans-serif;font-size:3.6rem;font-weight:700;color:var(--gold);letter-spacing:-.05em;line-height:1;}
.op-lbl{font-size:.7rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:.4rem;}
.op-div{height:1px;background:rgba(255,255,255,.14);margin:1.5rem 0;}
.op-then{font-family:'Space Grotesk',sans-serif;font-size:1.7rem;font-weight:700;color:#fff;letter-spacing:-.03em;}
.op-then span{font-size:.9rem;color:rgba(255,255,255,.55);font-weight:600;}
.op-note{font-size:.78rem;color:rgba(255,255,255,.5);margin-top:.5rem;line-height:1.55;}
@media(max-width:860px){.offer{padding:2.25rem;}.offer-in{grid-template-columns:1fr;gap:2rem;}}

/* ---------- Check list ---------- */
.checks{display:grid;grid-template-columns:1fr 1fr;gap:.7rem .9rem;margin:1.5rem 0;}
.checks div{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.5;}
.checks div::before{content:'✓';width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:1px;background:var(--mint);color:#052e20;font-size:.7rem;font-weight:900;display:flex;align-items:center;justify-content:center;}
.on-dark .checks div,.offer .checks div{color:rgba(255,255,255,.84);}
@media(max-width:560px){.checks{grid-template-columns:1fr;}}

/* ---------- Comparison ---------- */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2.75rem;}
.vs-card{border-radius:var(--r-lg);padding:2rem;border:1px solid var(--line);background:#fff;}
.vs-card.them{background:#f7f8fa;}
.vs-card h3{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:800;letter-spacing:.3px;text-transform:uppercase;margin-bottom:1.2rem;color:var(--slate);}
.vs-card.us{border-color:rgba(4,75,173,.28);box-shadow:var(--sh-2);}
.vs-card.us h3{color:var(--blue);}
.vs-card ul{list-style:none;display:grid;gap:.7rem;}
.vs-card li{font-size:.9rem;line-height:1.55;display:flex;gap:10px;color:#374151;}
.vs-card.them li{color:#8a92a0;}
.vs-card.them li::before{content:'✕';color:#c2c8d2;font-weight:800;flex-shrink:0;}
.vs-card.us li::before{content:'✓';color:var(--mint);font-weight:900;flex-shrink:0;}
@media(max-width:700px){.vs{grid-template-columns:1fr;}}

/* ---------- Split feature ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.split-media{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-3);line-height:0;}
.split-media img{width:100%;display:block;}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:2.25rem;}}

/* ---------- Cards refresh (existing components) ---------- */
.who-card,.case-card,.price-card,.blog-card,.cap-card,.news-card,.testi-card{border-radius:var(--r-lg);border-color:var(--line);box-shadow:var(--sh-1);}
.who-card:hover,.cap-card:hover,.news-card:hover{box-shadow:var(--sh-2);transform:translateY(-4px);}
.case-card:hover,.blog-card:hover{box-shadow:var(--sh-2);}
.svc-card,.extra-card,.pillar{border-radius:var(--r-lg);}
.c-chip{border-radius:100px;padding:.65rem 1.2rem;border-color:var(--line);}
.area-pill,.av-pill{border-radius:100px;}
.trust-bar{background:var(--ink-2);}
.quickbar{background:#f7f9fc;border-color:var(--line);}
.quickform input{border-radius:100px;padding:.85rem 1.2rem;background:#fff;border-color:var(--line);}
.quickform button{border-radius:100px;padding:.85rem 1.6rem;}
.cta-band{background:var(--ink-2);position:relative;overflow:hidden;padding:5rem 2.5rem;}
.cta-band::after{content:'';position:absolute;top:-50%;left:50%;transform:translateX(-50%);width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(245,196,22,.11),transparent 60%);pointer-events:none;}
.cta-band .inner{position:relative;z-index:1;}
.page-hero{background:var(--ink-2);padding:5.5rem 2.5rem 4.5rem;}
.page-hero::after{top:-45%;right:-8%;width:700px;height:700px;background:radial-gradient(circle,rgba(59,130,246,.16),transparent 62%);}
.page-hero h1{font-size:clamp(2.3rem,5.4vw,3.9rem);}
.page-hero p{font-size:1.06rem;color:rgba(255,255,255,.68);}
footer{background:var(--ink-2);}
.ticker{background:var(--ink-2);border-color:rgba(255,255,255,.07);}
.faq-q{font-size:1rem;padding:1.35rem 2.5rem 1.35rem 0;}
.article-cover{border-radius:var(--r-lg);}

/* ===== ADMIN — client tracker ===== */
.cl-status{display:inline-block;font-family:'Space Grotesk',sans-serif;font-size:.6rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:.22rem .55rem;border-radius:5px;}
.cl-lead{background:#eef1f6;color:#5b6472;}
.cl-building{background:#eef4ff;color:var(--blue);}
.cl-trial{background:#fff5da;color:#8a6d00;}
.cl-active{background:#e9f9ef;color:#0f9a4d;}
.cl-lapsed{background:#fdecec;color:#dc2626;}
.cl-cancelled{background:#f2f4f8;color:#9aa4b2;}
.cl-days{font-size:.72rem;color:#8b94a4;}
.cl-days.soon{color:#dc2626;font-weight:700;}
.gc-bar{background:#fff;border:1px solid #e6e9f0;border-radius:14px;padding:1.15rem 1.25rem;margin-bottom:1rem;display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;}
.gc-bar label{display:inline!important;margin:0!important;color:#5b6472!important;white-space:nowrap;}
.gc-bar input{flex:1;min-width:240px;}
.cl-summary{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem;}
.cl-sum{background:#fff;border:1px solid #e6e9f0;border-radius:10px;padding:.6rem .9rem;font-size:.78rem;color:#5b6472;}
.cl-sum b{font-family:'Space Grotesk',sans-serif;color:var(--navy);font-size:1rem;display:block;}

/* ---- Nav fixes: dropdown alignment + solid, matching mobile chrome ---- */
nav{background:rgba(11,18,32,.9);}
.jump-nav{top:66px;}
@media(max-width:720px){
  /* Blur is unreliable on mobile and the translucency read as washed out —
     use a solid bar, and make the open menu the same colour so the header
     and dropdown look like one panel. */
  nav{background:var(--ink-2);backdrop-filter:none;}
  .nav-links{top:100%;background:var(--ink-2);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 18px 40px rgba(0,0,0,.45);}
}
@media(max-width:720px){
  /* nav's 1px bottom border sits outside the padding box that top:100% is
     measured from, which left the menu overlapping it by a pixel. The menu
     supplies its own divider, so drop the nav border on mobile. */
  nav{border-bottom:none;}
}
