/* UI-04: shared semantic colors; marketing layout keeps its own scale. */
:root{
  color-scheme:dark;
  --bg:#0b111a;--bg2:#101923;--panel:#151f2c;--panel2:#1a2838;--raised:#203145;
  --text:#eef5fb;--muted:#adbed0;--line:#35495e;--cyan:#70d7f3;--cyan2:#176ab4;--blue:#176ab4;--green:#42d695;
  --primary:#176ab4;--primary-hover:#115693;--on-primary:#fff;--focus:#67d8f3;
  --header:rgba(16,25,35,.96);--footer:#0e1722;--soft:rgba(112,215,243,.06);--hover:#203145;
  --input:#101b28;--input-border:#536a82;
  --info-bg:#15334b;--info-text:#a6dfff;--success-bg:#113b2b;--success-text:#a6efc2;
  --warning-bg:#403215;--warning-text:#ffd582;--danger-bg:#431e29;--danger-text:#ffb3be;
  --shadow:0 25px 70px rgba(0,0,0,.28);--radius:20px;--container:1240px;
}
:root[data-theme="light"]{
  color-scheme:light;
  --bg:#f1f5f8;--bg2:#e9f0f6;--panel:#fff;--panel2:#f4f7fb;--raised:#e8eff6;
  --text:#17334e;--muted:#50677d;--line:#bdcbd9;--cyan:#075b90;--green:#095c39;--focus:#0d699c;
  --header:rgba(255,255,255,.96);--footer:#e9f0f6;--soft:rgba(23,106,180,.05);--hover:#e8eff6;
  --input:#fff;--input-border:#70889e;
  --info-bg:#e4f2fc;--info-text:#0d4e7e;--success-bg:#e1f4e9;--success-text:#095c39;
  --warning-bg:#fff0cd;--warning-text:#744300;--danger-bg:#ffe7ed;--danger-text:#9b2037;
  --shadow:0 20px 55px rgba(23,51,78,.1);
}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55;overflow-x:hidden}body::selection{background:var(--cyan);color:#031016}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input{font:inherit}.container{width:min(var(--container),calc(100% - 42px));margin:auto}.section{padding:108px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.76rem;font-weight:800;letter-spacing:.16em;color:var(--muted);margin-bottom:18px}.eyebrow::before{content:"";width:26px;height:2px;background:linear-gradient(90deg,var(--cyan),transparent)}.eyebrow.cyan{color:var(--cyan)}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.045em;line-height:1.04}h1 span,h2 span{color:var(--cyan)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:13px;border:1px solid transparent;font-weight:800;font-size:.95rem;transition:.22s ease;cursor:pointer}.btn-primary{background:var(--primary);color:var(--on-primary);box-shadow:0 13px 32px rgba(60,201,244,.18)}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.05)}.btn-ghost{border-color:var(--line);background:var(--panel)}.btn-ghost:hover{background:var(--hover);border-color:var(--input-border)}.btn-portal{background:var(--info-bg);border-color:var(--input-border);color:var(--info-text);backdrop-filter:blur(10px)}.btn-portal svg{width:18px;fill:none;stroke:var(--cyan);stroke-width:1.8}.text-link{font-weight:800;color:var(--cyan)}.text-link:hover{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:100;background:var(--header);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-wrap{height:82px;display:flex;align-items:center;gap:18px}.brand{width:245px;flex:none}.brand img{width:100%;height:49px;object-fit:contain;object-position:left center}.desktop-nav{display:flex;align-items:center;gap:18px;margin-left:auto}.desktop-nav a{font-size:.9rem;font-weight:650;color:var(--muted);transition:.2s}.desktop-nav a:hover{color:var(--cyan)}.nav-actions{display:flex;align-items:center;gap:10px}.language,.menu-toggle{border:1px solid var(--line);background:transparent;color:var(--text);border-radius:11px;height:42px;min-width:42px;font-weight:800;cursor:pointer}.portal-nav{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(60,201,244,.3);background:rgba(60,201,244,.08);color:var(--info-text);border-radius:12px;padding:10px 13px;font-size:.83rem;font-weight:800}.portal-dot{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px rgba(60,201,244,.1)}.menu-toggle{display:none}.mobile-nav{display:none;padding:12px 21px 20px;border-top:1px solid var(--line);background:var(--panel)}.mobile-nav.open{display:grid}.mobile-nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-weight:700;color:var(--text)}.mobile-nav .mobile-portal{color:var(--cyan)}
.hero{position:relative;min-height:760px;display:flex;align-items:center;padding:78px 0 88px;border-bottom:1px solid var(--line);overflow:hidden}.hero-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.22;pointer-events:none}.hero-glow-a{width:520px;height:520px;background:#057ac1;right:-120px;top:-190px}.hero-glow-b{width:440px;height:440px;background:#15d9d0;left:-280px;bottom:-220px;opacity:.08}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:66px;align-items:center}.hero-copy h1{font-size:clamp(3.15rem,5.5vw,5.65rem);margin-bottom:24px;max-width:780px}.hero-lead{font-size:1.15rem;color:var(--muted);max-width:700px;margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px;color:var(--muted);font-size:.88rem}.hero-meta span{display:flex;align-items:center;gap:9px}.hero-meta i{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 5px rgba(84,213,160,.09)}.hero-meta a{color:var(--muted)}.hero-media{position:relative;border-radius:30px;overflow:hidden;min-height:570px;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}.hero-media>img{position:absolute;width:100%;height:100%;object-fit:cover}.media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,8,13,.04),rgba(1,8,13,.07) 42%,rgba(1,8,13,.82))}.hero-badge{position:absolute;background:rgba(4,14,21,.78);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 15px 45px rgba(0,0,0,.24)}.hero-badge-top{top:20px;left:20px;padding:14px 16px}.hero-badge-top small{display:block;color:var(--cyan);font-size:.63rem;font-weight:900;letter-spacing:.14em;margin-bottom:3px}.hero-badge-top strong{font-size:.93rem}.hero-badge-bottom{left:20px;right:20px;bottom:20px;display:flex;align-items:center;gap:13px;padding:17px}.badge-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(84,213,160,.16);color:var(--green);font-weight:900}.hero-badge-bottom strong{display:block}.hero-badge-bottom span{display:block;color:var(--muted);font-size:.81rem;margin-top:2px}
.trust-strip{border-bottom:1px solid var(--line);background:rgba(255,255,255,.014)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{padding:26px 26px 26px 0;border-right:1px solid var(--line)}.trust-grid>div+div{padding-left:26px}.trust-grid>div:last-child{border-right:0}.trust-grid strong{display:block;font-size:.98rem;margin-bottom:5px}.trust-grid span{display:block;color:var(--muted);font-size:.8rem}
.portal-section{background:radial-gradient(circle at 90% 20%,rgba(30,174,235,.12),transparent 30%),linear-gradient(180deg,var(--bg2),var(--bg))}.portal-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:74px;align-items:center}.portal-copy h2,.section-heading h2,.business-copy h2,.store-copy h2,.about-copy h2,.contact-copy h2{font-size:clamp(2.35rem,4vw,4.25rem);margin-bottom:22px}.portal-copy>p,.section-heading>p,.business-copy>p,.store-copy>p,.about-copy>p,.contact-copy>p{color:var(--muted);font-size:1.04rem}.portal-features{display:grid;gap:12px;margin:30px 0}.portal-features>div{display:flex;gap:15px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--line)}.portal-features>div>span{font-size:.74rem;color:var(--cyan);font-weight:900;letter-spacing:.08em;padding-top:4px}.portal-features p{margin:0}.portal-features strong{display:block}.portal-features small{display:block;color:var(--muted);margin-top:3px}.portal-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:28px}.portal-status{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.8rem}.portal-status i{width:7px;height:7px;border-radius:50%;background:#ffbd5b;box-shadow:0 0 0 5px rgba(255,189,91,.09)}
.services-section{background:var(--bg)}.section-heading{display:grid;grid-template-columns:1.15fr .7fr;gap:80px;align-items:end;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{margin-bottom:6px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{min-height:275px;padding:24px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));display:flex;flex-direction:column;transition:.22s}.service-card:hover{border-color:rgba(60,201,244,.28);transform:translateY(-3px);background:linear-gradient(180deg,rgba(60,201,244,.055),rgba(255,255,255,.02))}.service-num{font-size:.67rem;font-weight:900;color:var(--muted);letter-spacing:.1em}.service-card h3{font-size:1.23rem;margin:34px 0 10px}.service-card p{color:var(--muted);font-size:.88rem;flex:1}.service-card>span{font-size:.64rem;color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-weight:800}.service-highlight{border-color:rgba(60,201,244,.3);background:linear-gradient(155deg,var(--info-bg),var(--panel))}.service-highlight a{color:var(--cyan);font-weight:800;font-size:.78rem}
.installations-section{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.installations-heading>p{font-size:.91rem}.installation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.installation-card{position:relative;min-height:390px;border-radius:22px;overflow:hidden;border:1px solid var(--line)}.installation-card.wide{grid-column:1/-1;min-height:500px}.installation-card img{position:absolute;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.installation-card:hover img{transform:scale(1.025)}.installation-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(3,10,15,.93))}.installation-overlay{position:absolute;left:0;right:0;bottom:0;padding:28px;z-index:2}.installation-overlay>span{color:var(--cyan);font-size:.65rem;font-weight:900;letter-spacing:.13em}.installation-overlay h3{font-size:1.52rem;margin:6px 0 5px}.installation-overlay p{margin:0;color:#b4c1ca;max-width:590px;font-size:.86rem}
.business-section{background:radial-gradient(circle at 10% 60%,rgba(38,121,255,.08),transparent 34%)}.business-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.business-stack{display:grid;gap:10px}.stack-card{display:grid;grid-template-columns:52px 1fr;gap:15px;padding:19px;border:1px solid var(--line);border-radius:17px;background:var(--panel)}.stack-card>b{color:var(--cyan);font-size:.72rem;letter-spacing:.1em}.stack-card strong{display:block;margin-bottom:4px}.stack-card span{display:block;color:var(--muted);font-size:.83rem}
.store-section{padding-top:20px}.store-card{border:1px solid rgba(60,201,244,.18);background:linear-gradient(135deg,var(--panel2),var(--panel));border-radius:28px;padding:45px;display:grid;grid-template-columns:90px 1fr .75fr;gap:35px;align-items:center;box-shadow:var(--shadow)}.store-icon{width:76px;height:76px;border-radius:22px;background:rgba(60,201,244,.11);display:grid;place-items:center;border:1px solid rgba(60,201,244,.16)}.store-icon svg{width:36px;fill:none;stroke:var(--cyan);stroke-width:1.6}.store-copy h2{font-size:clamp(2rem,3.2vw,3.4rem)}.store-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.store-list{display:grid;gap:0;border-left:1px solid var(--line);padding-left:30px}.store-list span{padding:13px 0;border-bottom:1px solid var(--line);font-size:.88rem;color:var(--muted)}.store-list span:last-child{border-bottom:0}
.about-section{background:var(--bg2);border-top:1px solid var(--line)}.about-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:12px}.credential{display:flex;gap:14px;padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.credential>span{font-size:.66rem;color:var(--cyan);font-weight:900}.credential strong{display:block;font-size:.93rem}.credential small{display:block;color:var(--muted);margin-top:5px}
.social-proof{padding-top:72px}.proof-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:16px}.review-card,.instagram-card{border:1px solid var(--line);border-radius:24px;padding:34px;background:var(--panel)}.review-number{font-size:4.8rem;font-weight:900;letter-spacing:-.06em;line-height:1}.review-stars{color:#f3b84d;letter-spacing:.12em;margin:8px 0 22px}.review-card p,.instagram-card p{color:var(--muted)}.instagram-card{display:flex;gap:28px;align-items:center;background:linear-gradient(135deg,rgba(160,55,176,.12),rgba(15,124,181,.1))}.instagram-mark{font-size:5.4rem;color:#d582e0;line-height:1}.instagram-card small{color:#d58ee0;font-weight:900;letter-spacing:.14em}.instagram-card h3{font-size:2rem;margin:4px 0 10px}
.contact-section{background:var(--bg2);border-top:1px solid var(--line)}.contact-layout{display:grid;grid-template-columns:.85fr .75fr;gap:60px}.contact-copy{align-self:center}.contact-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.contact-details{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:20px;overflow:hidden}.contact-details>div{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-details>div:nth-child(2n){border-right:0}.contact-details>div:nth-last-child(-n+2){border-bottom:0}.contact-details small{display:block;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.11em;margin-bottom:8px}.contact-details strong{font-size:.85rem;line-height:1.75}.map-card{grid-column:1/-1;border-radius:22px;overflow:hidden;border:1px solid var(--line);min-height:380px}.map-card iframe{width:100%;height:100%;min-height:380px;border:0;filter:grayscale(.15) saturate(.8) brightness(.82)}
.footer{padding:42px 0 24px;background:var(--footer);border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:250px 1fr auto;gap:35px;align-items:center;padding-bottom:30px}.footer-main img{width:230px}.footer-main p{margin:0;color:var(--muted);font-size:.82rem}.footer-main a{color:var(--cyan);font-weight:800;font-size:.85rem}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.73rem}
.portal-modal{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.72);backdrop-filter:blur(9px);display:none;place-items:center;padding:22px}.portal-modal.open{display:grid}.portal-modal-card{width:min(520px,100%);background:#0d1a24;border:1px solid rgba(255,255,255,.13);border-radius:24px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.5);position:relative}.modal-close{position:absolute;right:15px;top:13px;width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:#fff;font-size:1.4rem;cursor:pointer}.modal-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:rgba(60,201,244,.1);color:var(--cyan);font-size:1.4rem;margin-bottom:20px}.portal-modal-card h3{font-size:1.5rem;line-height:1.2}.portal-modal-card p{color:var(--muted);font-size:.9rem}.portal-modal-card code{display:block;padding:11px 13px;border:1px solid var(--line);background:#071018;color:#8fdcf5;border-radius:10px;margin:20px 0;font-size:.82rem}.modal-ok{width:100%}
@media(max-width:1279px){.desktop-nav{display:none}.menu-toggle{display:inline-block}.portal-nav{display:none}.hero-grid,.portal-layout,.business-layout,.about-layout{grid-template-columns:1fr}.hero{padding-top:55px}.hero-media{min-height:560px}.portal-layout,.business-layout,.about-layout{gap:48px}.service-grid{grid-template-columns:repeat(2,1fr)}.store-card{grid-template-columns:78px 1fr}.store-list{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding:18px 0 0;grid-template-columns:1fr 1fr;gap:0 24px}.section-heading{grid-template-columns:1fr;gap:16px}.contact-layout{grid-template-columns:1fr}.footer-main{grid-template-columns:220px 1fr}.footer-main>a{grid-column:1/-1}}
@media(max-width:760px){.container{width:min(100% - 28px,var(--container))}.section{padding:76px 0}.nav-wrap{height:70px}.brand{width:190px}.brand img{height:42px}.language{height:38px}.hero{min-height:auto;padding:50px 0 64px}.hero-grid{gap:38px}.hero-copy h1{font-size:clamp(2.55rem,12vw,3.8rem)}.hero-lead{font-size:1rem}.hero-actions{display:grid}.btn{width:100%}.hero-meta{display:grid;gap:10px}.hero-media{min-height:430px;border-radius:22px}.hero-badge-top{top:13px;left:13px}.hero-badge-bottom{left:13px;right:13px;bottom:13px;padding:13px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div,.trust-grid>div+div{padding:18px 12px 18px 0;border-right:0;border-bottom:1px solid var(--line)}.trust-grid>div:nth-child(even){padding-left:12px}.portal-copy h2,.section-heading h2,.business-copy h2,.store-copy h2,.about-copy h2,.contact-copy h2{font-size:2.55rem}.demo-brand{align-items:flex-start;gap:10px;flex-direction:column}.demo-brand img{width:150px}.demo-field{display:grid}.repair-head{display:grid}.repair-meta{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-card{min-height:230px}.installation-grid{grid-template-columns:1fr}.installation-card,.installation-card.wide{grid-column:auto;min-height:360px}.installation-overlay{padding:20px}.business-layout{gap:45px}.store-card{padding:28px;grid-template-columns:1fr}.store-icon{width:62px;height:62px}.store-list{grid-template-columns:1fr}.credentials{grid-template-columns:1fr}.proof-grid{grid-template-columns:1fr}.instagram-card{align-items:flex-start;gap:16px}.instagram-mark{font-size:3.5rem}.contact-details{grid-template-columns:1fr}.contact-details>div{border-right:0}.contact-details>div:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.contact-details>div:last-child{border-bottom:0}.footer-main{grid-template-columns:1fr}.footer-main img{width:210px}.footer-bottom{display:grid}.portal-modal-card{padding:28px 22px}}


/* v3 navigation + store/portal/social refinements */
section[id]{scroll-margin-top:96px}
.trust-review-link{display:block;color:var(--cyan);font-size:.8rem;font-weight:800;margin-top:4px}
.store-hero-visual{position:absolute;inset:0;padding:28px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 75% 15%,rgba(60,201,244,.19),transparent 34%),linear-gradient(145deg,#102432 0%,#08131c 58%,#061017 100%)}
.store-hero-glow{position:absolute;width:330px;height:330px;border-radius:50%;right:-90px;bottom:-90px;background:rgba(38,120,255,.18);filter:blur(45px)}
.store-hero-top,.store-hero-center,.store-hero-bottom{position:relative;z-index:2}
.store-hero-top span{display:inline-flex;padding:9px 12px;border:1px solid rgba(60,201,244,.24);background:rgba(60,201,244,.07);border-radius:999px;color:#a9eaff;font-size:.66rem;font-weight:900;letter-spacing:.12em}
.store-hero-center img{width:min(390px,78%);max-height:105px;object-fit:contain;object-position:left;margin-bottom:32px}.store-hero-center h3{font-size:clamp(2rem,3vw,3rem);max-width:520px;line-height:1.05;margin-bottom:12px}.store-hero-center p{color:var(--muted);font-size:1rem}
.store-hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px;border:1px solid rgba(255,255,255,.1);background:rgba(3,10,15,.48);backdrop-filter:blur(12px);border-radius:16px}.store-hero-bottom small{display:block;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.12em;margin-bottom:4px}.store-hero-bottom strong{font-size:.9rem}.mini-map-link{color:var(--cyan);font-size:.82rem;font-weight:900;white-space:nowrap}
/* Genuine PHP screenshots, separate desktop/mobile assets, with natural proportions. */
.portal-visual-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow)}
.portal-preview{display:block;width:100%;height:auto}
.portal-preview img{display:block;width:100%;height:auto}.portal-preview-light{display:none}
[data-theme="light"] .portal-preview-dark{display:none}
[data-theme="light"] .portal-preview-light{display:block}
.portal-visual-caption{padding:18px;border-top:1px solid var(--line);background:var(--panel)}
.portal-visual-caption span{display:block;color:var(--cyan);font-size:.65rem;font-weight:800;letter-spacing:.1em}
.portal-visual-caption strong{display:block;margin-top:5px;font-size:.9rem}
.portal-visual-caption small{display:block;color:var(--muted);margin-top:7px}

.contact-layout{grid-template-columns:.85fr .75fr}.map-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;margin-top:-42px;padding:14px 16px 16px;background:linear-gradient(180deg,transparent,var(--bg2) 32%);position:relative;z-index:3}
.contact-socials{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:6px}.social-link-card{display:grid;grid-template-columns:50px 1fr;gap:16px;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--panel)}.social-symbol{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(60,201,244,.09);color:var(--cyan);font-size:1.45rem;font-weight:900}.social-link-card small{color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.12em}.social-link-card h3{margin:4px 0 8px;font-size:1.2rem}.social-link-card p{color:var(--muted);font-size:.82rem;margin-bottom:12px}.social-link-card a{color:var(--cyan);font-size:.78rem;font-weight:900}.social-actions{display:flex;flex-wrap:wrap;gap:14px}.google-card .social-symbol{color:var(--warning-text);background:rgba(241,189,80,.08)}.facebook-card .social-symbol{color:var(--cyan);background:rgba(54,113,220,.12)}.instagram-card-v2 .social-symbol{color:var(--cyan);background:rgba(186,73,199,.1)}
@media(max-width:1100px){.contact-socials{grid-template-columns:1fr 1fr}.store-hero-center img{width:360px}}
@media(max-width:760px){html{scroll-padding-top:78px}section[id]{scroll-margin-top:78px}.store-hero-visual{padding:18px}.store-hero-bottom{align-items:flex-start;flex-direction:column}.store-hero-center img{width:260px}.contact-socials{grid-template-columns:1fr}.map-actions{display:grid;margin-top:-25px}.social-link-card{grid-template-columns:42px 1fr;padding:20px}.social-symbol{width:40px;height:40px}.portal-visual-caption{left:10px;right:10px;bottom:10px}}

/* R7.2 visual consistency: aligned branding and recognizable action icons */
.button-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.button-icon.icon-facebook,.social-symbol .icon-facebook{
  fill:currentColor;
  stroke:none;
}
.button-icon .icon-fill,.social-symbol .icon-fill{
  fill:currentColor;
  stroke:none;
}
.social-symbol svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.social-handle-cell strong{
  display:grid;
  gap:4px;
}
.social-handle-cell a{
  width:max-content;
  max-width:100%;
  color:var(--muted);
}
.social-handle-cell a:hover{color:var(--cyan)}

@media(max-width:760px){
  .brand{width:160px}
  .brand img,.footer-main img{height:42px}
}

/* Keep the contact information below the actions on tablet and mobile. */
@media(max-width:1100px){
  .contact-layout{grid-template-columns:minmax(0,1fr);gap:38px}
  .contact-copy,.contact-details{min-width:0;width:100%}
}
@media(max-width:760px){
  .contact-layout{gap:32px}
  .contact-details strong,.social-handle-cell a{overflow-wrap:anywhere}
}

/* R7.3: computer workshop cards below the Service Portal. */
.portal-service-showcase{margin-top:74px}
.service-showcase-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);
  column-gap:72px;
  align-items:end;
  margin-bottom:34px;
}
.service-showcase-heading .eyebrow{grid-column:1/-1}
.service-showcase-heading h2{
  margin:0;
  font-size:clamp(2rem,3.5vw,3.45rem);
}
.service-showcase-heading p{margin:0 0 5px;color:var(--muted)}
.portal-service-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.portal-service-grid .installation-card{min-height:455px}
.portal-service-grid .installation-card::after{
  background:linear-gradient(180deg,transparent 24%,rgba(3,10,15,.96));
}

