:root{--ink:#202936;--paper:#f7f9fc;--muted:#606f80;--line:#d8e1ed;--accent-soft:#d7e7fc;--accent:#315d96}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #447bbf;outline-offset:4px}.skip{position:absolute;top:-100px;background:white;padding:15px;z-index:99}.skip:focus{top:0}.preview{padding:8px 5%;background:#e8eff8;font:10px/1.6 monospace;letter-spacing:1px;text-align:center}.preview span{margin-left:14px;letter-spacing:0}header{min-height:102px;display:flex;align-items:center;justify-content:space-between;padding:20px 5%;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:20px;font-weight:750;letter-spacing:-1px}.brand b{font-weight:400}.brand small{display:block;font:8px/1.5 monospace;letter-spacing:2px;margin-top:4px}.brand-icon{font-size:36px;line-height:10px;transform:rotate(-5deg);margin-bottom:10px}nav{display:flex;gap:25px;align-items:center;font-size:12px}nav a[aria-current=page]:not(.button){text-decoration:underline;text-underline-offset:7px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:white;padding:16px 24px;border:1px solid var(--ink);font-size:13px;font-weight:600;transition:background .15s}.button:hover{background:#315d96}.button span{font-size:20px;font-weight:400}.button.small{padding:11px 16px;font-size:12px;gap:18px}.wide{width:100%}.secondary{padding:15px 22px;border:1px solid var(--line);background:transparent}.menu{display:none}main>section,main>.services-grid,main>.process,main>.notice,main>.quote-layout{margin-left:5%;margin-right:5%}section{padding:75px 0}h1,h2,h3,p{margin:0}h1{font-size:clamp(52px,6.8vw,100px);font-weight:500;letter-spacing:-5px;line-height:1.02}h2{font-size:clamp(32px,3.3vw,48px);font-weight:500;letter-spacing:-2px;line-height:1.13}h3{font-size:23px;font-weight:500;letter-spacing:-.6px;line-height:1.3}p{color:var(--muted);margin:18px 0;font-size:15px}.eyebrow{font:10px/1.5 monospace;letter-spacing:1.7px;margin-bottom:24px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#447bbf;margin-right:8px}.hero{display:grid;grid-template-columns:1fr 1fr;padding:0;min-height:575px}.hero-copy{padding:64px 45px 28px 0}.hero h1 em{font-style:normal;color:#447bbf}.hero-copy>p{margin:27px 0 30px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.text-link{font-size:13px;border-bottom:1px solid #a4b9d4;padding-bottom:5px}.hero-bottom{display:flex;justify-content:space-between;margin-top:65px;border-top:1px solid var(--line);padding-top:20px;font:9px monospace;letter-spacing:1.2px}.hero-art{background:#20334d;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.part{width:100%;height:auto;display:block}.art-caption{display:flex;justify-content:space-between;color:#b4c9e4;font:9px monospace;letter-spacing:1px;padding:20px 30px}.upload-strip{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-bottom:1px solid var(--line);align-items:center}.dropzone{text-align:center;border:1px dashed #8ba9cd;background:#eef4fc;padding:26px 18px}.dropzone.dragging{background:#d7e7fc;border-color:#315d96}.upload-icon{display:block;font-size:28px;line-height:1;margin-bottom:12px}.dropzone h3{font-size:20px}.dropzone p{font-size:12px;margin:8px 0 14px}.dropzone small{display:block;font-size:10px;line-height:1.8;color:#5d7088;margin-top:14px}.browse{position:relative;display:inline-block!important;background:white;border:1px solid #c7d5e6;padding:8px 22px;font-size:12px!important;margin:0!important;overflow:hidden;cursor:pointer}.browse input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.browse:focus-within{outline:3px solid #447bbf}.file-note{font-size:10px;margin:10px 0 16px}.file-list{list-style:none;padding:0;margin:0}.file-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#e8eff8;border-top:2px solid var(--paper);gap:10px}.file-list b{font-size:12px;word-break:break-all}.file-list small{display:block;font-size:10px;color:var(--muted)}.file-list button{border:0;background:transparent;font-size:24px;min-width:40px;min-height:40px}.error{color:#9a3527;font-size:13px;overflow-wrap:anywhere}.error:not(:empty){padding:14px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:38px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:28px 30px 32px 0}.service+.service{border-left:1px solid var(--line);padding-left:30px}.service-top{display:flex;justify-content:space-between;font:12px monospace;margin-bottom:40px}.service:hover h3{text-decoration:underline;text-underline-offset:6px}.service p{font-size:14px;min-height:88px}.service small{font:10px/1.8 monospace;color:#61738a}.workflow{border-bottom:1px solid var(--line)}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:38px;margin-top:44px}.number{display:block;font:13px monospace;color:#376aa8;border-top:1px solid #b8cbe4;padding-top:15px;margin-bottom:28px}.process h3{font-size:20px}.process p{font-size:13px}.cta{margin-top:60px;margin-bottom:60px;background:var(--accent-soft);padding:55px!important;position:relative}.cta .button{position:absolute;right:55px;bottom:55px}footer{margin:0 5%;padding:50px 0 25px;display:grid;grid-template-columns:1fr 1fr;gap:35px;border-top:1px solid var(--line)}footer p{font-size:12px}footer>div:nth-child(2){display:flex;gap:10px;flex-direction:column;align-items:flex-end;font-size:12px}.footnote{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:20px;border-top:1px solid var(--line);font:10px monospace;color:var(--muted)}.page-intro{padding:65px 0 50px}.page-intro h1{font-size:clamp(48px,5.7vw,80px);letter-spacing:-3px}.page-intro p{max-width:620px;margin-top:25px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.split p:first-child{margin-top:0}.split .button{margin-top:15px}.faq{max-width:850px;padding-top:90px}.faq h2{margin-bottom:35px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:17px}details p{max-width:720px}.notice{padding:20px 24px;background:#e8eff8;border-left:3px solid #447bbf;font-size:13px}.notice p{font-size:13px;margin-bottom:0}.portfolio{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.study{background:#20334d;margin-bottom:20px}.study-1{filter:grayscale(.8)}.study-2{filter:hue-rotate(30deg)}.portfolio small{font:9px monospace;letter-spacing:1px}.portfolio h3{margin-top:12px}.about{align-items:center}.about-art{background:#20334d}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:10px;padding-bottom:100px}.contact-grid article{border-top:1px solid var(--line);padding-top:30px}.email{display:block;margin-top:30px;font-size:clamp(15px,2vw,25px);text-decoration:underline;overflow-wrap:anywhere}.quote-layout{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-bottom:80px}.step-list{list-style:none;padding:0;margin:0 0 35px}.step-list li{padding:17px 0;border-bottom:1px solid var(--line);font:12px monospace;color:#657890}.step-list span{margin-left:20px}.step-list .active{color:var(--ink);font-weight:bold}.quote-layout aside>a{font-size:12px;overflow-wrap:anywhere}.quote-layout aside>p{font-size:12px;margin-bottom:5px}.form-head{margin-bottom:30px}.form-head h2{font-size:32px}.form-head .eyebrow{margin-bottom:12px}form label{display:block;font-size:13px;margin:23px 0}label>span:not(.checkbox span){color:#376aa8}input:not([type=checkbox],[type=file]),textarea,select{display:block;background:#fff;border:1px solid #c7d5e6;border-radius:0;width:100%;padding:12px;margin-top:8px;font-size:14px;color:var(--ink)}textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field-row label{margin-bottom:0}.muted{font-size:12px}.review{background:#e8eff8;padding:24px}.review h3{display:flex;align-items:center;justify-content:space-between}.review p{font-size:13px}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.text-button{border:0;background:transparent;text-decoration:underline;font-size:13px}.checkbox{display:flex;align-items:flex-start;gap:12px}.checkbox input{width:18px;height:18px;flex-shrink:0;margin-top:3px}.checkbox span{font-size:12px}.honeypot{position:absolute!important;left:-9999px!important}.receipt{max-width:850px;padding-top:0}.receipt a:not(.button){text-decoration:underline}.receipt .actions{margin-top:30px}button:disabled{opacity:.5;cursor:wait}
@media(min-width:1500px){body{max-width:1600px;margin:auto}}@media(max-width:1100px){nav{gap:14px;font-size:11px}.brand{font-size:17px}header{gap:15px}.hero-copy{padding-right:25px}.hero h1{font-size:78px}.hero .actions{gap:16px}.upload-strip{gap:40px}.quote-layout{gap:40px}.service small{font-size:9px}}
@media(max-width:800px){header{min-height:83px;position:relative}.menu{display:flex;gap:15px;border:0;background:transparent;padding:10px;font-size:13px}nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--paper);padding:24px 5%;border-bottom:1px solid var(--line);align-items:stretch;font-size:15px;box-shadow:0 15px 20px #20293615}nav.open{display:flex;flex-direction:column}nav a{padding:9px 0}.hero{grid-template-columns:1fr 1fr;min-height:450px}.hero h1{font-size:62px}.hero-copy{padding-top:40px}.hero-copy p{font-size:13px}.hero .text-link{display:none}.hero-bottom{margin-top:40px;font-size:8px}.hero-art .part{width:125%;margin-left:-12%}.art-caption{font-size:7px;padding:15px}.services-grid{grid-template-columns:1fr}.service,.service+.service{border-left:0;padding:25px 0;border-bottom:1px solid var(--line)}.service:last-child{border-bottom:0}.service-top{margin-bottom:20px}.service p{min-height:0;max-width:580px}.process{grid-template-columns:1fr 1fr}.portfolio{gap:18px;grid-template-columns:1fr 1fr}.portfolio article:last-child{grid-column:1/-1;max-width:50%}.quote-layout{grid-template-columns:1fr;gap:30px}.step-list{display:flex;gap:30px;margin-bottom:20px}.quote-layout aside>p,.quote-layout aside>a{display:none}.split{gap:35px}.cta{padding:35px!important}.cta .button{right:35px;bottom:35px}.contact-grid{gap:30px}}
@media(max-width:540px){.preview{font-size:9px;padding:8px 12px}.preview span{display:block;margin-left:0;letter-spacing:0;font-size:9px}.hero{grid-template-columns:1fr}.hero-copy{padding:38px 0 25px}.hero h1{font-size:76px;letter-spacing:-4px}.hero-copy>p{font-size:14px}.hero-bottom{margin-top:32px}.hero-art{min-height:300px}.hero-art .part{width:100%;max-height:300px;margin:0}.art-caption{padding:14px 20px}.hero .text-link{display:inline-block}.eyebrow{font-size:9px;margin-bottom:18px}section{padding:46px 0}.upload-strip,.split,.contact-grid{grid-template-columns:1fr;gap:30px}.upload-strip h2 br{display:none}.upload-strip p br{display:none}.section-head{align-items:start;flex-direction:column;margin-bottom:25px}.process{gap:22px}.process h3{font-size:18px}.process p{font-size:12px}.cta{margin-top:30px;margin-bottom:35px;padding:30px!important}.cta .button{position:static;margin-top:25px}.cta h2{font-size:38px}.page-intro{padding:40px 0 30px}.page-intro h1{font-size:48px;letter-spacing:-2.5px}.page-intro p{font-size:14px}.portfolio{grid-template-columns:1fr}.portfolio article:last-child{grid-column:auto;max-width:none}.contact-grid{padding-bottom:60px}.field-row{grid-template-columns:1fr;gap:0}.form-head h2{font-size:28px}.quote-layout{padding-bottom:45px}footer{grid-template-columns:1fr;gap:22px}footer>div:nth-child(2){align-items:start}.footnote{font-size:8px}.button{padding:14px 20px}.actions{gap:15px}.about-art{order:2}.step-list{gap:15px}.step-list li{font-size:11px}.step-list span{margin-left:8px}}

/* Original supplied logo, displayed without changing the artwork. */
.brand { flex-shrink: 0; }
.brand-logo { display: block; width: 166px; height: auto; mix-blend-mode: multiply; }
footer .brand-logo { width: 190px; }
.button { background: #376aa8; border-color: #376aa8; }
.button:hover { background: #2c568b; border-color: #2c568b; }
@media(max-width: 1100px) { header .brand-logo { width: 140px; } }
@media(max-width: 800px) { header { padding-top: 12px; padding-bottom: 12px; } header .brand-logo { width: 134px; } }


.hero .hero-copy h1 { font-size: clamp(42px, 5.5vw, 82px); letter-spacing: -1.5px; }
@media(max-width:540px) { .hero .hero-copy h1 { font-size: clamp(36px, 10.5vw, 56px); letter-spacing: -0.5px; } }

/* Actual project portfolio */
.featured-project{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center;padding-top:15px;padding-bottom:65px;border-bottom:1px solid var(--line)}
.project-visual{margin:0;background:#f0f0ee;overflow:hidden}
.project-visual img{display:block;width:100%;height:auto;aspect-ratio:22/15;object-fit:contain}
.project-visual figcaption{padding:14px 20px;border-top:1px solid #dcdddb;color:#65676b;font:9px/1.6 monospace;letter-spacing:1px}
.project-copy h3{margin-top:23px;font-size:20px}
.project-facts{display:flex;flex-wrap:wrap;gap:12px 22px;padding-top:18px;margin-top:24px;border-top:1px solid var(--line);font-size:12px;color:#526883}
.project-caption{font-size:11px;margin-top:20px}
.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 35px}
.project-card-copy{padding-top:24px}
.project-card-copy .eyebrow{margin-bottom:14px}
.project-card-copy h3{font-size:26px}
.project-card-copy p{font-size:14px}
.portfolio-explainer{font-size:12px;max-width:330px}
.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.teaser-project h3{display:flex;justify-content:space-between;gap:12px;font-size:20px;margin-top:20px}
.teaser-project p{font-size:12px;text-transform:capitalize;margin-top:8px}
.teaser-project:hover h3{text-decoration:underline;text-underline-offset:5px}
@media(max-width:800px){.featured-project{grid-template-columns:1fr;gap:30px}.project-copy{max-width:650px}.teaser-grid{gap:16px}.teaser-project h3{font-size:17px}.project-grid{gap:40px 25px}.project-card-copy h3{font-size:23px}}
@media(max-width:540px){.project-grid,.teaser-grid{grid-template-columns:1fr}.teaser-grid{gap:30px}.featured-project{padding-bottom:40px}.project-collection .section-head{gap:0}.portfolio-explainer br{display:none}.project-visual figcaption{font-size:9px;padding:12px 15px}.project-card-copy{padding-top:18px}}

/* Softer blocks and clearer navigation. */
.button,.secondary,.browse,.dropzone,.cta,.notice,.review,.project-visual,.study,.about-art,.hero-art,.file-list li,button,input:not([type=checkbox],[type=file]),textarea,select{border-radius:12px}
.services-grid{border-radius:12px;overflow:hidden}
nav{font-size:14px;gap:20px}
nav a[aria-current=page]:not(.button){color:#376aa8;font-weight:700;text-decoration-color:#376aa8}
.hero .hero-copy h1{font-weight:750}
.hero-copy>.eyebrow{font-size:12px}
.hero-photo{padding:0;display:block;min-height:575px}
.hero-photo img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 43%}
.upload-icon:empty{display:none}
@media(max-width:1100px) and (min-width:801px){nav{gap:12px;font-size:12px}header{gap:12px}nav .button.small{padding:11px 13px}}
@media(max-width:800px){nav{font-size:16px}.hero-photo{min-height:450px}}
@media(max-width:540px){.hero-photo{min-height:420px}.hero-copy>.eyebrow{font-size:11px}}

.hero .text-link,.upload-strip .text-link{color:#376aa8;border-bottom-color:#376aa8}.hero .hero-bottom{font-size:11px;line-height:1.6}.upload-strip .button.wide{justify-content:center;text-align:center;font-size:16px}

.about-story{max-width:780px;padding-top:0}.about-chapter{border-top:1px solid var(--line)}.about-chapter p:first-child{margin-top:0}.cta p{max-width:55%}@media(max-width:540px){.cta p{max-width:100%}}

dialog{border:1px solid var(--line);border-radius:12px;max-width:90vw;padding:25px}dialog::backdrop{background:#20293699}dialog button{margin-top:20px;padding:10px 20px}

@media(max-width:540px){.contact-grid .email{font-size:clamp(14px,4.4vw,20px);overflow-wrap:anywhere}.field-row{min-width:0}.quote-layout form{min-width:0}dialog{width:min(360px,95vw);padding:12px}.hero-copy>.actions{gap:16px}input,textarea,select{font-size:16px!important}}
