@charset "UTF-8";
:root{--ink:#111820;--blue:#076d74;--paper:#fff;--soft:#f1f3f5;--muted:#525b66;--line:#d9dee4;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1.0625rem;line-height:1.65}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--blue)}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3rem,6.2vw,6.1rem);font-weight:600;margin-bottom:28px}h2{font-size:clamp(2.25rem,4vw,4.2rem);font-weight:500;margin-bottom:26px}h3{font-size:1.6rem;font-weight:600;line-height:1.2}p{margin-bottom:22px}p:last-child{margin-bottom:0}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:50;padding:12px 20px;background:white}.skip:focus{top:12px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{flex:none;display:block}.brand img{width:148px;height:99px;object-fit:contain}.nav{display:flex;align-items:center;gap:29px}.nav a{text-decoration:none;font-size:.9rem;font-weight:600}.nav a[aria-current=page]{color:var(--blue)}.nav .button{color:white}.menu-toggle{display:none;background:white;border:1px solid var(--ink);padding:9px 17px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:51px;padding:13px 25px;background:var(--blue);color:white;border:1px solid var(--blue);font-size:.95rem;font-weight:600;text-decoration:none;line-height:1.35;border-radius:0}.button:hover{background:#064e5a;color:white}.button.secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.button.secondary:hover{background:var(--ink);color:white}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:700;color:var(--blue);margin-bottom:22px}.muted,.intro{color:var(--muted)}.intro{font-size:1.17rem;max-width:660px}.hero{padding:65px 0 50px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center}.hero h1{max-width:750px}.serif{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:var(--blue)}.hero-figure{margin:0;position:relative}.hero-figure img{height:520px;width:100%;object-fit:cover}.hero-figure figcaption{font-size:.77rem;letter-spacing:.08em;text-transform:uppercase;padding:17px 0;border-bottom:1px solid var(--line)}.hero-note{border-top:1px solid var(--line);padding-top:22px;margin-top:45px;display:flex;gap:22px;font-size:.85rem;color:var(--muted)}.hero-note b{color:var(--ink);white-space:nowrap}.discipline-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0}.discipline-strip .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.83rem;font-weight:600}.section{padding:90px 0}.section.soft{background:var(--soft)}.section.dark{background:var(--ink);color:white}.section.dark .eyebrow{color:#9ed9d1}.section.dark .muted{color:#bbc4d0}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end;margin-bottom:48px}.section-head h2{margin-bottom:0}.section-head p{color:var(--muted);margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:32px;display:flex;flex-direction:column;min-height:325px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.service-card .number{font-family:Georgia,serif;color:var(--blue);font-size:1.15rem;margin-bottom:30px}.service-card p{color:var(--muted);font-size:1rem}.service-card a{margin-top:auto;font-weight:700;font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split img{width:100%;height:490px;object-fit:cover}.check-list{padding:0;list-style:none;margin:25px 0}.check-list li{padding:13px 0;border-bottom:1px solid var(--line)}.check-list li:before{content:'+';color:var(--blue);font-weight:700;margin-right:15px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.case-card figure{margin:0 0 23px}.case-card img{width:100%;height:320px;object-fit:cover}.case-card h3{font-size:2rem;margin-bottom:13px}.case-card p{max-width:540px;color:var(--muted)}.case-card .eyebrow{font-size:.72rem;margin-bottom:16px}.text-link{font-weight:700;font-size:.93rem}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid #46505c;padding-top:25px}.step .number{color:#9ed9d1;font-size:1rem}.step h3{font-size:1.35rem;margin:23px 0 15px}.step p{font-size:1rem;color:#c2c9d3}.statement{max-width:1050px;font-size:clamp(2rem,4.2vw,4rem);line-height:1.2;letter-spacing:-.04em}.cta{background:var(--blue);color:white;padding:70px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:780px;margin-bottom:12px}.cta p{color:#e2f6f2}.cta .button{background:white;color:var(--blue);border-color:white;flex:none}.site-footer{padding:60px 0 25px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px;padding-bottom:40px}.footer-logo{width:180px;margin-bottom:24px}.footer-top p{font-size:.95rem;color:var(--muted);max-width:300px}.footer-top h2{font-size:.9rem;letter-spacing:0;font-weight:700;margin-bottom:23px}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:.9rem}.footer-links a{text-decoration:none}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:.8rem;color:var(--muted)}.footer-bottom div{display:flex;gap:22px}.breadcrumbs{font-size:.82rem;color:var(--muted);padding-top:26px}.breadcrumbs a{text-decoration:none}.breadcrumbs span{padding:0 10px}.page-hero{padding:62px 0 72px}.page-hero h1{max-width:950px}.page-hero .intro{max-width:740px}.page-hero.compact{padding-bottom:40px}.wide-image{width:100%;height:440px;object-fit:cover}.photo-caption{font-size:.77rem;color:var(--muted);margin-top:12px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.feature{border-top:1px solid var(--line);padding-top:27px}.feature p{font-size:1rem;color:var(--muted)}.prose{max-width:780px}.prose h2{font-size:2.45rem;margin-top:45px}.prose h3{font-size:1.4rem;margin-top:32px}.prose p,.prose li{color:var(--muted)}.prose li{margin-bottom:12px}.service-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:100px}.service-layout .sticky-label{align-self:start}.service-layout h2{font-size:2.7rem}.service-detail{padding:28px 0;border-top:1px solid var(--line)}.service-detail h3{font-size:1.55rem}.service-detail p{color:var(--muted)}.note{background:var(--soft);border-left:3px solid var(--blue);padding:22px 26px;font-size:.95rem}.faq{max-width:920px}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{font-weight:600;cursor:pointer;font-size:1.13rem;padding-right:22px}.faq details p{padding-top:18px;color:var(--muted);max-width:800px}.portrait{object-position:center 25%}.meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding:26px 0}.meta-grid dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:7px}.meta-grid dd{margin:0;font-size:1rem}.workflow{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin:35px 0}.workflow div{padding:25px;border-right:1px solid var(--line)}.workflow div:last-child{border:0}.workflow b{display:block;font-size:1.1rem;margin-bottom:9px}.workflow span{font-size:.9rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:.92rem;font-weight:600}.field input,.field select,.field textarea{border:1px solid #9199a4;background:#fff;border-radius:0;padding:12px;width:100%;min-width:0;color:var(--ink)}.field textarea{min-height:145px;resize:vertical}.form-help{font-size:.85rem;color:var(--muted)}.status{margin-top:20px;font-weight:600;color:#065f64}.brief-preview{white-space:pre-wrap;font-family:inherit;background:var(--soft);padding:24px;font-size:.95rem;overflow-wrap:anywhere}.brief-preview:empty{display:none}[hidden]{display:none!important}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.contact-aside{border-top:1px solid var(--line);padding-top:25px}.contact-aside h2{font-size:2rem}.contact-aside p{font-size:1rem;color:var(--muted)}.small{font-size:.85rem}.inline-contact{overflow-wrap:anywhere}.article-row{padding:38px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:100px 1fr;gap:28px}.article-row .number{color:var(--blue);font-size:2rem;font-family:Georgia,serif}.article-row h3{font-size:1.7rem}.article-row p{color:var(--muted)}
@media(min-width:1600px){.hero{padding:85px 0 65px}}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.nav{gap:19px}.nav a{font-size:.83rem}.hero-grid{gap:32px}.hero-figure img{height:460px}.section-head{gap:40px}.service-card{padding:25px}.split{gap:40px}.service-layout{gap:50px}.contact-layout{gap:45px}.footer-top{gap:35px}.hero-note{display:block}.hero-note b{display:block;margin-bottom:7px}}
@media(max-width:760px){html{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}.header-inner{min-height:96px}.brand img{width:125px;height:84px}.menu-toggle{display:block}.nav{display:flex;flex-wrap:wrap;gap:17px;padding:15px 0 24px}.nav a{font-size:1rem}.header-inner{flex-wrap:wrap;gap:0}.nav{width:100%}.js .nav{display:none}.js .nav.is-open{display:flex;flex-direction:column;align-items:stretch;border-top:1px solid var(--line)}.js .nav a{padding:9px 0}.js .nav .button{padding:13px}.hero{padding:43px 0}.hero-grid,.section-head,.split,.service-layout,.contact-layout{grid-template-columns:1fr;gap:35px}h1{font-size:clamp(2.8rem,11vw,4.5rem)}.hero h1{margin-bottom:24px}.hero-figure img{height:330px}.hero-note{margin-top:28px}.intro{font-size:1.1rem}.discipline-strip .wrap{display:grid;grid-template-columns:1fr 1fr;font-size:.77rem;gap:9px}.section{padding:58px 0}.section-head{margin-bottom:33px;gap:18px}.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:310px;padding:23px}.service-card h3{font-size:1.35rem}.service-card .number{margin-bottom:20px}.case-grid{grid-template-columns:1fr;gap:40px}.case-card img{height:300px}.steps{grid-template-columns:1fr 1fr;gap:30px}.split img{height:360px}.cta{padding:50px 0}.cta .wrap{display:block}.cta .button{margin-top:24px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding:40px 0 45px}.wide-image{height:300px}.feature-grid{grid-template-columns:1fr;gap:25px}.meta-grid{grid-template-columns:1fr;gap:18px}.workflow{grid-template-columns:1fr 1fr}.workflow div{border-bottom:1px solid var(--line)}.workflow div:nth-child(2){border-right:0}.workflow div:nth-child(3){border-bottom:0}.article-row{grid-template-columns:50px 1fr;gap:15px}.prose h2{font-size:2rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:420px){.service-grid{grid-template-columns:1fr}.service-card{min-height:260px}.steps{grid-template-columns:1fr}.actions .button{width:100%}.hero-figure img{height:280px}.workflow{grid-template-columns:1fr}.workflow div{border-right:0;border-bottom:1px solid var(--line)!important}.workflow div:last-child{border-bottom:0!important}.footer-bottom div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.site-header,.site-footer,.cta,.actions,.menu-toggle{display:none}body{font-size:11pt}.wrap{width:100%}.section{padding:20px 0}h1{font-size:32pt}h2{font-size:24pt}.hero-grid,.split,.service-layout,.contact-layout{display:block}img{max-height:240px;object-fit:contain!important}.dark{background:white!important;color:black!important}}

