:root{--bg:#111014;--panel:#19171e;--ink:#f6f3f8;--muted:#b8b1c0;--purple:#ac78f5;--line:#37313f;--light:#f0ece6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--purple)}img{display:block;width:100%;object-fit:cover;height:100%}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(48px,6.8vw,96px)}h2{font-size:clamp(36px,4.1vw,58px)}h3{font-size:25px;letter-spacing:-.025em}p{color:var(--muted)}.skip{position:absolute;left:20px;top:-80px;z-index:100;background:white;color:black;padding:12px}.skip:focus{top:10px}.preview-banner{background:#282131;text-align:center;padding:8px 20px;font-size:10px;letter-spacing:.16em;color:#e2cfff}.preview-banner span{letter-spacing:.02em;margin-left:15px;color:#c8bdcf}header{height:102px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:var(--bg)}.brand{display:flex;align-items:center;gap:13px;letter-spacing:.24em;font-size:21px}.brand small{display:block;font-size:9px;letter-spacing:.4em;color:var(--muted)}.brand-mark{display:grid;place-items:center;border:1px solid var(--purple);width:46px;height:49px;color:var(--purple);font-size:28px;letter-spacing:0;font-weight:300}nav{display:flex;align-items:center;gap:30px;font-size:13px}nav>a:not(.button):hover,summary:hover{color:var(--purple)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{margin-left:8px}.services-menu{position:relative}.services-menu>div{position:absolute;top:40px;left:-25px;width:270px;padding:15px;background:#201b27;border:1px solid var(--line);box-shadow:0 15px 40px #0009}.services-menu a{display:block;padding:9px 12px}.services-menu a:hover{background:#352940}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--purple);color:#151018;border:0;padding:17px 23px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.button:hover{background:#c8a3ff}.button.small{padding:13px 18px}.button.light{background:#f5effb}.button.outline{border:1px solid #857590;background:transparent;color:white}.button.outline:hover{background:#3c2a4b}.text-link{font-size:13px;border-bottom:1px solid #746b7c;padding-bottom:7px;display:inline-block}.menu-toggle{display:none}.hero{position:relative;min-height:690px;display:flex;align-items:center;isolation:isolate}.hero-photo,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-photo{object-position:center 56%}.hero-shade{z-index:-1;background:linear-gradient(90deg,#0d0a11e8 0%,#0d0a1188 52%,#0d0a1122 100%),linear-gradient(0deg,#100d17c9,transparent 30%)}.hero-copy{padding:75px 7% 100px;max-width:1000px}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:600;color:var(--purple);margin-bottom:24px}.hero h1{margin-bottom:26px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:#ccabf7}.hero-copy>p:not(.eyebrow){max-width:490px;color:#e0d8e5;font-size:15px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.hero-bottom{position:absolute;bottom:25px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em;color:#d0c6d4}.hero-bottom span:last-child{letter-spacing:.04em;color:#bdb3c4}.principles{display:flex;justify-content:space-around;gap:15px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:23px 5%;font-size:11px;color:#d1c7d8}.principles span:before{content:'✦';color:var(--purple);padding-right:12px}.section{padding:100px 7%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:45px}.section-heading h2{margin:0}.section-heading>p{max-width:310px;font-size:13px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 24px}.card-image{height:240px;position:relative;overflow:hidden;background:var(--panel)}.card-image img{transition:transform .5s}.service-card:hover img{transform:scale(1.035)}.image-tag{position:absolute;left:13px;bottom:12px;padding:4px 7px;background:#14101ac4;color:#e8deed;font-size:8px;letter-spacing:.12em}.card-arrow{position:absolute;right:12px;top:12px;background:#15101ab0;display:grid;place-items:center;width:35px;height:35px;border:1px solid #ffffff55}.card-title{display:flex;align-items:center;gap:15px;padding-top:18px}.card-title h3{font-size:22px;margin:0}.number{color:var(--purple);font-size:10px}.service-grid .service-card:last-child{grid-column:auto}.story{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;background:#1a171e;max-width:none}.story-photo{height:550px;position:relative}.story-copy{max-width:425px}.story-copy p{font-size:14px}.story-copy h2{margin-bottom:27px}.story-copy .text-link{margin-top:20px}.process{padding-top:100px;padding-bottom:110px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.steps article{border-top:1px solid #4b3c59;padding-top:25px}.steps article>span{font-size:10px;letter-spacing:.12em;color:var(--purple);display:block;margin-bottom:35px}.steps p{font-size:13px}.inspiration-band{display:grid;grid-template-columns:1fr 1.1fr;background:#24202a}.inspiration-band>div{padding:75px 14%}.inspiration-band>img{min-height:450px;max-height:540px}.caption{font-size:11px!important;color:#bdb3c6;margin-top:22px}.closing{background:#6e419d;padding:70px 7%;display:flex;align-items:center;justify-content:space-between;gap:30px}.closing .eyebrow{color:#ebd9ff}.closing h2{margin:0;font-size:clamp(40px,4.3vw,64px)}footer{padding:65px 7% 25px;display:grid;grid-template-columns:1fr auto;gap:35px}.footer-brand{font-size:24px;letter-spacing:.2em}.footer-brand span{font-size:10px;letter-spacing:.18em;color:var(--purple)}footer p{font-size:11px;margin:14px 0}.footer-links{display:flex;gap:25px;font-size:12px}.fine{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;color:#93899e;font-size:10px;line-height:2}.fine a{margin-left:20px}.page-title{font-size:clamp(48px,6vw,80px);margin-bottom:25px}.intro{font-size:17px;max-width:630px;margin-bottom:45px}.service-hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:70px 7% 75px;align-items:center}.service-hero h1{font-size:clamp(42px,4.8vw,67px);margin-bottom:25px}.service-hero p:not(.eyebrow){font-size:15px}.service-hero figure{margin:0;align-self:stretch;display:flex;flex-direction:column}.service-hero figure img{min-height:460px;flex:1;object-fit:cover}.service-hero figcaption{font-size:9px;padding-top:10px;color:var(--muted)}.breadcrumb{display:block;font-size:11px;color:var(--muted);margin-bottom:45px}.scope{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:var(--panel);max-width:none}.scope p{max-width:460px;font-size:14px}.scope ul{list-style:none;margin:0;padding:0}.scope li{padding:22px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:16px}.scope li span{color:var(--purple)}.expectations h2{max-width:650px;margin-bottom:45px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.filters button{border:1px solid var(--line);background:transparent;color:white;border-radius:30px;padding:10px 20px;font-size:12px;cursor:pointer}.filters .selected{background:var(--purple);color:#17101f;border-color:var(--purple)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.gallery-grid figure{margin:0}.gallery-grid img{height:340px}.gallery-grid figcaption{display:flex;justify-content:space-between;align-items:center;font-size:16px;padding:16px 0}.gallery-grid small{font-size:8px;color:var(--muted);letter-spacing:.1em}.project-note{border:1px solid var(--line);padding:40px;margin-top:65px}.project-note h2{font-size:32px}.project-note p{margin:0;font-size:14px}.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;padding-top:80px}.contact .intro{font-size:15px}.contact-area{border-top:1px solid var(--line);padding-top:30px;margin-top:55px}.contact-area>span{font-size:10px;letter-spacing:.15em;color:var(--purple)}.contact-area h3{font-size:22px;margin:12px 0}.contact-area p{font-size:12px;max-width:280px}.draft-note{border-left:2px solid var(--purple);padding:5px 0 5px 15px;font-size:12px;max-width:320px;margin-top:35px}form{padding:35px;background:var(--panel)}label{display:block;font-size:12px;margin-bottom:22px;color:#e1d8e8}label>span{color:#a69aae}input,textarea,select{display:block;width:100%;background:#100e13;border:1px solid #49404f;color:white;padding:14px;margin-top:9px;border-radius:0;font-size:13px}input:focus,textarea:focus,select:focus{outline:1px solid var(--purple)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9e93a6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--purple)}.check span{font-size:11px;color:#c8bdcf}.form-result{margin-top:25px;padding:20px;border:1px solid var(--purple);overflow-wrap:anywhere}.form-result h3{font-size:22px}.form-result p{font-size:12px}.prose{max-width:950px;min-height:65vh}.prose p{font-size:16px;line-height:1.9}[hidden]{display:none!important}@media(min-width:1400px){.hero{min-height:760px}.card-image{height:290px}}@media(max-width:1000px){nav{gap:20px}.brand{font-size:17px;gap:10px}.section{padding:75px 6%}.card-image{height:200px}.card-title h3{font-size:18px}.story{gap:6%}.story-photo{height:460px}.service-hero{gap:5%;padding:55px 6%}.service-hero figure img{min-height:400px}.contact{gap:5%}form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:720px){.preview-banner{font-size:8px}.preview-banner span{display:block;margin:3px 0 0;font-size:8px}header{height:80px;padding:0 6%}.brand{font-size:17px}.brand-mark{width:36px;height:39px;font-size:23px}.menu-toggle{display:block;color:white;background:transparent;border:1px solid var(--line);width:39px;height:38px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#16121b;padding:25px 6%;align-items:stretch;flex-direction:column;gap:20px;border-bottom:1px solid var(--line)}nav.open{display:flex}.services-menu>div{position:static;margin-top:15px;width:auto;box-shadow:none}.hero{min-height:660px}.hero-copy{padding:60px 6% 95px}.hero h1{font-size:54px}.hero-copy>p:not(.eyebrow){font-size:14px;max-width:380px}.hero-shade{background:linear-gradient(90deg,#100d16d9,#100d1666),linear-gradient(0deg,#100d16cc,transparent)}.hero-actions{gap:20px;align-items:flex-start;flex-direction:column}.hero-bottom{left:6%;right:6%;font-size:8px;gap:15px}.hero-bottom span:last-child{display:none}.principles{display:grid;grid-template-columns:1fr 1fr;padding:22px 6%;font-size:9px;gap:16px}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.service-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.card-image{height:180px}.card-title{gap:8px;padding-top:12px}.card-title h3{font-size:17px}.image-tag{font-size:6px;left:8px;bottom:8px}.card-arrow{width:27px;height:27px;top:8px;right:8px}.story{grid-template-columns:1fr;gap:35px}.story-photo{height:370px}.story-copy{max-width:none}.steps{grid-template-columns:1fr;gap:22px}.steps article>span{margin-bottom:18px}.steps h3{font-size:23px}.inspiration-band{grid-template-columns:1fr}.inspiration-band>div{padding:55px 6%}.inspiration-band>img{height:330px;min-height:0}.closing{padding:50px 6%;flex-direction:column;align-items:flex-start;gap:30px}.closing h2{font-size:45px}footer{padding:45px 6% 20px;grid-template-columns:1fr;gap:25px}.footer-links{flex-wrap:wrap}.fine{grid-column:auto}.service-hero{grid-template-columns:1fr;padding:45px 6%;gap:40px}.service-hero h1{font-size:48px}.service-hero figure img{min-height:0;height:350px}.breadcrumb{margin-bottom:30px}.scope{grid-template-columns:1fr;gap:20px}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:300px}.project-note{padding:25px}.contact{grid-template-columns:1fr;gap:30px}.contact-area{margin-top:30px}.form-row{grid-template-columns:1fr}.page-title{font-size:54px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Explicit hero height keeps the cover image full height on hosting browsers. */
.hero{height:clamp(650px,53vw,800px);min-height:0}.hero-photo{height:100%;width:100%}.footer-links{flex-wrap:wrap;max-width:550px}@media(max-width:720px){.hero{height:700px}.hero-copy{max-width:100%}.hero h1{font-size:clamp(42px,8vw,54px)}}
