@font-face{font-family:Abel;src:url('assets/abel-400.ttf')}@font-face{font-family:Gruppo;src:url('assets/gruppo-400.ttf')}@font-face{font-family:Roboto;src:url('assets/roboto-400.ttf');font-weight:400}@font-face{font-family:Roboto;src:url('assets/roboto-600.ttf');font-weight:600}@font-face{font-family:Rokkitt;src:url('assets/rokkitt-300.ttf')}@font-face{font-family:'Open Sans';src:url('assets/open-sans-400.ttf')}@font-face{font-family:'Open Sans';src:url('assets/open-sans-600.ttf');font-weight:600}
:root{--blue:#3863fc;--cyan:#008b9c;--ink:#424242}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.75 'Open Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,.gallery:focus-visible{outline:2px solid #667085;outline-offset:3px}h1,h2,h3,p{margin-top:0}p{margin-bottom:18px}h2,h3{font-family:Abel,Arial,sans-serif;color:#000;font-weight:400;line-height:1.17}h2{font-size:60px;letter-spacing:-.5px;text-align:center;margin-bottom:30px}h3{font-size:32px}.wrap{width:min(1140px,calc(100% - 48px));margin:auto}.skip{position:fixed;top:-100px;left:10px;padding:10px;background:white;z-index:50}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.experience{background:#000;color:white;text-align:center;font:300 16px/1.4 Rokkitt,Georgia,serif;padding:10px 24px}.brand-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:170px}.brand-mark{justify-self:center}.brand-mark img{width:150px;height:150px}.wordmark img{width:300px}.wordmark{padding-top:45px}.socials{display:flex;justify-content:center;gap:14px}.socials :is(button,a){border:0;border-radius:50%;background:var(--blue);color:white;width:44px;height:44px;font:600 24px Arial}.socials :is(button,a):hover{transform:scale(1.08)}.nav-band{background:#000;color:#fff}.nav-inner{display:flex;gap:20px;align-items:center;min-height:72px}.nav-inner nav{display:flex;justify-content:center;flex:1}.nav-inner nav a{padding:18px 15px;white-space:nowrap;font:600 22px/1.5 Roboto,Arial,sans-serif}.nav-inner nav a:hover,.nav-inner nav a[aria-current]{color:#82c7ff}.search-wrap{width:235px;position:relative}#site-search{background:#fff;color:#333;border:1px solid #ddd;border-radius:3px;width:100%;padding:11px 14px;font-size:14px}.search-results{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:310px;max-width:80vw;padding:10px;background:#fff;color:#222;box-shadow:0 8px 28px #0003}.search-results a{display:block;padding:10px;border-bottom:1px solid #eee;font-size:15px}.search-results p{margin:8px;font-size:14px}.menu-toggle{display:none}.hero{background:linear-gradient(115deg,#131725,#101017 55%,#182640);color:#fff;padding:100px 0;min-height:330px;text-align:center}.hero h1{font-family:Gruppo,Arial,sans-serif;font-size:80px;line-height:1;letter-spacing:-1px;text-transform:uppercase;font-weight:900;margin:0 0 12px;text-shadow:0 0 10px #0005}.hero p{font:400 50px/1 Gruppo,Arial,sans-serif;text-transform:uppercase;margin:0}.intro{padding-top:60px}.intro p{text-align:justify}.centered p{text-align:center}.service-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding-top:30px;text-align:center}.service-cards img{width:82px;height:82px;margin:0 auto 18px}.service-cards h3{font:600 22px/1.3 Roboto,Arial,sans-serif;color:#3863fc;margin-bottom:12px}.service-cards p{font-size:15px;line-height:1.7}.popular,.faq{padding-top:60px}.popular-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.popular-grid img{width:100%;aspect-ratio:1.5;object-fit:cover}.popular h3{font-size:48px;text-align:center;margin:20px 0 15px}.popular article:first-child h3{margin-top:0}.faq{padding-bottom:60px}.faq details{margin-bottom:10px}.faq summary{background:#00a8bf;color:white;padding:17px 20px;cursor:pointer;font:400 20px/1.25 Abel,Arial,sans-serif;text-transform:uppercase;list-style:none;display:flex;gap:15px;border-bottom:3px solid #0002}.faq summary::before{content:'+';font:600 23px/1 Arial}.faq details[open] summary::before{content:'−'}.faq details p{padding:20px;background:#fafafa;border-bottom:3px solid #ddd;margin:0}.brands-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:65px 40px;padding-top:60px;padding-bottom:80px}.brand-tile{height:190px;width:100%;border:0;background:#fff;padding:25px;display:flex;align-items:center;justify-content:center}.brand-tile:hover{background:#f7f9ff}.brand-tile img{max-height:145px;object-fit:contain}.brand-socials{display:flex;justify-content:center;gap:12px}.brand-socials :is(button,a){border:0;background:none;padding:5px 0;color:#315bda;font-size:12px}.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.phases article{background:#1896fe;border-radius:7px;padding:30px;color:white}.phases article img,.missing-image{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:7px}.phases h3{font:600 25px/1.2 Roboto,Arial,sans-serif;color:white;margin:30px 0 18px}.phases p{font-size:16px;line-height:1.65;margin:0}.missing-image{background:#0b72cb;display:flex;flex-direction:column;align-items:center;justify-content:center}.missing-image span{font:80px Gruppo}.missing-image small{font-size:11px}.closing{padding-top:65px;padding-bottom:75px;text-align:center}.closing h2{font-size:45px}.button{display:inline-block;border:0;border-radius:0;background:var(--blue);color:#fff;padding:15px 24px;font:600 16px/1.7 'Open Sans',Arial,sans-serif;text-align:center;text-transform:uppercase}.button:hover{color:#fff;background:#00838f}.gallery-section{padding-top:45px;padding-bottom:80px}.gallery{display:flex;overflow-x:auto;gap:20px;scroll-snap-type:x mandatory;scrollbar-width:thin}.gallery figure{flex:0 0 calc((100% - 40px)/3);margin:0;scroll-snap-align:start}.gallery img{width:100%;height:260px;object-fit:cover;border-radius:4px}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:20px}.gallery-controls button{border:1px solid #bbb;color:#167d61;background:#fff;border-radius:50%;width:44px;height:44px;font-size:25px}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-controls span{font-size:14px}.contact-section{padding:60px 0;background:linear-gradient(180deg,#0762d9,#0540a8);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;align-items:start}.contact-info h1{font:60px/1.2 Abel,Arial,sans-serif;margin-bottom:35px}.contact-info p{margin-bottom:25px;font-family:Roboto,Arial,sans-serif}.contact-phone{font-size:26px}.map-placeholder{margin-top:30px;min-height:205px;background:linear-gradient(#003e92cc,#003e92cc),url('assets/three-students-working-flatlay.jpg') center/cover;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;text-align:center;border:1px solid #ffffff55}.map-placeholder span{font-size:40px}.map-placeholder small{margin-top:12px;font-size:12px}.contact-form{background:white;color:#424242;padding:32px}.contact-form h2{font-size:36px;text-align:left;margin-bottom:15px}.availability-note{font-size:13px;line-height:1.6;background:#edf3ff;border-left:3px solid var(--blue);padding:12px}.contact-form fieldset{border:0;padding:0;margin:0;min-width:0}.contact-form label{font-size:13px;display:block;margin:12px 0 6px}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{display:block;width:100%;border:1px solid #c6c6c6;background:#f8f8f8;padding:11px;font-size:14px;color:#666;border-radius:0}.contact-form textarea{resize:none}.contact-form .check{display:flex;align-items:start;gap:8px}.contact-form .button{opacity:.55;cursor:not-allowed;width:100%;margin-top:16px}footer{background:#000;color:#ccc;padding:28px 0}.footer-inner{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.footer-inner>span{font:26px Gruppo;color:#fff}.footer-inner nav{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}.footer-inner small{flex-basis:100%;font-size:11px;color:#aaa}dialog{border:0;padding:40px;width:min(480px,calc(100% - 40px));box-shadow:0 10px 80px #0006}dialog::backdrop{background:#0008}dialog h2{font-size:38px;text-align:left}dialog p{font-size:15px}.close-dialog{position:absolute;top:8px;right:13px;background:none;border:0;font-size:28px}
@media(max-width:1100px){.nav-inner nav a{font-size:18px;padding:18px 12px}.search-wrap{width:200px}.hero h1{font-size:65px}.hero p{font-size:40px}.phases{gap:20px}.phases article{padding:23px}.brand-row{min-height:150px}.brand-mark img{width:130px;height:130px}.wordmark img{width:260px}.wordmark{padding-top:30px}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.experience{font-size:14px;padding:8px 18px}.brand-row{grid-template-columns:24% 43% 33%;min-height:110px;gap:0}.brand-mark img{width:90px;height:90px}.wordmark{padding-top:23px;padding-left:8px}.wordmark img{width:210px}.socials{gap:7px}.socials :is(button,a){width:30px;height:30px;font-size:18px}.nav-inner{flex-wrap:wrap;gap:0;min-height:60px;justify-content:space-between;padding:10px 0;position:relative}.menu-toggle{display:block;color:white;background:transparent;border:0;padding:7px 3px;font-size:18px}.nav-inner nav{display:none;order:3;width:100%;flex-basis:100%;padding-top:12px}.nav-inner nav.open{display:flex;flex-direction:column}.nav-inner nav a{padding:12px 10px;font-size:18px;border-top:1px solid #ffffff22}.search-wrap{width:48%;max-width:250px}.hero{min-height:240px;padding:65px 0}.hero h1{font-size:48px}.hero p{font-size:31px}.intro{padding-top:40px}h2{font-size:42px;margin-bottom:24px}.service-cards{grid-template-columns:1fr 1fr;gap:25px}.popular-grid{gap:25px}.popular h3{font-size:36px}.brands-grid{gap:35px 10px}.brand-tile{padding:16px;height:160px}.brand-socials{gap:7px;flex-wrap:wrap}.phases{grid-template-columns:1fr 1fr}.contact-grid{gap:30px}.contact-form{padding:24px}.gallery figure{flex-basis:calc((100% - 20px)/2)}.gallery img{height:225px}.contact-info h1{font-size:48px}}
@media(max-width:520px){.brand-row{min-height:95px}.brand-mark img{width:76px;height:76px}.wordmark{padding-top:19px;padding-left:5px}.socials{gap:5px}.socials :is(button,a){width:27px;height:27px;font-size:16px}.hero{min-height:220px;padding:60px 0}.hero h1{font-size:34px;letter-spacing:0}.hero p{font-size:24px;line-height:1.15}.intro p{text-align:left}h2{font-size:34px}.service-cards{grid-template-columns:1fr}.service-cards article{max-width:330px;margin:auto}.service-cards img{width:90px;height:90px}.popular,.faq{padding-top:40px}.popular-grid{grid-template-columns:1fr}.popular h3{font-size:32px}.popular article:first-child{display:flex;flex-direction:column}.popular article:first-child>a{order:-1}.popular article:first-child h3{margin-top:20px}.faq h2{font-size:38px}.faq summary{font-size:18px;padding:15px}.brands-grid{grid-template-columns:1fr 1fr;padding-top:25px}.brand-tile{height:135px;padding:12px}.brand-socials{gap:6px}.brand-socials :is(button,a){font-size:10px}.phases{grid-template-columns:1fr}.phases article{padding:28px}.closing h2{font-size:34px}.contact-grid{grid-template-columns:1fr}.contact-section{padding:40px 0}.contact-info h1{font-size:48px}.map-placeholder{min-height:160px}.gallery figure{flex-basis:90%}.gallery img{height:230px}.footer-inner nav{gap:12px}.button{font-size:14px;padding:13px 18px}dialog{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:360px){.hero h1{font-size:28px}.hero p{font-size:22px}}
/* Fidelity pass 2: values verified against the recovered Elementor page styles. */
@font-face{font-family:Archivo;src:url('assets/archivo-400.ttf');font-weight:400}@font-face{font-family:Archivo;src:url('assets/archivo-700.ttf');font-weight:700}@font-face{font-family:Lato;src:url('assets/lato-400.ttf');font-weight:400}@font-face{font-family:'Roboto Slab';src:url('assets/roboto-slab-400.ttf');font-weight:400}
.socials :is(button,a){display:grid;place-items:center;padding:12px}.socials svg{width:20px;height:20px;fill:currentColor}.hero{height:100vh;min-height:0;display:flex;align-items:center;padding:0}.hero .wrap{margin:0 auto}.page-index .hero{align-items:flex-start;padding:100px 0}.hero h1{font-size:80px;line-height:1;margin-bottom:0}.hero p{font-size:50px;line-height:1}.page-services .hero h1{font-size:76px}.page-brands .intro h2{font-weight:700}.page-services .intro h2{font-size:48px;line-height:58px;font-weight:700}.faq h2{text-shadow:0 0 10px #0005}.faq summary{background:#00bcd4}.service-cards h3{font-family:Roboto,Arial,sans-serif;font-weight:600;color:#6ec1e4}.service-cards p{font-family:Roboto,Arial,sans-serif;color:#7a7a7a;font-size:16px;line-height:1.6}.popular-grid img{height:auto;aspect-ratio:auto;object-fit:initial}.brands-grid{gap:120px 0;align-items:start}.brand-tile{height:auto;min-height:0;padding:0;display:block}.brand-tile img{width:100%;max-height:none;object-fit:initial}.brands-grid article:nth-child(1) .brand-tile{padding:9px}.brands-grid article:nth-child(2) .brand-tile{padding:68px}.brands-grid article:nth-child(3) .brand-tile{padding:63px}.brands-grid article:nth-child(4) .brand-tile{padding:23px}.brands-grid article:nth-child(5) .brand-tile{padding:14px}.brands-grid article:nth-child(6) .brand-tile{padding:0}.brand-socials{gap:10px;margin-top:20px}.brand-socials :is(button,a){display:grid;place-items:center;padding:7px;border:0;border-radius:3px;color:white;width:28px;height:28px}.brand-socials svg{width:14px;height:14px;fill:currentColor}.social-facebook{background:#3b5998!important}.social-instagram{background:#262626!important}.social-twitter{background:#1da1f2!important}.phases{gap:30px 40px;padding:0 20px}.phases article{padding:30px}.phases article img{height:auto;aspect-ratio:auto;object-fit:initial}.phases h3{font-family:Archivo,Arial,sans-serif;font-weight:700;font-size:25px;line-height:30px;margin-top:40px}.phases p{font-family:Lato,Arial,sans-serif;font-size:16px;line-height:26px}.closing h2{font-size:50px;line-height:70px;font-weight:600;text-shadow:0 0 10px #0005}.closing p{font-family:Lato,Arial,sans-serif;color:#000;line-height:26px}.closing .button{font-family:Archivo,Arial,sans-serif;font-size:14px;background:#1896fe;border:1px solid #1896fe;border-radius:50px;padding:16px 50px;box-shadow:5px -5px 60px #0002}.gallery-section{padding-top:80px;padding-bottom:80px}.gallery-controls{color:#2fd6a0}.gallery-controls button{color:#2fd6a0}.contact-section{position:relative;isolation:isolate;margin-top:60px;padding:30px 0 50px}.contact-section::before{content:'';position:absolute;inset:0;background:url('assets/three-students-working-flatlay.jpg') center/cover;opacity:.12;mix-blend-mode:lighten;z-index:-1}.contact-section>h1{font:400 60px/70px Abel,Arial,sans-serif;letter-spacing:-.5px;text-align:center;margin:0 0 10px}.contact-grid{grid-template-columns:60% 40%;gap:0;align-items:center;padding:0 25px}.contact-info{padding:60px 60px 60px 100px}.contact-details{list-style:none;margin:0;padding:0;font:400 16px/1.65 Roboto,Arial,sans-serif}.contact-details li{display:flex;align-items:center;gap:6px;margin-bottom:30px}.contact-details svg{width:45px;height:45px;fill:currentColor;flex:0 0 45px}.map-placeholder{height:250px;min-height:250px;margin:10px 0 0;background:#e9eef5;color:#455267;border:0}.contact-form{padding:20px;border:1px solid #222;box-shadow:0 0 10px #000}.contact-form input:not([type=checkbox]),.contact-form textarea,.contact-form select{margin-bottom:20px;background:#fff;padding:10px 12px}.contact-form label.sr-only{position:absolute;margin:-1px}.contact-form .check{font-size:14px}.contact-form .button{width:auto;margin-top:10px;padding:10px 20px}.contact-form .availability-note{font-size:11px;line-height:1.5;margin:15px 0 0;padding:8px}.footer-inner{min-height:20px;display:block}.footer-inner small{display:block;text-align:center}footer{padding:30px 0}
@media(min-width:1025px){.contact-section::before{background-attachment:fixed}}
@media(max-width:1024px){.hero{padding:3em}.page-index .hero{padding:3em 1em 1em}.hero h1{font-size:80px}.hero p{font-size:50px}.page-services .hero h1{font-size:76px}.phases{grid-template-columns:1fr}.page-services .intro{padding:100px 25px}.contact-section{padding:1em}.contact-grid{padding:0 25px}.contact-info{padding:40px 35px 40px 25px}}
@media(max-width:767px){.hero{padding:3em 1em}.page-index .hero{padding:3em 1em 1em}.hero h1{font-size:30px}.hero p{font-size:22px}.page-index .hero h1{font-size:29px}.page-index .hero p{font-size:24px}.page-oem .hero h1{font-size:26px}.page-oem .hero p{font-size:20px}.page-services .hero h1{font-size:36px}.page-services .hero p{font-size:25px}.page-index .intro h2,.page-index .popular>h2{font-size:26px;line-height:70px}.page-brands .intro h2{font-size:24px;line-height:70px}.page-oem .intro h2{font-size:20px;line-height:70px}.page-services .intro{padding:50px 20px}.page-services .intro h2{font-size:30px;line-height:58px}.faq h2{font-size:40px;line-height:70px}.brands-grid{grid-template-columns:1fr;gap:60px;padding-top:60px}.brand-tile{max-width:100%}.brand-socials{margin-top:20px}.phases{padding:0 20px}.phases h3{font-size:40px;line-height:50px}.closing h2{font-size:24px;line-height:70px}.gallery-section{padding-top:0;padding-bottom:0}.socials :is(button,a){padding:6px;width:22px;height:22px}.socials svg{width:10px;height:10px}.contact-section{margin-top:10px;padding:3em 1em}.contact-section>h1{font-size:36px}.contact-grid{grid-template-columns:1fr;padding:0}.contact-info{padding:0;margin-top:30px}.contact-details li{justify-content:center}.contact-details svg{width:28px;height:28px;flex-basis:28px}.contact-form{margin-top:25px}.map-placeholder{margin-bottom:15px}.closing .button{padding:16px 25px}}
@media(max-width:360px){.phases h3{font-size:30px;line-height:40px}.page-services .hero h1{font-size:30px}.page-services .hero p{font-size:22px}}
@media(min-width:1025px){.gallery figure{flex-basis:calc((100% - 60px)/4)}.gallery img{height:auto;aspect-ratio:1.4;object-fit:cover}}
@media(min-width:768px){.brand-row{width:100%;min-height:180px}.brand-mark img{width:150px;height:150px}.wordmark{padding:0;margin-top:66px;margin-left:-15px}.wordmark img{width:300px}.socials{align-self:start;margin-top:20px}}
/* The archived footer was an empty 20px black band. Keep the preview disclosure compact. */
footer{padding:0}.footer-inner small{line-height:20px}
/* Recovered carousel navigation uses side arrows and mint pagination dots. */
.gallery-section{position:relative}.gallery-controls{margin:0;height:0}.gallery-controls button{position:absolute;top:50%;z-index:1;border:0;background:transparent;color:#2fd6a0;font-size:30px;line-height:1;width:30px;height:40px;padding:0;transform:translateY(-50%)}#gallery-prev{left:10px}#gallery-next{right:10px}.gallery-controls span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.gallery-pagination{display:flex;justify-content:center;gap:8px;margin-top:15px}.gallery-pagination button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#2fd6a0;opacity:.2}.gallery-pagination button[aria-current=true]{opacity:1}.gallery-pagination button[hidden]{display:none}
/* Original OceanWP defaults inherited by the image-box widgets. */
.service-cards h3{font-size:18px;line-height:1.4;margin-bottom:20px}.service-cards p{font-size:14px;line-height:1.8}.service-cards img{margin-bottom:15px}
/* Measured comparison against static archive defaults and full-width section classes. */
h2,h3{font-weight:600}h2{line-height:70px;margin-bottom:20px}p{margin-bottom:20px}.experience{line-height:1}.hero h1{margin-bottom:20px}.intro{padding-top:70px;width:min(1120px,calc(100% - 20px))}.intro p{text-align:left}.page-oem .intro h2{font-weight:500}.service-cards{width:calc(100% - 20px);gap:20px;padding-top:50px}.service-cards img{width:30%;height:auto}.popular{width:100%}.popular h3{line-height:58px;margin-bottom:25px}.popular article:first-child h3{margin-bottom:25px}.popular article:nth-child(2) h3{margin-top:15px}.popular-grid{gap:40px}.faq{width:calc(100% - 20px)}.brands-grid{width:calc(100% - 20px);gap:120px 20px}.page-brands .intro,.page-services .intro{width:calc(100% - 20px)}.phases{width:100%}.contact-section>h1{font-weight:600}.nav-inner nav a{color:#7a7a7a}.nav-inner nav a[aria-current],.nav-inner nav a:hover{color:#61ce70}
@media(max-width:767px){.hero,.page-index .hero{padding-top:42px;padding-left:14px;padding-right:14px}.service-cards{padding-top:50px}.service-cards article{max-width:none;width:100%}.popular-grid{padding:0 20px}.popular h3{font-size:28px;line-height:58px}.brands-grid{width:calc(100% - 20px)}.contact-section{padding:42px 14px}.hero h1{letter-spacing:0}}
.popular>h2{margin-bottom:30px}.phases{margin-top:60px}.phases h3{margin-top:60px}.brands-grid{width:100%;gap:120px 0;grid-template-columns:32.745% 33.39% 33.173%}.brands-grid article{padding:10px}.brand-tile img{width:auto;margin:auto;max-width:100%}.page-services .intro{padding-top:60px}.page-services .button{font-weight:700;padding:12px 24px;line-height:28px}.gallery img{height:auto;aspect-ratio:auto;object-fit:initial}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{min-height:40px;font-size:14px;line-height:1.8;padding:6px 12px;border-radius:3px}.contact-form select{height:40px;padding-top:0;padding-bottom:0}.contact-form textarea{line-height:1.5}.contact-form .inquiry-label{margin:0 0 10px;font-size:14px}.contact-form .button{font-size:12px;font-weight:600;letter-spacing:.1em;line-height:1;padding:14px 20px}
@media(max-width:1024px){.phases h3,.phases p{text-align:center}}
@media(max-width:767px){.brands-grid{grid-template-columns:1fr;gap:60px}.page-services .intro{padding-top:50px}.phases h3{margin-top:40px}.phases article:first-child h3{margin-top:0}}
body{overflow-wrap:break-word}.hero .wrap{width:100%;max-width:none}.page-index .hero .wrap{padding-left:13px}.page-brands .hero .wrap{max-width:1140px;padding:10px}
@media(max-width:767px){.hero{height:auto;min-height:0;padding:42px 14px}.page-index .hero{padding:42px 14px 14px}.page-index .hero p{margin-bottom:60px}}
.page-services .intro{text-align:center}.page-services .intro p{text-align:center}.gallery{scrollbar-width:none}.gallery::-webkit-scrollbar{display:none}
@media(max-width:360px){.page-services .hero h1{font-size:36px}.page-services .hero p{font-size:25px}}

/* Authorized January 2026 logo amendment. The exact later layout is unavailable.
   Preserve supplied PNGs and full-page PDF render; CSS frames whitespace only. */
.brands-grid article.brand-touchbeauty .brand-tile,.brands-grid article.brand-noise .brand-tile,.brands-grid article.brand-lustre .brand-tile{height:170px;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.brands-grid article.brand-touchbeauty .brand-tile{padding:24px}
.brand-touchbeauty .brand-tile img,.brand-noise .brand-tile img{width:100%;max-width:100%;height:auto;flex-shrink:0;margin:0}
.brand-lustre .brand-tile img{width:132%;max-width:none;height:auto;flex-shrink:0;margin:0}

/* Licensed candidate footage supplied for owner review; see source notes. */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero-video,.hero-shade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-video{object-fit:cover;z-index:-2}
.hero-shade{background:rgba(0,0,0,.35);z-index:-1}
.hero>.wrap{position:relative;z-index:1}
.video-toggle{position:absolute;right:16px;bottom:14px;z-index:2;background:rgba(0,0,0,.65);border:1px solid #ffffff8a;color:#fff;font:14px/1.2 Arial,sans-serif;padding:9px 12px;border-radius:3px;cursor:pointer}
.video-toggle:hover{background:#000}
.video-toggle[hidden]{display:none}
footer{height:20px}
@media(max-width:767px){.hero:has(.hero-video){padding-bottom:64px}.page-index .hero:has(.hero-video){padding-bottom:64px}.video-toggle{right:10px;bottom:10px}}

.contact-form :is(input,select,textarea):focus{border-color:#717680;outline:2px solid #a4a7ae;outline-offset:2px;box-shadow:none}
.contact-info a{color:inherit;text-decoration:none}.contact-info a:hover{text-decoration:underline}

.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.form-status{min-height:1.5em}button:disabled{cursor:wait;opacity:.65}

/* Owner review: restore the recovered blue overlay across hero footage.
   Keep motion controls available to keyboard users without an on-screen badge. */
.hero-shade{background:rgba(0,5,43,.38)}
.video-toggle:not(:focus-visible){width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:767px){.hero:has(.hero-video){padding-bottom:42px}.page-index .hero:has(.hero-video){padding-bottom:14px}}

/* Owner-directed blue treatment, 2026-11-10.
   The archived navy overlay was too subtle; this is a visual adjustment,
   not a claim of exact historical colour recovery. Explicit layers avoid
   relying on negative stacking levels for Safari video compositing. */
.hero-video{z-index:0;filter:grayscale(1)}
.hero-shade{z-index:1;background:rgba(0,45,115,.62);opacity:1;mix-blend-mode:normal}
.hero>.wrap{z-index:2}
.video-toggle{z-index:3}