/* Preserve readable reflow when users enlarge text. */
.header-inner,.nav{flex-wrap:wrap}.nav{max-width:100%}.wrap>*{min-width:0}h1,h2,h3{overflow-wrap:anywhere}.feature,.service-card,.footer-top>div{min-width:0}.footer-links{overflow-wrap:anywhere}

/* Blue-green studio edition: texture stays quiet behind the content. */
:root{--teal:#076d74;--ocean:#12618a;--green:#167456;--soft:#f2f7f6}
::selection{background:#c4e8df;color:#103938}
.hero{background:radial-gradient(ellipse at 98% 0%,rgba(36,151,132,.10),transparent 53%),linear-gradient(135deg,transparent 60%,rgba(16,103,136,.025) 60%);position:relative}
.hero::after{content:'';position:absolute;right:0;top:0;width:36%;height:180px;pointer-events:none;background-image:radial-gradient(rgba(7,109,116,.16) .9px,transparent .9px);background-size:14px 14px;mask-image:linear-gradient(to bottom,#000,transparent)}
.hero .wrap{position:relative;z-index:1}
.button:not(.secondary){background:linear-gradient(115deg,#09627b,#14715e);border-color:#096674}
.button:not(.secondary):hover{background:linear-gradient(115deg,#06495d,#105646)}
.serif{color:#076d74}
.section.soft{background-color:var(--soft);background-image:linear-gradient(rgba(7,109,116,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,109,116,.035) 1px,transparent 1px);background-size:64px 64px}
.section.dark{background-color:#10272c;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 24px,rgba(151,226,207,.035) 24px,rgba(151,226,207,.035) 25px)}
.cta{background:linear-gradient(115deg,#105c80 0%,#076d74 48%,#197553 100%);position:relative;overflow:hidden}
.cta::after{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(30deg,transparent 65%,rgba(255,255,255,.055) 65%,rgba(255,255,255,.055) 66%,transparent 66%);background-size:90px 90px}
.cta .wrap{position:relative;z-index:1}
.cta .button:not(.secondary){background:white;color:#07646c;border-color:white}
.cta .button:hover{background:#e5f5ee}
.service-card{transition:border-color .18s ease,background-color .18s ease}.service-card:hover{background:#fbfdfc;border-bottom-color:#25867e}
.studio-section{background:radial-gradient(ellipse at 100% 30%,rgba(33,145,111,.08),transparent 58%),#fff}
.studio-image{margin:0;min-width:0}.studio-image img{width:100%;height:auto;object-fit:cover;border:1px solid #d6e2df}
.studio-image figcaption{font-size:.8rem;color:var(--muted);padding:13px 0 0;max-width:1000px;line-height:1.6}
.studio-image.panorama img{aspect-ratio:2/1;object-fit:cover;object-position:center}
.studio-image.office-feature{margin-top:35px;margin-bottom:38px}.studio-image.office-feature img{aspect-ratio:3/2;object-fit:contain;background:#eef3f2}
.studio-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px}.studio-pair img{aspect-ratio:3/2}
.role-detail{color:#426664;font-size:1rem;letter-spacing:.025em}
.case-grid{row-gap:55px}.case-card{border-bottom:1px solid #d9e3df;padding-bottom:30px}
@media(max-width:760px){.studio-pair{grid-template-columns:1fr;gap:30px}.studio-image.panorama img{aspect-ratio:3/2}.hero::after{width:40%;height:130px}.studio-image figcaption{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.service-card{transition:none}}

/* Final branding scale and story-specific graphics. */
.header-inner{min-height:154px}.brand img{width:210px;height:140px}.footer-logo{width:230px}
.case-card img.story-visual{height:auto;aspect-ratio:3/2;object-fit:contain;border:1px solid #d5e3df}
.wide-image.story-visual{height:auto;max-height:630px;object-fit:contain;background:#edf5f2;border:1px solid #d5e3df}
@media(max-width:1000px) and (min-width:761px){.nav{gap:18px}.brand img{width:180px;height:120px}.header-inner{min-height:132px}}
@media(max-width:760px){.header-inner{min-height:125px}.brand img{width:165px;height:110px}.footer-logo{width:210px}}

/* Distinct image bands clarify the service choices. */
.service-grid{border:0;gap:24px}.service-card{padding:0;border:1px solid var(--line);min-height:0;overflow:hidden;background:#fff}
.service-card-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-bottom:1px solid var(--line)}
.service-copy{padding:28px;display:flex;flex-direction:column;flex:1;min-width:0;min-height:270px}
.service-copy .number{margin-bottom:18px}.service-copy h3{margin-bottom:16px}.service-copy p{margin-bottom:24px}.service-copy a{margin-top:auto;align-self:flex-start}
@media(min-width:761px){.service-card:last-child:nth-child(3n+1){grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr}.service-card:last-child:nth-child(3n+1) .service-card-image{height:100%;aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--line)}.service-card:last-child:nth-child(3n+1) .service-copy{min-height:260px}}
@media(max-width:1000px){.service-grid{gap:18px}.service-copy{padding:23px}}
@media(max-width:760px){.service-card{padding:0}.service-copy{min-height:260px}.service-grid{gap:20px}}
@media(max-width:600px){.service-grid{grid-template-columns:1fr}.service-copy{min-height:240px}.service-card-image{aspect-ratio:16/9}}

/* Photography partnership */
.photography-partner{grid-column:1/-1;display:grid;grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr);overflow:hidden;background:linear-gradient(125deg,#123e45,#082d34 65%,#104c47);color:#fff;border:1px solid #123e45}
.partner-portrait{min-width:0;position:relative}
.partner-portrait>img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;display:block}
.partner-copy{padding:42px;min-width:0}
.partner-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}
.partner-top .eyebrow{color:#b4e0d9;max-width:150px;margin:0}
.partner-logo{width:140px;height:140px;object-fit:contain;background:#fff;flex-shrink:0}
.partner-copy h3,.partner-copy h2{font-size:clamp(32px,3.5vw,48px);line-height:1.08;color:#fff;margin:0 0 24px}
.partner-copy>p{color:#d3e4e3;max-width:48ch}
.partner-copy .partner-credit{font-size:16px;line-height:1.6;color:#b4e0d9}
.partner-credit strong{color:#fff;font-size:20px}
.partner-copy .button{margin-top:12px;background:#fff;color:#123e45;border-color:#fff;white-space:normal}
.partner-copy .button:hover{background:#d4eee6;color:#082d34}
@media(max-width:900px){.partner-copy{padding:28px}.partner-logo{width:110px;height:110px}.partner-top{gap:12px}}
@media(max-width:600px){.photography-partner{grid-template-columns:1fr}.partner-portrait>img{height:auto;aspect-ratio:4/3;object-position:50% 30%}.partner-copy{padding:26px}.partner-top .eyebrow{max-width:130px}.partner-copy h3,.partner-copy h2{font-size:36px}}

.partner-copy .serif{color:#b4e0d9}

.split img.homepage-portrait{width:auto;max-width:100%;height:auto;max-height:700px;object-fit:contain;margin-inline:auto}