@media(max-width:900px){
  .service-showcase-heading{grid-template-columns:1fr;gap:12px}
}
@media(max-width:760px){
  .portal-service-showcase{margin-top:54px}
  .portal-service-grid{grid-template-columns:1fr}
  .portal-service-grid .installation-card{min-height:390px}
}

/* R7.3: balanced 2x2 contact actions on desktop; mobile remains stacked. */
@media(min-width:761px){
  .contact-buttons{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:min(100%,520px);
    gap:10px;
  }
  .contact-buttons .btn{
    width:100%;
    min-height:54px;
  }
}

/* V8 / RC2 navigation and primary-action alignment */
.nav-actions{margin-left:auto}
.hero-actions .btn{min-width:190px}
.footer-legal{display:inline-flex;gap:6px;flex-wrap:wrap}.footer-legal a{color:var(--cyan)}
@media(max-width:760px){.nav-actions{margin-left:auto}.hero-actions .btn{min-width:0}.menu-toggle{margin-left:auto}}
.legal-page{padding:72px 0 110px}.legal-document{max-width:920px}.legal-document h1{font-size:clamp(2.4rem,5vw,4.8rem);margin:14px 0 10px}.legal-updated{color:var(--muted);margin-bottom:45px}.legal-document section{padding:24px 0;border-top:1px solid var(--line)}.legal-document h2{font-size:1.35rem;margin:0 0 10px}.legal-document p{color:var(--muted);line-height:1.75;margin:0}.legal-home{min-height:42px;padding:9px 14px}

