:root{--blue: #1f9ee9;--blue-soft: #e8f7ff;--blue-dark: #0f5f9f;--navy: #102235;--charcoal: #24313d;--muted: #64748b;--line: #dbe8f3;--soft: #f4f8fb;--white: #ffffff;--gold: #f5a623;--shadow: 0 18px 50px rgba(16, 34, 53, .14);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--charcoal);background:var(--white)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(31,158,233,.1),transparent 32rem),var(--white)}body,button,input,textarea{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{align-items:center;background:#fffffff0;border-bottom:1px solid rgba(219,232,243,.9);display:flex;gap:24px;justify-content:space-between;left:0;min-height:76px;padding:12px clamp(18px,4vw,64px);position:sticky;right:0;top:0;z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 30px #1022350d}.brand{align-items:center;color:var(--navy);display:flex;flex-shrink:0;font-weight:800;gap:10px}.brand img{filter:drop-shadow(0 8px 14px rgba(31,158,233,.16));height:52px;width:52px}nav{align-items:center;display:flex;gap:clamp(14px,2vw,28px);justify-content:center}nav a{color:var(--charcoal);font-size:.95rem;font-weight:700;position:relative}nav a:after{background:var(--blue);border-radius:999px;bottom:-8px;content:"";height:3px;left:0;opacity:0;position:absolute;transform:scaleX(.4);transition:opacity .18s ease,transform .18s ease;width:100%}nav a:hover,.header-call:hover{color:var(--blue-dark)}nav a:hover:after{opacity:1;transform:scaleX(1)}.header-call{align-items:center;background:var(--navy);border:1px solid var(--navy);border-radius:999px;color:var(--white);display:flex;font-weight:800;gap:8px;padding:10px 14px;white-space:nowrap}.header-call:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:var(--white)}.hero{color:var(--white);display:grid;min-height:calc(100vh - 76px);overflow:hidden;padding:clamp(58px,8vw,104px) clamp(18px,4vw,64px);place-items:center;position:relative}.hero-media,.hero-overlay{inset:0;position:absolute}.hero-media img{height:100%;object-fit:cover;object-position:center 45%;width:100%;transform:scale(1.03)}.hero-overlay{background:linear-gradient(90deg,#06121fe8,#08233ab8 46%,#09304857),linear-gradient(0deg,#07142257,#0714221f)}.hero-inner{align-items:center;display:grid;gap:clamp(28px,5vw,72px);grid-template-columns:minmax(0,1fr) minmax(280px,390px);max-width:1220px;position:relative;width:100%;z-index:1}.hero-content{max-width:760px;position:relative;z-index:1}.eyebrow{align-items:center;color:var(--blue);display:flex;font-size:.82rem;font-weight:900;gap:8px;letter-spacing:0;margin:0 0 14px;text-transform:uppercase}.hero .eyebrow{color:#8bd6ff}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.5rem,5.8vw,5.1rem);line-height:1;margin-bottom:22px;max-width:850px;text-wrap:balance}h2{color:var(--navy);font-size:clamp(2rem,3.8vw,3.1rem);line-height:1.08;margin-bottom:0;text-wrap:balance}h3{color:var(--navy);font-size:1.2rem;margin-bottom:10px}.hero-copy{color:#ffffffe0;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.6;margin-bottom:30px;max-width:690px}.hero-card{background:#ffffffeb;border:1px solid rgba(255,255,255,.42);border-radius:8px;box-shadow:0 28px 70px #0000004d;color:var(--navy);padding:28px;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-card:before{background:linear-gradient(90deg,var(--blue),#8bd6ff,var(--gold));content:"";height:5px;left:0;position:absolute;right:0;top:0}.hero-card img{height:92px;margin-bottom:22px;width:92px}.hero-card p{color:var(--charcoal);font-size:1.35rem;font-weight:850;line-height:1.2;margin-bottom:18px}.hero-card>a{color:var(--blue-dark);display:inline-flex;font-size:1.18rem;font-weight:900;margin-bottom:24px}.hero-stats{border-top:1px solid var(--line);display:grid;gap:10px;grid-template-columns:repeat(3,1fr);padding-top:18px}.hero-stats span{color:var(--muted);display:grid;font-size:.78rem;gap:3px}.hero-stats strong{color:var(--navy);font-size:1rem}.hero-scroll{align-items:center;bottom:28px;color:#ffffffbf;display:flex;font-size:.78rem;font-weight:800;gap:10px;left:clamp(18px,4vw,64px);position:absolute;text-transform:uppercase;z-index:2}.hero-scroll i{background:#ffffffd9;border-radius:999px;display:block;height:2px;width:46px}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px}.button{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-weight:900;gap:9px;justify-content:center;min-height:50px;padding:13px 18px;box-shadow:0 12px 24px #07142224;transition:transform .18s ease,background .18s ease,border-color .18s ease}.button:hover,.service-card:hover,.work-card:hover,.contact-link:hover{transform:translateY(-4px)}.button-primary{background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:var(--white)}.button-light{background:var(--white);color:var(--navy)}.button-ghost{background:#ffffff14;border-color:#ffffff52;color:var(--white)}.quick-contact{background:var(--white);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1260px;transform:translateY(-28px);width:calc(100% - clamp(36px,8vw,128px));position:relative;z-index:5;border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.quick-contact a{align-items:center;border-right:1px solid var(--line);color:var(--navy);display:flex;font-weight:850;gap:10px;justify-content:center;min-height:74px;padding:14px;text-align:center;overflow-wrap:anywhere}.quick-contact a:last-child{border-right:0}.quick-contact svg{color:var(--blue-dark);flex:0 0 auto}.intro-band{background:linear-gradient(135deg,#071624,var(--navy));color:var(--white);display:grid;gap:1px;grid-template-columns:repeat(3,1fr)}.intro-item{align-items:center;background:#ffffff0e;display:flex;font-weight:800;gap:12px;justify-content:center;min-height:94px;padding:22px;text-align:center}.intro-item svg{color:var(--gold);flex:0 0 auto}.section,.split-section,.contact-section{padding:clamp(68px,9vw,118px) clamp(18px,4vw,64px)}.service-feature{align-items:end;display:grid;gap:clamp(26px,5vw,70px);grid-template-columns:minmax(0,.95fr) minmax(320px,.65fr);margin:-28px auto 0;max-width:1260px;padding-top:clamp(70px,8vw,108px)}.feature-copy h2{max-width:790px}.feature-card{background:var(--navy);border-radius:8px;box-shadow:var(--shadow);color:var(--white);overflow:hidden}.feature-card img{aspect-ratio:16 / 10;object-fit:cover;width:100%}.feature-card div{padding:24px}.feature-card span{color:#8bd6ff;display:block;font-weight:900;margin-bottom:8px}.feature-card p{color:#ffffffc7;line-height:1.55;margin:0}.service-section{padding-top:clamp(48px,7vw,82px)}.section-heading{margin:0 auto 38px;max-width:840px;text-align:center}.service-grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto;max-width:1160px}.service-card,.work-card,.process-panel,.contact-link{background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 34px #10223512;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-card{appearance:none;cursor:pointer;text-align:left;min-height:320px;padding:0;position:relative;overflow:hidden}.service-card:focus-visible,.dialog-close:focus-visible,.gallery-control:focus-visible,.thumb:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.service-card:after{background:linear-gradient(180deg,#fff0,#fffffff5 68%),linear-gradient(135deg,rgba(31,158,233,.14),transparent 62%);content:"";inset:0;position:absolute;z-index:1}.service-card>img{aspect-ratio:16 / 8;height:170px;object-fit:cover;width:100%;transition:transform .24s ease}.service-card:hover>img{transform:scale(1.035)}.service-card svg{background:var(--blue);border-radius:8px;color:var(--white);height:52px;margin:-26px 28px 18px;padding:10px;width:46px;position:relative;z-index:2}.service-card h3,.service-card p{margin-left:28px;margin-right:28px;position:relative;z-index:2}.service-card p{margin-bottom:28px}.service-card-action{align-items:center;color:var(--blue-dark);display:inline-flex;font-weight:900;gap:8px;margin:0 28px 28px;position:relative;z-index:2}.service-card p,.work-card p,.split-copy p,.contact-copy p{color:var(--muted);line-height:1.65}.section-muted{background:linear-gradient(180deg,var(--soft),#ffffff)}.work-grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;max-width:1160px}.work-card{overflow:hidden;background:#fff}.work-card img{aspect-ratio:4 / 3;object-fit:cover;transition:transform .24s ease;width:100%}.work-card:hover img{transform:scale(1.035)}.work-card div{padding:24px}.split-section{align-items:center;display:grid;gap:clamp(28px,5vw,72px);grid-template-columns:minmax(0,1fr) minmax(320px,.76fr);margin:0 auto;max-width:1260px;position:relative}.split-section:before{background:var(--blue-soft);border-radius:8px;content:"";inset:58px clamp(18px,4vw,64px) 58px auto;position:absolute;width:min(38%,420px);z-index:-1}.why-list{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:24px 0 26px;padding:0}.why-list li{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 28px #07142212;color:var(--navy);display:grid;font-size:.96rem;font-weight:850;gap:11px;grid-template-columns:30px minmax(0,1fr);line-height:1.35;min-height:64px;padding:14px 16px 14px 14px}.why-list li:before{align-items:center;background:linear-gradient(135deg,var(--blue),var(--blue-dark));border-radius:999px;color:var(--white);content:"✓";display:flex;font-size:.92rem;font-weight:900;height:30px;justify-content:center;width:30px}.why-summary{background:linear-gradient(90deg,#1f9ee921,#1f9ee900),#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:8px;box-shadow:0 14px 34px #0714220f;font-size:1.02rem;margin:0;padding:22px 24px}.why-summary strong{color:var(--navy);font-weight:900}.reason-list{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}.reason-list span{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:8px;color:var(--navy);display:flex;font-weight:800;gap:9px;min-height:52px;padding:12px}.reason-list svg{color:var(--blue-dark);flex:0 0 auto}.process-panel{border-top:5px solid var(--blue);padding:34px}.process-panel ol{display:grid;gap:20px;list-style:none;margin:24px 0 0;padding:0}.process-panel li{display:grid;gap:2px;grid-template-columns:34px 1fr;padding-left:0}.process-panel li:before{align-items:center;background:var(--blue-soft);border-radius:999px;color:var(--blue-dark);content:counter(list-item);display:flex;font-size:.88rem;font-weight:900;height:34px;justify-content:center;width:34px}.process-panel strong,.process-panel span{display:block}.process-panel strong,.process-panel span{grid-column:2}.process-panel span{color:var(--muted);line-height:1.5;margin-top:4px}.contact-section{align-items:center;background:linear-gradient(135deg,#081624f5,#16415ff2),url(/hero-banner.jpg) center / cover;color:var(--white);display:grid;gap:34px;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr)}.contact-section h2{color:var(--white)}.contact-copy p{color:#ffffffc7}.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-panel{background:#ffffff1a;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:16px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.contact-note{align-items:center;color:var(--white);display:flex;font-weight:900;gap:12px;margin-bottom:14px;padding:6px 6px 12px}.contact-note img{background:var(--white);border-radius:8px;height:54px;padding:4px;width:54px}.contact-link{align-items:center;color:var(--navy);display:flex;gap:14px;min-height:90px;padding:20px;overflow-wrap:anywhere}.contact-link svg{background:#1f9ee91a;border-radius:8px;color:var(--blue-dark);flex:0 0 auto;height:46px;padding:10px;width:46px}.contact-link strong,.contact-link span span{display:block}.contact-link strong{margin-bottom:4px}footer{align-items:center;background:#081624;color:#ffffffc2;display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;padding:24px clamp(18px,4vw,64px)}footer span:first-child{color:var(--white);font-weight:800}.service-dialog-backdrop{align-items:center;background:#06121fb8;display:flex;inset:0;justify-content:center;padding:clamp(16px,3vw,38px);position:fixed;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .18s ease both}.service-dialog{background:var(--white);border-radius:8px;box-shadow:0 34px 90px #00000061;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(320px,1fr);max-height:min(760px,calc(100vh - 36px));max-width:1040px;overflow:hidden;position:relative;width:100%;animation:dialogIn .22s ease both}.dialog-close{align-items:center;background:var(--white);border:1px solid var(--line);border-radius:999px;color:var(--navy);cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:16px;top:16px;transition:background .18s ease,color .18s ease,transform .18s ease;width:44px;z-index:2}.dialog-close:hover{background:var(--navy);color:var(--white);transform:rotate(6deg)}.dialog-gallery{background:#06121f;min-height:520px;overflow:hidden;position:relative}.dialog-media{height:100%;min-height:520px;object-fit:cover;width:100%}video.dialog-media{background:#06121f;object-fit:contain}.gallery-control{align-items:center;background:#fffffff0;border:1px solid rgba(255,255,255,.6);border-radius:999px;color:var(--navy);cursor:pointer;display:flex;height:46px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .18s ease,color .18s ease,transform .18s ease;width:46px;z-index:2}.gallery-control:hover{background:var(--blue);color:var(--white);transform:translateY(-50%) scale(1.04)}.gallery-control-prev{left:16px}.gallery-control-next{right:16px}.gallery-count{background:#06121fc2;border:1px solid rgba(255,255,255,.16);border-radius:999px;bottom:16px;color:var(--white);font-size:.82rem;font-weight:900;left:16px;padding:8px 12px;position:absolute;z-index:2}.dialog-content{display:flex;flex-direction:column;justify-content:center;overflow-y:auto;padding:clamp(28px,5vw,58px)}.dialog-content h2{margin-bottom:18px}.dialog-content>p:not(.eyebrow){color:var(--muted);font-size:1.05rem;line-height:1.75;margin-bottom:24px}.dialog-includes{display:grid;gap:10px;margin-bottom:28px}.dialog-includes span{align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:8px;color:var(--navy);display:flex;font-weight:850;gap:10px;min-height:48px;padding:11px 12px}.dialog-includes svg{color:var(--blue-dark);flex:0 0 auto}.dialog-thumbs{display:grid;gap:9px;grid-auto-columns:74px;grid-auto-flow:column;margin:-4px 0 28px;overflow-x:auto;padding:4px 2px 8px}.thumb{appearance:none;background:transparent;border:2px solid transparent;border-radius:8px;cursor:pointer;height:62px;overflow:hidden;padding:0}.thumb.is-active{border-color:var(--blue)}.thumb img{height:100%;object-fit:cover;width:100%}.thumb-video{align-items:center;background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:var(--white);display:flex;font-size:.72rem;font-weight:900;height:100%;justify-content:center;text-transform:uppercase;width:100%}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px}.dialog-actions .button-light{border-color:var(--line);box-shadow:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.section-reveal{animation:riseIn .68s ease both}@supports (animation-timeline: view()){.section-reveal{animation-timeline:view();animation-range:entry 0% cover 28%}}.hero.section-reveal{animation:none}.hero-content{animation:heroIn .76s ease both}@keyframes heroIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes riseIn{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}}@media(max-width:980px){.site-header{align-items:flex-start;flex-direction:column;gap:12px;min-height:auto}nav{justify-content:flex-start;overflow-x:auto;padding-bottom:4px;width:100%}.header-call{position:absolute;right:18px;top:16px}.service-grid,.work-grid,.split-section,.contact-section,.service-feature,.hero-inner{grid-template-columns:1fr}.hero{min-height:760px;padding-top:74px}.hero-card{max-width:520px}.quick-contact{grid-template-columns:repeat(2,1fr)}.quick-contact a{border-bottom:1px solid var(--line)}.quick-contact a:nth-child(2n){border-right:0}.split-section:before{inset:auto 18px 48px;height:38%;width:auto}.service-dialog{grid-template-columns:1fr;max-width:680px}.dialog-media{aspect-ratio:16 / 9;min-height:0}.dialog-gallery{min-height:0}}@media(max-width:680px){.brand span{font-size:.98rem;max-width:180px}.brand img{height:42px;width:42px}.header-call span{display:none}nav a{font-size:.9rem}.hero{min-height:680px;padding-bottom:86px}.hero-overlay{background:linear-gradient(90deg,#071422eb,#071422b3)}.hero-actions,.button{width:100%}.hero-card{padding:22px}.hero-card img{height:74px;width:74px}.hero-stats,.quick-contact,.intro-band,.why-list,.reason-list,.contact-actions{grid-template-columns:1fr}.quick-contact{margin-top:0;transform:none;width:100%;border-radius:0}.quick-contact a{border-right:0;justify-content:flex-start}.intro-item{justify-content:flex-start;text-align:left}.service-card{min-height:auto}.service-dialog-backdrop{align-items:flex-end;padding:0}.service-dialog{border-radius:8px 8px 0 0;max-height:calc(100vh - 24px)}.dialog-content{padding:26px 20px 28px}.dialog-actions,.dialog-actions .button{width:100%}.contact-link{min-height:82px}footer{justify-content:center;text-align:center}}
