:root{--ink:#0b0b0b;--paper:#fff;--line:#d7d7d7;--muted:#575757;--max:1536px;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.5 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #555;outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:106px;padding:18px clamp(20px,4vw,64px);background:#fff;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:13px}.brand-copy{display:grid}.brand-name{font:normal 1.7rem/.88 var(--serif);text-transform:uppercase;letter-spacing:-.03em}.brand-tagline{display:none}.brand-mark{position:relative;display:block;overflow:hidden;flex:0 0 auto;aspect-ratio:545/803;background:#fff;mix-blend-mode:multiply}.brand-mark img{position:absolute;display:block;max-width:none;width:242.202%;height:auto;left:-76.33%;top:-1.245%}.brand-mark--small{width:40px}.desktop-nav{display:flex;gap:clamp(20px,3vw,45px);font-size:.875rem}.desktop-nav a{padding:12px 0;border-bottom:1px solid transparent}.desktop-nav a:hover{border-color:#111}.menu-button,.mobile-menu{display:none}
.hero{position:relative;min-height:600px;padding:32px 24px 78px;display:grid;place-items:start center;background:#fff url('./assets/hero-landscape.png') center bottom/cover no-repeat;border-bottom:1px solid var(--line)}.hero-inner{width:min(100%,1040px);text-align:center;position:relative}.brand-mark--hero{width:114px;margin:0 auto 12px}.hero h1{font:normal clamp(2.5rem,5.1vw,5.15rem)/1.08 var(--serif);letter-spacing:-.035em;text-transform:uppercase;margin:0 0 10px}.hero-tagline{margin:0 0 18px;font-size:.875rem;letter-spacing:.3em;text-transform:uppercase}.hero-lead{margin:0;font-size:1.125rem}.hero-actions{display:flex;justify-content:center;gap:24px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-width:238px;min-height:50px;padding:14px 22px;border:1px solid #111;font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,color .2s}.button--dark{color:#fff;background:#111}.button--dark:hover{background:#383838}.button--light{background:#ffffffb8}.button--light:hover{background:#fff}
.section{width:min(100%,var(--max));margin:0 auto;padding:30px clamp(20px,3.4vw,52px) 42px}.section-label{display:flex;align-items:center;gap:24px;margin-bottom:24px;font-size:.75rem;letter-spacing:.3em;text-transform:uppercase}.section-label i{height:1px;width:46px;background:#777}.section-label small{margin-left:auto;font-size:.75rem;letter-spacing:.16em;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-card{position:relative;padding:20px 24px 45px;border:1px solid var(--line);text-align:center;background:#fff}.service-number{position:absolute;top:15px;right:16px;color:#777;font-size:.75rem}.service-art{display:block;width:100%;height:175px;margin:0 auto 20px}.service-card h3{font-size:1.125rem;font-weight:400;line-height:1.3;margin:0 0 16px}.service-card p{font-size:1rem;color:var(--muted);margin:0}.service-card>a{position:absolute;right:20px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;font-size:1.4rem}
.approach{padding-top:36px;padding-bottom:44px}.approach-grid{display:grid;grid-template-columns:1.35fr repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.approach-intro,.principle{padding:28px 22px;border-right:1px solid var(--line)}.approach-intro{padding-left:0}.approach-intro h2{font:normal clamp(1.8rem,2.4vw,2.7rem)/1.08 var(--serif);text-transform:uppercase;margin:0 0 18px}.approach-intro p,.principle p{font-size:1rem;color:var(--muted);margin:0}.principle:last-child{border-right:0}.principle-icon{display:block;font:2.1rem/1 var(--serif);margin-bottom:20px}.principle h3{font-size:.875rem;letter-spacing:.08em;font-weight:500;text-transform:uppercase;margin:0 0 14px}blockquote{font:italic clamp(1.5rem,2.7vw,2.5rem)/1.35 var(--serif);text-align:center;margin:48px auto 10px}
.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.gallery-item{position:relative;margin:0;height:126px;overflow:hidden;background-image:url('./assets/design-reference.jpeg');background-repeat:no-repeat;background-size:1320px 990px;background-color:#111}.gallery-item span{position:absolute;bottom:8px;left:12px;color:#fff;background:#0009;padding:3px 8px;font-size:.75rem;letter-spacing:.07em}.gallery-item--lily{background-position:-45px -758px}.gallery-item--figure{background-position:-277px -758px}.gallery-item--hands{background-position:-520px -758px}.gallery-item--sky{background-position:-755px -758px}.gallery-item--space{background-position:-990px -758px}
.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;padding:65px clamp(24px,5vw,80px);color:#fff;background:#111}.eyebrow{font-size:.875rem;letter-spacing:.17em;text-transform:uppercase;margin:0 0 24px}.contact h2{font:normal clamp(2rem,4.2vw,4rem)/1.12 var(--serif);margin:0}.contact-copy{align-self:center}.contact-copy p{font-size:1rem;max-width:420px}.contact-pending{color:#bcbcbc}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px clamp(20px,4vw,64px);font-size:.875rem;border-top:1px solid var(--line)}
@media(min-width:1700px){.hero{background-size:100% auto}}
@media(max-width:1100px){.desktop-nav{gap:20px}.hero{min-height:560px}.approach-grid{grid-template-columns:repeat(4,1fr)}.approach-intro{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line);padding-left:22px}.service-card{padding:20px 16px 45px}.service-art{height:150px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item{height:126px}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{min-height:84px;padding:15px 20px}.brand-name{font-size:1.35rem}.brand-mark--small{width:32px}.desktop-nav{display:none}.menu-button{display:grid;gap:5px;width:44px;height:44px;padding:12px 8px;border:0;background:transparent;align-content:center}.menu-button span:not(.sr-only){height:2px;background:#111;display:block}.menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu.is-open{display:grid;position:absolute;top:100%;left:0;right:0;background:#fff;padding:12px 24px;border-bottom:1px solid var(--line)}.mobile-menu a{padding:14px 0;border-bottom:1px solid #eee}.hero{min-height:610px;padding:30px 18px 80px;background-size:auto 400px}.brand-mark--hero{width:93px;margin-bottom:20px}.hero h1{font-size:clamp(2rem,8.5vw,3.6rem);max-width:580px;margin:0 auto 17px}.hero-tagline{font-size:.75rem;letter-spacing:.16em;line-height:1.8;max-width:310px;margin:0 auto 15px}.hero-lead{font-size:1rem;max-width:330px;margin:0 auto}.hero-actions{flex-direction:column;align-items:center;gap:12px;margin-top:26px}.button{width:min(300px,100%);font-size:.875rem;min-width:0;background-clip:padding-box}.section-label small{display:none}.section-label{letter-spacing:.15em}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.service-card{padding:18px 12px 44px}.service-art{height:135px;margin-bottom:15px}.service-card h3{font-size:1rem;overflow-wrap:anywhere}.service-card p{font-size:1rem;line-height:1.45}.service-number{font-size:.75rem;top:8px;right:10px}.approach-grid{grid-template-columns:1fr 1fr}.principle{padding:24px 14px}.principle:nth-child(odd){border-right:0}.principle:nth-child(n+4){border-top:1px solid var(--line)}.approach-intro{padding:25px 14px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item:last-child{grid-column:1/-1;background-size:1600px 1200px;background-position:-1190px -920px}.contact{grid-template-columns:1fr;gap:25px;padding:42px 24px}footer{flex-wrap:wrap;gap:22px}footer>span{order:3;width:100%;color:#555}}
@media(max-width:380px){.service-grid{grid-template-columns:1fr}.service-art{height:165px}.service-card{padding-left:22px;padding-right:22px}.hero-tagline{letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Shared pages — the approved mark, monochrome palette and landscape stay intact. */
:root{--max:1440px;--muted:#525252}body{line-height:1.65}.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:12px 18px;background:#111;color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}.desktop-nav a[aria-current=page],.mobile-menu a[aria-current=page]{border-bottom-color:#111}.section{padding-top:52px;padding-bottom:52px}.section-label{font-size:.875rem;letter-spacing:.19em}.section-label small{font-size:.875rem;letter-spacing:.08em}.service-card{padding-bottom:62px}.service-card h3 a{display:inline-block}.service-card h3 a:hover{text-decoration:underline;text-underline-offset:5px}.service-card>a{width:44px;height:44px}.button{letter-spacing:.06em;min-height:52px}.button--white{background:#fff;border-color:#fff;color:#111}.button--white:hover{background:#dedede}.contact-email{display:block;width:fit-content;font-size:clamp(1rem,1.65vw,1.5rem);overflow-wrap:anywhere;margin:22px 0 26px;border-bottom:1px solid #777;padding-bottom:5px}.contact-email:hover{border-color:#fff}.text-link{display:inline-flex;gap:18px;align-items:center;min-height:44px;padding:6px 0;margin-top:22px;border:0;border-bottom:1px solid #aaa;background:none;font:inherit;text-align:left;cursor:pointer}.text-link:hover{border-color:#111}.section-heading{font:normal clamp(2rem,3.5vw,3.7rem)/1.15 var(--serif);margin:0 0 40px;letter-spacing:-.025em}.editorial-split{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(30px,7vw,110px);align-items:start}.editorial-split h2{font:normal clamp(2rem,3.6vw,3.8rem)/1.15 var(--serif);letter-spacing:-.025em;margin:0}.editorial-split p{margin-top:0;color:var(--muted);max-width:680px}.large-copy{font-size:clamp(1.2rem,1.75vw,1.5rem);line-height:1.65;color:var(--ink)!important}.ruled{border-top:1px solid var(--line);padding-top:48px}.values{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.values article{padding:30px 30px 30px 0}.values article+article{padding-left:30px;border-left:1px solid var(--line)}.values article>span{font-size:.875rem;color:var(--muted)}.values h3{font-size:1.125rem;font-weight:500;line-height:1.4;margin:22px 0 10px}.values p{font-size:1rem;color:var(--muted);margin:0}.process-section{background:#f5f5f5}.steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:32px 0;gap:30px;counter-reset:step}.steps li{border-top:1px solid #aaa;padding-top:22px}.step-number{font:normal 2rem/1 var(--serif);color:#626262}.steps h3{font-size:1.125rem;font-weight:500;margin:24px 0 12px}.steps p{color:var(--muted);font-size:1rem;margin:0}.gallery-note{color:var(--muted);font-size:.875rem;margin:20px 0 0}.gallery-grid a{display:block}.gallery-grid a:focus-visible{outline-offset:3px}.gallery-item span{font-size:.875rem}.faq{width:100%}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;font-size:1.0625rem;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:1.5rem;line-height:1;flex:none}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{margin:0 35px 26px 0;color:var(--muted)}.faq summary:focus-visible{outline:2px solid #555;outline-offset:4px}.page-intro{max-width:var(--max);margin:0 auto;padding:38px clamp(20px,3.4vw,52px) 38px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px 15px;align-items:center;font-size:.875rem;color:#5b5b5b;margin-bottom:50px;line-height:1.7}.breadcrumbs a:hover{color:#111;text-decoration:underline}.page-intro .eyebrow{margin-bottom:22px}.page-intro h1,.detail-hero h1{font:normal clamp(2.8rem,5.7vw,5.75rem)/1.08 var(--serif);letter-spacing:-.04em;margin:0 0 27px;font-weight:400;overflow-wrap:break-word}.page-lead{font-size:clamp(1.125rem,1.8vw,1.5rem);line-height:1.6;color:var(--muted);max-width:740px;margin:0}.service-detail{padding-top:38px}.detail-hero{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:60px;margin-bottom:70px}.detail-hero .button{margin-top:32px}.detail-art{display:flex;justify-content:center;align-items:center;background:#fafafa;border:1px solid var(--line);min-height:370px;padding:36px}.detail-art .service-art{height:300px;max-width:360px;margin:0}.detail-items{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin:55px 0}.detail-items article{border-top:1px solid var(--line);padding-top:24px}.detail-items article>span{font-size:.875rem;color:var(--muted)}.detail-items h2{font:normal 1.7rem/1.2 var(--serif);margin:24px 0 16px}.detail-items p{color:var(--muted)}.result-grid{display:grid;grid-template-columns:1fr 1fr;background:#f5f5f5;gap:50px;padding:40px;margin:48px 0}.result-grid .eyebrow{color:var(--muted);font-size:.875rem;margin:0 0 20px}.result-grid h2{font:normal 1.8rem/1.2 var(--serif);margin:0 0 20px}.result-grid p{margin:0;color:var(--muted)}.plain-list{padding-left:20px;color:var(--muted)}.plain-list li{padding:7px 0}.concept-disclaimer{font-size:.875rem;color:var(--muted);padding:0 0 25px;margin:0}.concept-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}.concept{margin:0}.concept svg{width:100%;height:auto;display:block;background:#111;aspect-ratio:1.83}.concept figcaption{position:relative;padding-top:20px;border-bottom:1px solid var(--line);padding-bottom:22px;height:auto}.concept h2{font:normal 2rem/1.2 var(--serif);margin:0 35px 10px 0}.concept p{color:var(--muted);margin:0;max-width:330px}.concept-index{position:absolute;right:0;top:25px;font-size:.875rem;color:var(--muted)}.gallery-closing{margin-top:60px;padding-top:35px;border-top:1px solid var(--line)}.contact-page{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(40px,7vw,110px);padding-top:30px}.direct-email{font:normal clamp(1.15rem,2vw,2rem)/1.4 var(--serif);overflow-wrap:anywhere;border-bottom:1px solid #aaa;padding-bottom:7px;display:block;width:fit-content}.copy-email{font-size:.875rem;display:block;margin-top:15px}.copy-status{font-size:.875rem;color:var(--muted);min-height:23px}.contact-note{margin-top:50px;padding-top:30px;border-top:1px solid var(--line);color:var(--muted)}.contact-note h2{font:normal 2rem/1.2 var(--serif);color:#111}.letter-panel{padding:35px;border:1px solid var(--line);background:#fafafa}.letter-panel h2{font:normal 2rem/1.2 var(--serif);margin:0 0 18px}.letter-panel>p{color:var(--muted);margin:0 0 30px}.letter-panel label{display:block;font-size:.875rem;margin:22px 0 8px;color:var(--ink)}.letter-panel input,.letter-panel select,.letter-panel textarea{font:inherit;display:block;width:100%;border:1px solid #aaa;background:#fff;padding:13px 14px;color:var(--ink);border-radius:0}.letter-panel textarea{resize:vertical;min-height:130px}.letter-panel input:focus,.letter-panel select:focus,.letter-panel textarea:focus{outline:2px solid #333;outline-offset:2px}.form-hint{color:var(--muted);font-size:.875rem;line-height:1.6;margin:19px 0 25px}.letter-result{border-top:1px solid var(--line);margin-top:35px;padding-top:20px}.letter-result[hidden]{display:none}.letter-result h3{font-size:1.2rem;font-weight:500}.letter-result .button,.letter-result .text-link{display:flex;width:fit-content}.letter-result p{color:var(--muted)}.letter-result textarea{font-size:.875rem}.contact-details{min-width:0}footer>a:not(.brand){overflow-wrap:anywhere}footer{flex-wrap:wrap;font-size:.875rem}
@media(max-width:1100px){.desktop-nav{gap:16px}.site-header{gap:20px;padding-left:24px;padding-right:24px}.desktop-nav a{font-size:.875rem}.editorial-split{gap:40px}.detail-hero{gap:35px}.concept-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.concept figcaption{height:auto}.contact-page{gap:35px}.letter-panel{padding:25px}.steps{gap:20px}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.site-header .menu-button{display:grid;gap:5px;width:44px;height:44px;padding:12px 8px;border:0;background:transparent;align-content:center}.menu-button span:not(.sr-only){height:2px;background:#111;display:block}.mobile-menu.is-open{display:grid;position:absolute;top:100%;left:0;right:0;background:#fff;padding:12px 24px;border-bottom:1px solid var(--line)}.mobile-menu a{padding:14px 0;border-bottom:1px solid #eee}.steps{grid-template-columns:1fr 1fr}.contact-page{grid-template-columns:1fr}.contact-note{margin-top:30px}.detail-hero{grid-template-columns:1.5fr 1fr;gap:25px}.detail-art{min-height:290px;padding:20px}.detail-art .service-art{height:220px}.detail-hero h1{font-size:3.3rem}.detail-items{gap:25px}.values article{padding-right:20px}.values article+article{padding-left:20px}}
@media(max-width:760px){.section{padding-top:38px;padding-bottom:38px}.section-label{font-size:.875rem;letter-spacing:.1em}.editorial-split{grid-template-columns:1fr;gap:30px}.editorial-split h2{font-size:2.3rem}.large-copy{font-size:1.2rem}.values{grid-template-columns:1fr;margin-top:35px}.values article,.values article+article{padding:24px 0;border:0}.values article+article{border-top:1px solid var(--line)}.values h3{margin-top:12px}.section-heading{font-size:2.2rem;margin-bottom:30px}.steps{gap:30px 22px}.steps h3{margin-top:17px}.page-intro{padding-top:25px;padding-bottom:15px}.breadcrumbs{margin-bottom:32px;font-size:.875rem}.page-intro h1{font-size:clamp(2.5rem,10.5vw,4rem)}.page-intro .eyebrow{font-size:.875rem}.detail-hero{grid-template-columns:1fr;margin-bottom:40px}.detail-hero h1{font-size:clamp(2.4rem,10vw,3.5rem)}.detail-art{min-height:0;max-width:100%;padding:25px}.detail-art .service-art{height:240px}.detail-items{grid-template-columns:1fr;gap:18px;margin:35px 0}.detail-items h2{margin-top:12px}.result-grid{grid-template-columns:1fr;gap:32px;padding:25px;margin:32px 0}.ruled{padding-top:30px}.concept-grid{grid-template-columns:1fr;gap:35px}.concept svg{max-height:240px}.contact-page{padding-top:28px}.direct-email{font-size:clamp(1.2rem,6vw,1.8rem)}.letter-panel{padding:24px 20px}.letter-panel .button{width:100%}.contact-email{font-size:1.05rem}.contact-page .eyebrow{font-size:.875rem}footer>span{order:4}footer>a:not(.brand){font-size:.875rem}.contact-page .copy-status{margin-bottom:0}.faq summary{font-size:1rem}.service-card{padding-bottom:60px}.hero{min-height:610px}}
@media(max-width:400px){.steps{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.gallery-item:last-child{background-size:1320px 990px;background-position:-990px -758px}.letter-panel{padding:20px 15px}.hero-tagline{font-size:.875rem;letter-spacing:.08em}.hero h1{font-size:2.3rem}}

/* Contact telephone */
.hero-phone{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;font-size:1.125rem;white-space:nowrap;text-underline-offset:5px}.hero-phone:hover,.footer-phone:hover{text-decoration:underline}.contact-phone{display:block;width:fit-content;margin-top:22px;font-size:clamp(1.25rem,2.2vw,2rem);white-space:nowrap;border-bottom:1px solid #777}.contact-phone:hover{border-color:#fff}.contact-phone+.contact-email{margin-top:12px}.phone-details{margin-bottom:32px}.phone-details .eyebrow{margin-bottom:12px}.direct-phone{display:inline-flex;align-items:center;min-height:44px;font-size:clamp(1.4rem,3vw,2rem);white-space:nowrap;border-bottom:1px solid #aaa}.direct-phone:hover{border-color:#111}.footer-phone{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}footer{flex-wrap:wrap}

.hero-phones{display:flex;flex-wrap:wrap;justify-content:center;gap:0 24px;margin-top:16px}.hero-phones .hero-phone{margin-top:0}.contact-phone+.contact-phone{margin-top:8px}.phone-details .direct-phone{display:flex;width:fit-content}.direct-phone+.direct-phone{margin-top:8px}.footer-phones{display:grid;gap:0}

/* Softer shapes and contemporary photographic concepts. */
.button{border-radius:999px}.service-card,.detail-art,.result-grid,.letter-panel{border-radius:24px}.service-card{overflow:hidden;padding-top:30px}.service-number{z-index:1;background:#ffffffed;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;top:12px;right:12px}.service-art{object-fit:cover;border-radius:16px;height:180px}.detail-art{padding:0;overflow:hidden;min-height:0}.detail-art .service-art{width:100%;max-width:none;height:auto;aspect-ratio:3/2;object-fit:cover;margin:0;border-radius:0}.gallery-intro{max-width:680px;color:var(--muted);margin:-16px 0 28px}.gallery-previews{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.gallery-preview{display:block;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;transition:box-shadow .2s,border-color .2s}.gallery-preview:hover{border-color:#777;box-shadow:0 8px 24px #0000000d}.gallery-preview>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.gallery-preview>div{padding:20px}.gallery-preview h3{font-size:1.125rem;font-weight:400;line-height:1.4;margin:0 0 18px}.gallery-action{font-size:.875rem;display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:underline;text-underline-offset:4px}.concept{scroll-margin-top:32px}.concept>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:24px}.concept:target{outline:1px solid #aaa;outline-offset:12px;border-radius:24px}.concept figcaption{padding-top:20px}.concept figcaption .text-link{margin-top:6px}.letter-panel input,.letter-panel select,.letter-panel textarea{border-radius:12px}
@media(max-width:1100px){.gallery-previews{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.service-art{height:auto;aspect-ratio:3/2}.service-card{padding:14px 12px 60px}.gallery-preview>div{padding:18px}.gallery-preview h3{font-size:1rem}.gallery-intro{margin-top:0}.detail-art .service-art{height:auto}.service-card,.gallery-preview,.letter-panel{border-radius:20px}}
@media(max-width:480px){.gallery-previews{grid-template-columns:1fr}.gallery-preview>img{aspect-ratio:16/9}}

.concept-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.concept-grid{grid-template-columns:1fr}}

.service-art,.gallery-preview>img,.concept>img{filter:grayscale(1)}

/* Expressive introductory line and quieter secondary action. */
.hero .hero-lead{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:500;font-size:clamp(1.125rem,1.7vw,1.5rem);line-height:1.4;letter-spacing:.005em;max-width:760px;margin:0 auto;color:#333;text-wrap:balance}.hero .button--light{border-color:#c8c8c8;background:#ffffff8c;box-shadow:0 2px 9px #00000003}.hero .button--light:hover{border-color:#aaa;background:#ffffffe6}.hero .button--light:focus-visible{outline-color:#555}@media(max-width:760px){.hero .hero-lead{max-width:350px;font-size:1.125rem;line-height:1.55}}

/* Remove the source sheet background above every face mark. */
.brand-mark{clip-path:polygon(0.000% 24.907%,0.917% 24.907%,1.835% 24.907%,2.752% 24.907%,3.670% 24.907%,4.587% 24.907%,5.505% 24.907%,6.422% 23.412%,7.339% 20.548%,8.257% 18.555%,9.174% 17.186%,10.092% 15.816%,11.009% 14.695%,11.927% 13.699%,12.844% 12.827%,13.761% 11.955%,14.679% 11.083%,15.596% 10.336%,16.514% 9.589%,17.431% 8.966%,18.349% 8.468%,19.266% 7.846%,20.183% 7.347%,21.101% 6.849%,22.018% 6.351%,22.936% 5.853%,23.853% 5.479%,24.771% 5.106%,25.688% 4.732%,26.606% 4.359%,27.523% 3.985%,28.440% 3.611%,29.358% 3.362%,30.275% 2.989%,31.193% 2.740%,32.110% 2.491%,33.028% 2.242%,33.945% 1.993%,34.862% 1.868%,35.780% 1.619%,36.697% 1.494%,37.615% 1.245%,38.532% 1.121%,39.450% 0.996%,40.367% 0.872%,41.284% 0.747%,42.202% 0.747%,43.119% 0.623%,44.037% 0.498%,44.954% 0.498%,45.872% 0.498%,46.789% 0.374%,47.706% 0.374%,48.624% 0.374%,49.541% 0.374%,50.459% 0.374%,51.376% 0.374%,52.294% 0.498%,53.211% 0.498%,54.128% 0.623%,55.046% 0.623%,55.963% 0.747%,56.881% 0.872%,57.798% 0.872%,58.716% 0.996%,59.633% 1.245%,60.550% 1.370%,61.468% 1.494%,62.385% 1.743%,63.303% 1.868%,64.220% 2.117%,65.138% 2.366%,66.055% 2.615%,66.972% 2.864%,67.890% 3.113%,68.807% 3.487%,69.725% 3.861%,70.642% 4.110%,71.560% 4.483%,72.477% 4.857%,73.394% 5.230%,74.312% 5.729%,75.229% 6.102%,76.147% 6.600%,77.064% 7.098%,77.982% 7.597%,78.899% 8.095%,79.817% 8.717%,80.734% 9.340%,81.651% 9.963%,82.569% 10.710%,83.486% 11.457%,84.404% 12.204%,85.321% 13.200%,86.239% 14.197%,87.156% 15.318%,88.073% 16.687%,88.991% 18.306%,89.908% 20.423%,90.826% 23.537%,91.743% 24.907%,92.661% 24.907%,93.578% 24.907%,94.495% 24.907%,95.413% 24.907%,96.330% 24.907%,97.248% 24.907%,98.165% 24.907%,99.083% 24.907%,100.000% 24.907%,100% 25%,100% 100%,0 100%)}
.button--dark{background:rgba(0,0,0,.64);border-color:transparent;color:#fff}.button--dark:hover{background:rgba(0,0,0,.76)}

/* Selected direction: Personal story */
:root{--serif:Arial,Helvetica,sans-serif;--line:#24272920}body{background:#fafaf8;color:#232729}h1,h2,h3{font-family:Arial,Helvetica,sans-serif!important;font-weight:400!important;letter-spacing:-.035em}.site-header{background:#fafaf8;min-height:100px}.brand-name{font-family:Arial,Helvetica,sans-serif;font-size:1.05rem;line-height:1.3;letter-spacing:.12em}.desktop-nav a{font-size:.875rem}.story-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:0;min-height:660px;padding:0;background:#f5f5f2;align-items:stretch}.story-hero .hero-inner{text-align:left;padding:65px 5vw 65px;width:auto}.story-eyebrow{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;line-height:1.7}.story-hero h1{font-size:clamp(2.7rem,5.6vw,5.15rem);line-height:1.06;letter-spacing:-.055em;text-transform:none;margin:0 0 26px}.story-hero .hero-lead{font-size:1.125rem;line-height:1.7;font-weight:400;max-width:550px;color:#555d60;margin:0}.story-hero .hero-actions{justify-content:flex-start;gap:12px;margin-top:32px}.button{min-width:0;min-height:52px;padding:16px 26px;font-size:.875rem;letter-spacing:0;text-transform:none}.story-hero .button--light{background:#ffffff80;border:1px solid #a0a0a050;box-shadow:none}.story-portrait{position:relative;margin:28px 28px 28px 0;border-radius:28px;overflow:hidden;min-height:580px}.story-portrait img{position:absolute;width:100%;height:100%;object-fit:cover}.story-portrait figcaption{position:absolute;bottom:24px;left:24px;right:24px;width:fit-content;font-size:.75rem;line-height:1.6;background:#ffffffcf;backdrop-filter:blur(12px);border-radius:30px;padding:10px 16px}.story-footnote{display:flex;justify-content:space-between;gap:20px;padding:24px 5vw;font-size:.8125rem;line-height:1.7;color:#62696a;border-bottom:1px solid var(--line)}.section{padding:80px 5vw}.section-heading,.editorial-split h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.13}.section-label{letter-spacing:.12em;font-size:.75rem;margin-bottom:35px}.service-grid{gap:20px}.service-card{background:#f0f1ee;border:0;padding:20px 20px 60px}.service-card h3{font-size:1.4rem;line-height:1.2}.service-card p{color:#5b6365;line-height:1.65}.service-card>a:last-child{font-size:.875rem;bottom:22px;right:22px}.service-art{height:220px}.service-photo{object-fit:cover}.about-home{background:#e9ece9}.values{gap:30px}.values article{border-top:1px solid #aeb6b4;padding-top:25px}.values h3{font-size:1.5rem}.process-section{background:#fafaf8}.steps h3{font-size:1.5rem}.steps p{line-height:1.7;color:#596264}.gallery-preview{background:#eff0ed;border-radius:24px}.gallery-preview img{height:240px;object-fit:cover}.gallery-preview h3{font-size:1.25rem}.contact{background:#e3e7e4;color:#26302f;padding:70px 5vw}.contact h2{font-size:clamp(2.2rem,4vw,4rem)}.contact .button--white{background:#000000a3;color:#fff;border-color:transparent}.contact-copy p{color:#535d5a}.faq details{border-color:#cbd0cc}.page-intro h1{font-size:clamp(2.7rem,5.6vw,5rem)}footer{background:#fafaf8}.gallery-action{font-size:.875rem}
@media(max-width:1000px){.story-hero .hero-inner{padding:50px 4vw}.story-hero .hero-actions{flex-direction:column;align-items:flex-start}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-nav{gap:18px}}
@media(max-width:760px){.site-header{min-height:84px}.brand-name{font-size:.85rem}.story-hero{grid-template-columns:1fr;min-height:0}.story-hero .hero-inner{padding:40px 22px 16px}.story-hero h1{font-size:clamp(2.4rem,9.8vw,3.7rem);margin:0 0 24px;max-width:none}.story-hero .hero-lead{font-size:1.0625rem;max-width:none;line-height:1.7}.story-hero .hero-actions{margin-top:28px;flex-direction:row;flex-wrap:wrap;gap:10px}.story-hero .button{width:auto;padding:15px 22px}.story-portrait{min-height:320px;margin:20px 22px 30px}.story-portrait figcaption{bottom:16px;left:16px;right:16px}.story-footnote{flex-direction:column;gap:5px;padding:20px 22px}.section{padding:50px 22px}.service-grid{grid-template-columns:1fr}.service-art{height:230px}.service-card{padding:18px 18px 60px}.values{grid-template-columns:1fr}.editorial-split{grid-template-columns:1fr;gap:25px}.steps{grid-template-columns:1fr}.gallery-previews{grid-template-columns:1fr}.gallery-preview img{height:auto;aspect-ratio:3/2}.contact{padding:45px 22px}.contact-phone,.contact-email{overflow-wrap:anywhere}.section-label{margin-bottom:25px}.page-intro{padding-left:22px;padding-right:22px}}

.brand-mark{aspect-ratio:1247/1261;clip-path:none;background:transparent;mix-blend-mode:normal}.brand-mark img{position:static;width:100%;height:auto;left:auto;top:auto}.brand-mark--small{width:52px}.service-card>a:last-child{width:auto;min-height:44px;right:22px;bottom:12px}.service-art{object-fit:cover}@media(max-width:760px){.brand-mark--small{width:43px}}
