:root{--navy:#10243e;--navy2:#183858;--blue:#0099c7;--yellow:#f6c445;--pink:#df1975;--cream:#fbf8f1;--ink:#17212d;--muted:#5d6875;--line:#dce2e7;--white:#fff;--shadow:0 18px 50px rgba(16,36,62,.12);--radius:20px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit}button,input,select,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(16,36,62,.08);backdrop-filter:blur(12px)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;text-decoration:none;gap:.8rem}.brand img{width:112px}.brand span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);border-left:1px solid var(--line);padding-left:.8rem}.main-nav{display:flex;align-items:center;gap:1.35rem}.main-nav>a{text-decoration:none;font-weight:700;font-size:.94rem}.main-nav>a:not(.button):hover,.main-nav>a[aria-current=page]{color:var(--blue)}.nav-toggle{display:none;background:none;border:0;padding:.6rem}.nav-toggle span:not(.sr-only){display:block;width:25px;height:2px;background:var(--navy);margin:5px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.72rem 1.2rem;border-radius:12px;background:var(--yellow);color:var(--navy);font-weight:800;text-decoration:none;border:0;box-shadow:0 8px 22px rgba(246,196,69,.24)}.button:hover{background:#ffd669;transform:translateY(-1px)}.button-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7);box-shadow:none}.button-small{min-height:42px;padding:.55rem 1rem;border-radius:999px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:850;color:var(--blue)}h1,h2,h3{font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;color:var(--navy);line-height:1.08;letter-spacing:-.035em;margin:0}h1{font-size:clamp(2.25rem,4.5vw,4.35rem)}h2{font-size:clamp(1.8rem,3vw,2.75rem)}h3{font-size:1.28rem}p{margin:.75rem 0}.lead{font-size:clamp(1.02rem,1.7vw,1.2rem);color:var(--muted);max-width:720px}.section{padding:clamp(3.5rem,7vw,6rem) 0}.section-soft{background:linear-gradient(135deg,#fbf8f1 0%,#fff 52%,#f3f9fb 100%)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.section-head>div:first-child:after{content:"";display:block;width:86px;height:5px;margin-top:1rem;border-radius:99px;background:linear-gradient(90deg,var(--blue) 0 34%,var(--yellow) 34% 67%,var(--pink) 67%)}.section-head p{max-width:570px;color:var(--muted)}
.hero{position:relative;min-height:610px;display:grid;align-items:center;overflow:hidden;background:var(--navy);color:#fff}.hero-media,.hero-media:after{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media:after{content:"";background:linear-gradient(90deg,rgba(8,27,47,.94) 0%,rgba(8,27,47,.7) 54%,rgba(8,27,47,.22) 100%)}.hero-content{position:relative;z-index:1;padding:5.5rem 0;max-width:760px}.hero h1{color:#fff;max-width:700px}.hero .eyebrow{color:#f9d969}.hero p{font-size:1.08rem;max-width:680px;color:#eef3f7}.actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.7rem}.trust-bar{background:linear-gradient(90deg,#10243e,#163756);color:#fff;border-top:4px solid transparent;border-image:linear-gradient(90deg,var(--blue),var(--yellow),var(--pink)) 1}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:1.25rem;border-right:1px solid rgba(255,255,255,.13)}.trust-item:last-child{border:0}.trust-item strong{display:block;color:var(--yellow);font-size:1rem}.trust-item span{font-size:.86rem;color:#dce5ec}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.5rem;box-shadow:0 8px 30px rgba(16,36,62,.05);overflow:hidden}.card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--blue),var(--yellow),var(--pink));opacity:.85}.card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.card-icon{width:48px;height:5px;border-radius:10px;background:linear-gradient(90deg,var(--blue),var(--yellow),var(--pink));margin-bottom:1.25rem}.card p{color:var(--muted)}.card a{font-weight:800;color:var(--blue)}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.gallery figure{margin:0;grid-column:span 4;overflow:hidden;border-radius:14px;background:#e9edf0}.gallery figure:first-child{grid-column:span 8;grid-row:span 2}.gallery img{width:100%;height:280px;object-fit:cover;transition:transform .35s}.gallery figure:first-child img{height:576px}.gallery a:hover img{transform:scale(1.025)}.gallery figcaption{padding:.65rem .8rem;color:var(--muted);font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,5rem)}.split-media{border-radius:16px;overflow:hidden;box-shadow:var(--shadow);border-bottom:7px solid var(--yellow)}.check-list{list-style:none;padding:0}.check-list li{padding:.7rem 0 .7rem 2rem;border-bottom:1px solid var(--line);position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:900}.breadcrumbs{font-size:.86rem;color:var(--muted);margin-bottom:1rem}.breadcrumbs a{color:var(--blue)}.page-hero{position:relative;overflow:hidden;padding:clamp(3rem,5vw,4.5rem) 0;background:linear-gradient(120deg,#fbf8f1 0%,#fff 55%,#edf8fb 100%);border-bottom:1px solid var(--line)}.page-hero:after{content:"";position:absolute;right:-4rem;bottom:-8rem;width:24rem;height:24rem;border-radius:50%;border:55px solid rgba(0,153,199,.08);box-shadow:0 0 0 55px rgba(246,196,69,.055),0 0 0 110px rgba(223,25,117,.035)}.page-hero .container{position:relative;z-index:1}.page-hero h1{max-width:950px;font-size:clamp(2.2rem,4vw,3.75rem)}.page-hero .lead{margin-top:1.25rem}.cta{position:relative;overflow:hidden;padding:clamp(2rem,5vw,4rem);border-radius:20px;background:linear-gradient(115deg,var(--navy),#183e61);color:#fff;border-bottom:6px solid var(--yellow)}.cta:after{content:"";position:absolute;width:180px;height:180px;right:-70px;top:-90px;border-radius:50%;border:35px solid rgba(0,153,199,.25)}.cta h2{color:#fff}.cta p{color:#dce5ec}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:grid;gap:.35rem}.field-full{grid-column:1/-1}.field label{font-weight:750}.field input,.field select,.field textarea{width:100%;padding:.85rem 1rem;border:1px solid #bbc5ce;border-radius:10px;background:#fff}.notice{padding:1rem;border-radius:12px;margin-bottom:1rem}.notice-success{background:#e8f8ef;color:#17633a}.notice-error{background:#fff0f0;color:#8a2525}.honeypot{position:absolute!important;left:-9999px!important}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem}.contact-card{background:linear-gradient(145deg,var(--cream),#f1f8fa);border-radius:16px;padding:2rem;border-top:5px solid var(--blue)}.map{width:100%;min-height:320px;border:0;border-radius:16px}.lightbox{max-width:95vw;max-height:95vh;border:0;background:transparent}.lightbox::backdrop{background:rgba(5,15,25,.9)}.lightbox img{max-height:84vh}.lightbox button{display:block;margin:1rem auto;background:#fff;border:0;border-radius:999px;padding:.6rem 1rem}
.site-footer{background:#0a1b2d;color:#dce5ec;padding:4rem 0 6rem}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:2rem}.footer-brand img{width:132px;background:transparent;filter:drop-shadow(0 4px 18px rgba(0,153,199,.2))}.footer-grid h2{color:#fff;font:800 .95rem/1.2 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em}.footer-grid a{display:block;margin:.45rem 0;color:#dce5ec}.footer-grid address{font-style:normal}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);margin-top:2rem;padding-top:1.5rem;font-size:.86rem}.mobile-actions{display:none}
.work-featured{padding-bottom:4rem}.before-after-project{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.2rem;box-shadow:var(--shadow)}.before-after-head,.work-group-title{display:flex;align-items:center;justify-content:space-between;gap:1rem}.before-after-head{padding:.2rem .25rem 1rem}.before-after-head h3{font-size:1.45rem}.before-after-head span,.work-group-title span{color:var(--muted);font-weight:750}.before-after-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.before-after-grid figure,.work-card{position:relative;margin:0;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--line)}.before-after-grid img{width:100%;height:330px;object-fit:cover}.before-after-grid figcaption{position:absolute;left:.7rem;bottom:.7rem;background:rgba(10,27,45,.92);color:#fff;border-radius:999px;padding:.42rem .75rem}.work-categories{display:flex;flex-wrap:wrap;gap:.55rem;margin:-.4rem 0 2.5rem}.work-categories a{padding:.52rem .78rem;border:1px solid var(--line);border-radius:999px;background:#fff;text-decoration:none;font-weight:750;color:var(--navy)}.work-categories a:hover{border-color:var(--blue);color:var(--blue)}.work-group{scroll-margin-top:110px;margin:0 0 3.5rem}.work-group-title{border-bottom:1px solid var(--line);padding-bottom:.8rem;margin-bottom:1rem}.work-group-title h3{font-size:1.7rem}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.work-card{box-shadow:0 7px 25px rgba(16,36,62,.05)}.work-card img{width:100%;height:280px;object-fit:cover;transition:transform .35s}.work-card:hover img{transform:scale(1.025)}.work-card figcaption{padding:.8rem 1rem;color:var(--muted);font-weight:700}
.local-copy{font:inherit;color:var(--ink)}.about-story{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:stretch;gap:clamp(2rem,6vw,5rem)}.about-story-media{min-height:430px}.about-workshop-photo{position:relative;height:100%;min-height:430px;margin:0;overflow:hidden;border-radius:20px;box-shadow:var(--shadow);border-bottom:7px solid var(--yellow)}.about-workshop-photo img{width:100%;height:100%;object-fit:cover}.about-workshop-photo figcaption{position:absolute;left:1rem;bottom:1rem;padding:.55rem .8rem;border-radius:999px;background:rgba(10,27,45,.92);color:#fff;font-weight:800}.about-identity-card{height:100%;min-height:430px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(2rem,5vw,3.5rem);border-radius:20px;background:linear-gradient(145deg,var(--navy),#173e60);color:#fff;border-bottom:7px solid var(--yellow);box-shadow:var(--shadow)}.about-identity-card img{width:145px;height:145px;object-fit:contain;margin-bottom:auto}.about-identity-card .eyebrow{color:#8ed7ec}.about-identity-card strong{font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1;color:#fff;margin:.3rem 0 1.2rem}.about-identity-card span{display:block;padding:.45rem 0;border-top:1px solid rgba(255,255,255,.18);width:100%;font-weight:750}.about-story-copy{align-self:center}.about-story-copy>p:not(.eyebrow){color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-grid .before-after-project{padding:1rem;box-shadow:0 7px 25px rgba(16,36,62,.05)}.project-grid .before-after-head h3{font-size:1.08rem}.project-grid .before-after-head span{font-size:.82rem}.project-grid .before-after-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.project-grid .before-after-grid img{height:245px}.about-editorial-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,7vw,6rem);align-items:start}.about-editorial-intro h2{max-width:560px}.about-editorial-copy{padding-top:.15rem}.about-editorial-copy p{color:var(--muted);margin-top:0}.about-workshop-wide{position:relative;height:clamp(330px,42vw,520px);margin:3rem 0 0;overflow:hidden;border-radius:20px;border-bottom:7px solid var(--yellow);box-shadow:var(--shadow)}.about-workshop-wide img{width:100%;height:100%;object-fit:cover}.about-workshop-wide figcaption{position:absolute;left:1rem;bottom:1rem;padding:.55rem .8rem;border-radius:999px;background:rgba(10,27,45,.92);color:#fff;font-weight:800}.about-timeline{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3rem;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.about-timeline article{position:relative;padding:1.6rem 1.7rem}.about-timeline article+article{border-left:1px solid var(--line)}.about-timeline article:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--blue)}.about-timeline article:nth-child(2):before{background:var(--yellow)}.about-timeline article:nth-child(3):before{background:var(--pink)}.about-timeline span{display:block;margin-bottom:.55rem;color:var(--blue);font-size:.77rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.about-timeline strong{display:block;color:var(--navy);font-size:1.15rem}.about-timeline p{color:var(--muted);margin:.5rem 0 0}
@media(max-width:860px){.project-grid,.about-editorial-intro,.about-timeline{grid-template-columns:1fr}.about-timeline article+article{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:860px){.about-story{grid-template-columns:1fr;gap:2rem}.about-story-media,.about-workshop-photo,.about-identity-card{min-height:360px}}
@media(max-width:860px){.brand span{display:none}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:1rem 16px 1.5rem;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.is-open{display:flex}.main-nav a{padding:.5rem}.hero{min-height:560px}.hero-media:after{background:rgba(8,27,47,.76)}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.cards{grid-template-columns:1fr 1fr}.split,.contact-grid{grid-template-columns:1fr}.gallery figure,.gallery figure:first-child{grid-column:span 6;grid-row:auto}.gallery figure:first-child img,.gallery img{height:280px}.footer-grid{grid-template-columns:1fr 1fr}.before-after-grid,.work-grid{grid-template-columns:repeat(2,1fr)}.before-after-grid figure:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:560px){body{padding-bottom:58px}.container{width:min(100% - 24px,var(--max))}.hero{min-height:540px}.hero-content{padding:4rem 0}.hero p{font-size:1rem}.actions .button{width:100%}.trust-grid,.cards,.form-grid,.footer-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}.gallery{display:block}.gallery figure{margin-bottom:1rem}.gallery figure:first-child img,.gallery img{height:240px}.section-head{display:block}.before-after-grid,.work-grid{grid-template-columns:1fr}.before-after-grid figure:last-child:nth-child(odd){grid-column:auto}.before-after-grid img,.work-card img{height:260px}.before-after-head,.work-group-title{align-items:flex-start}.mobile-actions{position:fixed;display:grid;grid-template-columns:1fr 1fr;bottom:0;left:0;right:0;z-index:50;background:#fff;border-top:1px solid var(--line)}.mobile-actions a{text-align:center;padding:.85rem;text-decoration:none;font-weight:850;color:var(--navy)}.mobile-actions a:last-child{background:var(--yellow)}}
@media(max-width:560px){.project-grid .before-after-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid .before-after-grid img{height:205px}.project-grid .before-after-head{display:block}.project-grid .before-after-head span{display:block;margin-top:.25rem}.about-timeline{margin-top:2rem}.about-timeline article{padding:1.35rem}.about-workshop-wide{margin-top:2rem;height:300px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.page-hero-clean:after{display:none}.button-secondary:hover,.button-secondary:focus-visible{background:#fff;color:var(--navy);border-color:#fff}.nav-phone{white-space:nowrap;color:var(--navy);font-variant-numeric:tabular-nums}.mobile-actions a:first-child span,.mobile-actions a:first-child strong{display:block;line-height:1.15}.mobile-actions a:first-child strong{margin-top:.2rem;font-size:.8rem;font-variant-numeric:tabular-nums}@media(max-width:1120px) and (min-width:861px){.nav-phone{display:none}}@media(max-width:860px){.main-nav .nav-phone{display:block;color:var(--navy)}}@media(max-width:560px){body{padding-bottom:66px}.mobile-actions{min-height:66px}.mobile-actions a{display:flex;flex-direction:column;justify-content:center;padding:.45rem .35rem}}
