.blog-single{padding-top:80px}
/*
Theme Name: Albatrosse Theme
Author: Albatrosse
Description: Modern solar & AC corporate theme for Portugal
Version: 4.9.2
Text Domain: albatrosse-theme
*/
/* Google Fonts loaded via preload in functions.php */:root{--sun:#F5A623;--sun-dark:#E08A00;--sun-glow:rgba(245,166,35,0.25);--green:#22C55E;--dark:#0B0F1A;--dark-2:#131826;--dark-3:#1E2535;--dark-4:#252D3D;--white:#FFFFFF;--text:#CBD5E1;--text-dim:rgba(203,213,225,0.55);--glass:rgba(255,255,255,0.06);--glass-strong:rgba(255,255,255,0.10);--glass-border:rgba(255,255,255,0.11);--font:'Manrope',sans-serif;--radius:20px;--radius-lg:28px;--radius-sm:12px;--tr:color 0.25s ease,background-color 0.25s ease,border-color 0.25s ease,opacity 0.25s ease,transform 0.25s ease,box-shadow 0.25s ease;--bg-1:#0B0F1A;--bg-2:#111827;--bg-3:#161D2E}.light-mode{--dark:#F7F8FA;--dark-2:#FFFFFF;--dark-3:#EEF0F5;--dark-4:#E5E8EF;--white:#FFFFFF;--text:#1F2937;--text-dim:#6B7280;--glass:rgba(255,255,255,0.85);--glass-strong:rgba(255,255,255,0.95);--glass-border:rgba(0,0,0,0.09);--bg-1:#F7F8FA;--bg-2:#FFFFFF;--bg-3:#EEF0F5}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font);background:var(--dark);color:var(--text);overflow-x:hidden;line-height:1.6;transition:background 0.35s ease,color 0.35s ease;font-synthesis:none}a{text-decoration:none;color:inherit;transition:var(--tr)}ul{list-style:none}img{max-width:100%;display:block}.section,.section-alt,.section-mid{content-visibility:auto;contain-intrinsic-size:auto 600px}.hero-section{content-visibility:visible;contain-intrinsic-size:none}.container{max-width:1180px;margin:0 auto;padding:0 28px}.section{padding:110px 0;background:var(--bg-1)}.section-alt{padding:110px 0;background:var(--bg-2)}.section-mid{padding:110px 0;background:var(--bg-3)}.section-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:var(--sun);margin-bottom:18px}.section-eyebrow::before{content:'';width:20px;height:2px;background:var(--sun);border-radius:2px}h2.section-title{font-size:clamp(32px,4.5vw,54px);font-weight:800;line-height:1.08;letter-spacing:-1.5px;color:var(--white);margin-bottom:20px}.light-mode h2.section-title{color:#111827}.section-sub{font-size:17px;color:var(--text-dim);max-width:560px;margin-bottom:56px;line-height:1.75}.accent-grad{background:linear-gradient(135deg,#F5A623,#FF6B00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 34px;border-radius:50px;font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;border:none;transition:var(--tr);letter-spacing:0.2px;white-space:nowrap}.btn-sun{background:linear-gradient(135deg,#F5A623,#FF6B00);color:#0A0A0A;box-shadow:0 4px 24px rgba(245,166,35,0.35)}.btn-sun:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 10px 36px rgba(245,166,35,0.5)}.btn-glass{background:var(--glass);border:1.5px solid var(--glass-border);color:var(--white);backdrop-filter:blur(6px)}.light-mode .btn-glass{color:#111827;border-color:rgba(0,0,0,0.2)}.btn-glass:hover{background:var(--glass-strong);transform:translateY(-2px)}.btn-full{width:100%;justify-content:center}.btn-lg{padding:20px 44px;font-size:17px}.btn .arrow{display:inline-flex;transition:transform 0.3s ease}.btn:hover .arrow{transform:translateX(4px)}/* ── Theme slider toggle ── */
.theme-toggle{display:flex;align-items:center;cursor:pointer;flex-shrink:0;padding:0;background:none;border:none;user-select:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.toggle-track{position:relative;width:52px;height:28px;background:#374151;border-radius:9999px;display:flex;align-items:center;justify-content:space-between;padding:0 7px;transition:background 0.15s ease;box-shadow:inset 0 1px 3px rgba(0,0,0,0.3)}
.light-mode .toggle-track{background:#F5A623}
.toggle-moon,.toggle-sun-icon{display:flex;align-items:center;justify-content:center;z-index:1;line-height:1;flex-shrink:0;transition:opacity 0.15s ease,color 0.15s ease}
.toggle-moon{color:#93C5FD;opacity:1}
.toggle-sun-icon{color:rgba(255,255,255,0.4);opacity:0.4}
.light-mode .toggle-moon{color:#7C2D12;opacity:1}
.light-mode .toggle-sun-icon{color:#b47332;opacity:1}
.toggle-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,0.35);transition:left 0.15s cubic-bezier(0.4,0,0.2,1)}
.light-mode .toggle-thumb{left:calc(100% - 25px)}
.theme-toggle:hover .toggle-track{box-shadow:inset 0 1px 3px rgba(0,0,0,0.3),0 0 0 3px rgba(245,166,35,0.2)}
.nav-links .nav-close{display:none!important}.nav-links.open .nav-close{display:flex!important;position:absolute;top:20px;right:20px;width:40px;height:40px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);border-radius:50%;color:#fff;cursor:pointer;align-items:center;justify-content:center;z-index:10}.light-mode .nav-links.open .nav-close{background:rgba(0,0,0,0.06);color:#111}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 0;transition:var(--tr)}.site-header.scrolled{background:rgba(11,15,26,0.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--glass-border);padding:13px 0}.light-mode .site-header.scrolled{background:rgba(247,248,250,0.92);border-bottom:1px solid rgba(0,0,0,0.08)}.header-inner{max-width:1180px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{display:flex;align-items:center;gap:10px;color:var(--white)}.light-mode .logo{color:#111827}.logo-mark{width:38px;height:38px;background:linear-gradient(135deg,#F5A623,#FF6B00);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;box-shadow:0 0 20px rgba(245,166,35,0.35)}.logo-name{font-size:20px;font-weight:800;letter-spacing:-0.5px}.logo-name span{color:var(--sun)}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{color:rgba(255,255,255,0.72);font-size:14px;font-weight:500;padding:9px 16px;border-radius:50px;transition:var(--tr);white-space:nowrap}.nav-links a:hover{color:#fff;background:rgba(255,255,255,0.1)}.light-mode .nav-links a{color:rgba(0,0,0,0.6)}.light-mode .nav-links a:hover{color:#111827;background:rgba(0,0,0,0.06)}.nav-cta{background:linear-gradient(135deg,#F5A623,#FF6B00)!important;color:#0A0A0A!important;font-weight:700!important;box-shadow:0 4px 20px rgba(245,166,35,0.3)}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(245,166,35,0.45)!important}.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;border-radius:8px}.burger span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:var(--tr)}.light-mode .burger span{background:#111827}.hero{min-height:100vh;background:var(--dark);display:flex;align-items:center;position:relative;overflow:hidden;padding:140px 28px 80px}.light-mode .hero{background:linear-gradient(160deg,#FFFBF0 0%,#F0F4FF 100%)}.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 80% 40%,rgba(245,166,35,0.11) 0%,transparent 60%),radial-gradient(ellipse 50% 50% at 10% 80%,rgba(56,189,248,0.06) 0%,transparent 60%);pointer-events:none}.hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.024) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.024) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,rgba(0,0,0,0.4) 20%,rgba(0,0,0,0.4) 80%,transparent)}.light-mode .hero::after{background-image:linear-gradient(rgba(0,0,0,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,0.03) 1px,transparent 1px)}.hero-img-strip{position:absolute;right:0;top:0;bottom:0;width:48%;overflow:hidden;pointer-events:none}.hero-img-strip img{width:100%;height:100%;object-fit:cover;opacity:0.32}.hero-img-strip::before{content:'';position:absolute;inset:0;background:linear-gradient(to right,var(--dark) 0%,transparent 45%);z-index:1}.light-mode .hero-img-strip img{opacity:0.28}.light-mode .hero-img-strip::before{background:linear-gradient(to right,#FFFBF0 0%,transparent 45%)}.hero-inner{max-width:1180px;margin:0 auto;width:100%;display:grid;grid-template-columns:3fr 2fr;gap:60px;align-items:center;position:relative;z-index:2}.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background:rgba(245,166,35,0.12);border:1px solid rgba(245,166,35,0.25);border-radius:50px;color:var(--sun);font-size:13px;font-weight:600;margin-bottom:24px;animation:fadeUp 0.7s ease both}.light-mode .hero-badge{background:rgba(146,64,14,0.10);border-color:rgba(146,64,14,0.35);color:#7C2D12;font-weight:700}.badge-dot{width:6px;height:6px;background:var(--sun);border-radius:50%;animation:blink 2s ease infinite}@keyframes blink{0%,100%{opacity:1}50%{opacity:0.3}}.hero-title{font-size:clamp(40px,5.5vw,70px);font-weight:800;line-height:1.04;letter-spacing:-2px;color:#fff;margin-bottom:24px;animation:fadeUp 0.7s 0.1s ease both}.light-mode .hero-title{color:#111827}.hero-title .highlight{background:linear-gradient(135deg,#F5A623 0%,#FF6B00 50%,#FFD700 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-desc{font-size:17px;color:var(--text-dim);max-width:480px;margin-bottom:40px;line-height:1.75;animation:fadeUp 0.7s 0.2s ease both}.light-mode .hero-desc{color:#4B5563}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px;animation:fadeUp 0.7s 0.3s ease both}.hero-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap;animation:fadeUp 0.7s 0.4s ease both}.trust-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-dim)}.light-mode .trust-item{color:#6B7280}.trust-icon{font-size:15px}.trust-sep{width:1px;height:18px;background:var(--glass-border)}.hero-visual{display:flex;flex-direction:column;gap:18px;animation:fadeUp 0.7s 0.25s ease both}.savings-card{border-radius:var(--radius-lg);padding:32px;background:rgba(255,255,255,0.08);border:1px solid var(--glass-border);backdrop-filter:blur(8px);position:relative;overflow:hidden}.light-mode .savings-card{background:rgba(255,255,255,0.9);box-shadow:0 8px 40px rgba(0,0,0,0.08)}.savings-card::before{content:'';position:absolute;top:-60px;right:-60px;width:180px;height:180px;background:radial-gradient(circle,rgba(245,166,35,0.2),transparent 70%);pointer-events:none}.savings-label{font-size:12px;font-weight:700;color:var(--text-dim);margin-bottom:8px;text-transform:uppercase;letter-spacing:1px}.savings-amount{font-size:52px;font-weight:800;letter-spacing:-2px;background:linear-gradient(135deg,#F5A623,#FFD700);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:6px}.savings-sub{font-size:13px;color:var(--text-dim)}.savings-bar{margin-top:22px}.savings-bar-track{height:6px;background:rgba(255,255,255,0.1);border-radius:50px;overflow:hidden}.light-mode .savings-bar-track{background:rgba(0,0,0,0.08)}.savings-bar-fill{height:100%;width:70%;background:linear-gradient(90deg,#F5A623,#FFD700);border-radius:50px;animation:barGrow 1.5s 0.8s ease both;transform-origin:left}@keyframes barGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}.savings-bar-meta{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--text-dim)}.mini-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-card{border-radius:var(--radius);padding:20px;background:rgba(255,255,255,0.05);border:1px solid var(--glass-border);backdrop-filter:blur(8px);transition:var(--tr)}.light-mode .mini-card{background:rgba(255,255,255,0.9);box-shadow:0 4px 20px rgba(0,0,0,0.06)}.mini-card:hover{background:rgba(255,255,255,0.1);transform:translateY(-3px)}.mini-card-icon{font-size:26px;margin-bottom:10px}.mini-card-val{font-size:26px;font-weight:800;color:#fff;letter-spacing:-1px;line-height:1}.light-mode .mini-card-val{color:#111827}.mini-card-label{font-size:12px;color:var(--text-dim);margin-top:4px}@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}/* ── Brand logos strip ── */
.logos-strip{padding:48px 0;border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border)}
.logos-inner{max-width:1100px;margin:0 auto;padding:0 40px;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:0}
.logo-partner{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:12px;background:transparent;border:none;cursor:pointer;text-decoration:none;transition:background 0.15s ease,transform 0.15s ease;flex:1;max-width:160px}

/* Gray logo — dark theme */
.brand-logo-gray{display:block;height:30px;width:auto;max-width:110px;object-fit:contain;opacity:0.45;transition:opacity 0.15s ease}

/* Theme-specific gray variants */
.logo-light-only{display:none}
.light-mode .logo-dark-only{display:none}
.light-mode .logo-light-only{display:block}

/* Color logo — hidden by default */
.brand-logo-color{display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:30px;width:auto;max-width:110px;object-fit:contain;opacity:0;pointer-events:none;transition:opacity 0.15s ease}

/* DARK THEME hover: lighter white plaque so dark-text logos (Mitsubishi) read well */
.logo-partner:hover{background:rgba(255,255,255,0.22);transform:translateY(-2px);border-radius:12px}
.logo-partner:hover .brand-logo-gray{opacity:0}
.logo-partner:hover .brand-logo-color{opacity:1}

/* LIGHT THEME: gray logos dimmed more naturally */
.light-mode .brand-logo-gray{opacity:0.5;filter:grayscale(100%) brightness(0.35) contrast(1.2)}
.light-mode .logo-light-only{opacity:0.55;filter:none}
.light-mode .logo-partner:hover{background:rgba(0,0,0,0.06);transform:translateY(-2px)}
.light-mode .logo-partner:hover .brand-logo-gray{opacity:0;filter:none}
.light-mode .logo-partner:hover .brand-logo-color{opacity:1}

/* Mobile: 3 per row */
@media (max-width:768px){
    .logos-inner{flex-wrap:wrap;justify-content:center;gap:4px;padding:0 16px}
    .logo-partner{flex:0 0 calc(33.333% - 4px);max-width:calc(33.333% - 4px)}
    .brand-logo-gray,.brand-logo-color{height:24px;max-width:80px}
}

.calculator-section{background:var(--bg-3)}.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.calc-trust-list{display:flex;flex-direction:column;gap:12px;margin-top:24px}.calc-box{border-radius:var(--radius-lg);padding:40px;background:rgba(255,255,255,0.07);border:1px solid var(--glass-border);backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:20px;width:100%;max-width:480px;box-sizing:border-box;position:relative;z-index:2}.light-mode .calc-box{background:rgba(255,255,255,0.95);box-shadow:0 8px 40px rgba(0,0,0,0.08)}.calc-result{padding:20px 22px;margin-bottom:0;background:rgba(245,166,35,0.07);border:1.5px solid rgba(245,166,35,0.2);border-radius:var(--radius-sm);display:block!important}.calc-result-val{font-size:clamp(24px,5vw,38px);font-weight:800;color:var(--sun);letter-spacing:-1px;line-height:1;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.calc-result-label{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-weight:600;white-space:normal;word-break:break-word;line-height:1.4}.calc-field{margin-bottom:0;min-width:0}.calc-field label{display:block;font-size:12px;font-weight:700;color:var(--text-dim);margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.calc-input-wrap{position:relative}.calc-input-wrap span{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:16px;font-weight:700;color:var(--sun)}.calc-input{width:100%;padding:16px 18px 16px 42px;background:rgba(255,255,255,0.06);border:1.5px solid var(--glass-border);border-radius:var(--radius-sm);font-family:var(--font);font-size:clamp(18px,3vw,22px);font-weight:700;color:#fff;outline:none;transition:var(--tr);box-sizing:border-box;min-width:0}.light-mode .calc-input{background:rgba(0,0,0,0.05);border-color:rgba(0,0,0,0.12);color:#111}.calc-input:focus{border-color:var(--sun);background:rgba(245,166,35,0.07);box-shadow:0 0 0 4px rgba(245,166,35,0.1)}.calc-result-sub{font-size:13px;color:var(--text-dim);line-height:1.5;margin-top:6px;word-break:break-word}.light-mode .calc-result-sub{color:#6B7280}.calc-cta-wrap{margin-top:4px}.calc-cta-wrap .btn{width:100%;justify-content:center}.services-section{background:var(--bg-1)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{border-radius:var(--radius-lg);overflow:hidden;background:rgba(255,255,255,0.05);border:1px solid var(--glass-border);transition:var(--tr);position:relative}.light-mode .service-card{background:#fff;box-shadow:0 4px 24px rgba(0,0,0,0.07)}.service-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#F5A623,#FF6B00);transform:scaleX(0);transform-origin:left;transition:var(--tr)}.service-card:hover{border-color:rgba(245,166,35,0.3);transform:translateY(-6px)}.service-card:hover::after{transform:scaleX(1)}.service-card.featured{border-color:rgba(245,166,35,0.3);background:rgba(245,166,35,0.06)}.light-mode .service-card.featured{background:rgba(245,166,35,0.04)}.service-img{position:relative;aspect-ratio:16/9;overflow:hidden}.service-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.service-card:hover .service-img img{transform:scale(1.06)}.service-img-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,15,26,0.65) 0%,rgba(10,15,26,0.1) 60%,transparent 100%);transition:var(--tr)}.service-card:hover .service-img-overlay{background:linear-gradient(to top,rgba(245,100,0,0.45) 0%,rgba(10,15,26,0.15) 60%,transparent 100%)}.service-badge{position:absolute;top:14px;left:14px;z-index:2;padding:4px 14px;background:var(--sun);color:#0A0A0A;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;border-radius:50px}.service-body{padding:28px}.service-card h3{font-size:20px;font-weight:800;color:#fff;margin-bottom:10px;letter-spacing:-0.4px}.light-mode .service-card h3{color:#111827}.service-card p{font-size:14px;color:var(--text-dim);line-height:1.7;margin-bottom:18px}.light-mode .service-card p{color:#6B7280}.service-card ul{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.service-card ul li{font-size:14px;color:var(--text);padding-left:22px;position:relative}.light-mode .service-card ul li{color:#374151}.service-card ul li::before{content:'✓';position:absolute;left:0;color:var(--sun);font-weight:800}.service-link{display:inline-flex;align-items:center;gap:6px;color:var(--sun);font-size:14px;font-weight:700;transition:var(--tr)}.service-link:hover{gap:10px}.how-section{background:var(--bg-2);content-visibility:visible;contain-intrinsic-size:none}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.step-card{border-radius:var(--radius);padding:30px 22px;background:rgba(255,255,255,0.04);border:1px solid var(--glass-border);text-align:center;transition:var(--tr);position:relative}.light-mode .step-card{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,0.06)}.step-card:hover{background:rgba(255,255,255,0.08);transform:translateY(-4px)}.light-mode .step-card:hover{background:#fff;box-shadow:0 12px 36px rgba(0,0,0,0.1)}.step-emoji{font-size:34px;margin-bottom:14px;display:block}.step-card h4{font-size:15px;font-weight:700;color:#fff;margin-bottom:10px}.light-mode .step-card h4{color:#111827}.step-card p{font-size:13px;color:var(--text-dim);line-height:1.65}.step-card:not(:last-child)::after{content:'→';position:absolute;right:-17px;top:50%;transform:translateY(-50%);font-size:18px;color:rgba(245,166,35,0.35);z-index:1}.portfolio-section{background:var(--bg-3)}.bento-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:0}.bento-main{border-radius:var(--radius-lg);overflow:hidden;position:relative;grid-row:span 2}.bento-main img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;min-height:420px}.bento-main:hover img{transform:scale(1.04)}.bento-sub-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bento-card{border-radius:var(--radius);overflow:hidden;position:relative;aspect-ratio:4/3}.bento-card img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.bento-card:hover img{transform:scale(1.06)}.bento-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(5,8,16,0.9) 0%,rgba(5,8,16,0.6) 28%,rgba(5,8,16,0.1) 48%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:16px;transition:var(--tr)}.bento-main:hover .bento-overlay,.bento-card:hover .bento-overlay{background:linear-gradient(to top,rgba(5,8,16,0.96) 0%,rgba(5,8,16,0.8) 30%,rgba(5,8,16,0.25) 52%,transparent 68%)}.bento-tag{display:inline-block;padding:3px 12px;background:rgba(245,166,35,0.85);border-radius:50px;font-size:11px;font-weight:700;text-transform:uppercase;color:#0A0A0A;margin-bottom:8px;align-self:flex-start}.bento-info strong{display:block;font-size:15px;font-weight:700;color:#fff}.bento-info span{font-size:12px;color:rgba(255,255,255,0.7)}.reviews-section{background:var(--bg-2)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-card{border-radius:var(--radius-lg);padding:34px;background:rgba(255,255,255,0.05);border:1px solid var(--glass-border);backdrop-filter:blur(8px);transition:var(--tr)}.light-mode .review-card{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,0.06)}.review-card:hover{border-color:rgba(245,166,35,0.25);transform:translateY(-4px)}.review-stars{color:var(--sun);font-size:17px;letter-spacing:2px;margin-bottom:16px}.review-text{font-size:15px;color:var(--text);line-height:1.75;margin-bottom:24px;font-style:italic}.light-mode .review-text{color:#374151}.review-author{display:flex;align-items:center;gap:14px}.review-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#F5A623,#FF6B00);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;color:#0A0A0A;flex-shrink:0}.review-name{font-size:14px;font-weight:700;color:#fff}.light-mode .review-name{color:#111827}.review-role{font-size:12px;color:var(--text-dim);margin-top:2px}.faq-section{background:var(--bg-1)}.faq-list{display:flex;flex-direction:column;gap:12px;max-width:800px}.faq-item{border-radius:var(--radius);border:1px solid var(--glass-border);background:rgba(255,255,255,0.04);overflow:hidden;transition:var(--tr)}.light-mode .faq-item{background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.05)}.faq-item.open{border-color:rgba(245,166,35,0.3);background:rgba(245,166,35,0.05)}.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:none;border:none;cursor:pointer;font-family:var(--font);font-size:16px;font-weight:700;color:#fff;text-align:left;transition:var(--tr)}.light-mode .faq-q{color:#111827}.faq-q:hover{color:var(--sun)}.faq-arrow{font-size:18px;color:var(--sun);transition:transform 0.35s ease;flex-shrink:0}.faq-item.open .faq-arrow{transform:rotate(180deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s ease,padding 0.3s ease}.faq-item.open .faq-a{max-height:300px}.faq-a p{padding:0 24px 22px;font-size:15px;color:var(--text-dim);line-height:1.75}.light-mode .faq-a p{color:#6B7280}.contact-section{background:var(--bg-3)}.contact-grid{display:grid;grid-template-columns:5fr 4fr;gap:60px;align-items:start}.contact-form-wrap{border-radius:var(--radius-lg);padding:44px;background:rgba(255,255,255,0.06);border:1px solid var(--glass-border);backdrop-filter:blur(8px)}.light-mode .contact-form-wrap{background:rgba(255,255,255,0.95);box-shadow:0 8px 40px rgba(0,0,0,0.08)}.contact-form-title{font-size:26px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:-0.5px}.light-mode .contact-form-title{color:#111827}.contact-form-sub{font-size:14px;color:var(--text-dim);margin-bottom:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.form-group label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}.light-mode .form-group label{color:#6B7280}.form-group input,.form-group textarea{padding:14px 16px;background:rgba(255,255,255,0.07);border:1.5px solid var(--glass-border);border-radius:var(--radius-sm);font-family:var(--font);font-size:15px;color:#fff;outline:none;transition:var(--tr);resize:none}.form-group select:focus{border-color:var(--sun);background:rgba(245,166,35,0.05);box-shadow:0 0 0 4px rgba(245,166,35,0.1)}
.light-mode .form-group select{background:rgba(0,0,0,0.03);border-color:rgba(0,0,0,0.09);color:#111;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F5A623' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.form-group select{padding:14px 40px 14px 16px;background:rgba(255,255,255,0.04);border:1px solid var(--glass-border);border-radius:var(--radius);font-family:var(--font);font-size:15px;color:#fff;outline:none;transition:var(--tr);width:100%;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23F5A623' stroke-width='2' stroke-linecap='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.light-mode .form-group input,.light-mode .form-group select,.light-mode .form-group textarea{background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.12);color:#111}.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(255,255,255,0.25)}.light-mode .form-group input::placeholder,.light-mode .form-group textarea::placeholder{color:#9CA3AF}.form-group select option{background:#1C2235;color:#fff}.light-mode .form-group select option{background:#fff;color:#111}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--sun);background:rgba(245,166,35,0.07);box-shadow:0 0 0 4px rgba(245,166,35,0.1)}.form-note{font-size:12px;color:var(--text-dim);text-align:center;margin-top:8px}.field-legal{font-size:11px;color:var(--text-dim);margin-top:2px}.contact-info-col{display:flex;flex-direction:column;gap:16px}.contact-info-title{font-size:30px;font-weight:800;color:#fff;letter-spacing:-1px;margin-bottom:6px}.light-mode .contact-info-title{color:#111827}.contact-info-sub{font-size:15px;color:var(--text-dim);margin-bottom:10px;line-height:1.7}.info-card{display:flex;align-items:flex-start;gap:14px;padding:18px;border-radius:var(--radius);background:rgba(255,255,255,0.05);border:1px solid var(--glass-border);transition:var(--tr)}.light-mode .info-card{background:rgba(0,0,0,0.03);box-shadow:0 2px 12px rgba(0,0,0,0.05)}.info-card:hover{background:rgba(255,255,255,0.09)}.light-mode .info-card:hover{background:rgba(0,0,0,0.05)}.info-icon{width:42px;height:42px;border-radius:var(--radius-sm);background:rgba(245,166,35,0.12);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.info-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim);margin-bottom:3px}.info-val{font-size:15px;font-weight:600;color:#fff}.light-mode .info-val{color:#111827}.info-legal{font-size:10px;color:var(--text-dim);margin-top:2px}.whatsapp-btn{display:flex;align-items:center;gap:12px;padding:16px 24px;background:linear-gradient(135deg,#25D366,#128C7E);border-radius:50px;font-size:15px;font-weight:700;color:#fff;transition:var(--tr);box-shadow:0 4px 20px rgba(37,211,102,0.3);margin-top:4px}.whatsapp-btn:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(37,211,102,0.45)}.contact-map{margin-top:40px;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--glass-border)}.site-footer{background:var(--dark-2);border-top:1px solid var(--glass-border);padding:72px 0 0}.light-mode .site-footer{background:#E8ECF2}.footer-grid{max-width:1180px;margin:0 auto;padding:0 28px 60px;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr 1fr;gap:40px}.footer-brand p{font-size:14px;color:var(--text-dim);max-width:280px;line-height:1.7;margin-top:14px}.footer-socials{display:flex;gap:10px;margin-top:20px}.social-icon{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.07);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;color:var(--text-dim);transition:var(--tr)}.light-mode .social-icon{background:rgba(0,0,0,0.06);border-color:rgba(0,0,0,0.1)}.social-icon:hover{background:var(--sun);border-color:var(--sun);color:#0A0A0A;transform:translateY(-2px)}.footer-col h5{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#fff;margin-bottom:18px}.light-mode .footer-col h5{color:#111827}.footer-col ul{display:flex;flex-direction:column;gap:10px}.footer-col a{font-size:14px;color:var(--text-dim)}.footer-col a:hover{color:var(--sun)}.footer-legal-note{display:block;font-size:10px;color:var(--text-dim);margin-top:3px}.footer-bottom p,.footer-bottom a:hover{color:var(--sun)}
/* ── FAQ two-column layout ── */
.faq-layout{
    display:grid;
    /* Left column for questions, right column wider for image overflow */
    grid-template-columns:1fr 480px;
    gap:60px;
    align-items:start;
    overflow:visible;
}
.faq-content{min-width:0}
.faq-content .section-sub{margin-bottom:36px}

/* Image column — sticky, image overflows its column */
.faq-visual{
    position:static;
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
    overflow:visible;
    /* Fixed height matches typical FAQ list height — no reflow */
    align-self:start;
}
.faq-img-wrap{
    position:relative;
    background:transparent;
    overflow:visible;
    margin-right:-160px;
    margin-left:-60px;
    /* Lock aspect ratio — no layout shift when FAQ items open */
    aspect-ratio:1/1;
}
.faq-product-img{
    display:block;
    /* Much bigger — 130% of column width */
    width:130%;
    max-width:680px;
    height:auto;
    transition:transform 0.6s cubic-bezier(0.34,1.2,0.64,1);
    filter:drop-shadow(0 30px 80px rgba(0,0,0,0.5)) drop-shadow(0 0 40px rgba(245,166,35,0.08));
    /* Slight rotation for dynamism */
    transform:rotate(-2deg);
}
.light-mode .faq-product-img{
    filter:drop-shadow(0 20px 50px rgba(0,0,0,0.2));
}
.faq-img-wrap:hover .faq-product-img{
    transform:rotate(0deg) scale(1.04) translateY(-8px);
}

/* Mobile: stack — image below title, above questions, full width */
@media (max-width:1024px){
    .faq-layout{
        grid-template-columns:1fr;
        gap:0;
    }
    .faq-visual{
        position:static;
        overflow:hidden;
        margin:0 auto 40px;
        width:100%;
        max-width:520px;
    }
    .faq-img-wrap{
        margin:0;
        width:100%;
    }
    .faq-product-img{
        width:100%;
        max-width:100%;
        transform:none;
    }
    .faq-content{order:1}
    .faq-visual{order:2}
}
@media (max-width:768px){
    .faq-visual{max-width:100%;margin-bottom:32px}
}

.sticky-wa{position:fixed;bottom:28px;right:28px;width:52px;height:52px;border-radius:50%;background:#25D366;box-shadow:0 4px 20px rgba(37,211,102,0.4);display:flex;align-items:center;justify-content:center;z-index:999;transition:transform 0.2s ease,box-shadow 0.2s ease;text-decoration:none}.sticky-wa:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(37,211,102,0.5)}@keyframes waPulse{0%,100%{box-shadow:0 4px 24px rgba(37,211,102,0.5)}50%{box-shadow:0 4px 40px rgba(37,211,102,0.7),0 0 0 10px rgba(37,211,102,0.1)}}.back-to-top{position:fixed;bottom:28px;left:28px;z-index:999;width:44px;height:44px;border-radius:50%;background:rgba(10,15,26,0.85);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);transition:opacity 0.3s,transform 0.3s;pointer-events:none}.light-mode .back-to-top{background:rgba(255,255,255,0.9);border-color:rgba(0,0,0,0.12);color:#111}.back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top:hover{background:rgba(245,166,35,0.15);border-color:rgba(245,166,35,0.4)}.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.7s ease,transform 0.7s cubic-bezier(0.22,1,0.36,1)}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width:1024px){.hero-inner{grid-template-columns:1fr;gap:48px}.hero-img-strip{width:100%;opacity:0.12;z-index:0}.hero-img-strip::before{background:var(--dark)}.light-mode .hero-img-strip::before{background:#FFFBF0}.services-grid{grid-template-columns:1fr}.steps-grid{grid-template-columns:repeat(2,1fr)}.bento-grid{grid-template-columns:1fr}.bento-main{grid-row:span 1}.bento-main img{min-height:280px}.reviews-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:24px}.calc-grid{grid-template-columns:1fr}.calc-right{min-height:auto;overflow:hidden}.piggy-wrap{display:none}}@media (max-width:768px){.header-inner{padding:0 20px}.section,.section-alt,.section-mid{padding:72px 0}.nav-links{display:none}.burger{display:flex}.nav-links.open{display:flex;flex-direction:column;position:fixed;top:0;left:0;right:0;bottom:0;background:#0B0F1A;border-top:2px solid rgba(245,166,35,0.6);padding:100px 32px 40px;z-index:101;gap:0;justify-content:flex-start}.light-mode .nav-links.open{background:#ffffff;border-top:2px solid rgba(245,166,35,0.7)}.site-header{background:#0B0F1A;border-bottom:1px solid rgba(245,166,35,0.2)}.light-mode .site-header{background:#ffffff;border-bottom:1px solid rgba(0,0,0,0.1)}.nav-links.open a{display:block;padding:16px 0;font-size:22px;font-weight:700;color:#fff;border-bottom:1px solid var(--glass-border);border-radius:0}.light-mode .nav-links.open a{color:#111827}.nav-links.open .nav-cta{margin-top:20px;border-radius:50px!important;text-align:center;display:flex;align-items:center;justify-content:center;padding:16px 24px;border-bottom:none!important}.burger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.burger.active span:nth-child(2){opacity:0}.burger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero{padding:110px 20px 60px}.hero-title{letter-spacing:-1px}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%;justify-content:center}.mini-cards{grid-template-columns:1fr 1fr}.steps-grid{grid-template-columns:1fr 1fr}.step-card::after{display:none}.bento-sub-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.contact-form-wrap{padding:28px 22px}.footer-grid{grid-template-columns:1fr}.hero-trust{flex-direction:column;align-items:flex-start;gap:10px}.trust-sep{display:none}}@media (max-width:480px){.hero-title{font-size:36px}.bento-sub-grid{grid-template-columns:1fr}.mini-cards{grid-template-columns:1fr 1fr}.steps-grid{grid-template-columns:1fr}}.toggle-moon svg{display:block}.toggle-moon{opacity:1 !important;transform:scale(1) !important}.light-mode .toggle-moon{opacity:0.45 !important;transform:scale(0.85) !important}@media (min-width:1025px){.hero-img-strip{display:block !important;opacity:1}.hero-img-strip img{opacity:0.35}.hero-img-strip::before{background:linear-gradient(to right,var(--dark) 0%,rgba(11,15,26,0.6) 50%,transparent 100%)}.light-mode .hero-img-strip::before{background:linear-gradient(to right,#FFFBF0 0%,rgba(255,251,240,0.5) 50%,transparent 100%)}}.savings-bar-fill{animation:none !important;transform:scaleX(0);transform-origin:left;transition:transform 2.5s cubic-bezier(0.4,0,0.2,1)}.savings-bar-fill.animate{transform:scaleX(0.7)}.whatsapp-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:linear-gradient(135deg,#25D366,#128C7E);border-radius:50px;font-size:15px;font-weight:700;color:#fff;transition:var(--tr);box-shadow:0 4px 20px rgba(37,211,102,0.3);margin-top:4px;width:100%}.whatsapp-btn:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(37,211,102,0.45)}.wa-icon-outline{flex-shrink:0;color:#fff}.sticky-wa{position:fixed;bottom:28px;right:28px;width:52px;height:52px;border-radius:50%;background:#25D366;box-shadow:0 4px 20px rgba(37,211,102,0.4);display:flex;align-items:center;justify-content:center;z-index:999;transition:transform 0.2s ease,box-shadow 0.2s ease;text-decoration:none}.nav-close:hover{background:rgba(245,166,35,0.2);border-color:var(--sun);color:var(--sun)}.light-mode .footer-legal-bar p{font-size:11px;color:var(--text-dim);max-width:1180px;margin:0 auto;line-height:1.6}.footer-legal-bar a{color:var(--sun);text-decoration:underline}.footer-legal-bar a:hover{color:var(--sun-dark)}html{scroll-behavior:auto}@media (min-width:1025px){.hero-img-strip{display:block !important;width:52%}.hero-img-strip img{opacity:0.55 !important}.hero-img-strip::before{background:linear-gradient(
to right,var(--dark) 0%,var(--dark) 30%,rgba(11,15,26,0.7) 55%,transparent 100%
) !important}.light-mode .hero-img-strip::before{background:linear-gradient(
to right,#FFFBF0 0%,#FFFBF0 25%,rgba(255,251,240,0.65) 55%,transparent 100%
) !important}}.footer-legal-bar p{font-size:11px;color:var(--text-dim);text-align:center;max-width:800px;margin:0 auto;line-height:1.65}.footer-legal-bar a{color:inherit;text-decoration:none;transition:color 0.2s}.footer-legal-bar a:hover{color:var(--sun)}.info-icon svg{display:block}.light-mode .info-icon{background:rgba(245,166,35,0.08) !important;border-color:rgba(245,166,35,0.3) !important}.how-layout{display:grid;grid-template-columns:1fr 420px;gap:80px;align-items:center}.how-content{min-width:0;overflow:visible}.how-content .section-sub{margin-bottom:40px}.steps-grid-v{display:flex;flex-direction:column;gap:0;position:relative;overflow:visible}.step-card-v{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;column-gap:20px;row-gap:0;position:relative;padding:0 0 32px 0}.step-card-v:last-child{padding-bottom:0}.step-num-bg{grid-column:1;grid-row:1 / 3;font-size:52px;font-weight:800;line-height:1;letter-spacing:-2px;font-family:var(--font);background:linear-gradient(135deg,rgba(245,166,35,0.35),rgba(255,107,0,0.15));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;align-self:start;padding-top:2px;user-select:none;min-width:64px;width:64px;text-align:center;overflow:visible}.step-icon-wrap{display:none}.step-body{grid-column:2;grid-row:1 / 3;padding-top:6px}.step-body h4{font-size:17px;font-weight:800;color:#fff;margin-bottom:6px;letter-spacing:-0.3px}.light-mode .step-body h4{color:#111827}.step-body p{font-size:14px;color:var(--text-dim);line-height:1.65}.step-connector{position:absolute;left:32px;top:58px;bottom:0;width:1px;background:linear-gradient(to bottom,rgba(245,166,35,0.4),rgba(245,166,35,0.1))}.how-visual{position:relative;display:flex;align-items:flex-end;justify-content:center}.technician-img{width:100%;max-width:420px;height:auto;display:block;transform:translateX(60px);opacity:0;transition:transform 0.9s cubic-bezier(0.34,1.2,0.64,1),opacity 0.7s ease;filter:drop-shadow(0 20px 60px rgba(0,0,0,0.4))}.technician-img.reveal-right.visible{transform:translateX(0);opacity:1}
/* ── How section — logo watermark behind technician ── */
.how-visual{
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    overflow:visible;
    /* Establish stacking context so z-index works between logo and technician */
    isolation:isolate;
}

/* Logo: anchored to right, bleeds left — avoids body overflow-x clip */
.how-logo-bg{
    position:absolute;
    top:50%;
    right:0;
    left:auto;
    transform:translateY(-50%);
    pointer-events:none;
    z-index:0;
    overflow:visible;
    /* Must be OUTSIDE the technician stacking context */
}
.how-logo-icon{
    width:500px;
    max-width:none;
    height:auto;
    display:block;
    filter:brightness(0) invert(1);
    opacity:0.04;
    transform:none;
    /* No drop-shadow — that creates overflow:clip */
}

/* Technician: z-index ABOVE logo bg, but below .how-logo-bg is sibling so z-index works */
.technician-img{
    position:relative;
    z-index:2;
}

.light-mode .how-logo-icon{
    filter:brightness(0);
    opacity:0.04;
}

@media (max-width:1024px){
    .how-logo-icon{width:360px}
}
@media (max-width:768px){
    .how-visual{overflow:hidden}
    .how-logo-icon{width:260px}
}

.tech-badge{position:absolute;bottom:40px;left:-20px;display:flex;align-items:center;gap:14px;padding:16px 22px;background:rgba(10,15,26,0.9);backdrop-filter:blur(8px);border:1px solid rgba(245,166,35,0.4);border-radius:var(--radius);box-shadow:0 8px 40px rgba(0,0,0,0.4),0 0 0 1px rgba(245,166,35,0.1);min-width:220px;z-index:3}.light-mode .tech-badge{background:rgba(255,255,255,0.92);border-color:rgba(245,166,35,0.25)}.tech-badge-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#F5A623,#FF6B00);display:flex;align-items:center;justify-content:center;flex-shrink:0}.tech-badge strong{display:block;font-size:15px;font-weight:800;color:#fff;line-height:1.2;letter-spacing:-0.3px}.light-mode .tech-badge strong{color:#111827}.tech-badge span{font-size:12px;color:var(--text-dim)}@media (max-width:1024px){.how-layout{grid-template-columns:1fr;gap:48px}.how-visual{max-width:360px;margin:0 auto}.technician-img{max-width:320px}.tech-badge{left:0;bottom:20px}}@media (max-width:768px){.technician-img{max-width:260px}.how-visual{display:none}}.calc-right{position:relative;display:flex;align-items:center;justify-content:center;min-height:460px;overflow:visible}.piggy-wrap{will-change:transform;position:absolute;top:50%;right:-110px;transform:translateY(-50%) translateX(0px);width:240px;height:240px;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;opacity:1;animation:piggyPeek 6s ease-in-out infinite;animation-delay:1.5s}@keyframes piggyPeek{0%{transform:translateY(-50%) translateX(0px)}15%{transform:translateY(-50%) translateX(80px)}40%{transform:translateY(-50%) translateX(80px)}55%{transform:translateY(-50%) translateX(0px)}100%{transform:translateY(-50%) translateX(0px)}}.piggy-img{width:240px;height:240px;object-fit:contain;filter:drop-shadow(0 0 24px rgba(245,166,35,0.35));display:block}.logo-svg-link{display:inline-flex;align-items:center;text-decoration:none}.logo-img{display:block;height:28px;width:auto;max-width:180px;object-fit:contain;transition:opacity 0.3s ease}.logo-img-dark{display:block}.logo-img-light{display:none}.light-mode .logo-img-dark{display:none}.light-mode .logo-img-light{display:block}.site-footer .logo-img{height:24px}.logo-mark,.logo-name{display:none}.lead-section{background:var(--bg-2)}.lead-grid{display:grid;grid-template-columns:380px 1fr;gap:80px;align-items:center}.lead-visual{display:flex;justify-content:center;align-items:center;position:relative;padding:30px 30px 30px 10px}.pdf-mockup{position:relative;width:260px}.pdf-shadow{position:absolute;width:260px;height:360px;border-radius:12px;background:var(--dark-3);border:1px solid var(--glass-border)}.pdf-shadow-2{top:8px;left:12px;opacity:0.6;transform:rotate(2deg)}.pdf-shadow-3{top:14px;left:20px;opacity:0.35;transform:rotate(4deg)}.pdf-cover{position:relative;z-index:2;width:260px;min-height:360px;border-radius:12px;background:linear-gradient(160deg,#131826 0%,#0B0F1A 100%);border:1px solid rgba(245,166,35,0.3);padding:28px 24px 24px;box-shadow:0 20px 60px rgba(0,0,0,0.4),0 0 0 1px rgba(245,166,35,0.15);transition:var(--tr)}.pdf-cover:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:0 28px 70px rgba(0,0,0,0.5),0 0 40px rgba(245,166,35,0.1)}.light-mode .pdf-cover{background:linear-gradient(160deg,#1C2235 0%,#111827 100%)}.pdf-sun{font-size:32px;margin-bottom:14px;filter:drop-shadow(0 0 12px rgba(245,166,35,0.5))}.pdf-badge{display:inline-block;padding:3px 10px;background:rgba(245,166,35,0.15);border:1px solid rgba(245,166,35,0.3);border-radius:50px;font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--sun);margin-bottom:14px}.pdf-cover h3{font-size:22px;font-weight:800;color:#fff;line-height:1.2;letter-spacing:-0.5px;margin-bottom:8px}.pdf-cover p{font-size:12px;color:rgba(255,255,255,0.5);line-height:1.5;margin-bottom:20px}.pdf-chapters{display:flex;flex-direction:column;gap:6px;border-top:1px solid rgba(255,255,255,0.08);padding-top:16px}.pdf-chapters span{font-size:10px;color:rgba(255,255,255,0.45);font-weight:500;letter-spacing:0.2px}.pdf-chapters span::before{content:'— ';color:var(--sun)}.lead-desc{font-size:16px;color:var(--text-dim);line-height:1.7;margin-bottom:28px}.light-mode .lead-desc{color:#4B5563}.lead-benefits{display:flex;flex-direction:column;gap:11px;margin-bottom:32px}.lead-benefit{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--text)}.light-mode .lead-benefit{color:#374151}.lead-benefit strong{color:#fff}.light-mode .lead-benefit strong{color:#111827}.benefit-check{color:var(--sun);font-weight:800;font-size:14px;flex-shrink:0;margin-top:1px}.lead-form-row{display:flex;gap:12px;margin-bottom:12px}.lead-input{flex:1;padding:15px 18px;background:rgba(255,255,255,0.07);border:1.5px solid var(--glass-border);border-radius:var(--radius-sm);font-family:var(--font);font-size:15px;color:#fff;outline:none;transition:var(--tr)}.light-mode .lead-input{background:rgba(0,0,0,0.05);border-color:rgba(0,0,0,0.12);color:#111}.lead-input::placeholder{color:rgba(255,255,255,0.3)}.light-mode .lead-input::placeholder{color:#9CA3AF}.lead-input:focus{border-color:var(--sun);background:rgba(245,166,35,0.07);box-shadow:0 0 0 4px rgba(245,166,35,0.1)}.lead-note{font-size:12px;color:var(--text-dim)}.lead-success{display:flex;align-items:flex-start;gap:16px;padding:24px;background:rgba(34,197,94,0.08);border:1px solid rgba(34,197,94,0.25);border-radius:var(--radius);animation:fadeUp 0.5s ease}.success-icon{font-size:32px;flex-shrink:0}.lead-success strong{display:block;font-size:16px;font-weight:700;color:#fff;margin-bottom:4px}.light-mode .lead-success strong{color:#111827}.lead-success p{font-size:13px;color:var(--text-dim);margin-bottom:12px}@media (max-width:1024px){.lead-grid{grid-template-columns:1fr;gap:48px}.lead-visual{padding:10px}.pdf-mockup{margin:0 auto}}@media (max-width:640px){.lead-form-row{flex-direction:column}.lead-input{border-radius:var(--radius-sm)}.lead-success{flex-direction:column}}@media (max-width:768px){.lead-mobile-center{text-align:center}.lead-mobile-center .section-eyebrow,.lead-mobile-center .section-title,.lead-mobile-center .lead-desc{text-align:center}.lead-mobile-center .lead-benefits{align-items:center}.lead-mobile-center .lead-benefit{justify-content:center}.lead-mobile-center .lead-form-row{flex-direction:column}.lead-mobile-center .lead-input,.lead-mobile-center .btn{width:100%;text-align:center;justify-content:center}.lead-mobile-center .lead-note{text-align:center}}
/* ── Meraki UI Contact Cards ── */
.meraki-info-cards{
    display:flex;
    flex-direction:column;
    gap:16px;
    margin-top:8px;
}
.meraki-card{
    display:flex;
    align-items:flex-start;
    gap:16px;
    padding:20px;
    background:rgba(255,255,255,0.05);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:14px;
    transition:border-color 0.2s ease, background 0.2s ease;
}
.meraki-card:hover{
    background:rgba(255,255,255,0.08);
    border-color:rgba(245,166,35,0.25);
}
.light-mode .meraki-card{
    background:#fff;
    border-color:rgba(0,0,0,0.07);
    box-shadow:0 2px 12px rgba(0,0,0,0.05);
}
.light-mode .meraki-card:hover{
    border-color:rgba(245,166,35,0.35);
    box-shadow:0 4px 20px rgba(245,166,35,0.1);
}
/* Icon wrapper — coloured square (Meraki UI style) */
.meraki-icon-wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    min-width:44px;
    border-radius:10px;
    background:rgba(245,166,35,0.15);
    color:#F5A623;
    border:1px solid rgba(245,166,35,0.2);
}
.light-mode .meraki-icon-wrap{
    background:rgba(245,166,35,0.1);
    border-color:rgba(245,166,35,0.25);
}
.meraki-card-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.meraki-card-label{
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.8px;
    color:var(--text-dim);
    margin:0;
}
.light-mode .meraki-card-label{color:#9CA3AF}
.meraki-card-value{
    font-size:15px;
    font-weight:600;
    color:#fff;
    margin:0;
    line-height:1.4;
}
.light-mode .meraki-card-value{color:#111827}
.meraki-card-note{
    font-size:11px;
    color:var(--text-dim);
    margin:0;
    line-height:1.4;
}
.light-mode .meraki-card-note{color:#9CA3AF}


.light-mode .whatsapp-btn{color:#fff}
.light-mode .wa-icon-outline{color:#fff}
.whatsapp-btn svg{color:#fff}
@media (max-width:480px){.logo-img{max-width:130px;height:22px}}
/* ── Legal pages ── */
.legal-page{padding:80px 0 100px}
.legal-container{max-width:820px}
.legal-header{margin-bottom:56px}
.legal-body h2{font-size:20px;font-weight:700;color:var(--text);margin:40px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--glass-border)}
.legal-body h3{font-size:16px;font-weight:700;color:var(--sun);margin:24px 0 8px}
.legal-body p,.legal-body li{font-size:15px;line-height:1.75;color:var(--text-dim);margin-bottom:10px}
.legal-body ul{padding-left:20px;margin-bottom:16px}
.legal-body ul li{list-style:disc;margin-bottom:6px}
.legal-body a{color:var(--sun);text-decoration:none}
.legal-body a:hover{text-decoration:underline}
.legal-table{width:100%;border-collapse:collapse;margin:16px 0 28px;font-size:14px}
.legal-table th,.legal-table td{padding:12px 16px;border:1px solid var(--glass-border);text-align:left;line-height:1.5}
.legal-table th{font-weight:700;color:var(--text);background:rgba(255,255,255,0.04);width:200px}
.legal-table td{color:var(--text-dim)}
.legal-table thead th{background:rgba(245,166,35,0.08);color:var(--sun);width:auto}
.legal-ral-card{background:rgba(255,255,255,0.04);border:1px solid var(--glass-border);border-radius:var(--radius);padding:24px 28px;margin:16px 0 28px}
.light-mode .legal-table th{background:rgba(0,0,0,0.03)}
.light-mode .legal-ral-card{background:rgba(0,0,0,0.02)}

/* ── Footer links bar ── */
.footer-links-bar{
    max-width:1180px;
    margin:0 auto;
    padding:40px 28px 48px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    border-top:1px solid var(--glass-border);
}
.footer-links-col h6{
    font-size:11px;font-weight:700;
    text-transform:uppercase;letter-spacing:2px;
    color:var(--sun);margin-bottom:16px;
}
.footer-links-col ul{list-style:none;padding:0;margin:0;
    display:flex;flex-wrap:wrap;gap:6px 20px;
}
.footer-links-col li a{
    font-size:13px;color:var(--text-dim);text-decoration:none;
    transition:color 0.15s ease;
}
.footer-links-col li a:hover{color:var(--sun)}
@media (max-width:768px){
    .footer-links-bar{grid-template-columns:1fr;gap:28px;padding:32px 20px 40px}
}

/* ── Footer bottom bar — full width centered ── */
.footer-bottom{width:100%;padding:28px 40px;border-top:1px solid var(--glass-border);text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;box-sizing:border-box}
.footer-bottom p{font-size:12px;color:var(--text-dim);margin:0;max-width:860px;line-height:1.6;text-align:center}
.footer-bottom a{color:var(--text-dim);text-decoration:none;transition:color 0.15s}
.footer-bottom a:hover{color:var(--sun)}
.footer-legal-note{font-size:12px !important;opacity:0.7}

/* Footer col Legal — white heading, dense links */
.footer-col h5.footer-col-white{color:#fff}
.light-mode .footer-col h5.footer-col-white{color:var(--text)}
.footer-col-dense{display:flex;flex-direction:column;gap:2px}
.footer-col-dense li a{font-size:13px;line-height:1.4}

/* Footer logo — color (no filter) */

/* ── Custom Select Dropdown ── */
.custom-select{
    position:relative;
    width:100%;
    font-family:var(--font);
    font-size:15px;
    user-select:none;
}

/* Trigger button — matches form inputs */
.custom-select-trigger{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:14px 16px;
    background:rgba(255,255,255,0.04);
    border:1px solid var(--glass-border);
    border-radius:var(--radius);
    color:var(--text-dim);
    font-family:var(--font);
    font-size:15px;
    font-weight:400;
    text-align:left;
    cursor:pointer;
    transition:border-color 0.15s,background 0.15s,color 0.15s;
    outline:none;
}
.custom-select-trigger:hover{
    border-color:rgba(245,166,35,0.4);
    background:rgba(255,255,255,0.06);
}
.custom-select.open .custom-select-trigger,
.custom-select-trigger:focus{
    border-color:var(--sun);
    background:rgba(245,166,35,0.05);
    box-shadow:0 0 0 4px rgba(245,166,35,0.1);
    color:var(--text);
}
.custom-select-trigger.has-value{color:var(--text)}

/* Arrow icon */
.custom-select-arrow{
    flex-shrink:0;
    color:var(--sun);
    transition:transform 0.2s ease;
}
.custom-select.open .custom-select-arrow{transform:rotate(180deg)}

/* Dropdown list */
.custom-select-dropdown{
    position:absolute;
    top:calc(100% + 6px);
    left:0;right:0;
    z-index:200;
    list-style:none;
    padding:6px;
    margin:0;
    background:var(--bg-2);
    border:1px solid var(--glass-border);
    border-radius:var(--radius);
    box-shadow:0 16px 48px rgba(0,0,0,0.4),0 0 0 1px rgba(255,255,255,0.05);
    backdrop-filter:blur(12px);
    /* Hidden by default */
    opacity:0;
    transform:translateY(-8px);
    pointer-events:none;
    transition:opacity 0.18s ease,transform 0.18s ease;
}
.custom-select.open .custom-select-dropdown{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}

/* Dropdown items */
.custom-select-dropdown li{
    padding:11px 14px;
    border-radius:calc(var(--radius) - 4px);
    color:var(--text-dim);
    font-size:14px;
    font-weight:500;
    cursor:pointer;
    transition:background 0.12s ease,color 0.12s ease;
    display:flex;
    align-items:center;
    gap:10px;
}
.custom-select-dropdown li::before{
    content:'';
    width:6px;height:6px;
    border-radius:50%;
    background:var(--glass-border);
    flex-shrink:0;
    transition:background 0.12s;
}
.custom-select-dropdown li:hover{
    background:rgba(245,166,35,0.08);
    color:var(--text);
}
.custom-select-dropdown li:hover::before{
    background:var(--sun);
}
.custom-select-dropdown li.selected{
    background:rgba(245,166,35,0.12);
    color:var(--sun);
    font-weight:600;
}
.custom-select-dropdown li.selected::before{
    background:var(--sun);
}

/* ── Light mode overrides ── */
.light-mode .custom-select-trigger{
    background:rgba(0,0,0,0.03);
    border-color:rgba(0,0,0,0.09);
    color:#888;
}
.light-mode .custom-select-trigger.has-value{color:#111}
.light-mode .custom-select.open .custom-select-trigger,
.light-mode .custom-select-trigger:focus{
    border-color:var(--sun);
    background:rgba(245,166,35,0.04);
    color:#111;
}
.light-mode .custom-select-dropdown{
    background:#ffffff;
    border-color:rgba(0,0,0,0.08);
    box-shadow:0 12px 40px rgba(0,0,0,0.12),0 0 0 1px rgba(0,0,0,0.06);
}
.light-mode .custom-select-dropdown li{color:#555}
.light-mode .custom-select-dropdown li::before{background:#ddd}
.light-mode .custom-select-dropdown li:hover{background:rgba(245,166,35,0.07);color:#111}
.light-mode .custom-select-dropdown li.selected{background:rgba(245,166,35,0.1);color:#b47332}

/* ═══════════════════════════════════════════════════════════
   BLOG — Single Post Layout
   Inherits: --sun, --font, --radius, --glass-border, --text,
             --text-dim, --bg-1/2/3, .btn, .container, .section-eyebrow
   ═══════════════════════════════════════════════════════════ */

/* Reading progress bar */
.read-progress{
    position:fixed;top:0;left:0;height:3px;width:0%;
    background:linear-gradient(90deg,var(--sun),#FF6B00);
    z-index:9999;transition:width 0.1s linear;
}

/* ── Breadcrumbs ── */
.blog-breadcrumbs{padding:24px 0 0}
.blog-breadcrumbs .container{max-width:860px;margin:0 auto;padding:0 28px}
.blog-breadcrumbs ol{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;list-style:none;padding:0;margin:0;overflow:hidden;width:100%}
.blog-breadcrumbs li,.blog-breadcrumbs .bc-sep{font-size:13px;color:var(--text-dim)}
.blog-breadcrumbs a{color:var(--text-dim);text-decoration:none;transition:color 0.15s ease}
.blog-breadcrumbs a:hover{color:var(--white);text-decoration:underline}
.blog-breadcrumbs a:hover{color:var(--sun)}
.blog-breadcrumbs .bc-current{color:var(--text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:none;flex:1;min-width:0}
.blog-breadcrumbs .bc-sep{margin:0 2px;opacity:0.4}

/* ── Post Header ── */
.blog-header{padding:24px 0 20px}
.blog-header-inner{max-width:860px}
.blog-meta-top{display:flex;align-items:center;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.blog-cat-badge{
    background:rgba(245,166,35,0.15);color:var(--sun);
    font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
    padding:4px 12px;border-radius:50px;border:1px solid rgba(245,166,35,0.3);
}
.blog-meta-sep{color:var(--text-dim);opacity:0.4}
.blog-breadcrumbs time,.blog-meta-top time{font-size:13px;color:var(--text-dim)}
.blog-read-time{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--text-dim)}
.blog-title{
    font-size:clamp(28px,4vw,46px);font-weight:800;line-height:1.18;
    letter-spacing:-1px;color:var(--white);margin:0 0 28px;
    max-width:800px;
}
.blog-author{display:flex;align-items:center;gap:12px}
.blog-author-avatar img,.blog-author-avatar-placeholder{
    width:40px;height:40px;border-radius:50%;object-fit:cover;
    border:2px solid var(--glass-border);
}
.blog-author-avatar-placeholder{
    background:linear-gradient(135deg,var(--sun),#FF6B00);
    display:flex;align-items:center;justify-content:center;
    font-size:16px;font-weight:800;color:#0A0A0A;
}
.blog-author-name{display:block;font-size:14px;font-weight:700;color:var(--text)}
.blog-author-role{display:block;font-size:12px;color:var(--text-dim)}

/* ── Hero Image ── */
.blog-hero-image{padding:0 0 24px}
.blog-hero-img{
    width:100%;max-height:500px;object-fit:cover;
    border-radius:var(--radius-lg);display:block;
}
.blog-img-caption{
    margin-top:10px;font-size:13px;color:var(--text-dim);
    text-align:center;font-style:italic;line-height:1.5;
}

/* ── Two-column layout: content + sidebar ── */
/* ── TOC — accordion above content, collapsed by default ── */
.blog-toc{width:100%;margin-bottom:24px}
.blog-toc-inner{
    background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);overflow:hidden;
}
.blog-toc-header{
    display:flex;align-items:center;justify-content:space-between;
    gap:8px;cursor:pointer;user-select:none;
    font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;
    color:var(--text-dim);padding:16px 20px;
    transition:background 0.15s,color 0.15s;
}
.blog-toc-header:hover{background:rgba(255,255,255,0.03);color:var(--text)}
.blog-toc-header-left{display:flex;align-items:center;gap:8px}
.blog-toc-chevron{
    transition:transform 0.25s ease;
    color:var(--text-dim);flex-shrink:0;
}
.blog-toc.open .blog-toc-chevron{transform:rotate(180deg)}

/* Body — hidden by default */
.blog-toc-body{
    display:none;
    border-top:1px solid var(--glass-border);
    padding:16px 20px 20px;
}
.blog-toc.open .blog-toc-body{display:block}

/* TOC nav — 2 columns on wide screens */
.blog-toc-nav{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
    margin-bottom:16px;
}
.blog-toc-nav a{
    display:block;font-size:14px;color:var(--text-dim);
    text-decoration:none;padding:5px 0 5px 12px;
    border-left:2px solid transparent;
    transition:color 0.15s,border-color 0.15s;
    line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.blog-toc-nav a:hover{color:var(--text);border-left-color:var(--glass-border)}
.blog-toc-nav a.toc-active{color:var(--sun);border-left-color:var(--sun);font-weight:600}
.blog-toc-nav a.toc-h3{padding-left:22px;font-size:12px}
.blog-toc-share{
    display:flex;align-items:center;gap:10px;
    padding-top:14px;border-top:1px solid var(--glass-border);
}
.blog-toc-share span{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin-right:4px}
.blog-toc-share a{color:var(--text-dim);transition:color 0.15s;display:flex;align-items:center}
.blog-toc-share a:hover{color:var(--sun)}

/* ── Blog layout — single column ── */
.blog-layout{
    display:block;
    padding-bottom:80px;
    max-width:860px;
    margin:0 auto;
}
.blog-content{max-width:100%}

/* ── Content Typography ── */
.blog-content{min-width:0;overflow-x:hidden}
.blog-lead{
    font-size:18px;line-height:1.75;color:var(--text);
    margin-bottom:32px;font-weight:400;
}
.blog-content h2{
    font-size:26px;font-weight:800;color:var(--white);
    margin:36px 0 14px;line-height:1.25;letter-spacing:-0.5px;
    padding-top:8px;border-top:1px solid var(--glass-border);
}
.blog-content h3{
    font-size:19px;font-weight:700;color:var(--white);
    margin:24px 0 10px;
}
.blog-content h4{
    font-size:16px;font-weight:700;color:var(--sun);
    margin:24px 0 8px;
}
.blog-content p{
    font-size:16px;line-height:1.8;color:var(--text);
    margin-bottom:18px;
}
.blog-content strong{color:var(--white);font-weight:700}
.blog-content em{font-style:italic;color:var(--text)}
.blog-content a{
    color:var(--sun);text-decoration:none;
    border-bottom:1px solid rgba(245,166,35,0.3);
    transition:border-color 0.15s,color 0.15s;
}
.blog-content a:hover{border-bottom-color:var(--sun)}

/* Blockquote */
.blog-quote{
    margin:20px 0;padding:20px 24px;
    border-left:4px solid var(--sun);
    background:rgba(245,166,35,0.06);
    border-radius:0 var(--radius-sm) var(--radius-sm) 0;
}
.blog-quote p{
    font-size:17px;font-style:italic;color:var(--text);
    margin:0 0 10px;line-height:1.7;
}
.blog-quote cite{font-size:13px;color:var(--text-dim);font-style:normal;font-weight:600}
.blog-quote-green{border-left-color:var(--green);background:rgba(34,197,94,0.05)}

/* Table */
.blog-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:28px 0}
.blog-table{width:auto;min-width:480px;border-collapse:collapse;font-size:14px;white-space:nowrap}
.blog-table th{
    background:rgba(245,166,35,0.1);color:var(--sun);
    font-weight:700;font-size:14px;letter-spacing:0.3px;
    padding:12px 16px;text-align:left;white-space:nowrap;
}
.blog-table td{
    padding:12px 16px;color:var(--text);
    border-bottom:1px solid var(--glass-border);vertical-align:middle;white-space:normal;min-width:100px;
}
.blog-table tr:last-child td{border-bottom:none}
.blog-table tr:hover td{background:rgba(255,255,255,0.02)}

/* List */
.blog-list{padding-left:0;list-style:none;margin:16px 0 24px}
.blog-list li{
    padding:8px 0 8px 28px;position:relative;
    font-size:15px;color:var(--text);line-height:1.6;
    border-bottom:1px solid var(--glass-border);
}
.blog-list li:last-child{border-bottom:none}
.blog-list li::before{
    content:'';position:absolute;left:0;top:17px;
    width:8px;height:8px;border-radius:50%;
    background:var(--sun);
}

/* Steps */
.blog-steps{margin:32px 0;display:flex;flex-direction:column;gap:0}
.blog-step{
    display:grid;grid-template-columns:56px 1fr;gap:20px;
    padding:20px 0;border-bottom:1px solid var(--glass-border);
    align-items:start;
}
.blog-step:last-child{border-bottom:none}
.blog-step-num{
    font-size:32px;font-weight:900;line-height:1;
    background:linear-gradient(135deg,rgba(245,166,35,0.4),rgba(245,166,35,0.1));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.blog-step h4{font-size:16px;font-weight:700;color:var(--white);margin:0 0 6px}
.blog-step p{font-size:14px;color:var(--text-dim);margin:0;line-height:1.6}

/* Inline figure */
.blog-figure-inline{margin:36px 0}
.blog-inline-img{
    width:100%;border-radius:var(--radius);
    max-height:400px;object-fit:cover;display:block;
}

/* Tags */
.blog-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:48px;padding-top:24px;border-top:1px solid var(--glass-border)}
.blog-tags span{font-size:12px;color:var(--text-dim);font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-right:4px}
.blog-tags a{
    font-size:12px;padding:4px 12px;border-radius:50px;
    background:rgba(255,255,255,0.06);border:1px solid var(--glass-border);
    color:var(--text-dim);text-decoration:none;transition:var(--tr);
}
.blog-tags a:hover{background:rgba(245,166,35,0.1);border-color:rgba(245,166,35,0.3);color:var(--sun)}


/* ── Blog CTA Banner — with technician image ── */
.blog-cta-banner{
    background:linear-gradient(135deg,var(--dark-3) 0%,var(--dark-2) 100%);
    border-top:1px solid var(--glass-border);
    border-bottom:1px solid var(--glass-border);
    margin:0 0 64px;
    overflow:visible;
    position:relative;
}
.blog-cta-inner{
    display:flex;
    flex-direction:row;
    align-items:stretch;
    max-width:1180px;
    margin:0 auto;
    padding:0 28px;
    gap:0;
    min-height:260px;
}
.blog-cta-text{
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:32px 0;
}
.blog-cta-text h3{
    font-size:28px;font-weight:800;color:var(--white);
    margin:8px 0 10px;letter-spacing:-0.5px;
}
.blog-cta-text p{color:var(--text-dim);font-size:15px;margin:0 0 20px}

/* Underlined link style */
.blog-cta-link{
    display:inline-flex;align-items:center;gap:8px;
    font-size:16px;font-weight:700;
    color:var(--sun);
    text-decoration:underline;
    text-underline-offset:4px;
    text-decoration-thickness:2px;
    transition:color 0.15s,gap 0.2s;
}
.blog-cta-link:hover{color:var(--sun-dark);gap:12px}
.blog-cta-link svg{text-decoration:none;flex-shrink:0}

/* Technician image */
.blog-cta-img{
    width:240px;
    flex-shrink:0;
    align-self:flex-end;
    margin-left:40px;
    margin-top:-80px;
}
.blog-cta-img img{display:block;width:100%;height:auto;filter:drop-shadow(0 -4px 16px rgba(245,166,35,0.08))}

/* Mobile */


/* Light mode */
.light-mode .blog-cta-banner{background:linear-gradient(135deg,var(--dark-3) 0%,var(--dark-2) 100%);border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);padding:40px 0;min-height:300px;margin:0 0 64px;overflow:visible;position:relative}
.light-mode .blog-cta-text h3{color:#0A0A0A}
.light-mode .blog-cta-text p{color:#6b7280}
.light-mode .blog-cta-link{color:#b47332}
.light-mode .blog-cta-link:hover{color:#8a5620}

/* Mobile */



/* ── Related Posts ── */
.blog-related{padding-bottom:80px}
.blog-related-title{
    font-size:22px;font-weight:800;color:var(--white);
    margin-bottom:28px;letter-spacing:-0.3px;
}
.light-mode .blog-related-title{color:#0A0A0A}
.blog-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-related-card{
    text-decoration:none;border-radius:var(--radius);overflow:hidden;
    background:var(--bg-2);border:1px solid var(--glass-border);
    transition:transform 0.25s ease,box-shadow 0.25s ease,border-color 0.25s;
    display:block;
}
.blog-related-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 48px rgba(0,0,0,0.3);
    border-color:rgba(245,166,35,0.2);
}
.blog-related-img{position:relative;aspect-ratio:16/10;overflow:hidden}
.blog-related-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s ease}
.blog-related-card:hover .blog-related-img img{transform:scale(1.06)}
.blog-related-cat{
    position:absolute;top:12px;left:12px;
    background:rgba(245,166,35,0.9);color:#0A0A0A;
    font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
    padding:3px 10px;border-radius:50px;
}
.blog-related-body{padding:16px 18px 18px}
.blog-related-body h4{
    font-size:15px;font-weight:700;color:var(--white);
    margin:0 0 8px;line-height:1.4;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-related-date{font-size:12px;color:var(--text-dim)}

/* ── Light Mode ── */
.light-mode .blog-title{color:#0A0A0A}
.light-mode .blog-content h2,.light-mode .blog-content h3{color:#111}
.light-mode .blog-content h4{color:var(--sun-dark)}
.light-mode .blog-content p,.light-mode .blog-lead{color:#374151}
.light-mode .blog-content strong{color:#111}
.light-mode .blog-quote{background:rgba(245,166,35,0.06);border-left-color:var(--sun)}
.light-mode .blog-quote p{color:#374151}
.light-mode .blog-quote-green{background:rgba(34,197,94,0.05)}
.light-mode .blog-toc-inner{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-toc-header{color:#666;border-bottom-color:rgba(0,0,0,0.08)}
.light-mode .blog-toc-nav a{color:#666}
.light-mode .blog-toc-nav a:hover{color:#111}
.light-mode .blog-toc-share{border-top-color:rgba(0,0,0,0.08)}
.light-mode .blog-table th{background:rgba(245,166,35,0.08)}
.light-mode .blog-table td{color:#374151;border-bottom-color:rgba(0,0,0,0.08)}
.light-mode .blog-list li{color:#374151;border-bottom-color:rgba(0,0,0,0.08)}
.light-mode .blog-step h4{color:#111}
.light-mode .blog-step p{color:#6b7280}
.light-mode .blog-tags a{background:rgba(0,0,0,0.04);border-color:rgba(0,0,0,0.09);color:#555}
.light-mode .blog-cta-banner{background:linear-gradient(135deg,var(--dark-3) 0%,var(--dark-2) 100%);border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);padding:40px 0;min-height:300px;margin:0 0 64px;overflow:visible;position:relative}
.light-mode .blog-cta-text h3{color:#0A0A0A}
.light-mode .blog-related-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-related-body h4{color:#111}
.light-mode .blog-hero-image table th{background:rgba(245,166,35,0.1)}
.light-mode .blog-step-num{background:linear-gradient(135deg,rgba(245,166,35,0.5),rgba(245,166,35,0.2));-webkit-background-clip:text;background-clip:text}
.light-mode .blog-cat-badge{background:rgba(245,166,35,0.12);border-color:rgba(245,166,35,0.25)}
.light-mode .blog-content a{color:#b47332;border-bottom-color:rgba(180,115,50,0.3)}
.light-mode .blog-content a:hover{border-bottom-color:#b47332}

/* ── Mobile ── */
@media (max-width:768px){
    .blog-toc-nav{grid-template-columns:1fr}
}
@media (max-width:768px){
    .blog-related-grid{grid-template-columns:1fr;gap:16px}
    .blog-title{font-size:28px}
    .blog-hero-img{border-radius:var(--radius)}
    .blog-step{grid-template-columns:44px 1fr;gap:12px}
    .blog-step-num{font-size:24px}
}

/* ── Blog Trend Cards ── */
.blog-trend-card{
    display:grid;
    grid-template-columns:72px minmax(0,1fr);
    gap:28px;
    padding:18px 0;
    border-bottom:1px solid var(--glass-border);
    align-items:start;
}
.blog-trend-card:last-of-type{border-bottom:none}
.blog-trend-num{
    font-size:48px;font-weight:900;line-height:1;
    background:linear-gradient(135deg,var(--sun),rgba(245,166,35,0.2));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
    padding-top:4px;
    flex-shrink:0;
}
.blog-trend-body h2{
    margin-top:0;padding-top:0;border-top:none;
    font-size:22px;
}

/* Light mode trend cards */
.light-mode .blog-trend-card{border-bottom-color:rgba(0,0,0,0.08)}

/* Mobile */
@media (max-width:768px){
    .blog-trend-card{grid-template-columns:52px minmax(0,1fr);gap:16px}
    .blog-trend-num{font-size:36px}
    .blog-trend-body h2{font-size:18px}
}

/* ── Blog Comments ── */
.blog-comments{padding:60px 0 80px;border-top:1px solid var(--glass-border)}
.blog-comments-inner{max-width:860px;margin:0 auto}

/* WP comments title */
.blog-comments #comments h2,
.blog-comments .comments-title{
    font-size:22px;font-weight:800;color:var(--white);
    margin:0 0 32px;letter-spacing:-0.3px;
}
/* Comment list */
.blog-comments .comment-list{list-style:none;padding:0;margin:0 0 48px}
.blog-comments .comment{
    padding:24px 0;
    border-bottom:1px solid var(--glass-border);
}
.blog-comments .comment:last-child{border-bottom:none}
.blog-comments .comment-body{display:flex;gap:16px;align-items:flex-start}
.blog-comments .comment-author img{
    border-radius:50%;width:44px;height:44px;
    border:2px solid var(--glass-border);flex-shrink:0;
}
.blog-comments .comment-author .fn{
    font-weight:700;font-size:14px;color:var(--white);
    font-style:normal;
}
.blog-comments .comment-metadata{font-size:12px;color:var(--text-dim);margin:2px 0 10px}
.blog-comments .comment-metadata a{color:var(--text-dim);text-decoration:none}
.blog-comments .comment-content p{
    font-size:15px;color:var(--text);line-height:1.7;margin:0 0 10px;
}
.blog-comments .reply a{
    font-size:12px;color:var(--sun);text-decoration:none;
    font-weight:600;letter-spacing:0.5px;
}
/* Nested replies */
.blog-comments .children{
    list-style:none;padding-left:40px;margin:8px 0 0;
}

/* Comment form */
.blog-comments .comment-respond{margin-top:48px;padding-top:40px;border-top:1px solid var(--glass-border)}
.blog-comments #reply-title{
    font-size:20px;font-weight:800;color:var(--white);margin:0 0 24px;
}
.blog-comments #reply-title small{font-size:13px;font-weight:400;margin-left:12px}
.blog-comments #reply-title small a{color:var(--sun);text-decoration:none}
.blog-comments .comment-notes{font-size:13px;color:var(--text-dim);margin-bottom:20px}

/* Form fields */
.blog-comments .comment-form-comment,
.blog-comments .comment-form-author,
.blog-comments .comment-form-email,
.blog-comments .comment-form-url{margin-bottom:16px}
.blog-comments label{
    display:block;font-size:12px;font-weight:700;
    color:var(--text-dim);text-transform:uppercase;
    letter-spacing:1px;margin-bottom:6px;
}
.blog-comments input[type="text"],
.blog-comments input[type="email"],
.blog-comments input[type="url"],
.blog-comments textarea{
    width:100%;padding:13px 16px;
    background:rgba(255,255,255,0.04);
    border:1px solid var(--glass-border);
    border-radius:var(--radius-sm);
    font-family:var(--font);font-size:15px;color:var(--text);
    outline:none;transition:border-color 0.15s,background 0.15s;
    box-sizing:border-box;resize:vertical;
}
.blog-comments textarea{min-height:120px}
.blog-comments input:focus,
.blog-comments textarea:focus{
    border-color:var(--sun);background:rgba(245,166,35,0.04);
    box-shadow:0 0 0 3px rgba(245,166,35,0.1);
}
/* 2-col layout for name+email */
.blog-comments .comment-form-author,
.blog-comments .comment-form-email{
    display:inline-block;width:calc(50% - 8px);
}
.blog-comments .comment-form-author{margin-right:16px}
/* Submit */
.blog-comments .form-submit{margin-top:8px}
.blog-comments #submit{
    display:inline-flex;align-items:center;gap:8px;
    padding:14px 28px;border-radius:50px;
    background:var(--sun);color:#0A0A0A;border:none;
    font-family:var(--font);font-size:15px;font-weight:700;
    cursor:pointer;transition:var(--tr);
}
.blog-comments #submit:hover{background:var(--sun-dark);transform:translateY(-1px)}
/* Cookie consent checkbox */
.blog-comments .comment-form-cookies-consent{
    display:flex;align-items:flex-start;gap:10px;margin:12px 0;
}
.blog-comments .comment-form-cookies-consent input{
    width:auto;margin-top:3px;flex-shrink:0;
}
.blog-comments .comment-form-cookies-consent label{
    font-size:12px;text-transform:none;letter-spacing:0;
    color:var(--text-dim);font-weight:400;
}

/* ── Light mode comments ── */
.light-mode .blog-comments #comments h2,
.light-mode .blog-comments .comments-title,
.light-mode .blog-comments #reply-title{color:#111}
.light-mode .blog-comments .comment-author .fn{color:#111}
.light-mode .blog-comments .comment-content p{color:#374151}
.light-mode .blog-comments input[type="text"],
.light-mode .blog-comments input[type="email"],
.light-mode .blog-comments input[type="url"],
.light-mode .blog-comments textarea{
    background:#fff;border-color:rgba(0,0,0,0.1);color:#111;
}
.light-mode .blog-comments input:focus,
.light-mode .blog-comments textarea:focus{border-color:var(--sun)}

/* Mobile */
@media (max-width:768px){
    .blog-comments .comment-form-author,
    .blog-comments .comment-form-email{
        display:block;width:100%;margin-right:0;
    }
    .blog-comments .children{padding-left:20px}
}

/* Hide duplicate tags block from the_tags() when post already has its own */
.blog-content .blog-tags ~ .blog-tags{display:none}

/* Breadcrumbs mobile — single line */
@media (max-width:768px){
    .blog-breadcrumbs ol{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;list-style:none;padding:0;margin:0;overflow:hidden;width:100%}
    .blog-breadcrumbs .bc-sep{flex-shrink:0}
    .blog-breadcrumbs li:not(:last-child){display:none}
    .blog-breadcrumbs li:nth-last-child(2),.blog-breadcrumbs span:nth-last-child(2){display:flex}
    .blog-breadcrumbs .bc-current{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
    /* Show: Home › Current page only */
    .blog-breadcrumbs ol > li:first-child,
    .blog-breadcrumbs ol > .bc-sep:first-of-type{display:flex}
}

.sticky-wa img{width:28px;height:28px;filter:brightness(0) invert(1)}

/* ── Remove empty p tags injected by WordPress ── */
.blog-content p:empty,
.blog-content p:blank{display:none}
/* Also target p that contains only whitespace/br */
.blog-content > p:not([class]):empty{display:none}

/* Gradient fade on man's legs */








/* Mobile: прижат к правому краю, виден от пояса */



.light-mode 





@media (max-width:768px){
    .blog-cta-banner{overflow:hidden}
    .blog-cta-inner{padding:0 16px;min-height:180px}
    .blog-cta-img{width:90px;margin-left:12px;margin-top:0;order:1}
    .blog-cta-text{padding:24px 0}
    .blog-cta-text h3{font-size:18px}
}
@media (max-width:480px){
    .blog-cta-inner{padding:0 14px;min-height:160px}
    .blog-cta-img{width:72px;margin-left:10px}
    .blog-cta-text h3{font-size:16px}
    .blog-cta-text p{font-size:13px}
    .blog-cta-text .section-eyebrow{display:none}
}

/* Fix wpautop empty p inside blog-step — use contents to remove from grid flow */
.blog-step > p:empty{display:none;position:absolute}
.blog-step > p:empty,.blog-step > br{display:none}
.blog-trend-body > p:empty{display:none}

/* Force blog-step div to always take full remaining width */
.blog-step > div{grid-column:2 / -1}
.blog-step > p:empty{grid-column:2;display:none}
.blog-step > span.blog-step-num{grid-column:1;grid-row:1}

/* ═══════════════════════════════════════════════════════════
   BLOG ARCHIVE — /blog, /category/*, /search
   Inherits all CSS vars from main theme
   ═══════════════════════════════════════════════════════════ */

.blog-archive{padding-top:80px}

/* ── Archive header ── */
.blog-archive-container{max-width:1180px;margin:0 auto;padding:0 28px}
.blog-archive-header{padding:48px 0 32px;max-width:640px}
.blog-archive-title{
    font-size:clamp(32px,4vw,52px);font-weight:800;
    color:var(--white);letter-spacing:-1.5px;line-height:1.1;
    margin:12px 0 14px;
}
.blog-archive-desc{font-size:16px;color:var(--text-dim);line-height:1.6}

/* ── Search bar ── */
.blog-search-bar{margin-bottom:28px}
.blog-search-inner{
    display:flex;align-items:center;gap:12px;
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:50px;padding:10px 10px 10px 20px;
    max-width:560px;transition:border-color 0.2s;
}
.blog-search-inner:focus-within{border-color:var(--sun)}
.blog-search-inner svg{color:var(--text-dim);flex-shrink:0}
.blog-search-inner input{
    flex:1;background:transparent;border:none;outline:none;
    font-family:var(--font);font-size:15px;color:var(--text);
}
.blog-search-inner input::placeholder{color:var(--text-dim)}
.blog-search-inner button{
    background:var(--sun);color:#0A0A0A;border:none;
    border-radius:50px;padding:9px 22px;font-family:var(--font);
    font-size:14px;font-weight:700;cursor:pointer;
    transition:background 0.15s,transform 0.15s;white-space:nowrap;
}
.blog-search-inner button:hover{background:var(--sun-dark);transform:scale(1.02)}

/* ── Category filter ── */
.blog-cat-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.blog-cat-pill{
    display:inline-flex;align-items:center;gap:6px;
    font-size:13px;padding:6px 16px;border-radius:50px;
    border:1px solid var(--glass-border);color:var(--text-dim);
    text-decoration:none;transition:var(--tr);
}
.blog-cat-pill:hover{border-color:rgba(245,166,35,0.4);color:var(--text)}
.blog-cat-pill.active{background:var(--sun);color:#0A0A0A;border-color:var(--sun);font-weight:700}
.blog-cat-count{
    font-size:11px;background:var(--glass);padding:1px 6px;
    border-radius:50px;color:var(--text-dim);
}
.blog-cat-pill.active .blog-cat-count{background:rgba(0,0,0,0.15);color:#0A0A0A}

/* ── Ad banners ── */
.blog-ad-banner{
    margin-bottom:36px;padding:12px 20px;
    border:1px dashed var(--glass-border);border-radius:var(--radius-sm);
    display:flex;align-items:center;justify-content:center;
    min-height:90px;position:relative;
}
.blog-ad-label{
    position:absolute;top:-9px;left:16px;
    background:var(--bg-2);padding:0 8px;
    font-size:10px;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;color:var(--text-dim);
}
.blog-ad-placeholder{
    font-size:12px;color:var(--text-dim);
    display:flex;align-items:center;justify-content:center;
    width:100%;min-height:66px;
}
.blog-ad-sidebar{
    border:1px dashed var(--glass-border);border-radius:var(--radius-sm);
    padding:12px;position:relative;margin-bottom:24px;
}
.blog-ad-placeholder--sq{min-height:180px}

/* ── Featured grid ── */
.blog-featured-grid{
    display:grid;
    grid-template-columns:3fr 2fr;
    grid-template-rows:1fr;
    gap:16px;
    align-items:stretch;
    margin-bottom:48px;
    min-height:500px;
}
.blog-feat-card{
    border-radius:var(--radius);overflow:hidden;
    background:var(--bg-2);border:1px solid var(--glass-border);
    transition:transform 0.25s,border-color 0.25s;
    display:flex;flex-direction:column;
    height:100%;
}
.blog-feat-card:hover{transform:translateY(-3px);border-color:rgba(245,166,35,0.25)}

/* LEFT col — inner grid: card1 top full-width, cards 2+3 bottom side-by-side */
.bfc--left-col{
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto auto;
    gap:16px;
    height:100%;
}
.bfc--main-top{
    grid-column:1 / span 2;
    grid-row:1;
}
.bfc--quarter-left{grid-column:1;grid-row:2}
.bfc--quarter-right{grid-column:2;grid-row:2}

/* RIGHT col — 2 cards stacked, equal height */
.bfc--right-col{
    display:grid;
    grid-template-rows:1fr 1fr;
    gap:16px;
    height:100%;
}
.bfc--right-top{grid-row:1}
.bfc--right-bottom{grid-row:2}

/* Image ratios */
.bfc--main-top .blog-feat-card-img{aspect-ratio:21/10;flex-shrink:0}
.bfc--quarter-left .blog-feat-card-img,
.bfc--quarter-right .blog-feat-card-img{flex:1;min-height:100px;aspect-ratio:unset}
.bfc--right-top .blog-feat-card-img,
.bfc--right-bottom .blog-feat-card-img{flex:1;min-height:100px;aspect-ratio:unset}

.blog-feat-card-img{aspect-ratio:21/10}
.bfc--quarter-left .blog-feat-card-img,
.bfc--quarter-right .blog-feat-card-img{flex:1;min-height:120px}
.bfc--right-top .blog-feat-card-img,
.bfc--right-bottom .blog-feat-card-img{flex:1;min-height:130px}

.blog-feat-card-img{
    display:block;aspect-ratio:16/10;
    background:var(--bg-3) center/cover no-repeat;
    position:relative;text-decoration:none;
}
.blog-feat-card--main .blog-feat-card-img{aspect-ratio:16/9}
.blog-feat-card-img::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(to top,rgba(11,15,26,0.7) 0%,transparent 60%);
}
.blog-feat-badge{
    position:absolute;bottom:12px;left:12px;z-index:1;
    background:rgba(245,166,35,0.92);color:#0A0A0A;
    font-size:10px;font-weight:800;letter-spacing:1.5px;
    text-transform:uppercase;padding:3px 10px;border-radius:50px;
}
.blog-feat-body{padding:18px}
.blog-feat-title{margin:0 0 8px;line-height:1.35}
.blog-feat-title a{
    font-size:15px;font-weight:700;color:var(--white);
    text-decoration:none;transition:color 0.15s;
    display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-feat-card--main .blog-feat-title a{font-size:19px;-webkit-line-clamp:2}
.blog-feat-title a:hover{color:var(--sun)}
.blog-feat-excerpt{
    font-size:14px;color:var(--text-dim);line-height:1.6;margin-bottom:10px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-feat-meta{font-size:12px;color:var(--text-dim);display:flex;gap:6px;align-items:center}

/* ── Archive layout ── */
.blog-archive-layout{
    display:grid;
    grid-template-columns:1fr 300px;
    gap:48px;
    align-items:start;
    margin-bottom:48px;
}

/* ── Posts list ── */
.blog-posts-list{display:flex;flex-direction:column;gap:16px}
.blog-list-card{
    display:grid;grid-template-columns:120px 1fr;
    border-radius:var(--radius-sm);overflow:hidden;
    background:var(--bg-2);border:1px solid var(--glass-border);
    transition:border-color 0.2s,transform 0.2s;
}
.blog-list-card:hover{border-color:rgba(245,166,35,0.2);transform:translateX(4px)}
.blog-list-img{
    background:var(--bg-3) center/cover no-repeat;
    display:block;min-height:110px;
}
.blog-list-img-placeholder{width:100%;height:100%;background:var(--bg-3)}
.blog-list-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.blog-list-cat{
    font-size:10px;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;color:var(--sun);
}
.blog-list-title a{
    font-size:15px;font-weight:700;color:var(--white);
    text-decoration:none;line-height:1.35;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    transition:color 0.15s;
}
.blog-list-title a:hover{color:var(--sun)}
.blog-list-excerpt{
    font-size:13px;color:var(--text-dim);line-height:1.5;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.blog-list-meta{font-size:12px;color:var(--text-dim);display:flex;gap:6px;align-items:center;margin-top:auto}

/* ── Sidebar ── */
.blog-archive-sidebar{position:sticky;top:100px}
.blog-sidebar-widget{
    background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:20px;margin-bottom:24px;
}
.blog-sidebar-title{
    font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;
    color:var(--text-dim);margin-bottom:16px;padding-bottom:12px;
    border-bottom:1px solid var(--glass-border);
}
.blog-sidebar-post{
    display:grid;grid-template-columns:56px 1fr;gap:12px;
    padding:10px 0;border-bottom:1px solid var(--glass-border);
    text-decoration:none;transition:opacity 0.15s;
}
.blog-sidebar-post:last-child{border-bottom:none;padding-bottom:0}
.blog-sidebar-post:hover{opacity:0.75}
.blog-sidebar-post-img{
    width:56px;height:56px;border-radius:8px;
    background:var(--bg-3) center/cover no-repeat;flex-shrink:0;
}
.blog-sidebar-post-img--empty{background:var(--bg-3)}
.blog-sidebar-post-title{
    font-size:13px;font-weight:600;color:var(--white);
    line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;
    -webkit-box-orient:vertical;overflow:hidden;
}
.blog-sidebar-post-date{font-size:11px;color:var(--text-dim);margin-top:4px}
.blog-sidebar-cta{
    background:linear-gradient(135deg,var(--dark-3),var(--dark-2));
    border:1px solid var(--glass-border);border-radius:var(--radius);
    padding:20px;
}
.blog-sidebar-cta h3{font-size:16px;font-weight:800;color:var(--white);margin:8px 0 6px}
.blog-sidebar-cta p{font-size:13px;color:var(--text-dim);margin-bottom:14px;line-height:1.5}
.btn-sm{padding:10px 20px;font-size:14px}

/* ── Pagination ── */
.blog-pagination{
    display:flex;flex-direction:column;align-items:center;gap:16px;
    padding:40px 0 60px;
}
.blog-load-more{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 32px;border-radius:50px;
    border:1px solid var(--glass-border);background:transparent;
    font-family:var(--font);font-size:14px;color:var(--text);
    cursor:pointer;transition:var(--tr);
}
.blog-load-more:hover{border-color:rgba(245,166,35,0.4);color:var(--sun)}
.blog-load-more:disabled{opacity:0.4;cursor:not-allowed}
.blog-load-more.loading svg{animation:spin 0.8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.blog-page-numbers ul{
    display:flex;align-items:center;gap:6px;
    list-style:none;padding:0;margin:0;
}
.blog-page-numbers li a,
.blog-page-numbers li span{
    display:flex;align-items:center;justify-content:center;
    width:38px;height:38px;border-radius:10px;
    border:1px solid var(--glass-border);
    font-size:14px;color:var(--text-dim);text-decoration:none;
    transition:var(--tr);
}
.blog-page-numbers li span.current{
    background:var(--sun);color:#0A0A0A;border-color:var(--sun);font-weight:700;
}
.blog-page-numbers li a:hover{border-color:rgba(245,166,35,0.4);color:var(--sun)}
.blog-page-numbers .dots{border:none;background:transparent;cursor:default}

/* ── No results ── */
.blog-no-results{
    text-align:center;padding:80px 20px;
    display:flex;flex-direction:column;align-items:center;gap:16px;
}
.blog-no-results svg{color:var(--text-dim)}
.blog-no-results h2{font-size:24px;font-weight:800;color:var(--white)}
.blog-no-results p{font-size:16px;color:var(--text-dim);max-width:400px;line-height:1.6}

/* ── Light mode ── */
.light-mode .blog-archive-title{color:#0A0A0A}
.light-mode .blog-search-inner{background:#fff;border-color:rgba(0,0,0,0.1)}
.light-mode .blog-search-inner input{color:#111}
.light-mode .blog-cat-pill{border-color:rgba(0,0,0,0.1);color:#555}
.light-mode .blog-cat-pill:hover{color:#111}
.light-mode .blog-feat-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-feat-title a{color:#111}
.light-mode .blog-list-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-list-title a{color:#111}
.light-mode .blog-sidebar-widget{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-sidebar-title{color:#888;border-color:rgba(0,0,0,0.08)}
.light-mode .blog-sidebar-post{border-color:rgba(0,0,0,0.08)}
.light-mode .blog-sidebar-post-title{color:#111}
.light-mode .blog-sidebar-post-img--empty{background:#f0f0f0}
.light-mode .blog-sidebar-cta{background:linear-gradient(135deg,#e8edf5,#dde4f0);border-color:rgba(0,0,0,0.08)}
.light-mode .blog-sidebar-cta h3{color:#111}
.light-mode .blog-page-numbers li a,
.light-mode .blog-page-numbers li span{border-color:rgba(0,0,0,0.1);color:#555}
.light-mode .blog-load-more{border-color:rgba(0,0,0,0.1);color:#555}
.light-mode .blog-no-results h2{color:#111}
.light-mode .blog-ad-banner,
.light-mode .blog-ad-sidebar{border-color:rgba(0,0,0,0.1)}

/* ── Responsive ── */
@media (max-width:1024px){
    .blog-archive-layout{grid-template-columns:1fr}
    .blog-archive-sidebar{position:static}
    .blog-featured-grid{grid-template-columns:1fr;min-height:unset}
    .bfc--right-col{grid-template-rows:1fr 1fr;min-height:400px}
}
@media (max-width:768px){
    .blog-featured-grid{grid-template-columns:1fr;min-height:unset}
    .bfc--left-col{grid-template-columns:1fr}
    .bfc--main-top{grid-column:1}
    .bfc--quarter-left,.bfc--quarter-right{grid-column:1;grid-row:unset}
    .bfc--right-col{grid-template-rows:auto auto;min-height:unset}
    .blog-list-card{grid-template-columns:90px 1fr}
    .blog-archive-header{padding:32px 0 20px}
}

/* ── Nav search button + overlay ── */
.nav-search-btn{
    background:transparent;border:none;cursor:pointer;
    color:rgba(255,255,255,0.72);padding:8px;border-radius:8px;
    display:flex;align-items:center;transition:color 0.15s;
}
.nav-search-btn:hover{color:var(--sun)}

.nav-search-overlay{
    position:fixed;top:0;left:0;right:0;z-index:9998;
    background:rgba(11,15,26,0.97);backdrop-filter:blur(16px);
    padding:24px 28px;
    transform:translateY(-100%);opacity:0;
    transition:transform 0.25s ease,opacity 0.25s ease;
    pointer-events:none;
}
.nav-search-overlay.open{
    transform:translateY(0);opacity:1;pointer-events:auto;
}
.nav-search-form{
    display:flex;align-items:center;gap:16px;
    max-width:860px;margin:0 auto;
}
.nav-search-form svg:first-child{color:var(--text-dim);flex-shrink:0}
.nav-search-form input{
    flex:1;background:transparent;border:none;outline:none;
    font-family:var(--font);font-size:20px;color:var(--white);
    padding:8px 0;border-bottom:1px solid var(--glass-border);
    transition:border-color 0.2s;
}
.nav-search-form input:focus{border-color:var(--sun)}
.nav-search-form input::placeholder{color:var(--text-dim)}
.nav-search-close{
    background:transparent;border:none;cursor:pointer;
    color:var(--text-dim);padding:8px;border-radius:8px;
    display:flex;align-items:center;transition:color 0.15s;flex-shrink:0;
}
.nav-search-close:hover{color:var(--white)}

/* Light mode search */
.light-mode .nav-search-overlay{background:rgba(248,249,252,0.97)}
.light-mode .nav-search-btn{color:rgba(10,10,10,0.6)}
.light-mode .nav-search-form input{color:#111;border-color:rgba(0,0,0,0.15)}
.light-mode .nav-search-close{color:#888}

/* ── Ad Widget Areas ── */
.widget-ad{width:100%}
.widget-ad img{max-width:100%;height:auto;display:block;border-radius:var(--radius-sm)}
.widget-ad a{display:block;text-decoration:none}
/* Post bottom banner — inside container */
.blog-ad-banner--post{
    margin:0 auto 32px;
    max-width:860px;
}
/* Widget text content (HTML widget) */
.widget-ad p{margin:0}

/* ═══════════════════════════════════════════════════
   SEARCH RESULTS PAGE
   ═══════════════════════════════════════════════════ */

/* Hero */
.search-hero{padding:48px 0 36px}
.search-query-highlight{
    color:var(--sun);
    border-bottom:2px solid var(--sun);
    padding-bottom:2px;
}

/* Search bar hero */
.search-hero-bar{margin-top:28px;max-width:640px}
.search-hero-inner{
    display:flex;align-items:center;gap:12px;
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:14px 14px 14px 22px;
    transition:border-color 0.2s,box-shadow 0.2s;
}
.search-hero-inner:focus-within{
    border-color:var(--sun);
    box-shadow:0 0 0 3px var(--sun-glow);
}
.search-hero-inner svg{color:var(--text-dim);flex-shrink:0}
.search-hero-inner input{
    flex:1;background:transparent;border:none;outline:none;
    font-family:var(--font);font-size:18px;color:var(--white);
}
.search-hero-inner input::placeholder{color:var(--text-dim)}
.search-hero-inner button{
    display:inline-flex;align-items:center;gap:8px;
    background:var(--sun);color:#0A0A0A;border:none;
    border-radius:50px;padding:10px 24px;font-family:var(--font);
    font-size:14px;font-weight:700;cursor:pointer;
    transition:background 0.15s;white-space:nowrap;
}
.search-hero-inner button:hover{background:var(--sun-dark)}

/* Suggestions */
.search-suggestions{
    display:flex;align-items:center;flex-wrap:wrap;gap:8px;
    margin-top:14px;font-size:13px;color:var(--text-dim);
}
.search-suggestions a{
    color:var(--text-dim);text-decoration:none;
    padding:3px 12px;border-radius:50px;
    border:1px solid var(--glass-border);
    transition:var(--tr);font-size:12px;
}
.search-suggestions a:hover{
    border-color:rgba(245,166,35,0.4);color:var(--sun);
}

/* Search result cards */
.search-result-card .blog-list-title a{font-size:16px}
.search-result-url{
    color:var(--text-dim) !important;font-size:11px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    max-width:200px;text-decoration:none;
}

/* Highlight matching text */
mark.search-highlight{
    background:rgba(245,166,35,0.2);color:var(--sun);
    border-radius:3px;padding:0 2px;font-style:normal;
}

/* No results */
.search-no-results{
    text-align:center;padding:80px 20px;
    display:flex;flex-direction:column;align-items:center;gap:20px;
}
.search-no-results-icon{
    width:88px;height:88px;border-radius:50%;
    background:var(--glass);border:1px solid var(--glass-border);
    display:flex;align-items:center;justify-content:center;
    color:var(--text-dim);
}
.search-no-results h2{font-size:24px;font-weight:800;color:var(--white)}
.search-no-results p{font-size:16px;color:var(--text-dim);max-width:420px;line-height:1.6}
.search-no-results-tips{
    text-align:left;background:var(--glass);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:20px 24px;max-width:440px;width:100%;
}
.search-no-results-tips span{
    font-size:11px;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;color:var(--text-dim);
    display:block;margin-bottom:10px;
}
.search-no-results-tips ul{
    list-style:none;padding:0;display:flex;flex-direction:column;gap:8px;
}
.search-no-results-tips li{
    font-size:14px;color:var(--text);padding-left:16px;position:relative;
}
.search-no-results-tips li::before{
    content:'';position:absolute;left:0;top:8px;
    width:6px;height:6px;border-radius:50%;background:var(--sun);
}
.search-no-results-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}
.btn-outline{
    font-size:14px;color:var(--text);text-decoration:none;
    padding:10px 20px;border-radius:50px;
    border:1px solid var(--glass-border);transition:var(--tr);
}
.btn-outline:hover{border-color:var(--sun);color:var(--sun)}

/* Light mode */
.light-mode .search-hero-inner{background:#fff;border-color:rgba(0,0,0,0.1)}
.light-mode .search-hero-inner input{color:#111}
.light-mode .search-no-results h2{color:#111}
.light-mode .search-no-results-tips{background:#f7f9fb;border-color:rgba(0,0,0,0.08)}
.light-mode mark.search-highlight{background:rgba(245,166,35,0.15)}
.light-mode .btn-outline{border-color:rgba(0,0,0,0.12);color:#555}

/* ── Live Search Dropdown ── */
.nav-search-dropdown{
    display:none;
    position:absolute;
    top:calc(100% + 12px);
    left:0;right:0;
    background:var(--bg-2);
    border:1px solid var(--glass-border);
    border-radius:var(--radius);
    overflow:hidden;
    box-shadow:0 24px 64px rgba(0,0,0,0.4);
    z-index:9999;
    max-height:480px;
    overflow-y:auto;
}
/* Nav search form needs relative positioning */
.nav-search-form{position:relative}

/* Result items */
.nsd-item{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:13px 20px;text-decoration:none;
    border-bottom:1px solid var(--glass-border);
    transition:background 0.1s;
}
.nsd-item:last-of-type{border-bottom:none}
.nsd-item:hover,.nsd-item--active{background:rgba(245,166,35,0.08)}
.nsd-item svg{color:var(--text-dim);flex-shrink:0;transition:transform 0.15s}
.nsd-item:hover svg,.nsd-item--active svg{color:var(--sun);transform:translateX(3px)}
.nsd-item-inner{flex:1;min-width:0}
.nsd-item-title{
    display:block;font-size:14px;font-weight:600;color:var(--white);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    line-height:1.4;
}
.nsd-item-title mark{
    background:rgba(245,166,35,0.2);color:var(--sun);
    border-radius:3px;padding:0 2px;font-style:normal;
}
.nsd-item-cat{
    font-size:11px;font-weight:700;letter-spacing:1px;
    text-transform:uppercase;color:var(--sun);
    display:block;margin-top:3px;
}

/* Footer link */
.nsd-all{
    display:flex;align-items:center;justify-content:center;gap:8px;
    padding:12px 20px;font-size:13px;color:var(--text-dim);
    text-decoration:none;background:var(--bg-3);
    border-top:1px solid var(--glass-border);
    transition:color 0.15s,background 0.15s;
}
.nsd-all:hover{color:var(--sun);background:rgba(245,166,35,0.05)}
.nsd-all strong{color:var(--text)}
.nsd-all svg{flex-shrink:0}

/* Empty state */
.nsd-empty{
    padding:20px;text-align:center;font-size:14px;
    color:var(--text-dim);display:flex;align-items:center;
    justify-content:center;gap:10px;
}
.nsd-empty strong{color:var(--text)}

/* Loading dots */
.nsd-loading{
    display:flex;align-items:center;justify-content:center;
    gap:6px;padding:20px;
}
.nsd-loading span{
    width:7px;height:7px;border-radius:50%;
    background:var(--sun);opacity:0.3;
    animation:nsd-pulse 1s ease-in-out infinite;
}
.nsd-loading span:nth-child(2){animation-delay:0.15s}
.nsd-loading span:nth-child(3){animation-delay:0.3s}
@keyframes nsd-pulse{0%,100%{opacity:0.2;transform:scale(0.8)}50%{opacity:1;transform:scale(1)}}

/* Scrollbar */
.nav-search-dropdown::-webkit-scrollbar{width:4px}
.nav-search-dropdown::-webkit-scrollbar-track{background:transparent}
.nav-search-dropdown::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:4px}

/* Light mode */
.light-mode .nav-search-dropdown{
    background:#fff;border-color:rgba(0,0,0,0.1);
    box-shadow:0 24px 64px rgba(0,0,0,0.15);
}
.light-mode .nsd-item-title{color:#111}
.light-mode .nsd-item:hover,.light-mode .nsd-item--active{background:rgba(245,166,35,0.06)}
.light-mode .nsd-all{background:#f8f9fb;border-color:rgba(0,0,0,0.08)}
.light-mode .nsd-all strong{color:#111}
.light-mode .nsd-empty{color:#888}

/* ═══════════════════════════════════════════════════════════
   404 PAGE
   ═══════════════════════════════════════════════════════════ */

.page-404{
    min-height:100vh;display:flex;align-items:center;
    position:relative;overflow:hidden;padding:120px 0 80px;
}

/* Animated orbs background */
.p404-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.p404-orb{
    position:absolute;border-radius:50%;
    filter:blur(80px);opacity:0.12;
    animation:p404-float 8s ease-in-out infinite;
}
.p404-orb--1{
    width:500px;height:500px;background:var(--sun);
    top:-100px;right:-100px;animation-delay:0s;
}
.p404-orb--2{
    width:300px;height:300px;background:var(--green);
    bottom:0;left:-50px;animation-delay:3s;
}
.p404-orb--3{
    width:200px;height:200px;background:var(--sun);
    top:50%;left:40%;animation-delay:5s;
}
@keyframes p404-float{
    0%,100%{transform:translateY(0) scale(1)}
    50%{transform:translateY(-30px) scale(1.05)}
}

.p404-container{
    position:relative;z-index:1;
    display:flex;flex-direction:column;align-items:center;
    text-align:center;gap:48px;max-width:860px;margin:0 auto;
}

/* Big 404 number */
.p404-number{
    display:flex;align-items:center;gap:0;
    font-size:clamp(120px,18vw,200px);font-weight:900;
    line-height:1;color:transparent;
    -webkit-text-stroke:2px rgba(245,166,35,0.3);
    user-select:none;
}
.p404-sun{
    width:clamp(100px,15vw,170px);
    height:clamp(100px,15vw,170px);
    animation:p404-spin 20s linear infinite;
    flex-shrink:0;
}
@keyframes p404-spin{to{transform:rotate(360deg)}}

/* Content */
.p404-content{max-width:600px}
.p404-title{
    font-size:clamp(28px,4vw,42px);font-weight:800;
    color:var(--white);margin:12px 0 16px;letter-spacing:-1px;
}
.p404-desc{
    font-size:16px;color:var(--text-dim);line-height:1.7;
    margin-bottom:28px;
}

/* Search */
.p404-search{margin-bottom:24px}
.p404-search-inner{
    display:flex;align-items:center;gap:12px;
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:50px;padding:10px 10px 10px 20px;
    transition:border-color 0.2s,box-shadow 0.2s;
    max-width:480px;margin:0 auto;
}
.p404-search-inner:focus-within{
    border-color:var(--sun);
    box-shadow:0 0 0 3px var(--sun-glow);
}
.p404-search-inner svg{color:var(--text-dim);flex-shrink:0}
.p404-search-inner input{
    flex:1;background:transparent;border:none;outline:none;
    font-family:var(--font);font-size:15px;color:var(--white);
}
.p404-search-inner input::placeholder{color:var(--text-dim)}
.p404-search-inner button{
    background:var(--sun);color:#0A0A0A;border:none;
    border-radius:50px;padding:9px 22px;font-family:var(--font);
    font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap;
    transition:background 0.15s;
}
.p404-search-inner button:hover{background:var(--sun-dark)}

/* Quick links */
.p404-links{
    display:flex;flex-wrap:wrap;gap:10px;
    justify-content:center;
}
.p404-link{
    display:inline-flex;align-items:center;gap:8px;
    padding:10px 20px;border-radius:50px;font-size:14px;
    border:1px solid var(--glass-border);color:var(--text);
    text-decoration:none;transition:var(--tr);
}
.p404-link:hover{border-color:var(--sun);color:var(--sun)}
.p404-link--cta{
    background:var(--sun);color:#0A0A0A;border-color:var(--sun);
    font-weight:700;
}
.p404-link--cta:hover{background:var(--sun-dark);color:#0A0A0A;border-color:var(--sun-dark)}
.p404-link svg{flex-shrink:0}

/* Recent posts */
.p404-posts{width:100%}
.p404-posts-title{
    font-size:11px;font-weight:800;letter-spacing:2px;
    text-transform:uppercase;color:var(--text-dim);
    margin-bottom:20px;
}
.p404-posts-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
.p404-post-card{
    border-radius:var(--radius);overflow:hidden;
    background:var(--bg-2);border:1px solid var(--glass-border);
    text-decoration:none;transition:transform 0.2s,border-color 0.2s;
    display:flex;flex-direction:column;
}
.p404-post-card:hover{transform:translateY(-3px);border-color:rgba(245,166,35,0.25)}
.p404-post-img{
    aspect-ratio:16/10;
    background:var(--bg-3) center/cover no-repeat;
}
.p404-post-body{padding:14px;text-align:left}
.p404-post-cat{
    font-size:10px;font-weight:700;letter-spacing:1.5px;
    text-transform:uppercase;color:var(--sun);
    display:block;margin-bottom:6px;
}
.p404-post-body h3{
    font-size:14px;font-weight:700;color:var(--white);
    line-height:1.35;margin:0 0 8px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.p404-post-date{font-size:12px;color:var(--text-dim)}

/* Light mode */
.light-mode .p404-title{color:#0A0A0A}
.light-mode .p404-number{-webkit-text-stroke:2px rgba(180,115,50,0.25)}
.light-mode .p404-search-inner{background:#fff;border-color:rgba(0,0,0,0.1)}
.light-mode .p404-search-inner input{color:#111}
.light-mode .p404-link{border-color:rgba(0,0,0,0.1);color:#555}
.light-mode .p404-link:hover{border-color:var(--sun);color:var(--sun-dark)}
.light-mode .p404-post-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .p404-post-body h3{color:#111}
.light-mode .p404-orb{opacity:0.07}

/* Mobile */
@media (max-width:768px){
    .p404-posts-grid{grid-template-columns:1fr}
    .p404-number{font-size:100px;gap:0}
    .p404-sun{width:80px;height:80px}
    .p404-links{flex-direction:column;align-items:center}
    .p404-link{width:100%;max-width:280px;justify-content:center}
}

/* ═══════════════════════════════════════════════════════════
   SOBRE NÓS + CONTACTOS — shared page styles
   ═══════════════════════════════════════════════════════════ */

.sobre-page,.contactos-page,.legal-page{padding-top:80px}
.sobre-section-title{
    font-size:clamp(26px,3.5vw,40px);font-weight:800;
    color:var(--white);letter-spacing:-1px;line-height:1.15;
    margin:10px 0 16px;
}
.sobre-section-header{text-align:center;max-width:620px;margin:0 auto 56px}
.sobre-section-desc{font-size:16px;color:var(--text-dim);line-height:1.7}

/* ── Sobre Hero ── */
.sobre-hero{padding:72px 0 80px}
.sobre-hero-inner{
    display:grid;grid-template-columns:1fr 1fr;
    gap:64px;align-items:center;
}
.sobre-title{
    font-size:clamp(32px,4vw,54px);font-weight:800;
    color:var(--white);letter-spacing:-1.5px;line-height:1.1;
    margin:12px 0 18px;
}
.sobre-lead{font-size:17px;color:var(--text-dim);line-height:1.7}

.sobre-hero-stat-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.sobre-stat-card{
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:24px 20px;
    display:flex;flex-direction:column;gap:6px;
    transition:border-color 0.2s,transform 0.2s;
}
.sobre-stat-card:hover{border-color:rgba(245,166,35,0.3);transform:translateY(-2px)}
.sobre-stat-card--accent{background:rgba(245,166,35,0.08);border-color:rgba(245,166,35,0.25)}
.sobre-stat-num{font-size:32px;font-weight:900;color:var(--sun);letter-spacing:-1px;line-height:1}
.sobre-stat-label{font-size:13px;color:var(--text-dim);line-height:1.4}

/* ── Mission ── */
.sobre-mission-inner{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center;
    padding:80px 0;
}
.sobre-mission-visual{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:24px;
}
.sobre-sun-orb{display:none}
@keyframes sobre-spin{to{transform:rotate(360deg)}}
.sobre-quote{
    background:var(--glass);border:1px solid var(--glass-border);
    border-left:3px solid var(--sun);border-radius:0 var(--radius-sm) var(--radius-sm) 0;
    padding:20px 24px;margin:0;
}
.sobre-quote p{font-size:15px;color:var(--text);line-height:1.6;font-style:italic;margin-bottom:8px}
.sobre-quote cite{font-size:12px;color:var(--text-dim);font-style:normal;font-weight:700}
.sobre-mission-text p{font-size:15px;color:var(--text-dim);line-height:1.7;margin-bottom:16px}
.sobre-values{display:flex;flex-direction:column;gap:16px;margin-top:32px}
.sobre-value{
    display:grid;grid-template-columns:40px 1fr;gap:12px;
    align-items:start;
}
.sobre-value-icon{font-size:20px;margin-top:2px}
.sobre-value strong{display:block;font-size:14px;font-weight:700;color:var(--white);margin-bottom:3px}
.sobre-value p{font-size:13px;color:var(--text-dim);line-height:1.5;margin:0}

/* ── Why grid ── */
.sobre-why-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
}
.sobre-why-card{
    background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:28px 24px;
    transition:border-color 0.2s,transform 0.2s;
}
.sobre-why-card:hover{border-color:rgba(245,166,35,0.25);transform:translateY(-3px)}
.sobre-why-num{display:none}
.sobre-why-header{
    display:flex;align-items:baseline;gap:14px;margin-bottom:14px;
}
.sobre-why-num-big{
    font-size:52px;font-weight:900;line-height:1;
    color:transparent;
    -webkit-text-stroke:1.5px rgba(245,166,35,0.3);
    letter-spacing:-2px;
    flex-shrink:0;
    font-family:var(--font);
    transition:color 0.25s,-webkit-text-stroke 0.25s;
}
.sobre-why-card:hover .sobre-why-num-big{
    color:rgba(245,166,35,0.15);
    -webkit-text-stroke:1.5px rgba(245,166,35,0.5);
}
.sobre-why-header h3{
    font-size:16px;font-weight:800;color:var(--white);
    margin:0;line-height:1.3;
}
.light-mode .sobre-why-header h3{color:#111}
.sobre-why-card h3{margin:0}
.sobre-why-card p{font-size:14px;color:var(--text-dim);line-height:1.6;margin:0}

/* ── Team ── */
.sobre-team-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
}
.sobre-team-card{
    background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:32px 24px;
    text-align:center;transition:border-color 0.2s,transform 0.2s;
}
.sobre-team-card:hover{border-color:rgba(245,166,35,0.25);transform:translateY(-3px)}
.sobre-team-avatar{
    width:72px;height:72px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    margin:0 auto 16px;border:1px solid var(--glass-border);
}
.sobre-team-avatar--1{background:rgba(245,166,35,0.12);color:var(--sun)}
.sobre-team-avatar--2{background:rgba(34,197,94,0.1);color:var(--green)}
.sobre-team-avatar--3{background:rgba(99,102,241,0.1);color:#818cf8}
.sobre-team-card h3{font-size:17px;font-weight:800;color:var(--white);margin-bottom:4px}
.sobre-team-role{font-size:12px;color:var(--sun);font-weight:700;letter-spacing:0.5px;display:block;margin-bottom:10px}
.sobre-team-card p{font-size:14px;color:var(--text-dim);line-height:1.5;margin:0}

/* ── Brands ── */
.sobre-brands{
    display:flex;flex-wrap:wrap;gap:10px;
    justify-content:center;margin-bottom:16px;
}
.sobre-brand-pill{
    padding:8px 20px;border-radius:50px;
    background:var(--glass);border:1px solid var(--glass-border);
    font-size:13px;font-weight:600;color:var(--text);
    transition:var(--tr);
}
.sobre-brand-pill:hover{border-color:rgba(245,166,35,0.3);color:var(--white)}
.sobre-brands-note{text-align:center;font-size:13px;color:var(--text-dim)}

/* ── Sobre CTA ── */
.sobre-cta-inner{
    display:grid;grid-template-columns:1fr auto;
    gap:48px;align-items:center;padding:60px 0;
}
.sobre-cta-title{
    font-size:clamp(24px,3vw,36px);font-weight:800;
    color:var(--white);margin:10px 0 12px;letter-spacing:-0.5px;
}
.sobre-cta-inner p{font-size:15px;color:var(--text-dim);margin:0}
.sobre-cta-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:220px}
.btn-outline-sun{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 24px;border-radius:50px;
    border:1px solid rgba(245,166,35,0.4);
    font-size:15px;font-weight:700;color:var(--sun);
    text-decoration:none;transition:var(--tr);
}
.btn-outline-sun:hover{background:rgba(245,166,35,0.08);border-color:var(--sun)}

/* ═══════════════════════════════════════════════════════════
   CONTACTOS PAGE
   ═══════════════════════════════════════════════════════════ */

.contactos-hero{padding:72px 0 80px}
.contactos-hero-inner{
    display:grid;grid-template-columns:1fr 1fr;
    gap:64px;align-items:start;
}
.contactos-title{
    font-size:clamp(32px,4vw,54px);font-weight:800;
    color:var(--white);letter-spacing:-1.5px;line-height:1.1;
    margin:12px 0 16px;
}
.contactos-lead{font-size:16px;color:var(--text-dim);line-height:1.7;margin-bottom:28px}

.contactos-info-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:12px;
    margin-bottom:24px;
}
.contactos-info-card{
    display:flex;align-items:center;gap:12px;
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:var(--radius-sm);padding:14px 16px;
    text-decoration:none;transition:border-color 0.2s;
}
a.contactos-info-card:hover{border-color:rgba(245,166,35,0.3)}
.contactos-info-icon{
    width:38px;height:38px;border-radius:10px;
    background:rgba(245,166,35,0.1);
    display:flex;align-items:center;justify-content:center;
    color:var(--sun);flex-shrink:0;
}
.contactos-info-label{font-size:11px;color:var(--text-dim);display:block;margin-bottom:2px;font-weight:600;letter-spacing:0.5px}
.contactos-info-card strong{font-size:13px;color:var(--white);display:block}
.contactos-wa-btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:13px 24px;border-radius:50px;
    background:linear-gradient(135deg,#25D366,#128C7E);
    font-size:15px;font-weight:700;color:#fff;
    text-decoration:none;transition:var(--tr);
    box-shadow:0 4px 20px rgba(37,211,102,0.25);
}
.contactos-wa-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(37,211,102,0.4)}

/* Form */
.contactos-form-wrap{
    background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);padding:36px 32px;
}
.contactos-form-title{font-size:24px;font-weight:800;color:var(--white);margin:8px 0 6px}
.contactos-form-sub{font-size:14px;color:var(--text-dim);margin-bottom:24px}
.contactos-form{display:flex;flex-direction:column;gap:16px}
.contactos-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contactos-field{display:flex;flex-direction:column;gap:6px}
.contactos-field label{font-size:13px;font-weight:600;color:var(--text)}
.contactos-field label span{color:var(--text-dim);font-weight:400}
.contactos-field input,
.contactos-field select,
.contactos-field textarea{
    background:var(--glass);border:1px solid var(--glass-border);
    border-radius:var(--radius-sm);padding:12px 14px;
    font-family:var(--font);font-size:14px;color:var(--text);
    outline:none;transition:border-color 0.2s,box-shadow 0.2s;
    appearance:none;
}
.contactos-field input::placeholder,
.contactos-field textarea::placeholder{color:var(--text-dim)}
.contactos-field input:focus,
.contactos-field select:focus,
.contactos-field textarea:focus{
    border-color:var(--sun);
    box-shadow:0 0 0 3px var(--sun-glow);
}
.contactos-field select{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23CBD5E1' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat:no-repeat;background-position:right 12px center;
    padding-right:36px;cursor:pointer;
}
.contactos-field select option{background:var(--bg-2);color:var(--text)}
.contactos-field--check{flex-direction:row;align-items:center}
.contactos-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:13px;color:var(--text-dim)}
.contactos-check input{width:16px;height:16px;accent-color:var(--sun);flex-shrink:0;margin-top:1px}
.contactos-check a{color:var(--sun);text-decoration:underline}
/* contactos-submit uses btn-sun btn-full */
.contactos-form-success{
    display:flex;align-items:flex-start;gap:16px;
    padding:20px;background:rgba(34,197,94,0.08);
    border:1px solid rgba(34,197,94,0.25);border-radius:var(--radius);
}
.contactos-form-success svg{color:var(--green);flex-shrink:0;margin-top:2px}
.contactos-form-success strong{display:block;color:var(--white);margin-bottom:4px}
.contactos-form-success p{font-size:13px;color:var(--text-dim);margin:0}

/* Map section */
.contactos-map-grid{
    display:grid;grid-template-columns:1fr 1fr;
    gap:64px;align-items:start;padding:60px 0;
}
.contactos-address-block p{font-size:15px;color:var(--text-dim);line-height:1.6;margin-bottom:12px}
.contactos-area-note{font-size:13px;color:var(--text-dim);margin-top:16px}
.contactos-social{display:flex;gap:12px;margin-top:24px}
.contactos-social-link{
    width:42px;height:42px;border-radius:50%;
    background:var(--glass);border:1px solid var(--glass-border);
    display:flex;align-items:center;justify-content:center;
    color:var(--text-dim);text-decoration:none;transition:var(--tr);
}
.contactos-social-link:hover{border-color:rgba(245,166,35,0.3);color:var(--sun)}
.contactos-social-link--wa{background:rgba(37,211,102,0.1);border-color:rgba(37,211,102,0.25);color:#25D366}
.contactos-social-link--wa:hover{background:rgba(37,211,102,0.2)}
.contactos-map-embed{border-radius:var(--radius);overflow:hidden;min-height:320px}
.contactos-map-placeholder{
    min-height:320px;background:var(--bg-2);border:1px solid var(--glass-border);
    border-radius:var(--radius);display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:12px;
    color:var(--text-dim);
}
.contactos-map-placeholder p{font-size:16px;font-weight:600;color:var(--text);margin:0}
.contactos-map-placeholder span{font-size:13px;color:var(--text-dim)}

/* Light mode overrides */
.light-mode .sobre-section-title{color:#0A0A0A}
.light-mode .sobre-title,.light-mode .contactos-title{color:#0A0A0A}
.light-mode .sobre-stat-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .sobre-why-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .sobre-why-card h3{color:#111}
.light-mode .sobre-team-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .sobre-team-card h3{color:#111}
.light-mode .sobre-brand-pill{background:#f7f9fb;border-color:rgba(0,0,0,0.08);color:#374151}
.light-mode .sobre-cta-title{color:#111}
.light-mode .contactos-form-wrap{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .contactos-form-title{color:#111}
.light-mode .contactos-info-card{background:#fff;border-color:rgba(0,0,0,0.08)}
.light-mode .contactos-info-card strong{color:#111}
.light-mode .contactos-field label{color:#374151}
.light-mode .contactos-field input,
.light-mode .contactos-field select,
.light-mode .contactos-field textarea{background:#f7f9fb;border-color:rgba(0,0,0,0.1);color:#111}
.light-mode .contactos-map-placeholder{background:#f7f9fb;border-color:rgba(0,0,0,0.08)}
.light-mode .sobre-quote{background:#f7f9fb;border-color:rgba(0,0,0,0.08)}
.light-mode .sobre-value strong{color:#111}
.light-mode .contactos-form-success strong{color:#111}

/* Responsive */
@media (max-width:1024px){
    .sobre-hero-inner,.sobre-mission-inner,.sobre-cta-inner,
    .contactos-hero-inner,.contactos-map-grid{grid-template-columns:1fr;gap:48px}
    .sobre-why-grid{grid-template-columns:repeat(2,1fr)}
    .sobre-team-grid{grid-template-columns:1fr 1fr}
    .sobre-sun-orb{width:200px;height:200px}
    .sobre-cta-inner{grid-template-columns:1fr}
    .sobre-cta-actions{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:768px){
    .sobre-hero-stat-grid{grid-template-columns:1fr 1fr}
    .sobre-why-grid{grid-template-columns:1fr 1fr}
    .sobre-team-grid{grid-template-columns:1fr}
    .contactos-form-row{grid-template-columns:1fr}
    .contactos-info-grid{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════
   UNIFIED FORM STYLES
   Используется на главной (#contact-form) и /contactos
   ═══════════════════════════════════════════════════════════ */

/* Groups */
.form-group{display:flex;flex-direction:column;gap:6px;position:relative}
.form-group--check{gap:0}

/* Labels */
.form-group label{
    font-size:13px;font-weight:700;
    color:var(--text);letter-spacing:0.2px;
}
.form-required{color:var(--sun);font-weight:700}
.form-optional{color:var(--text-dim);font-weight:400;font-size:12px}

/* Inputs, selects, textareas */
.form-group input[type="text"],
.form-group input[type="email"],
.form-group input[type="tel"],
.form-group select,
.form-group textarea,
.contactos-form input[type="text"],
.contactos-form input[type="email"],
.contactos-form input[type="tel"],
.contactos-form select,
.contactos-form textarea{
    background:rgba(255,255,255,0.05);
    border:1.5px solid var(--glass-border);
    border-radius:var(--radius-sm);
    padding:13px 16px;
    font-family:var(--font);font-size:14px;
    color:var(--white);
    outline:none;
    transition:border-color 0.2s,box-shadow 0.2s,background 0.2s;
    width:100%;
    appearance:none;
}
.form-group input::placeholder,
.form-group textarea::placeholder,
.contactos-form input::placeholder,
.contactos-form textarea::placeholder{color:var(--text-dim)}

/* Focus */
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.contactos-form input:focus,
.contactos-form select:focus,
.contactos-form textarea:focus{
    border-color:var(--sun);
    background:rgba(245,166,35,0.05);
    box-shadow:0 0 0 3px var(--sun-glow);
}

/* Valid */
.form-group input:valid:not(:placeholder-shown):not([type="checkbox"]),
.form-group textarea:valid:not(:placeholder-shown){
    border-color:rgba(34,197,94,0.5);
}

/* Error state */
.form-group.has-error input,
.form-group.has-error select,
.form-group.has-error textarea{
    border-color:#ef4444;
    background:rgba(239,68,68,0.05);
    box-shadow:0 0 0 3px rgba(239,68,68,0.15);
}
.form-group.has-error .form-checkbox-box{
    border-color:#ef4444;
    box-shadow:0 0 0 3px rgba(239,68,68,0.15);
}

/* Error message */
.form-error-msg{
    display:none;
    font-size:12px;color:#f87171;
    align-items:center;gap:5px;
    padding-top:2px;
}
.form-error-msg::before{
    content:'';
    width:14px;height:14px;flex-shrink:0;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f87171' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E") center/contain no-repeat;
}
.form-group.has-error .form-error-msg{display:flex}

/* Select arrow */
.form-group select,
.contactos-form select{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23CBD5E1' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 14px center;
    padding-right:40px;cursor:pointer;
}
.form-group select option,
.contactos-form select option{
    background:var(--bg-2);color:var(--text);
}

/* Checkbox */
.form-checkbox{
    display:flex;align-items:flex-start;gap:10px;
    cursor:pointer;padding:4px 0;
    font-size:10px;color:var(--text-dim);
    user-select:none;
}
.form-checkbox input[type="checkbox"]{
    position:absolute;opacity:0;width:0;height:0;
}
.form-checkbox-box{
    width:18px;height:18px;min-width:18px;
    border:2px solid var(--glass-border);
    border-radius:5px;margin-top:1px;
    display:flex;align-items:center;justify-content:center;
    transition:border-color 0.15s,background 0.15s;
    background:transparent;
}
.form-checkbox input[type="checkbox"]:checked + .form-checkbox-box{
    background:var(--sun);
    border-color:var(--sun);
}
.form-checkbox input[type="checkbox"]:checked + .form-checkbox-box::after{
    content:'';
    width:10px;height:7px;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7' fill='none'%3E%3Cpath d='M1 3.5L3.5 6L9 1' stroke='%230A0A0A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
.form-checkbox input[type="checkbox"]:focus + .form-checkbox-box{
    box-shadow:0 0 0 3px var(--sun-glow);
}
.form-checkbox a{color:var(--sun);text-decoration:underline}
.form-checkbox span:last-child{line-height:1.5}

/* Form note */
.form-note{
    font-size:11px;color:var(--text-dim);
    line-height:1.5;margin:4px 0 0;
}

/* Success state */
.form-success{
    display:flex;align-items:flex-start;gap:14px;
    padding:20px;
    background:rgba(34,197,94,0.08);
    border:1px solid rgba(34,197,94,0.25);
    border-radius:var(--radius);
}
.form-success svg{color:var(--green);flex-shrink:0;margin-top:2px}
.form-success strong{display:block;font-size:15px;color:var(--white);margin-bottom:4px}
.form-success p{font-size:13px;color:var(--text-dim);margin:0}

/* contactos-form inherits form-group styles */
.contactos-form{display:flex;flex-direction:column;gap:16px}
.contactos-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
/* contactos-submit uses btn-sun btn-full */

/* Light mode */
.light-mode .form-group input[type="text"],
.light-mode .form-group input[type="email"],
.light-mode .form-group input[type="tel"],
.light-mode .form-group select,
.light-mode .form-group textarea,
.light-mode .contactos-form input[type="text"],
.light-mode .contactos-form input[type="email"],
.light-mode .contactos-form input[type="tel"],
.light-mode .contactos-form select,
.light-mode .contactos-form textarea{
    background:#f7f9fb;
    border-color:rgba(0,0,0,0.12);
    color:#111;
}
.light-mode .form-group input:focus,
.light-mode .form-group select:focus,
.light-mode .form-group textarea:focus,
.light-mode .contactos-form input:focus,
.light-mode .contactos-form select:focus,
.light-mode .contactos-form textarea:focus{
    background:#fff;
}
.light-mode .form-group label{color:#374151}
.light-mode .form-checkbox{color:#6b7280}
.light-mode .form-checkbox-box{border-color:rgba(0,0,0,0.2);background:#fff}
.light-mode .form-success strong{color:#111}
.light-mode .form-group input:valid:not(:placeholder-shown):not([type="checkbox"]),
.light-mode .form-group textarea:valid:not(:placeholder-shown){
    border-color:rgba(34,197,94,0.6);
    background:#f0fdf4;
}

/* Mobile */
@media (max-width:640px){
    .contactos-form .form-row{grid-template-columns:1fr}
    .form-row{grid-template-columns:1fr}
}

/* ── Contactos map iframe ── */
.contactos-map-embed{border-radius:var(--radius);overflow:hidden}
.contactos-map-embed iframe{
    display:block;width:100%;height:360px;border:0;
    border-radius:var(--radius);
}

/* Contactos title nowrap on key phrase */
.contactos-title .highlight{white-space:nowrap}

/* ═══════════════════════════════════════════════════════
   ENERGY FLOW ANIMATION — Sobre Nós / Mission section
   ═══════════════════════════════════════════════════════ */

.ef-wrap{
    display:flex;flex-direction:column;
    align-items:center;gap:0;
    padding:24px 0;
}

/* ── Nodes ── */
.ef-node{
    display:flex;flex-direction:column;
    align-items:center;gap:10px;
    position:relative;z-index:1;
    padding:20px 10px;
}
.ef-label{
    font-size:12px;font-weight:700;
    color:var(--text-dim);letter-spacing:0.5px;
    text-transform:uppercase;
}

/* Sun */
.ef-sun-core{
    width:72px;height:72px;border-radius:50%;
    background:rgba(245,166,35,0.12);
    border:2px solid rgba(245,166,35,0.35);
    display:flex;align-items:center;justify-content:center;
    color:var(--sun);
    animation:ef-sun-pulse 3s ease-in-out infinite;
    position:relative;z-index:2;
    flex-shrink:0;
}
@keyframes ef-sun-pulse{
    0%,100%{box-shadow:0 0 0 0 rgba(245,166,35,0.3);background:rgba(245,166,35,0.12)}
    50%{box-shadow:0 0 0 12px rgba(245,166,35,0);background:rgba(245,166,35,0.2)}
}
.ef-sun-ring{
    position:absolute;border-radius:50%;
    border:1px solid rgba(245,166,35,0.15);
    animation:ef-ring-expand 3s ease-out infinite;
    pointer-events:none;
}
.ef-ring-1{width:90px;height:90px;top:50%;left:50%;margin-top:-45px;margin-left:-45px;animation-delay:0s}
.ef-ring-2{width:116px;height:116px;top:50%;left:50%;margin-top:-58px;margin-left:-58px;animation-delay:.8s}
.ef-ring-3{width:140px;height:140px;top:50%;left:50%;margin-top:-70px;margin-left:-70px;animation-delay:1.6s}
@keyframes ef-ring-expand{
    0%{opacity:0.6;transform:scale(0.8)}
    100%{opacity:0;transform:scale(1.1)}
}

/* Panel */
.ef-panel-grid{
    display:grid;grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(2,1fr);
    gap:3px;padding:10px;
    background:rgba(245,166,35,0.08);
    border:2px solid rgba(245,166,35,0.3);
    border-radius:10px;
    width:84px;height:60px;
}
.ef-cell{
    background:rgba(245,166,35,0.2);
    border-radius:2px;
    animation:ef-cell-glow 2.4s ease-in-out infinite;
}
@keyframes ef-cell-glow{
    0%,100%{background:rgba(245,166,35,0.15)}
    50%{background:rgba(245,166,35,0.55)}
}

/* House */
.ef-house-icon{
    width:72px;height:72px;border-radius:50%;
    background:rgba(34,197,94,0.1);
    border:2px solid rgba(34,197,94,0.3);
    display:flex;align-items:center;justify-content:center;
    color:var(--green);position:relative;z-index:2;
}
.ef-house-pulse{
    position:absolute;
    width:90px;height:90px;
    border-radius:50%;
    border:2px solid rgba(34,197,94,0.2);
    top:-9px;left:-9px;
    animation:ef-ring-expand 2.5s ease-out infinite;
    pointer-events:none;
}

/* ── Connectors ── */
.ef-connector{
    display:flex;flex-direction:column;
    align-items:center;gap:4px;
    padding:4px 0;
}
.ef-connector-label{
    font-size:11px;color:var(--text-dim);
    font-style:italic;
}
.ef-flow-line{
    width:2px;height:48px;
    background:rgba(245,166,35,0.15);
    border-radius:2px;position:relative;
    overflow:hidden;
}
.ef-flow-green{background:rgba(34,197,94,0.15)}

/* Particles flowing down */
.ef-particle{
    position:absolute;
    width:2px;height:12px;
    border-radius:2px;
    background:linear-gradient(to bottom,rgba(245,166,35,0.9),transparent);
    left:0;
    animation:ef-particle-fall 1.8s linear infinite;
}
.ef-p1{animation-delay:0s}
.ef-p2{animation-delay:.6s}
.ef-p3{animation-delay:1.2s}
.ef-pg1,.ef-pg2,.ef-pg3{
    background:linear-gradient(to bottom,rgba(34,197,94,0.9),transparent);
}
.ef-pg1{animation-delay:.3s}
.ef-pg2{animation-delay:.9s}
.ef-pg3{animation-delay:1.5s}
@keyframes ef-particle-fall{
    0%{top:-12px;opacity:0}
    10%{opacity:1}
    90%{opacity:1}
    100%{top:100%;opacity:0}
}

/* ── Savings badge ── */
.ef-savings{
    display:inline-flex;align-items:center;gap:8px;
    margin-top:8px;
    padding:10px 18px;
    background:rgba(34,197,94,0.08);
    border:1px solid rgba(34,197,94,0.2);
    border-radius:50px;
    font-size:13px;color:var(--text);
    white-space:nowrap;
}
.ef-savings svg{color:var(--green);flex-shrink:0}
.ef-savings strong{color:var(--green);font-weight:800}

/* Paused when not visible (perf) */
.ef-wrap.paused *{animation-play-state:paused}

/* Light mode */
.light-mode .ef-sun-core{color:#b45309}
.light-mode .ef-label{color:#6b7280}
.light-mode .ef-connector-label{color:#9ca3af}
.light-mode .ef-house-icon{color:#16a34a}
.light-mode .ef-savings{color:#374151}

/* Always vertical — no horizontal override */
.ef-wrap{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:0;
}


/* ═══════════════════════════════════════════════════════════
   COOKIE CONSENT BANNER
   ═══════════════════════════════════════════════════════════ */

.cookie-banner{
    position:fixed;
    z-index:9999;
    /* Desktop: боковая панель справа снизу */
    bottom:24px;
    right:24px;
    width:340px;
    background:var(--bg-2);
    border:1px solid var(--glass-border);
    border-radius:var(--radius);
    box-shadow:0 8px 40px rgba(0,0,0,0.35),0 0 0 1px rgba(245,166,35,0.08);
    padding:24px;
    opacity:0;
    transform:translateY(16px);
    pointer-events:none;
    transition:opacity 0.35s ease,transform 0.35s ease;
    display:block;
}
.cookie-banner--visible{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}

.cookie-close{
    position:absolute;top:14px;right:14px;
    width:28px;height:28px;border-radius:50%;
    background:transparent;border:none;
    color:var(--text-dim);cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    transition:background 0.15s,color 0.15s;
}
.cookie-close:hover{background:var(--glass);color:var(--white)}

.cookie-icon{font-size:24px;margin-bottom:8px;display:block}

.cookie-title{
    font-size:15px;font-weight:800;
    color:var(--white);margin:0 0 8px;
    letter-spacing:-0.3px;
}
.cookie-text{
    font-size:13px;color:var(--text-dim);
    line-height:1.6;margin:0 0 16px;
}
.cookie-link{
    color:var(--sun);text-decoration:underline;
    text-underline-offset:2px;white-space:nowrap;
}

/* Customize panel */
.cookie-customize{
    border-top:1px solid var(--glass-border);
    padding-top:14px;margin-bottom:14px;
    display:flex;flex-direction:column;gap:12px;
}
.cookie-category{
    display:flex;align-items:center;
    justify-content:space-between;gap:12px;
}
.cookie-category-info strong{
    display:block;font-size:13px;
    font-weight:700;color:var(--white);
}
.cookie-category-info span{
    font-size:11px;color:var(--text-dim);
}
.cookie-toggle--locked{
    color:var(--sun);opacity:0.7;
}

/* Toggle switch */
.cookie-toggle-wrap{cursor:pointer;flex-shrink:0}
.cookie-toggle-input{position:absolute;opacity:0;width:0;height:0}
.cookie-toggle-slider{
    display:block;width:40px;height:22px;
    background:var(--glass-border);border-radius:11px;
    position:relative;transition:background 0.2s;
}
.cookie-toggle-slider::after{
    content:'';position:absolute;
    width:16px;height:16px;border-radius:50%;
    background:#fff;top:3px;left:3px;
    transition:transform 0.2s;
}
.cookie-toggle-input:checked + .cookie-toggle-slider{background:var(--sun)}
.cookie-toggle-input:checked + .cookie-toggle-slider::after{transform:translateX(18px)}

/* Action buttons */
.cookie-actions{
    display:flex;flex-direction:column;gap:8px;
}
.btn-cookie-accept{
    width:100%;padding:12px;
    background:var(--sun);color:#0A0A0A;
    border:none;border-radius:var(--radius-sm);
    font-family:var(--font);font-size:14px;font-weight:800;
    cursor:pointer;transition:background 0.15s,transform 0.15s;
    letter-spacing:-0.2px;
}
.btn-cookie-accept:hover{background:var(--sun-dark);transform:translateY(-1px)}

.btn-cookie-ghost{
    width:100%;padding:10px;
    background:transparent;
    border:1px solid var(--glass-border);
    border-radius:var(--radius-sm);
    font-family:var(--font);font-size:13px;font-weight:600;
    color:var(--text-dim);cursor:pointer;
    transition:border-color 0.15s,color 0.15s;
}
.btn-cookie-ghost:hover{border-color:rgba(245,166,35,0.3);color:var(--white)}

.cookie-save-wrap{margin-top:8px}

/* Light mode */
.light-mode .cookie-banner{
    background:#fff;
    border-color:rgba(0,0,0,0.08);
    box-shadow:0 8px 40px rgba(0,0,0,0.12);
}
.light-mode .cookie-title{color:#111}
.light-mode .cookie-close{color:#9ca3af}
.light-mode .cookie-close:hover{background:#f3f4f6;color:#111}
.light-mode .cookie-category-info strong{color:#111}
.light-mode .cookie-toggle-slider{background:#d1d5db}
.light-mode .btn-cookie-ghost{border-color:rgba(0,0,0,0.12);color:#6b7280}
.light-mode .btn-cookie-ghost:hover{border-color:rgba(245,166,35,0.4);color:#111}

/* Mobile — full width bottom bar */
@media (max-width:600px){
    .cookie-banner{
        bottom:0;right:0;left:0;
        width:100%;
        border-radius:var(--radius) var(--radius) 0 0;
        border-bottom:none;
        padding:20px 16px;
        max-height:85vh;
        overflow-y:auto;
    }
    .cookie-actions{
        flex-direction:row;
        flex-wrap:wrap;
    }
    .btn-cookie-accept{flex:1 1 100%}
    .btn-cookie-ghost{flex:1}
}

/* custom-select inside contactos-form */
.contactos-form .custom-select-trigger{
    background:rgba(255,255,255,0.05);
    border-color:var(--glass-border);
    color:var(--text-dim);
}
.contactos-form .custom-select-trigger.has-value{color:var(--text)}
.light-mode .contactos-form .custom-select-trigger{
    background:#f7f9fb;
    border-color:rgba(0,0,0,0.12);
    color:#9ca3af;
}
.light-mode .contactos-form .custom-select-trigger.has-value{color:#111}

/* ── Universal Breadcrumbs (all pages) ──────────────────────── */
.alb-breadcrumbs{
    padding:20px 0 0;
    background:transparent;
}
.alb-bc-list{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:4px;
    list-style:none;
    padding:0;margin:0;
    overflow:hidden;
    width:100%;
}
.alb-bc-item,.alb-bc-sep{
    font-size:13px;
    color:var(--text-dim);
    white-space:nowrap;
}
.alb-bc-item a{
    color:var(--text-dim);
    text-decoration:none;
    transition:color 0.15s;
}
.alb-bc-item a:hover{color:var(--sun)}
.alb-bc-current{
    color:var(--text);
    font-weight:500;
    overflow:hidden;
    text-overflow:ellipsis;
    flex:1;min-width:0;
}
.alb-bc-sep{
    margin:0 2px;
    opacity:0.4;
    flex-shrink:0;
}

/* Light mode */
.light-mode .alb-bc-item,
.light-mode .alb-bc-sep{color:#9CA3AF}
.light-mode .alb-bc-item a:hover{color:var(--sun)}
.light-mode .alb-bc-current{color:#374151}

/* Mobile — show only parent + current */
@media (max-width:768px){
    .alb-bc-list{flex-wrap:nowrap}
    .alb-bc-item:not(:nth-last-child(-n+3)){display:none}
    .alb-bc-sep:not(:nth-last-child(-n+4)){display:none}
    .alb-bc-current{max-width:180px}
}

/* ── Sobre Nós — Hero Variant B (split) ───────────────────── */
.sobre-hero-b{
    padding:72px 0 0;
    overflow:hidden;
}
.sobre-hero-b-inner{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    align-items:stretch;
    min-height:520px;
}

/* Left */
.sobre-hero-b-left{
    padding:56px 56px 56px 0;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

/* Logo block */
.sobre-logo-block{
    display:inline-flex;
    align-items:center;
    gap:14px;
    padding:12px 20px;
    background:var(--glass);
    border:1px solid var(--glass-border);
    border-radius:var(--radius-sm);
    width:fit-content;
}
.sobre-logo-dark{display:block;height:36px;width:auto}
.sobre-logo-light{display:none;height:36px;width:auto}
.light-mode .sobre-logo-dark{display:none}
.light-mode .sobre-logo-light{display:block}
.sobre-logo-tag{
    font-size:11px;font-weight:700;
    color:var(--sun);letter-spacing:1px;
    text-transform:uppercase;
    border-left:1px solid var(--glass-border);
    padding-left:14px;
    white-space:nowrap;
}

/* Trust pills */
.sobre-trust-pills{
    display:flex;flex-wrap:wrap;gap:8px;
    margin-top:24px;
}
.sobre-trust-pill{
    display:inline-flex;align-items:center;gap:6px;
    padding:7px 14px;
    background:var(--glass);
    border:1px solid var(--glass-border);
    border-radius:50px;
    font-size:12px;font-weight:600;
    color:var(--text);
    transition:border-color 0.2s;
}
.sobre-trust-pill:hover{border-color:rgba(245,166,35,0.3)}
.sobre-trust-pill svg{color:var(--sun);flex-shrink:0}
.light-mode .sobre-trust-pill{background:#f7f9fb;border-color:rgba(0,0,0,0.08);color:#374151}

/* Right — photo */
.sobre-hero-b-right{
    position:relative;
    overflow:hidden;
    background:var(--bg-2);
    border-left:1px solid var(--glass-border);
    display:flex;
    align-items:flex-end;
    justify-content:center;
}
.sobre-hero-photo{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:top center;
    position:relative;
    z-index:1;
}
.sobre-hero-sun-bg{
    position:absolute;
    width:320px;height:320px;
    top:50%;left:50%;
    transform:translate(-50%,-50%);
    z-index:0;
    opacity:0.6;
    animation:sobre-spin 40s linear infinite;
}
.sobre-hero-sun-bg svg{width:100%;height:100%}

/* Responsive */
@media (max-width:1024px){
    .sobre-hero-b-inner{grid-template-columns:1fr 1fr;min-height:420px}
    .sobre-hero-b-left{padding:40px 32px 40px 0}
}
@media (max-width:768px){
    .sobre-hero-b{padding:48px 0 0}
    .sobre-hero-b-inner{
        grid-template-columns:1fr;
        min-height:unset;
    }
    .sobre-hero-b-left{padding:32px 0 28px}
    .sobre-hero-b-right{
        height:280px;
        border-left:none;
        border-top:1px solid var(--glass-border);
    }
}

/* ── Breadcrumbs spacing fix on legal/footer pages ─────────── */
.sobre-page .alb-breadcrumbs,
.contactos-page .alb-breadcrumbs,
.legal-page .alb-breadcrumbs{
    padding:24px 0 0;
}
.sobre-page .alb-breadcrumbs + section,
.contactos-page .alb-breadcrumbs + section,
.legal-page .alb-breadcrumbs + *{
    padding-top:36px;
}
.alb-breadcrumbs + .sobre-hero-b{
    padding-top:32px;
}
.alb-breadcrumbs + .contactos-hero{
    padding-top:32px;
}

/* ── Sobre CTA Banner — blog style ── */
.sobre-cta-banner{
    background:linear-gradient(135deg,var(--dark-3) 0%,var(--dark-2) 100%);
    border-top:1px solid var(--glass-border);
    border-bottom:1px solid var(--glass-border);
    overflow:visible;
    position:relative;
    margin-top:0;
}
.sobre-cta-inner{
    display:flex;
    flex-direction:row;
    align-items:stretch;
    max-width:1180px;
    margin:0 auto;
    padding:0 28px;
    min-height:260px;
    gap:0;
}
.sobre-cta-text{
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    text-align:left;
    padding:40px 0;
}
.sobre-cta-title{
    font-size:clamp(22px,2.5vw,32px);
    font-weight:800;color:var(--white);
    margin:8px 0 10px;letter-spacing:-0.5px;
    line-height:1.2;
    text-align:left;
}
.sobre-cta-text p{
    font-size:15px;color:var(--text-dim);
    margin:0 0 24px;max-width:500px;
    text-align:left;
}
.sobre-cta-actions{
    display:flex;flex-direction:row;align-items:center;
    gap:16px;flex-wrap:wrap;
    justify-content:flex-start;
}
.sobre-cta-phone{
    display:inline-flex;align-items:center;gap:8px;
    font-size:15px;font-weight:700;color:var(--sun);
    text-decoration:none;
    transition:color 0.15s;
}
.sobre-cta-phone:hover{color:var(--sun-dark)}
.sobre-cta-img{
    width:240px;
    flex-shrink:0;
    align-self:flex-end;
    margin-top:-80px;
}
.sobre-cta-img img{
    display:block;width:100%;height:auto;
    filter:drop-shadow(0 -4px 20px rgba(245,166,35,0.1));
}

/* Light mode */
.light-mode .sobre-cta-banner{
    background:linear-gradient(135deg,var(--dark-3) 0%,var(--dark-2) 100%);
}
.light-mode .sobre-cta-title{color:#0A0A0A}
.light-mode .sobre-cta-text p{color:#6b7280}

/* Mobile */
@media (max-width:768px){
    .sobre-cta-banner{overflow:hidden}
    .sobre-cta-inner{min-height:180px;padding:0 16px}
    .sobre-cta-img{width:90px;margin-top:0;align-self:flex-end}
    .sobre-cta-text{padding:24px 0}
    .sobre-cta-title{font-size:18px}
    .sobre-cta-actions{gap:12px}
}
@media (max-width:480px){
    .sobre-cta-img{width:72px}
    .sobre-cta-title{font-size:16px}
}



/* ── Service cards — featured (Painéis) in center ── */
.services-grid{position:relative}
.services-grid .service-card:nth-child(1){order:2}
.services-grid .service-card:nth-child(2){order:1}
.services-grid .service-card:nth-child(3){order:3}


/* ── Contactos — Photo banner below hero ───────────────────── */
.contactos-hero-wrap{
    position:relative;
    overflow:hidden;
    background:var(--dark);
}
.light-mode .contactos-hero-wrap{
    background:#F7F8FA;
}
.contactos-hero{
    position:relative;
    z-index:2;
    padding-bottom:0;
}
.contactos-photo-banner{
    position:relative;
    width:100%;
    height:340px;
    overflow:hidden;
    z-index:1;
    margin-top:-160px;
}
.contactos-photo-img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 55%;
    display:block;
    transition:transform 10s ease;
}
.contactos-hero-wrap:hover .contactos-photo-img{
    transform:scale(1.06);
}
.contactos-photo-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        to bottom,
        var(--dark) 0%,
        rgba(11,15,26,0.7) 35%,
        rgba(11,15,26,0.3) 65%,
        rgba(11,15,26,0.5) 100%
    );
}
/* Light mode — overlay fades from light bg colour */
.light-mode .contactos-photo-overlay{
    background:linear-gradient(
        to bottom,
        #F7F8FA 0%,
        rgba(247,248,250,0.75) 30%,
        rgba(247,248,250,0.2) 60%,
        rgba(11,15,26,0.4) 100%
    );
}
@media (max-width:1024px){
    .contactos-photo-banner{height:260px;margin-top:-100px}
}
@media (max-width:768px){
    .contactos-photo-banner{height:200px;margin-top:-60px}
}
/* ── Sidebar WP Blocks fix ── */
.widget-ad--sidebar .wp-block-search__label {
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-dim);
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--glass-border);
}
.widget-ad--sidebar .wp-block-search__inside-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--glass);
    border: 1px solid var(--glass-border);
    border-radius: var(--radius-sm);
    padding: 8px 10px 8px 14px;
    transition: border-color 0.2s;
}
.widget-ad--sidebar .wp-block-search__input {
    flex: 1;
    background: transparent;
    border: none;
    outline: none;
    font-family: var(--font);
    font-size: 14px;
    color: var(--text);
}
.widget-ad--sidebar .wp-block-search__input::placeholder { color: var(--text-dim); }
.widget-ad--sidebar .wp-block-search__inside-wrapper:focus-within {
    border-color: var(--sun);
}
.widget-ad--sidebar .wp-block-search__button {
    background: var(--sun);
    color: #0A0A0A;
    border: none;
    border-radius: 50px;
    padding: 7px 16px;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}
.widget-ad--sidebar .wp-block-group {
    margin-top: 24px;
    background: var(--bg-2);
    border: 1px solid var(--glass-border);
    border-radius: var(--radius);
    padding: 20px;
}
.widget-ad--sidebar .wp-block-heading {
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-dim) !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--glass-border);
}
.widget-ad--sidebar .wp-block-latest-posts__list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}
.widget-ad--sidebar .wp-block-latest-posts__list li {
    padding: 10px 0;
    border-bottom: 1px solid var(--glass-border);
}
.widget-ad--sidebar .wp-block-latest-posts__list li:last-child { border-bottom: none; }
.widget-ad--sidebar .wp-block-latest-posts__post-title {
    font-size: 13px;
    font-weight: 600;
    color: var(--white);
    text-decoration: none;
    line-height: 1.4;
    display: block;
}
.widget-ad--sidebar .wp-block-latest-posts__post-title:hover { color: var(--sun); }
.widget-ad--sidebar .wp-block-latest-comments {
    list-style: none;
    padding: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment {
    padding: 8px 0;
    border-bottom: 1px solid var(--glass-border);
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.5;
}
.widget-ad--sidebar .wp-block-latest-comments__comment:last-child { border-bottom: none; }
.widget-ad--sidebar .wp-block-latest-comments__comment-author,
.widget-ad--sidebar .wp-block-latest-comments__comment-link {
    color: var(--sun);
    text-decoration: none;
}

/* Light mode */
.light-mode .widget-ad--sidebar .wp-block-group {
    background: #fff;
    border-color: rgba(0,0,0,0.08);
}
.light-mode .widget-ad--sidebar .wp-block-search__inside-wrapper {
    background: rgba(0,0,0,0.04);
    border-color: rgba(0,0,0,0.12);
}
.light-mode .widget-ad--sidebar .wp-block-search__input { color: #111; }
.light-mode .widget-ad--sidebar .wp-block-latest-posts__post-title { color: #111; }
/* ── Comments widget compact fix ── */
.widget-ad--sidebar .wp-block-latest-comments__comment {
    padding: 8px 0;
    border-bottom: 1px solid var(--glass-border);
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
}
.widget-ad--sidebar .wp-block-latest-comments__comment:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
    margin: 0;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-author {
    color: var(--text);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link {
    color: var(--sun);
    font-size: 13px;
    text-decoration: none;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link:hover {
    text-decoration: underline;
}
/* Убираем лишние margin/padding от article внутри li */
.widget-ad--sidebar .wp-block-latest-comments__comment article {
    margin: 0;
    padding: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment footer {
    margin: 0;
    padding: 0;
}/* ── Comments widget compact fix ── */
.widget-ad--sidebar .wp-block-latest-comments__comment {
    padding: 8px 0;
    border-bottom: 1px solid var(--glass-border);
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
}
.widget-ad--sidebar .wp-block-latest-comments__comment:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
    margin: 0;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-author {
    color: var(--text);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link {
    color: var(--sun);
    font-size: 13px;
    text-decoration: none;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link:hover {
    text-decoration: underline;
}
/* Убираем лишние margin/padding от article внутри li */
.widget-ad--sidebar .wp-block-latest-comments__comment article {
    margin: 0;
    padding: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment footer {
    margin: 0;
    padding: 0;
}/* ── Comments widget compact fix ── */
.widget-ad--sidebar .wp-block-latest-comments__comment {
    padding: 8px 0;
    border-bottom: 1px solid var(--glass-border);
    font-size: 13px;
    color: var(--text-dim);
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
}
.widget-ad--sidebar .wp-block-latest-comments__comment:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0 4px;
    margin: 0;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-author {
    color: var(--text);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link {
    color: var(--sun);
    font-size: 13px;
    text-decoration: none;
    line-height: 1.4;
}
.widget-ad--sidebar .wp-block-latest-comments__comment-link:hover {
    text-decoration: underline;
}
/* Убираем лишние margin/padding от article внутри li */
.widget-ad--sidebar .wp-block-latest-comments__comment article {
    margin: 0;
    padding: 0;
}
.widget-ad--sidebar .wp-block-latest-comments__comment footer {
    margin: 0;
    padding: 0;
}
/* ── Fix: mobile nav covers full viewport when header has backdrop-filter ── */
/* backdrop-filter on a parent creates a containing block for position:fixed children. */
/* Removing it while nav is open ensures the menu covers 100% of the viewport.        */
body.nav-open .site-header {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* ── Fix: iOS Safari horizontal scroll (overflow-x:hidden on body alone is ignored) ── */
html {
    overflow-x: hidden;
}

/* ── Fix: how-logo-icon can overflow on tablet (769–1024px) ── */
@media (max-width:1024px) {
    .how-logo-bg {
        display: none;
    }
}

/* ── Fix: piggy-wrap cascade bug ──────────────────────────────────────────
   .calc-right and .piggy-wrap are redefined at line ~196 WITHOUT a media
   query, so those rules (overflow:visible / display:flex) override the
   @media(max-width:1024px) block at line ~138 (overflow:hidden / display:none)
   because CSS last-rule-wins. This re-applies the correct mobile values
   AFTER the offending redefinition to restore expected behaviour.
   ─────────────────────────────────────────────────────────────────────── */
@media (max-width:1024px) {
    .piggy-wrap {
        display: none;
    }
    .calc-right {
        overflow: hidden;
    }
}

/* ── Fix: hero button text overflow on mobile ─────────────────────────────
   .btn has white-space:nowrap (needed globally) but on mobile the hero
   CTA "Descubra quanto pode poupar →" is too long for the narrow container
   (hero padding 20px + container padding 28px = only 279px usable width).
   Fix 1: remove the redundant horizontal padding from .hero on mobile
          since .container already provides 28px side spacing.
   Fix 2: allow button text to wrap so it never clips inside hero overflow:hidden.
   ─────────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .hero {
        padding-left: 0;
        padding-right: 0;
    }
    .hero-actions .btn {
        white-space: normal;
        line-height: 1.3;
    }
}