/* V8.1 hero actions: four equal controls on desktop, stacked on phones */
.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:610px}
.hero-actions .btn{width:100%;min-width:0}
@media(max-width:760px){.hero-actions{grid-template-columns:1fr;max-width:none}}

/* V9.1 storefront photograph: full-bleed image with service-card-style overlay. */
.store-hero-visual{isolation:isolate;background:#08131c}
.store-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.store-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(2,8,13,.28) 0%,rgba(2,8,13,.08) 34%,rgba(2,8,13,.8) 70%,rgba(2,8,13,.97) 100%)}
.store-hero-glow{display:none}
.store-hero-center{position:relative;z-index:2;margin-top:auto;margin-bottom:18px;text-shadow:0 2px 18px rgba(0,0,0,.85)}
.store-hero-center p{color:#d1dbe1}
.store-hero-bottom{background:rgba(3,10,15,.72)}
@media(max-width:760px){.store-hero-center h3{font-size:1.65rem}.store-hero-center p{font-size:.9rem}.store-hero-bottom{padding:13px}}

/* V9.1: real storefront photography in the hero card. */
.store-hero-visual{background:#08131c;isolation:isolate}
.store-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.store-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(2,8,13,.34) 0%,rgba(2,8,13,.08) 35%,rgba(2,8,13,.82) 70%,rgba(2,8,13,.96) 100%)}
.store-hero-glow{display:none}
.store-hero-center{margin-top:auto;margin-bottom:18px;max-width:520px;text-shadow:0 3px 18px rgba(0,0,0,.82)}
.store-hero-center h3{margin-bottom:10px}
.store-hero-center p{color:#d4e0e7}
@media(max-width:760px){.store-hero-center{margin-bottom:13px}.store-hero-center h3{font-size:1.7rem}.store-hero-center p{font-size:.88rem}.store-hero-bottom{padding:13px}}

/* V9.2: wider 3:2 storefront photograph, discreet bottom copy and external location row. */
.hero-grid{grid-template-columns:.88fr 1.12fr;grid-template-areas:"copy media" "contact location" "meta .";column-gap:48px;row-gap:12px;align-items:start}
.hero-copy{grid-area:copy}
.hero-grid>.hero-media{grid-area:media;align-self:end;width:100%;min-height:0;aspect-ratio:3/2}
.hero-contact-actions{grid-area:contact;margin:0;max-width:none}
.hero-contact-actions .btn{height:54px;min-height:54px}
.hero-grid>.hero-meta{grid-area:meta;margin-top:18px}
.store-hero-visual{padding:22px}
.store-hero-image{object-fit:cover;object-position:center}
.store-hero-shade{background:linear-gradient(180deg,rgba(2,8,13,.26) 0%,rgba(2,8,13,.02) 48%,rgba(2,8,13,.84) 100%)}
.store-hero-center{margin-top:auto;margin-bottom:0;max-width:620px;text-shadow:0 3px 18px rgba(0,0,0,.92)}
.store-hero-center h3{font-size:clamp(1.35rem,1.9vw,1.7rem);margin-bottom:6px}
.store-hero-center p{font-size:.84rem;margin-bottom:0;color:#dbe5eb}
.store-hero-location{grid-area:location;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:8px 18px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.store-hero-location small{display:block;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.12em;margin-bottom:4px}
.store-hero-location strong{display:block;font-size:.9rem}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr;grid-template-areas:"copy" "contact" "meta" "media" "location";column-gap:0;row-gap:12px}.hero-grid>.hero-media{align-self:auto;margin-top:24px}.hero-grid>.hero-meta{margin-top:16px}}
@media(max-width:760px){.hero-grid>.hero-media{aspect-ratio:3/2;border-radius:22px}.store-hero-visual{padding:14px}.store-hero-top span{padding:7px 9px;font-size:.56rem}.store-hero-center h3{font-size:1.08rem;margin-bottom:3px}.store-hero-center p{font-size:.66rem;line-height:1.35}.store-hero-location{align-items:flex-start;flex-direction:column;gap:10px;padding:14px}.store-hero-location .mini-map-link{min-height:38px;display:inline-flex;align-items:center}}

/* V9.3: compact hero, aligned action/location row and matching image interaction. */
.hero-copy h1{font-size:clamp(2.35rem,4vw,4.25rem)}
.store-hero-image{transition:transform .6s ease}
.hero-media:hover .store-hero-image{transform:scale(1.025)}
.store-hero-location{height:54px;min-height:54px;padding:6px 18px}
.store-hero-location small{line-height:1;margin-bottom:3px}
.store-hero-location strong{line-height:1.15}
@media(max-width:760px){.hero-copy h1{font-size:clamp(2.35rem,10.5vw,3.35rem)}.store-hero-location{height:auto;min-height:54px;padding:14px}}
@media(prefers-reduced-motion:reduce){.store-hero-image{transition:none}.hero-media:hover .store-hero-image{transform:none}}

/* UI-04 brand, accessible controls and responsive navigation. */
.site-logo{display:block;width:100%;height:49px}
.site-logo img{width:100%;height:100%;object-fit:contain;object-position:left center}
.site-logo-dark{border-radius:5px}
.site-logo-light{display:none}
[data-theme="light"] .site-logo-dark{display:none}
[data-theme="light"] .site-logo-light{display:block}
.footer-main>.site-logo{width:230px}
.theme-toggle{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text);cursor:pointer}
.theme-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.theme-moon,[data-theme="light"] .theme-sun{display:none}
[data-theme="light"] .theme-moon{display:block}
a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.language,.menu-toggle{min-width:44px;height:44px;color:var(--text)}
.mobile-nav{max-height:calc(100dvh - 70px);overflow-y:auto;background:var(--panel)}
.hero-media,.installation-card{--text:#eef5fb;--muted:#adbed0;--cyan:#70d7f3;color:var(--text)}
.installation-overlay p{color:#adbed0}
.legal-document h1{overflow-wrap:anywhere}
.legal-document p{color:var(--muted)}
.map-card iframe{filter:none}
@media(min-width:1280px) and (max-width:1439px){.brand{width:205px}.nav-wrap{gap:14px}.desktop-nav{gap:13px}.desktop-nav a{font-size:.83rem}.portal-nav{font-size:.75rem;padding:10px}.nav-actions{gap:8px}}
@media(max-width:760px){.nav-wrap{gap:8px}.brand{width:160px}.site-logo{height:42px}.nav-actions{gap:6px}.menu-toggle{margin-left:0}.footer-main>.site-logo{width:210px}.legal-site .brand{width:140px}.legal-home{padding:9px 10px;font-size:.82rem}.legal-page{padding:42px 0 64px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
