@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#041019;--surface:#081b25;--muted:#a1b4bf;--text:#ecf4f6;--line:#78b5bf26;--cyan:#59d7e4;--emerald:#5cd8b0;--width:1280px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:25px}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.75 'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
.wrap{max-width:var(--width);margin-inline:auto;padding-inline:32px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:'Outfit',system-ui,sans-serif;font-weight:400;line-height:1.16;letter-spacing:-.035em}
h1{font-size:clamp(3.3rem,5.6vw,5.3rem)}
h2{font-size:clamp(2.2rem,3.5vw,3.3rem)}
h3{font-size:1.4rem;letter-spacing:-.02em}
p{color:var(--muted)}
h1>span,h2>span{color:var(--cyan)}
.eyebrow{font-size:.65rem;letter-spacing:.18em;font-weight:600;color:#71c7ca;line-height:1.8}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #95eddb;outline-offset:5px}
.skip-link{position:fixed;top:10px;left:20px;z-index:100;transform:translateY(-180%);padding:10px 18px;background:#c5f5e8;color:#05232c}
.skip-link:focus{transform:none}
.site-header{position:relative;z-index:30;background:#030d15;border-bottom:1px solid var(--line)}
.nav-wrap{height:102px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;flex-shrink:0}
.brand-image{width:245px;height:auto}
.navlinks{display:flex;align-items:center;gap:38px}
.navlinks a{color:#b6c6ce;font-size:.85rem;padding:12px 0;position:relative}
.navlinks a:hover,.navlinks a.active{color:#f0f8f8}
.navlinks a.active::after{content:"";position:absolute;height:2px;background:#61d9e5;bottom:4px;left:0;right:0}
.nav-action{display:flex;align-items:center;gap:15px;font-size:.8rem;border:1px solid #76c2c544;padding:10px 18px;border-radius:5px}
.nav-action svg{width:16px;height:16px}
.nav-toggle{display:none;background:none;border:0;padding:12px;color:white}
.nav-toggle span{display:block;width:23px;height:2px;background:currentColor;margin:5px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;border:1px solid transparent;border-radius:5px;padding:14px 21px;font-size:.85rem;line-height:1.5;font-weight:600;transition:background .2s,border-color .2s,transform .2s}
.btn>span{font-size:1.1rem;line-height:1}
.btn-primary{background:linear-gradient(105deg,#5bd4e1,#69e0b1);color:#05232c}
.btn-primary:hover{background:linear-gradient(105deg,#80e1eb,#8beac6);transform:translateY(-2px)}
.btn-outline{border-color:#78bdc044;background:#0b283330;color:#dfedf0}
.btn-outline:hover{border-color:#88d6d0;background:#12303d}
.button-row{display:flex;gap:12px;flex-wrap:wrap}
.quiet-link{display:inline-flex;align-items:center;gap:16px;font-size:.82rem;font-weight:500;color:#8cd9d5}
.quiet-link:hover{color:#d7f9ed}
.studio-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 80% 55%,#0d3f4b40,transparent 55%),linear-gradient(130deg,#061522,#041019)}
.studio-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px;min-height:700px}
.studio-hero-copy{padding:80px 0}
.studio-hero h1{margin:25px 0 25px;font-size:clamp(3.4rem,5.4vw,5rem);font-weight:500;line-height:1.06}
.studio-hero h1>span{color:#65dbe2}
.studio-hero-copy>p{font-size:1.02rem;line-height:1.9;max-width:510px;margin-bottom:30px}
.hero-signature{display:flex;align-items:center;gap:12px;color:#829fab;font-size:.7rem;margin-top:28px}
.hero-signature>span{height:1px;width:28px;background:#58bda8}
.architecture-art{position:relative;min-width:0}
.architecture-art img{width:100%;height:auto}
.art-caption{display:flex;justify-content:space-around;padding:0 10px 20px;font-size:.5rem;letter-spacing:.2em;color:#729aa8}
.studio-section{padding:100px 0}
.section-intro{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px}
.section-intro h2{margin:15px 0 0}
.section-intro>p{max-width:370px;font-size:.95rem;line-height:1.85;margin:0}
.expertise-section{background:#06141e}
.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.expertise-card{display:flex;flex-direction:column;padding:28px 24px;border:1px solid #7bb7c02d;background:linear-gradient(140deg,#0b2230b3,#061722cc);border-radius:7px}
.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}
.card-top svg{width:28px;height:28px;color:#65cbd4}
.card-top>span{font-size:.6rem;color:#698d9c;letter-spacing:.08em}
.expertise-card h3{font-size:1.38rem;min-height:52px;line-height:1.25;margin-bottom:18px;color:#e4eef1}
.expertise-card p{font-size:.85rem;line-height:1.9}
.card-value{font-size:.69rem;line-height:1.8;color:#8fbebf;margin-top:auto;padding-top:13px}
.expertise-card .quiet-link{font-size:.69rem;padding-top:25px;margin-top:25px;border-top:1px solid var(--line);gap:12px}
.section-foot{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:30px}
.section-foot p{font-size:.82rem;margin:0}
.process-panel{padding:45px;border:1px solid var(--line);background:radial-gradient(ellipse at 100% 100%,#0d483c26,transparent 65%),#071923;border-radius:9px}
.process-panel .section-intro{margin-bottom:45px}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}
.process-step{padding-top:24px;border-top:1px solid #75bfc14a}
.step-number{font-size:.65rem;letter-spacing:.14em;color:#6cc7c2}
.process-step h3{font-size:1.8rem;margin:20px 0 15px}
.process-step p{font-size:.87rem;line-height:1.9;margin-bottom:0}
.process-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:38px;border-top:1px solid var(--line);padding-top:27px}
.process-bottom>span{font-size:.75rem;color:#acc5cc}
.process-bottom b{margin:0 18px;color:#61bcb4;font-weight:400}
.experience-section{padding-top:5px}
.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}
.experience-copy h2{margin:15px 0 25px}
.experience-copy p{font-size:.94rem;line-height:1.9}
.experience-copy .btn{margin-top:14px}
.experience-item{display:flex;gap:25px;padding:25px 0;border-top:1px solid var(--line)}
.experience-item:first-child{padding-top:0;border-top:0}
.experience-item>span{color:#64bcb9;font-size:.62rem;padding-top:5px}
.experience-item h3{font-size:1.3rem;margin-bottom:9px}
.experience-item p{font-size:.85rem;line-height:1.85;margin:0;max-width:410px}
.studio-cta{padding:0 0 85px}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid #7cbdbb38;padding:36px 40px;background:linear-gradient(110deg,#0a2330,#0a2428);border-radius:7px}
.cta-inner h2{font-size:1.65rem;margin:0 0 10px}
.cta-inner p{font-size:.87rem;margin:0;max-width:660px}
.cta-inner .btn{flex-shrink:0}
.footer{border-top:1px solid var(--line);padding:40px 0;background:#030d15}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:35px}
.footer .brand-image{width:202px}
.footer p{font-size:.64rem;margin:14px 0 0;color:#7997a4}
.footer-end{display:flex;align-items:center;gap:25px;flex-wrap:wrap;font-size:.73rem;color:#9cb2bd}
.footer-end a:hover{color:#8ee0d4}
.footer-end>span{font-size:.65rem}
.studio-page-hero{padding:90px 0 85px;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 90% 100%,#10504630,transparent 60%),#061721}
.studio-page-hero h1{margin:22px 0 26px;font-size:clamp(3rem,5vw,4.6rem)}
.studio-page-hero p{font-size:1.14rem;max-width:670px;margin:0}
.narrow{max-width:1280px}
.about-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px}
.about-story-grid h2{margin-top:18px}
.story-body p{font-size:.95rem;line-height:1.95}
.story-body .lead{font-size:1.15rem;color:#c5d7df}
.story-body .quiet-link{margin-top:18px}
.about-values{background:#061722;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}
.values-grid article{padding-top:25px;border-top:1px solid #78b7be44}
.values-grid article>span{font-size:.62rem;color:#70bdb9;letter-spacing:.12em}
.values-grid h3{margin:24px 0 17px;font-size:1.5rem}
.values-grid p{font-size:.9rem;line-height:1.9;margin:0}
.about-capability{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px;align-items:start}
.about-capability h2{margin-top:18px}
.about-capability p{font-size:1rem;line-height:1.9}
.contact-page-hero{padding:75px 0}
.contact-page-hero h1{max-width:800px}
.contact-page-hero p{max-width:650px}
.studio-contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px;align-items:start}
.enquiry-aside h2{margin:16px 0 22px;font-size:2.8rem}
.enquiry-aside>p{font-size:.94rem;line-height:1.9}
.next-steps{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.next-steps h3{font-size:1.1rem}
.next-steps ol{list-style:none;padding:0;margin:20px 0}
.next-steps li{display:flex;align-items:start;gap:18px;margin:16px 0;font-size:.82rem;color:#a7bbc5}
.next-steps li>span{font-size:.6rem;color:#69bcb6;padding-top:3px}
.enquiry-aside .aside-note{font-size:.74rem;color:#7f9da9;margin-top:36px}
.contact-form{padding:38px;border:1px solid #76bcc03b;background:linear-gradient(140deg,#0b2431cc,#071923);border-radius:8px}
.form-heading h2{font-size:1.8rem;margin-bottom:12px}
.form-heading p{font-size:.82rem;line-height:1.8;margin-bottom:30px}
.contact-form fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}
.contact-form legend{padding:0;margin-bottom:20px;font-size:.6rem;letter-spacing:.16em;color:#83c6c5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;font-size:.81rem;color:#cbdde3;margin-bottom:20px}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;min-width:0;margin-top:9px;padding:13px 14px;border:1px solid #7baebc40;border-radius:4px;background:#04131f99;color:#e3f1f3;font-size:.86rem}
.contact-form textarea{resize:vertical;min-height:160px;line-height:1.8}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#718e9d;opacity:1}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#80d8cc}
.field-help{font-size:.7rem;line-height:1.8;margin:-8px 0 0;color:#809eab}
.contact-form .honeypot{display:none}
.contact-form .consent{display:flex;align-items:start;gap:12px;font-size:.74rem;color:#9db8c2;line-height:1.85}
.consent input{flex-shrink:0;width:17px;height:17px;margin:3px 0 0;accent-color:#62d4b5}
.form-bottom{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:8px}
.form-bottom>p{font-size:.8rem;margin:0;flex:1;min-width:170px}
#form-status.success{color:#81e6bd}
#form-status.error{color:#ffb8b8}
button:disabled{opacity:.6;cursor:wait}
@media(max-width:1100px){.studio-hero-grid{gap:20px}.studio-hero h1{font-size:4.3rem}.nav-action{display:none}.expertise-grid{grid-template-columns:1fr 1fr}.expertise-card h3{min-height:0}.expertise-card{padding:30px}.experience-grid,.about-story-grid,.about-capability{gap:55px}.studio-contact-grid{gap:45px;grid-template-columns:.8fr 1.2fr}.contact-form{padding:30px}.form-row{grid-template-columns:1fr;gap:0}.section-intro{gap:40px}.cta-inner{padding:32px}}
@media(max-width:850px){.studio-hero-grid{grid-template-columns:1.05fr .95fr;min-height:650px}.studio-hero h1{font-size:3.5rem}.studio-hero .button-row{align-items:start;flex-direction:column}.studio-hero-copy>p{font-size:.93rem}.art-caption{font-size:.38rem;letter-spacing:.12em}.process-panel{padding:32px}.process-grid{gap:25px}.process-step p{font-size:.82rem}.experience-grid{gap:40px}.studio-contact-grid{grid-template-columns:1fr}.enquiry-aside{max-width:620px}.next-steps{margin-top:25px}.form-row{grid-template-columns:1fr 1fr;gap:18px}.contact-form{padding:38px}.cta-inner{align-items:start;flex-direction:column;gap:25px}.section-intro{align-items:start;flex-direction:column;gap:25px}.section-intro>p{max-width:600px}}
@media(max-width:750px){.wrap{padding-inline:23px}.nav-wrap{height:83px}.brand-image{width:205px}.nav-toggle{display:block}.navlinks{display:none;position:absolute;left:0;right:0;top:83px;padding:20px 23px;background:#04131f;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:6px}.navlinks.open{display:flex}.navlinks a.active::after{right:auto;width:35px}.studio-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}.studio-hero-copy{padding:60px 0 10px}.studio-hero h1{font-size:clamp(3.15rem,9.5vw,4.7rem);margin-top:22px}.studio-hero-copy>p{max-width:570px;font-size:1rem}.studio-hero .button-row{flex-direction:row;align-items:stretch}.architecture-art{max-width:480px;width:100%;margin:0 auto}.architecture-art img{margin-top:-25px}.art-caption{font-size:.44rem;padding-bottom:30px}.studio-section{padding:70px 0}.expertise-card{padding:27px}.expertise-card h3{font-size:1.45rem}.process-panel{padding:28px}.process-grid{grid-template-columns:1fr;gap:30px}.process-step h3{margin:13px 0;font-size:1.65rem}.process-step p{font-size:.9rem}.process-bottom{align-items:start;flex-direction:column;gap:22px}.experience-section{padding-top:0}.experience-grid{grid-template-columns:1fr;gap:45px}.experience-item:first-child{border-top:1px solid var(--line);padding-top:25px}.studio-cta{padding-bottom:65px}.section-foot{align-items:start;flex-direction:column;gap:20px}.footer-grid{align-items:start;flex-direction:column;gap:30px}.footer-end{gap:22px}.studio-page-hero{padding:65px 0}.studio-page-hero h1{font-size:clamp(2.75rem,8.4vw,4rem)}.studio-page-hero p{font-size:1.04rem}.about-story-grid,.about-capability{grid-template-columns:1fr;gap:20px}.values-grid{grid-template-columns:1fr;gap:35px}.values-grid h3{margin-top:18px}.studio-contact-grid{gap:35px}.contact-form{padding:30px}.enquiry-aside h2{font-size:2.5rem}.contact-page-hero{padding:60px 0}}
@media(max-width:500px){.expertise-grid{grid-template-columns:1fr;gap:18px}.expertise-card{padding:30px}.expertise-card p{font-size:.93rem}.expertise-card h3{font-size:1.65rem;max-width:280px}.card-top{margin-bottom:28px}.card-value{font-size:.73rem}.expertise-card .quiet-link{font-size:.78rem}.studio-hero .button-row{flex-direction:column}.studio-hero .btn{width:100%}.studio-hero-copy{padding-top:48px}.eyebrow{font-size:.58rem;letter-spacing:.13em}.hero-signature{font-size:.67rem}.architecture-art img{margin-top:-5px}.studio-hero h1{font-size:3.25rem}.cta-inner{padding:28px}.cta-inner .btn{width:100%}.process-panel{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:26px 22px}.contact-content{padding-top:50px}.footer-end>span{width:100%}}
@media(max-width:360px){.studio-hero h1{font-size:2.85rem}.studio-page-hero h1{font-size:2.6rem}.brand-image{width:190px}.btn{padding:14px 17px;font-size:.8rem}.process-panel{padding:23px}.wrap{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Reference-matched cinematic hero photography. Content below is unchanged. */
.reference-hero{position:relative;background-color:#03101e;background-repeat:no-repeat;isolation:isolate}
.reference-home{background-image:linear-gradient(90deg,#03101ee6 0%,#03101e66 34%,transparent 58%),url('/assets/reference-hero-home.jpg');background-position:center,right center;background-size:100% 100%,auto 100%}
.reference-home .studio-hero-grid{grid-template-columns:1fr;min-height:700px}
.reference-home .studio-hero-copy{max-width:550px;padding:72px 0;position:relative;z-index:1}
.reference-home .studio-hero-copy>p{max-width:495px;color:#bdced8}
.reference-home h1{font-size:clamp(3.4rem,5.4vw,5rem)}
.reference-home .eyebrow{color:#79d0d2}
.reference-home .hero-signature{color:#9bb9c5}
.reference-about{background-image:linear-gradient(90deg,#03101eee 0%,#03101e99 35%,#03101e10 65%),url('/assets/reference-hero-about.jpg');background-position:center,right center;background-size:100% 100%,auto 100%;min-height:510px;display:flex;align-items:center}
.reference-contact{background-image:linear-gradient(90deg,#03101eee 0%,#03101e99 35%,transparent 65%),url('/assets/reference-hero-contact.jpg');background-position:center,right center;background-size:100% 100%,auto 100%;min-height:500px;display:flex;align-items:center}
.reference-about>.wrap,.reference-contact>.wrap{width:100%;position:relative;z-index:1}
.reference-about h1,.reference-contact h1{max-width:650px;font-size:clamp(3rem,4.7vw,4.4rem)}
.reference-about p,.reference-contact p{max-width:500px;font-size:1.06rem;color:#c1d0d8}
.reference-about{padding:75px 0}
.reference-contact{padding:70px 0}
.mobile-reference-image{display:none}
@media(min-width:1500px){.reference-home .studio-hero-grid{min-height:740px}.reference-about,.reference-contact{background-size:100% 100%,auto 115%}}
@media(max-width:1100px) and (min-width:751px){.reference-home .studio-hero-copy{max-width:490px}.reference-home h1{font-size:4.1rem}.reference-home .studio-hero-grid{min-height:660px}.reference-home{background-position:center,65% center}.reference-home .studio-hero-copy>p{max-width:420px}.reference-about h1,.reference-contact h1{font-size:3.5rem;max-width:570px}.reference-about p,.reference-contact p{max-width:440px}.reference-about,.reference-contact{background-position:center,60% center}}
@media(max-width:750px){
.reference-hero{background-image:none!important;display:block;min-height:0;padding:0;overflow:hidden}
.reference-home .studio-hero-grid{min-height:0;display:block}
.reference-home .studio-hero-copy{max-width:none;padding:50px 0 25px}
.reference-home h1{font-size:clamp(3.15rem,9.5vw,4.7rem)}
.reference-home .studio-hero-copy>p{max-width:570px}
.reference-about>.wrap,.reference-contact>.wrap{padding-top:55px;padding-bottom:20px}
.reference-about h1,.reference-contact h1{font-size:clamp(2.75rem,8.4vw,4rem);max-width:650px}
.reference-about p,.reference-contact p{font-size:1.04rem;max-width:600px}
.mobile-reference-image{display:block;width:100%;height:300px;object-fit:cover;object-position:right center;mask-image:linear-gradient(to bottom,transparent 0%,black 12%);margin-top:-8px}
.reference-home .mobile-reference-image{height:340px;object-position:90% center}
.reference-about .mobile-reference-image{object-position:85% center}
.reference-contact .mobile-reference-image{object-position:90% center}
}
@media(max-width:500px){.reference-home h1{font-size:3.25rem}.reference-home .mobile-reference-image{height:300px}.mobile-reference-image{height:270px}.reference-about>.wrap,.reference-contact>.wrap{padding-top:48px}.reference-home .studio-hero-copy{padding-top:48px}}
@media(max-width:360px){.reference-home h1{font-size:2.85rem}.reference-about h1,.reference-contact h1{font-size:2.6rem}.mobile-reference-image{height:245px}}

@media(min-width:751px){.reference-about,.reference-contact{background-size:100% 100%,cover}}
