:root{--ink:#071a3a;--navy:#0d2d6b;--blue:#1a4fa0;--blue-2:#2d7dd2;--sky:#4a9de0;--wash:#eef4ff;--amber:#c79a48;--gold:#c79a48;--gold-soft:#d8b771;--green:#22c55e;--slate:#15233b;--muted:#5d6b82;--line:#dbe7ff;--white:#fff;--display:"Sora", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--shadow:0 30px 70px -28px #071a3a57;--soft-shadow:0 18px 40px -24px #071a3a42;--deep-shadow:0 44px 100px -36px #071a3a66;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--slate);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:#f4f6fb;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}h1,h2,h3,.hero-copy h1,.section-copy h2,.section-title h2,.contractor-top h2,.form-heading h3,.privacy-hero h1,.brand-lockup strong{font-family:var(--display);letter-spacing:-.022em;font-feature-settings:"ss01" 1, "cv01" 1}body:after{content:"";z-index:9999;pointer-events:none;opacity:.04;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}main{background:var(--white);overflow:clip}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}section{scroll-margin-top:92px}.motion-ready [data-reveal]{opacity:0;transition:opacity .68s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay,0s), transform .68s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(22px)}.motion-ready [data-reveal].is-visible{opacity:1;transform:translate(0,0)}.site-header{z-index:1000;-webkit-backdrop-filter:blur(22px)saturate(1.2);backdrop-filter:blur(22px)saturate(1.2);background:#ffffffd1;border-bottom:1px solid #dbe7ffcc;justify-content:space-between;align-items:center;gap:16px;min-height:74px;padding:12px 22px;display:flex;position:sticky;top:0;box-shadow:0 16px 40px -28px #071a3a59}.brand-lockup{flex-shrink:0;align-items:center;gap:12px;display:inline-flex}.brand-lockup img{object-fit:contain;border:1px solid var(--line);background:radial-gradient(circle at 48% 30%, #4a9de024, transparent 58%), var(--white);border-radius:8px;width:46px;height:46px;box-shadow:0 10px 24px #0d2d6b14}.brand-lockup span{flex-direction:column;line-height:1.05;display:flex}.brand-lockup strong{color:var(--navy);font-size:.94rem;font-weight:850}.brand-lockup small{color:var(--muted);margin-top:4px;font-size:.78rem;font-weight:650}.nav{flex:1;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex}.nav button{color:#334155;letter-spacing:-.01em;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:10px 9px;font-size:.88rem;font-weight:650}.nav button:hover,.nav button:focus-visible,.nav button.active{background:var(--wash);color:var(--blue);outline:none}.nav button.active{box-shadow:inset 0 -2px 0 var(--blue-2)}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-phone{min-height:44px;color:var(--navy);border-radius:8px;align-items:center;gap:9px;padding:7px 10px;transition:background .18s,transform .18s;display:inline-flex}.header-phone:hover{background:var(--wash);transform:translateY(-1px)}.header-phone svg{color:var(--navy)}.header-phone span{gap:2px;line-height:1;display:grid}.header-phone strong{color:var(--navy);white-space:nowrap;font-size:.9rem;font-weight:880}.header-phone small{color:var(--muted);font-size:.72rem;font-weight:760}.header-social{align-items:center;gap:2px;display:inline-flex}.header-social a{width:38px;height:38px;color:var(--muted);border-radius:8px;place-items:center;transition:background .18s,color .18s,transform .18s;display:grid}.header-social a:hover{background:var(--wash);color:var(--navy);transform:translateY(-1px)}.nav-social{display:none}.language-toggle{border:1px solid var(--line);background:var(--white);border-radius:8px;align-items:center;padding:3px;display:inline-flex}.language-toggle button,.language-toggle a{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 9px;font-size:.8rem;font-weight:850;line-height:1;text-decoration:none}.language-toggle button.active,.language-toggle a.active{background:var(--blue);color:var(--white)}.header-cta,.button{border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 18px;font-size:.92rem;font-weight:850;transition:transform .18s,box-shadow .18s,background .18s,color .18s;display:inline-flex;position:relative;overflow:hidden}.header-cta{white-space:nowrap}.header-cta:after,.button.primary:after{content:"";opacity:0;background:linear-gradient(115deg,#0000 34%,#ffffff57 48%,#0000 62%);transition:opacity .18s,transform .58s cubic-bezier(.16,1,.3,1);position:absolute;inset:-60% -35%;transform:translate(-42%)}.header-cta,.button.primary{background:linear-gradient(135deg, #0d3d91, var(--blue-2));color:var(--white);box-shadow:0 16px 34px #1a4fa03d}.button.secondary{border:1px solid var(--line);background:var(--white);color:var(--navy);box-shadow:0 12px 28px #0d2d6b14}.header-cta:hover,.button:hover{transform:translateY(-2px)}.header-cta:hover:after,.button.primary:hover:after{opacity:1;transform:translate(42%)}.button:disabled{cursor:not-allowed;opacity:.64;transform:none}.menu-button{border:1px solid var(--line);background:var(--white);width:44px;height:44px;color:var(--navy);border-radius:8px;justify-content:center;align-items:center;display:none}.hero{isolation:isolate;color:var(--white);background:linear-gradient(#061a42 0%,#071d49 62%,#fff 62% 100%);position:relative;overflow:hidden}.hero:before{z-index:2;background:var(--white);content:"";pointer-events:none;border-top-left-radius:100%;width:62%;height:190px;position:absolute;bottom:176px;right:-12%}.hero-media,.hero-shade{height:590px;position:absolute;inset:0 0 auto}.hero-media{z-index:0}.hero-media img,.hero-media .hero-video{object-fit:cover;object-position:78% 45%;width:100%;height:100%;transform:scale(1.01)}.hero-rays{z-index:1;pointer-events:none;mix-blend-mode:screen;opacity:.55;opacity:.45;will-change:transform, opacity;background-color:#0000;background-image:linear-gradient(122deg,#ffeab200 38%,#ffe2966b 47%,#ffeab200 56%),linear-gradient(130deg,#fff0c800 60%,#ffe08c4d 67%,#fff0c800 74%),linear-gradient(116deg,#fff0d200 18%,#ffe6a538 26%,#fff0d200 34%);background-position:0 0;background-repeat:repeat,repeat,repeat;background-size:200% 100%;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;height:590px;animation:9s ease-in-out infinite alternate heroRayDrift;position:absolute;inset:0 0 auto}.hero-media .hero-video{will-change:transform}@keyframes heroRayDrift{0%{background-position:0 0}to{background-position:100% 0}}@media (prefers-reduced-motion:reduce){.hero-rays{animation:none}.hero-media .hero-video{display:none}}.hero-shade{z-index:1;background:linear-gradient(90deg,#04122efa 0%,#061b43eb 37%,#061b437a 62%,#061b430f 100%),linear-gradient(#04122e2e 0%,#04122e85 100%)}.hero-inner{z-index:3;align-items:center;max-width:1220px;min-height:590px;margin:0 auto;padding:48px 28px 68px;display:grid;position:relative}.hero-copy{z-index:2;text-align:left;max-width:720px;position:relative}.hero-weather-icons{flex-wrap:wrap;gap:20px;margin-bottom:22px;display:flex}.weather-chip{color:#ffffffc7;place-items:center;width:34px;height:34px;animation:5.8s ease-in-out infinite weatherFloat;display:grid}.weather-chip:nth-child(4),.weather-chip:nth-child(5){color:var(--amber)}.weather-chip:nth-child(2){animation-delay:.7s}.weather-chip:nth-child(3){animation-delay:1.1s}.weather-chip:nth-child(4){animation-delay:.5s}.weather-chip:nth-child(5){animation-delay:1.3s}.weather-chip:nth-child(6){animation-delay:.9s}@keyframes weatherFloat{0%,to{transform:translate(0,0)}50%{transform:translateY(-8px)}}.hero-copy h1{max-width:720px;color:var(--white);letter-spacing:-.03em;text-shadow:0 18px 42px #0000005c;margin:0;font-size:3.5rem;font-weight:700;line-height:1.06}.hero-copy p{color:#ffffffe6;max-width:610px;margin:20px 0 0;font-size:1.08rem;font-weight:650;line-height:1.58}.hero-buttons{flex-wrap:wrap;justify-content:flex-start;gap:14px;margin-top:26px;display:flex}.hero-call{min-height:54px;color:var(--white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;align-items:center;gap:12px;padding:10px 14px;transition:transform .18s,border-color .18s,background .18s;display:inline-flex;box-shadow:0 18px 34px #0000001f}.hero-call:hover{background:#ffffff21;border-color:#ffffff57;transform:translateY(-2px)}.hero-call svg{color:var(--white)}.hero-call span{gap:2px;line-height:1;display:grid}.hero-call strong{font-size:.98rem;font-weight:900}.hero-call small{color:#ffffffbd;font-size:.74rem;font-weight:780}.trust-row{flex-wrap:wrap;justify-content:flex-start;gap:10px;margin-top:20px;display:flex}.trust-row span{min-height:36px;color:var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #fff3;border-radius:8px;align-items:center;gap:7px;padding:8px 12px;font-size:.84rem;font-weight:850;transition:transform .18s,border-color .18s,background .18s;display:inline-flex}.trust-row svg{color:var(--amber)}.trust-row span:hover{background:#ffffff21;border-color:#ffffff5c;transform:translateY(-2px)}.audience-strip{z-index:4;max-width:1220px;color:var(--navy);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 auto;padding:42px 28px 78px;display:grid;position:relative}.audience-intro{text-align:center;grid-column:1/-1;margin-bottom:2px}.audience-strip h2{font-family:var(--display);color:var(--navy);letter-spacing:-.025em;margin:0;font-size:1.95rem;font-weight:700;line-height:1.1}.audience-strip p{max-width:560px;color:var(--muted);margin:8px auto 0;font-weight:650;line-height:1.45}.audience-card{min-height:166px;color:var(--navy);text-align:left;background:radial-gradient(circle at 100% 0,#4a9de024,#0000 34%),linear-gradient(135deg,#fff 0%,#f5f9ff 100%);border:1px solid #4a9de03d;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:22px;padding:24px 28px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 62px #0d2d6b1f}.audience-card:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff6b 48%,#0000 66%);transition:opacity .18s,transform .68s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-48%)}.audience-card:hover{border-color:#2d7dd294;transform:translateY(-4px);box-shadow:0 30px 74px #0d2d6b2b}.audience-card:hover:after{opacity:1;transform:translate(48%)}.audience-icon{z-index:1;background:linear-gradient(135deg, var(--blue), #1169f2);width:82px;height:82px;color:var(--white);border-radius:999px;place-items:center;display:grid;position:relative;box-shadow:0 20px 34px #1a4fa03d}.audience-icon.contractor{background:linear-gradient(135deg, #061a42, var(--navy))}.audience-copy{z-index:1;gap:8px;min-width:0;display:grid;position:relative}.audience-copy strong{color:var(--navy);font-size:1.35rem;font-weight:900}.audience-copy small{color:#475569;max-width:380px;font-size:.95rem;font-weight:650;line-height:1.45}.audience-copy em{color:var(--blue);align-items:center;gap:5px;font-size:.85rem;font-style:normal;font-weight:900;display:inline-flex}.section{max-width:1180px;margin:0 auto;padding:96px 24px}.split-section{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:48px;display:grid}.section-copy h2,.contractor-top h2,.section-title h2,.about-content h2,.contact-copy h2{font-family:var(--display);color:var(--navy);letter-spacing:-.03em;margin:0;font-size:2.85rem;font-weight:700;line-height:1.06}.section-copy>p,.contractor-top p,.section-title p,.about-content p,.contact-copy p{color:#475569;margin:20px 0 0;font-size:1.05rem;line-height:1.72}.section-copy h3,.damage-panel h3,.about-grid h3{color:var(--navy);margin:28px 0 14px;font-size:1.18rem;font-weight:850}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 26px;display:grid}.support-card{background:linear-gradient(180deg, #fffffff5, #f8fbfff5), var(--white);border:1px solid #4a9de038;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;min-height:98px;padding:15px;transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;box-shadow:0 12px 28px #0d2d6b12}.support-card:hover{box-shadow:var(--shadow);border-color:#2d7dd280;transform:translateY(-3px)}.support-card svg{color:var(--blue-2);flex:none;margin-top:2px}.support-card p{color:#334155;margin:0;font-size:.93rem;font-weight:670;line-height:1.45}.damage-panel{border:1px solid var(--line);background:radial-gradient(circle at 100% 0%, #f5a6231f, transparent 28%), linear-gradient(180deg, #eef4ffd1, #fffffffa), var(--white);box-shadow:var(--deep-shadow);border-radius:8px;padding:26px}.panel-heading{align-items:center;gap:10px;margin-bottom:18px;display:flex}.panel-heading svg{color:var(--amber)}.panel-heading h3{margin:0}.damage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.damage-card,.service-card,.process-step{border:1px solid var(--line);background:var(--white);border-radius:8px}.damage-card{min-height:120px;padding:16px;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:0 10px 24px #0d2d6b0f}.damage-card:hover,.process-step:hover,.about-grid article:hover,.contact-methods a:hover{box-shadow:var(--shadow);border-color:#4a9de07a;transform:translateY(-3px)}.damage-card span{color:var(--sky);font-size:.86rem;font-weight:900;display:block}.damage-card p{color:#334155;margin:10px 0 0;line-height:1.45}.contractor-section{background:linear-gradient(#ffffff0b 1px, transparent 1px), linear-gradient(90deg, #ffffff0b 1px, transparent 1px), radial-gradient(circle at 12% 12%, #4a9de047, transparent 24%), radial-gradient(circle at 88% 18%, #f5a6232e, transparent 23%), linear-gradient(135deg, #0d2d6bfc, #1a4fa0f5), var(--navy);max-width:none;color:var(--white);background-size:58px 58px,58px 58px,auto,auto,auto,auto}.contractor-section>*{max-width:1180px;margin-left:auto;margin-right:auto}.contractor-top{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch;gap:42px;display:grid}.contractor-top h2,.contractor-top p{color:var(--white)}.contractor-top p{opacity:.82}.contractor-top aside{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:8px;flex-direction:column;justify-content:space-between;gap:22px;min-height:220px;padding:24px;transition:transform .18s,border-color .18s,background .18s;display:flex;box-shadow:0 22px 46px #0000002e}.contractor-top aside:hover{background:#ffffff21;border-color:#ffffff57;transform:translateY(-3px)}.contractor-top aside svg{color:var(--amber)}.contractor-top aside strong{font-size:1.25rem;line-height:1.35;display:block}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:42px;display:grid}.contractor-form-wrap{margin-top:48px}.contractor-form-wrap .lead-form{max-width:720px;margin:0 auto}.service-card{min-height:142px;color:var(--white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border-color:#ffffff29;padding:18px;transition:transform .18s,background .18s,border-color .18s}.service-card:hover{background:#ffffff24;border-color:#ffffff52;transform:translateY(-3px)}.service-card svg{color:var(--amber)}.service-card p{margin:18px 0 0;line-height:1.45}.section-title{text-align:center;max-width:820px;margin:0 auto 42px}.section-title.compact{max-width:780px}.process-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.process-step{min-height:230px;padding:24px 18px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden;box-shadow:0 14px 32px #0d2d6b14}.process-step:before{content:"";background:linear-gradient(#eef4ffb3,#0000 54%);position:absolute;inset:0}.process-step>*{position:relative}.process-step span{color:var(--sky);font-size:.86rem;font-weight:900}.process-step h3{color:var(--navy);margin:18px 0 10px;font-size:1.18rem}.process-step p{color:#475569;margin:0;line-height:1.55}.gallery-section{background:linear-gradient(#4a9de012 1px, transparent 1px), linear-gradient(90deg, #4a9de012 1px, transparent 1px), linear-gradient(180deg, #f8fbff, var(--wash));background-size:58px 58px,58px 58px,auto;max-width:none}.gallery-section>*{max-width:1180px;margin-left:auto;margin-right:auto}.gallery-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.gallery-filters{flex-wrap:wrap;gap:8px;display:flex}.gallery-filters button{min-height:38px;color:var(--navy);background:#ffffffc7;border:1px solid #4a9de042;border-radius:8px;padding:8px 12px;font-size:.84rem;font-weight:850;transition:transform .18s,border-color .18s,background .18s,color .18s,box-shadow .18s}.gallery-filters button:hover,.gallery-filters button:focus-visible{border-color:#2d7dd294;outline:none;transform:translateY(-1px);box-shadow:0 10px 22px #0d2d6b1a}.gallery-filters button.active{border-color:var(--navy);background:var(--navy);color:var(--white);box-shadow:0 16px 30px #0d2d6b2e}.gallery-count{color:var(--muted);flex:none;font-size:.84rem;font-weight:850}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.gallery-tile{background:var(--white);min-height:336px;color:var(--navy);text-align:left;border:1px solid #4a9de042;border-radius:8px;flex-direction:column;padding:10px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;box-shadow:0 18px 40px #0d2d6b1a}.gallery-tile:hover{box-shadow:var(--shadow);border-color:#4a9de094;transform:translateY(-3px)}.gallery-art{background:var(--wash);height:190px;color:var(--white);border:1px solid #dbe7ffe6;border-radius:8px;margin-bottom:14px;display:block;position:relative;overflow:hidden}.gallery-art img{object-fit:cover;width:100%;height:100%;transition:transform .42s cubic-bezier(.16,1,.3,1)}.gallery-art:after{content:"";opacity:.86;pointer-events:none;background:linear-gradient(#0000 58%,#04122e6b 100%),linear-gradient(115deg,#0000 30%,#ffffff29 50%,#0000 70%);transition:opacity .22s,transform .62s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-110%)}.gallery-tile:hover .gallery-art:after{opacity:1;transform:translate(110%)}.gallery-tile:hover .gallery-art img{transform:scale(1.045)}.gallery-featured{z-index:1;color:var(--white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d2d6bdb;border:1px solid #ffffff52;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:900;line-height:1;position:absolute;bottom:10px;right:10px}.gallery-meta{width:fit-content;color:var(--blue);background:#4a9de01f;border-radius:999px;padding:5px 8px;font-size:.7rem;font-weight:900;line-height:1;display:inline-flex}.gallery-tile strong{margin-top:10px;font-size:1rem;line-height:1.22;display:block}.gallery-tile small{color:var(--muted);margin-top:6px;font-weight:700;line-height:1.42;display:block}.about-section{grid-template-columns:300px minmax(0,1fr);align-items:center;gap:54px;display:grid}.about-mark{border:1px solid var(--line);min-height:360px;box-shadow:var(--deep-shadow);background:radial-gradient(circle,#fffffff5 0%,#eef4ffd1 58%,#fffffffa 100%);border-radius:8px;justify-content:center;align-items:center;display:flex}.about-mark img{object-fit:contain;width:250px;height:250px;animation:7s ease-in-out infinite logoBreath}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px;display:grid}.about-grid article{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:22px;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:0 14px 32px #0d2d6b12}.about-grid article h3{margin-top:0}.about-grid article p{color:#475569;margin:0;line-height:1.62}.credential-box{flex-direction:column;grid-column:1/-1;gap:10px;display:flex;background:var(--wash)!important}.credential-box span{color:var(--navy);font-weight:820;display:inline-flex}.contact-section{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:42px;display:grid}.contact-methods{gap:12px;margin-top:28px;display:grid}.contact-methods a{border:1px solid var(--line);background:var(--white);min-height:52px;color:var(--navy);border-radius:8px;align-items:center;gap:10px;padding:14px;font-weight:820;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;box-shadow:0 12px 26px #0d2d6b12}.contact-methods svg{color:var(--blue)}.lead-form{border:1px solid var(--line);background:radial-gradient(circle at 96% 0%, #4a9de01f, transparent 30%), var(--white);box-shadow:var(--deep-shadow);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:26px;display:grid}.lead-form.compact-form{max-height:min(80vh,760px);box-shadow:none;overflow:auto}.form-heading,.full-field,.form-message{grid-column:1/-1}.form-heading h3{color:var(--navy);margin:0;font-size:1.55rem}.form-heading p{color:var(--muted);margin:8px 0 0;line-height:1.5}.lead-form label{color:var(--navy);gap:8px;font-size:.9rem;font-weight:850;display:grid}.lead-form input,.lead-form select,.lead-form textarea{border:1px solid var(--line);width:100%;color:var(--slate);background:#fbfdff;border-radius:8px;outline:none;padding:13px 14px;font-size:.98rem;line-height:1.35}.lead-form textarea{resize:vertical}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--sky);box-shadow:0 0 0 4px #4a9de026}.upload-box{border:1px dashed var(--sky);min-height:138px;color:var(--navy);text-align:center;background:linear-gradient(135deg,#eef4ffe6,#ffffffeb);border-radius:8px;place-items:center;padding:22px;position:relative}.upload-box input{cursor:pointer;opacity:0;position:absolute;inset:0}.upload-box small{max-width:520px;color:var(--muted);font-weight:650;line-height:1.45}.file-list{flex-wrap:wrap;gap:8px;display:flex}.file-list span{background:var(--wash);color:var(--navy);border-radius:8px;padding:7px 10px;font-size:.82rem;font-weight:750}.form-message{border-radius:8px;margin:0;padding:13px 14px;line-height:1.45}.form-message.success{color:#166534;background:#22c55e1f}.form-message.error{color:#991b1b;background:#ef44441f}.privacy-page{background:linear-gradient(#4a9de014 1px,#0000 1px) 0 0/58px 58px,linear-gradient(90deg,#4a9de014 1px,#0000 1px) 0 0/58px 58px,radial-gradient(circle at 16% 4%,#4a9de02e,#0000 26%),radial-gradient(circle at 86% 8%,#f5a62324,#0000 26%),#f8fbff}.privacy-hero{text-align:center;max-width:980px;margin:0 auto;padding:92px 28px 44px}.privacy-hero>span{border:1px solid var(--line);background:var(--white);color:var(--blue);border-radius:999px;margin-bottom:18px;padding:8px 13px;font-size:.82rem;font-weight:850;display:inline-flex}.privacy-hero h1{color:var(--navy);margin:0;font-size:clamp(2.4rem,7vw,5rem);line-height:.98}.privacy-hero p{color:#334155;max-width:760px;margin:24px auto 0;font-size:1.15rem;line-height:1.7}.privacy-hero small{color:var(--muted);margin:18px 0 24px;font-weight:750;display:block}.privacy-shell{max-width:1180px;margin:0 auto;padding:0 28px 92px}.privacy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.privacy-card{border:1px solid var(--line);background:#ffffffeb;border-radius:8px;min-height:242px;padding:24px;box-shadow:0 14px 34px #0d2d6b14}.privacy-card>span{color:var(--sky);font-size:.86rem;font-weight:900}.privacy-card h2{color:var(--navy);margin:16px 0 10px;font-size:1.22rem}.privacy-card p{color:#475569;margin:0;line-height:1.65}.privacy-note{color:var(--navy);background:#eef4ffe6;border:1px solid #4a9de057;border-radius:8px;align-items:flex-start;gap:12px;margin-top:18px;padding:18px;display:flex}.privacy-note svg{color:var(--blue-2);flex:none}.privacy-note p{margin:0;line-height:1.55}.floating-actions{z-index:9999;gap:12px;display:grid;position:fixed;bottom:20px;right:20px}.float-button{width:54px;height:54px;color:var(--white);border:0;border-radius:999px;place-items:center;transition:transform .18s,box-shadow .18s;animation:.52s cubic-bezier(.16,1,.3,1) both floatButtonIn;display:grid;box-shadow:0 14px 28px #0d2d6b38}.float-button:hover{transform:scale(1.06);box-shadow:0 18px 36px #0d2d6b4d}.float-button.phone{background:var(--green);animation-delay:.12s}.float-button.email{background:var(--blue);animation-delay:.19s}.float-button.social{background:linear-gradient(135deg, var(--amber), #ea4335);animation-delay:.26s}.float-button.google{background:linear-gradient(135deg,#4285f4,#34a853);animation-delay:.33s}.site-footer{background:radial-gradient(circle at 14% 0%, #4a9de047, transparent 30%), radial-gradient(circle at 88% 12%, #f5a62329, transparent 28%), linear-gradient(135deg, #071d49, var(--navy));color:var(--white);justify-content:space-between;gap:28px;padding:44px 28px 96px;display:flex}.site-footer p{color:#ffffffb8;max-width:560px;margin:16px 0 0;line-height:1.55}.site-footer .powered-by{color:#ffffffad;margin-top:12px;font-size:.88rem;font-weight:700}.site-footer .powered-by a{color:var(--amber);text-underline-offset:4px;text-decoration:underline}.site-footer .powered-by a:hover{color:var(--white)}.footer-brand img{border-color:#ffffff2e}.footer-brand strong,.footer-brand small{color:var(--white)}.footer-actions{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.footer-actions a,.footer-actions button{color:var(--white);background:0 0;border:1px solid #ffffff2e;border-radius:8px;padding:10px 12px;font-weight:760}.footer-actions button{background:#ffffff1f}.modal-backdrop{z-index:10000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d2d6b61;place-items:center;padding:20px;animation:.18s both modalFadeIn;display:grid;position:fixed;inset:0}.contact-modal,.lightbox{background:var(--white);border-radius:8px;width:min(940px,100%);animation:.24s cubic-bezier(.16,1,.3,1) both modalLiftIn;position:relative;box-shadow:0 26px 70px #0d2d6b52}.modal-close{z-index:2;border:1px solid var(--line);background:var(--white);width:42px;height:42px;color:var(--navy);border-radius:999px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.lightbox{text-align:left;max-width:min(1040px,100%);padding:0;overflow:hidden}.lightbox-media{background:#061a42;place-items:center;min-height:360px;max-height:min(68vh,700px);display:grid}.lightbox-media img{object-fit:contain;width:100%;height:100%;max-height:min(68vh,700px)}.lightbox-content{padding:22px 28px 28px}.lightbox-content span{color:var(--blue);background:#4a9de01f;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:900;line-height:1;display:inline-flex}.lightbox h3{color:var(--navy);margin:12px 0 6px;font-size:1.45rem;line-height:1.18}.lightbox p{color:var(--muted);margin:0;line-height:1.55}.lightbox-nav{z-index:2;width:44px;height:44px;color:var(--white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d2d6bb8;border:1px solid #ffffff57;border-radius:999px;place-items:center;transition:background .18s,transform .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 14px 34px #00000038}.lightbox-nav:hover,.lightbox-nav:focus-visible{background:#0d2d6beb;outline:none;transform:translateY(-50%)scale(1.04)}.lightbox-nav.previous{left:14px}.lightbox-nav.next{right:14px}@keyframes logoBreath{0%,to{transform:translate(0,0)scale(1)}50%{transform:translateY(-3px)scale(1.018)}}@keyframes floatButtonIn{0%{opacity:0;transform:translate(16px,10px)scale(.9)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalLiftIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.motion-ready [data-reveal]{opacity:1!important;transform:none!important}}@media (width<=1380px){.header-phone{display:none}}@media (width<=1120px){.nav{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow);border-radius:8px;flex-direction:column;align-items:stretch;padding:10px;display:none;position:absolute;top:73px;left:18px;right:18px}.nav.open{display:flex}.nav button{text-align:left}.menu-button{display:inline-flex}.header-cta,.header-social{display:none}.nav-social{border-top:1px solid var(--line);justify-content:center;gap:6px;margin-top:6px;padding-top:10px;display:flex}.nav-social a{width:44px;height:44px;color:var(--muted);border-radius:8px;place-items:center;transition:background .18s,color .18s;display:grid}.nav-social a:hover{background:var(--wash);color:var(--navy)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid,.process-track{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.site-header{padding:10px 14px}.brand-lockup{min-width:0}.brand-lockup img{width:42px;height:42px}.brand-lockup strong{font-size:.82rem}.brand-lockup small{font-size:.72rem}.header-phone{border:1px solid var(--line);background:var(--white);justify-content:center;width:44px;min-width:44px;padding:0;display:inline-flex}.header-phone span{display:none}.hero{background:linear-gradient(#061a42 0%,#071d49 69%,#fff 69% 100%)}.hero:before{width:88%;height:150px;bottom:245px;right:-28%}.hero-media,.hero-shade{height:580px}.hero-media img{object-position:63% 50%}.hero-inner{min-height:580px;padding:46px 18px 62px}.hero-weather-icons{gap:14px;margin-bottom:20px}.weather-chip{width:30px;height:30px}.hero-copy h1{font-size:2.55rem;line-height:1.08}.hero-copy p{font-size:1.07rem}.hero-buttons,.trust-row{justify-content:stretch}.hero-buttons .button{width:100%}.hero-call{justify-content:center;width:100%}.trust-row span{flex:46%;justify-content:center}.audience-strip,.split-section,.contractor-top,.about-section,.contact-section{grid-template-columns:1fr}.audience-strip{background:var(--white);margin-top:0;padding:38px 18px 68px}.audience-strip h2{font-size:1.55rem}.audience-card{min-height:0;padding:20px}.audience-strip button{width:100%}.section{padding:68px 18px}.section-copy h2,.contractor-top h2,.section-title h2,.about-content h2,.contact-copy h2{font-size:2.05rem}.damage-grid,.support-grid,.about-grid,.lead-form{grid-template-columns:1fr}.contractor-top aside{min-height:0}.process-track{grid-template-columns:1fr}.gallery-toolbar{flex-direction:column;align-items:flex-start}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-step{min-height:0}.about-mark{min-height:260px}.about-mark img{width:190px;height:190px}.contact-modal{width:100%}.privacy-hero{text-align:left;padding:68px 18px 34px}.privacy-hero h1{font-size:2.8rem}.privacy-hero p{font-size:1.03rem}.privacy-shell{padding:0 18px 72px}.privacy-grid{grid-template-columns:1fr}.privacy-card{min-height:0}.lead-form{padding:20px}.site-footer{flex-direction:column;padding:38px 18px 96px}.footer-actions{align-items:stretch}}@media (width<=560px){.language-toggle button,.language-toggle a{padding:7px 8px}.site-header{gap:8px}.brand-lockup{gap:9px}.hero:before{bottom:255px}.hero-media,.hero-shade{height:560px}.hero-inner{min-height:560px;padding:34px 18px 52px}.hero-copy h1{font-size:2.05rem}.hero-copy p{font-size:1rem}.trust-row span{flex:46%;padding:8px 9px;font-size:.78rem}.audience-strip{margin-top:0;padding-top:34px}.service-grid,.gallery-grid{grid-template-columns:1fr}.gallery-filters,.gallery-count{width:100%}.gallery-filters button{flex:calc(50% - 8px)}.lightbox-media{min-height:260px;max-height:58vh}.lightbox-media img{max-height:58vh}.lightbox-content{padding:18px}.lightbox h3{font-size:1.2rem}.lightbox-nav{width:40px;height:40px}.lightbox-nav.previous{left:8px}.lightbox-nav.next{right:8px}.floating-actions{display:none}}
