/*
Theme Name: WWFix Inc.
Theme URI: https://wwfix.ca/
Author: WWFix Inc.
Description: A modern, animated WordPress theme for WWFix Inc. mobile phone repair, buying, selling and accessories services in Milton, Ontario.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: wwfix-inc
*/

:root{--ink:#08111f;--navy:#0b1830;--cyan:#5eead4;--blue:#60a5fa;--soft:#f3f7fb;--muted:#6f7d8e;--white:#fff;--line:rgba(8,17,31,.12)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Manrope,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}.section{padding:120px max(6vw,24px)}a{text-decoration:none;color:inherit}img{display:block;width:100%;object-fit:cover}.header{height:88px;padding:0 max(5vw,22px);display:flex;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;width:100%;z-index:50;transition:.35s;border-bottom:1px solid transparent}.header.scrolled{height:72px;background:rgba(8,17,31,.9);backdrop-filter:blur(18px);border-color:rgba(255,255,255,.08)}.brand{display:flex;align-items:center;gap:10px;color:#fff;font-family:"Space Grotesk";font-size:22px}.brand-mark{width:38px;height:44px}.brand small{font-size:9px;letter-spacing:2px;color:var(--cyan)}.nav{display:flex;gap:36px;color:rgba(255,255,255,.78);font-size:14px}.nav a{position:relative}.nav a:after{content:"";height:1px;width:0;background:var(--cyan);position:absolute;left:0;bottom:-7px;transition:.3s}.nav a:hover:after{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:16px 22px;border-radius:999px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#07101e;font-weight:800;transition:.3s;box-shadow:0 14px 34px rgba(96,165,250,.2)}.btn:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(94,234,212,.28)}.btn-small{padding:11px 18px;font-size:13px}.menu{display:none;background:none;border:0}.hero{min-height:100vh;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;position:relative;padding-top:150px;overflow:hidden}.hero-noise{position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.18}.orb-one{width:430px;height:430px;background:var(--blue);right:-100px;top:80px}.orb-two{width:350px;height:350px;background:var(--cyan);left:-180px;bottom:-90px}.hero-copy,.hero-visual{position:relative;z-index:2}.eyebrow,.kicker{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:800}.eyebrow{color:#b8c5d8;display:flex;gap:10px;align-items:center}.eyebrow span{width:34px;height:1px;background:var(--cyan)}h1,h2,h3{font-family:"Space Grotesk",sans-serif}h1{font-size:clamp(54px,6.6vw,105px);line-height:.93;letter-spacing:-5px;margin:28px 0 34px}h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px #9bb0c9}.hero-copy>p{max-width:640px;font-size:18px;line-height:1.8;color:#9dacc0}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:40px}.text-link{font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:7px}.text-link span{margin-left:14px}.hero-trust{display:flex;gap:50px;margin-top:65px}.hero-trust div{display:flex;flex-direction:column}.hero-trust strong{font-family:"Space Grotesk";font-size:18px}.hero-trust span{font-size:12px;color:#72829a}.main-card{height:min(67vh,720px);border-radius:34px;overflow:hidden;transform:rotate(2deg);position:relative;box-shadow:0 35px 80px rgba(0,0,0,.38)}.main-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,10,20,.72))}.main-card img{height:100%}.floating-chip{position:absolute;z-index:3;background:rgba(255,255,255,.93);color:var(--ink);padding:14px 18px;border-radius:16px;font-size:13px;font-weight:800;box-shadow:0 18px 35px rgba(0,0,0,.18);animation:float 4s ease-in-out infinite}.chip-one{left:-35px;bottom:24%;}.chip-one b{color:#0aa37c;margin-left:12px}.chip-two{right:-25px;top:22%;animation-delay:-2s}.phone-ring{position:absolute;width:240px;height:240px;border:1px solid rgba(94,234,212,.25);border-radius:50%;right:-80px;bottom:-60px}.scroll{position:absolute;bottom:42px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:4px;color:#718099;display:flex;flex-direction:column;align-items:center;gap:12px}.scroll i{height:42px;width:1px;background:linear-gradient(var(--cyan),transparent)}@keyframes float{50%{transform:translateY(-12px)}}.marquee{padding:19px 0;background:var(--cyan);overflow:hidden;white-space:nowrap;font-family:"Space Grotesk";font-weight:700}.marquee div{animation:marquee 22s linear infinite}.marquee span{margin:0 30px}@keyframes marquee{to{transform:translateX(-50%)}}.section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:end;margin-bottom:65px}.kicker{color:#168c86}.section-head h2,.repair-copy h2,.showcase-copy h2{font-size:clamp(42px,5vw,76px);line-height:1;letter-spacing:-3px;margin-top:18px}.section-head p,.repair-copy>p,.showcase-copy>p{color:var(--muted);font-size:17px;line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{border:1px solid var(--line);border-radius:26px;padding:34px;min-height:390px;display:flex;flex-direction:column;transition:.35s;background:#fff}.service-card:hover{transform:translateY(-10px);box-shadow:0 30px 70px rgba(8,17,31,.09)}.service-card.featured{background:var(--ink);color:#fff;border-color:var(--ink)}.service-number{color:#9ba7b5;font-size:12px}.service-icon{width:70px;height:70px;border-radius:20px;background:var(--soft);display:grid;place-items:center;font-size:29px;margin:35px 0}.featured .service-icon{background:rgba(255,255,255,.1);color:var(--cyan)}.service-card h3{font-size:28px;margin-bottom:16px}.service-card p{line-height:1.75;color:var(--muted)}.featured p{color:#9fadc0}.service-card a{margin-top:auto;font-weight:800;font-size:13px}.repair{background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.repair-image{position:relative}.repair-image img{height:720px;border-radius:30px}.badge{position:absolute;right:-35px;bottom:55px;background:var(--cyan);width:170px;height:170px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg)}.badge strong{font-family:"Space Grotesk";font-size:22px}.badge span{font-size:11px}.repair-copy>p{margin:28px 0 35px}.repair-list{border-top:1px solid var(--line);margin-bottom:38px}.repair-list>div{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid var(--line)}.repair-list i{font-style:normal;color:#199a92;font-size:12px}.repair-list span{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:13px}.repair-list b{color:var(--ink);font-size:16px}.dark-btn{background:var(--ink);color:#fff;box-shadow:none}.showcase{background:var(--ink);color:#fff;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.showcase-copy>p{color:#9aabc0;margin:28px 0}.showcase-copy ul{list-style:none;margin-bottom:36px}.showcase-copy li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1)}.showcase-copy li:before{content:"✓";color:var(--cyan);margin-right:14px}.showcase-gallery{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;align-items:end}.showcase-gallery img{border-radius:24px}.gallery-large{height:620px}.gallery-small{height:390px}.process-line{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-line article{padding:36px 30px 20px 0;border-right:1px solid var(--line);min-height:220px}.process-line article+article{padding-left:30px}.process-line span{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:12px;margin-bottom:30px}.process-line h3{font-size:21px;margin-bottom:12px}.process-line p{font-size:14px;line-height:1.7;color:var(--muted)}.contact{padding-top:40px}.contact-panel{background:linear-gradient(135deg,#0d233f,#102e4f);color:#fff;padding:80px;border-radius:34px;position:relative;overflow:hidden}.contact-panel:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(94,234,212,.22);border-radius:50%;right:-120px;top:-120px}.contact-panel h2{font-size:clamp(48px,7vw,94px);line-height:.93;letter-spacing:-4px;margin:24px 0 45px}.contact-actions{display:flex;gap:14px}.white-btn{background:#fff;color:var(--ink);box-shadow:none}.outline-btn{padding:16px 23px;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-weight:700}.contact-info{display:flex;gap:80px;margin-top:80px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14)}.contact-info small{color:var(--cyan);text-transform:uppercase;letter-spacing:2px}.contact-info p{margin-top:10px;line-height:1.7;color:#c5d0dd}footer{padding:45px max(6vw,24px);background:#050b14;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-top:1px solid rgba(255,255,255,.08)}footer>p{text-align:center;color:#6f7d91;font-size:13px}footer>div{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:12px;color:#77859a}.reveal{opacity:0;transform:translateY(35px);transition:.8s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}.cursor-glow{width:280px;height:280px;background:radial-gradient(circle,rgba(94,234,212,.08),transparent 68%);position:fixed;pointer-events:none;z-index:1;transform:translate(-50%,-50%)}
@media(max-width:980px){.nav,.header>.btn-small{display:none}.menu{display:flex;flex-direction:column;gap:7px}.menu span{display:block;width:25px;height:2px;background:#fff}.nav.open{position:absolute;display:flex;top:72px;left:0;width:100%;background:#08111f;flex-direction:column;padding:30px}.hero{grid-template-columns:1fr;padding-top:140px}.hero-visual{max-width:650px}.main-card{height:600px}.section-head,.repair,.showcase{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-card{min-height:310px}.repair-image img{height:560px}.showcase-copy{max-width:680px}.process-line{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr;gap:20px;text-align:center}footer>div{align-items:center}}
@media(max-width:620px){.section{padding:85px 22px}.header{height:72px}.brand{font-size:19px}.brand-mark{width:32px}.hero{padding-top:120px}.hero h1{font-size:54px;letter-spacing:-3px}.hero-copy>p{font-size:16px}.hero-actions,.contact-actions{align-items:flex-start;flex-direction:column}.hero-trust{gap:22px}.main-card{height:460px;border-radius:24px}.chip-one{left:8px}.chip-two{right:5px}.section-head{gap:20px}.section-head h2,.repair-copy h2,.showcase-copy h2{letter-spacing:-2px}.repair-image img{height:430px}.badge{width:125px;height:125px;right:-5px}.gallery-large{height:430px}.gallery-small{height:260px}.showcase-gallery{gap:9px}.process-line{grid-template-columns:1fr}.process-line article,.process-line article+article{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.contact-panel{padding:45px 24px}.contact-panel h2{font-size:48px;letter-spacing:-2px}.contact-info{flex-direction:column;gap:25px;margin-top:55px}.cursor-glow{display:none}}

/* Expanded footer and legal pages */
.site-footer{padding:54px max(6vw,24px);background:#050b14;color:#fff;display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:56px;align-items:start;border-top:1px solid rgba(255,255,255,.08)}
.footer-company p{max-width:360px;margin-top:18px;color:#77859a;font-size:13px;line-height:1.7}
.footer-contact,.footer-meta{display:flex;flex-direction:column;gap:11px;font-size:13px;color:#8a98ab}
.footer-contact a,.footer-links a{transition:.25s;line-height:1.6}.footer-contact a:hover,.footer-links a:hover{color:var(--cyan)}
.footer-label{color:var(--cyan);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:4px}
.footer-meta{align-items:flex-end;text-align:right}.footer-links{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end;margin-bottom:7px}
.legal-page{background:var(--soft)}.legal-page .header{background:rgba(8,17,31,.94)}
.legal-hero{padding:190px max(6vw,24px) 90px;background:var(--ink);color:#fff;position:relative;overflow:hidden}
.legal-hero:after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(94,234,212,.17);border-radius:50%;right:-150px;top:20px}
.legal-hero-inner{position:relative;z-index:2;max-width:1050px}.legal-hero h1{font-size:clamp(52px,7vw,96px);margin:22px 0 18px}.legal-hero p{color:#8fa0b5}
.legal-content{padding-top:80px}.legal-document{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:30px;padding:clamp(32px,6vw,76px);box-shadow:0 28px 80px rgba(8,17,31,.07)}
.legal-document h2{font-size:25px;margin:38px 0 12px;letter-spacing:-.5px}.legal-document h2:first-child{margin-top:0}.legal-document p{color:#5f6e80;line-height:1.85;font-size:15px}.legal-document a{color:#087f79;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:980px){.site-footer{grid-template-columns:1fr;gap:30px;text-align:left}.footer-meta{align-items:flex-start;text-align:left}.footer-links{justify-content:flex-start}.legal-hero{padding-top:150px}}
@media(max-width:620px){.site-footer{padding:42px 22px}.footer-links{flex-direction:column;gap:9px}.legal-hero{padding:130px 22px 65px}.legal-hero h1{font-size:48px;letter-spacing:-2px}.legal-content{padding-top:45px}.legal-document{border-radius:22px;padding:30px 22px}.legal-document h2{font-size:21px}}

/* Clipping fixes and clearer contact footer */
.hero-visual{padding:18px 22px;overflow:visible}
.main-card{overflow:visible}
.main-card img,.main-card:after{border-radius:34px}
.floating-chip{max-width:calc(100% - 28px);white-space:nowrap}
.chip-one{left:14px}
.chip-two{right:14px}
.marquee{padding:0;background:var(--cyan);overflow:hidden}
.marquee-track{display:flex;width:max-content;animation:marqueeLoop 24s linear infinite;will-change:transform}
.marquee-group{display:flex;align-items:center;flex:none;padding:21px 0;font-family:"Space Grotesk";font-style:normal;font-weight:700;white-space:nowrap}
.marquee-group i{font-style:normal;margin:0 34px}
@keyframes marqueeLoop{to{transform:translateX(-50%)}}
.site-footer{grid-template-columns:1.05fr 1.2fr .8fr;gap:64px;padding-top:64px;padding-bottom:38px}
.footer-contact{gap:16px}
.footer-contact-item{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#c8d2df;line-height:1.65}
.footer-contact-item:last-child{border-bottom:0}
.footer-contact-item strong{display:block;color:#fff;font-size:12px;margin-bottom:2px}
.footer-icon{width:38px;height:38px;flex:0 0 38px;border-radius:12px;display:grid;place-items:center;background:rgba(94,234,212,.11);color:var(--cyan);font-size:18px}
.footer-meta{align-items:flex-start;text-align:left}
.footer-links{display:grid;grid-template-columns:1fr;gap:10px;justify-content:start;margin:0 0 22px}
.footer-copyright{padding-top:18px;border-top:1px solid rgba(255,255,255,.08);width:100%;line-height:1.6}
@media(max-width:980px){.site-footer{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1}.footer-links{grid-template-columns:repeat(4,max-content);gap:18px}}
@media(max-width:620px){.hero-visual{padding:12px 0}.main-card img,.main-card:after{border-radius:24px}.floating-chip{font-size:11px;padding:11px 13px;max-width:calc(100% - 20px)}.chip-one{left:10px}.chip-two{right:10px}.marquee-group{padding:18px 0;font-size:14px}.marquee-group i{margin:0 22px}.site-footer{grid-template-columns:1fr;gap:34px}.footer-meta{grid-column:auto}.footer-links{grid-template-columns:1fr}.footer-contact-item{font-size:13px}}


/* Final precision footer layout */
.site-footer{display:block;padding:0;background:#050b14;color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.footer-shell{width:min(1480px,calc(100% - 80px));margin:0 auto;padding:78px 0 28px}
.footer-main{display:grid;grid-template-columns:1.25fr 1.1fr .78fr 1fr;gap:72px;align-items:start}
.footer-main>section{min-width:0}
.footer-brand{font-size:29px;gap:14px;display:inline-flex}
.footer-brand .brand-mark{width:48px;height:56px;flex:0 0 auto}
.footer-brand small{font-size:10px}
.footer-accent{display:block;width:52px;height:2px;margin:25px 0 27px;background:var(--cyan)}
.footer-company p{max-width:350px;margin:0;color:#91a0b5;font-size:15px;line-height:1.85}
.footer-label{display:block;margin:0 0 27px;color:var(--cyan);font-family:"Space Grotesk",sans-serif;font-size:11px;line-height:1.2;font-weight:800;letter-spacing:2.4px;text-transform:uppercase}
.footer-contact{display:flex;flex-direction:column;gap:0;color:#cbd5e1;font-size:14px}
.footer-contact-item{display:grid;grid-template-columns:50px minmax(0,1fr);gap:18px;align-items:start;padding:0 0 27px;color:#cbd5e1;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-contact-item+.footer-contact-item{padding-top:27px;border-bottom:0}
.footer-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:rgba(94,234,212,.11);color:var(--cyan);font-size:21px}
.footer-contact-copy{display:flex;flex-direction:column;gap:5px;line-height:1.65}
.footer-contact-copy strong{color:#fff;font-size:14px}
.footer-contact-copy>span{display:block;color:#cbd5e1}
.footer-contact-copy small{color:#8796aa;font-size:12px}
.footer-phone{color:var(--cyan)!important;font-size:16px}
.footer-navigation,.footer-legal{display:block;color:#cbd5e1;font-size:14px}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0}
.footer-links a{position:relative;padding-left:19px;color:#aebbd0;line-height:1.5;transition:.25s}
.footer-links a:before{content:"›";position:absolute;left:0;top:-1px;color:var(--cyan);font-size:20px;line-height:1}
.footer-links a:hover{color:#fff;transform:translateX(3px)}
.legal-links{margin-bottom:34px}
.quality-card{display:grid;grid-template-columns:52px 1fr;gap:17px;padding:24px;border:1px solid rgba(94,234,212,.32);border-radius:20px;background:linear-gradient(145deg,rgba(94,234,212,.04),rgba(96,165,250,.025))}
.quality-icon{width:48px;height:54px;display:grid;place-items:center;color:var(--cyan);font-size:24px;border:3px solid var(--cyan);border-radius:16px 16px 20px 20px}
.quality-card strong{display:block;color:#fff;font-family:"Space Grotesk",sans-serif;font-size:16px;line-height:1.45}
.quality-card p{margin:10px 0 0;color:#8f9db0;font-size:12px;line-height:1.65}
.footer-bottom{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:55px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);color:#8fa0b8;font-size:13px;text-align:center}
.footer-divider{width:1px;height:25px;background:rgba(255,255,255,.18)}
@media(max-width:1180px){.footer-shell{width:min(100% - 48px,1100px)}.footer-main{grid-template-columns:1.1fr 1fr 1fr;gap:46px}.footer-legal{grid-column:2/4}.quality-card{max-width:420px}}
@media(max-width:820px){.footer-shell{width:min(100% - 40px,680px);padding-top:60px}.footer-main{grid-template-columns:1fr 1fr;gap:46px 38px}.footer-legal{grid-column:auto}.footer-bottom{flex-wrap:wrap;gap:13px 20px}.footer-divider{display:none}}
@media(max-width:580px){.footer-shell{width:calc(100% - 36px);padding:48px 0 24px}.footer-main{grid-template-columns:1fr;gap:42px}.footer-company p{max-width:none}.footer-label{margin-bottom:20px}.footer-contact-item{grid-template-columns:46px 1fr;gap:15px}.footer-icon{width:46px;height:46px}.quality-card{max-width:none}.footer-bottom{margin-top:42px;flex-direction:column;gap:9px;font-size:12px}}
