:root{color-scheme:dark;--teal:#27d1cd;--muted:#adc0c5;--dark:#061014}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--dark);color:#f7fafb;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}header{height:108px;background:#fff;color:#082229;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid #dae5e7}.identity{display:block;position:relative;width:290px;height:90px;overflow:hidden}.identity img{position:absolute;width:290px;height:auto;top:-62px;left:0}.header-contact{font-size:16px;text-decoration:none;border-bottom:1px solid #087d80;padding:8px 0;font-weight:600}.hero{display:grid;grid-template-columns: .94fr 1.2fr;max-width:1600px;margin:auto;min-height:720px;align-items:center;padding:72px 0 78px 6%;overflow:hidden}.hero-copy{max-width:570px;position:relative;z-index:1}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--teal);margin:0 0 23px}h1{font-size:clamp(48px,5.5vw,83px);line-height:1.03;letter-spacing:-.055em;margin:0 0 28px;font-weight:700}h1 span{color:var(--teal)}.intro{font-size:21px;line-height:1.5;margin-bottom:18px}.body-copy{font-size:16px;max-width:475px;color:var(--muted);margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;border-radius:6px;color:#041417;background:var(--teal);font-size:16px;font-weight:700;text-decoration:none;transition:background .2s,transform .2s}.button:hover{background:#7de8e4;transform:translateY(-2px)}.text-link{display:block;width:fit-content;font-size:14px;margin-top:19px;text-underline-offset:5px;color:var(--muted)}.hero-art{margin-left:20px;background:#02090d;border:1px solid #19343a;border-right:0;border-radius:16px 0 0 16px;overflow:hidden;box-shadow:0 0 100px #09bbbd12}.hero-art img{display:block;width:100%;aspect-ratio:1.28;object-fit:cover;object-position:52% center}.art-caption{display:flex;justify-content:space-between;gap:16px;padding:22px 25px;font-size:12px;color:var(--muted);letter-spacing:.05em}.art-caption span:first-child{color:var(--teal)}.work{padding:72px 6% 90px;max-width:1600px;margin:auto;border-top:1px solid #203037}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:38px}h2{font-size:clamp(34px,3.8vw,54px);line-height:1.12;letter-spacing:-.04em;margin:0}.section-heading>p{max-width:430px;color:var(--muted);font-size:17px;margin:0}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px}.gallery article{background:#0b1a20;border:1px solid #22333b;border-radius:9px;overflow:hidden}.gallery img{display:block;width:100%;aspect-ratio:1.5;object-fit:contain;background:#02090d}.card-copy{padding:25px 26px;display:flex;align-items:start;gap:20px}.number{color:var(--teal);font-size:14px;padding-top:3px}.card-copy h3{font-size:22px;margin:0 0 4px;letter-spacing:-.02em}.card-copy p{margin:0;color:#c1cfd3;font-size:1.125rem;line-height:1.5}.wide{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr;align-items:center}.wide img{aspect-ratio:1.5}.wide .card-copy{padding:38px}.wide h3{font-size:30px}.contact{background:radial-gradient(ellipse at 50% 100%,#0e3e44 0%,#081b21 65%);text-align:center;padding:90px 24px;border-block:1px solid #264149}.contact h2 span{color:var(--teal)}.contact>p:not(.eyebrow){color:var(--muted);font-size:18px;margin:25px 0 30px}.email{display:block;width:fit-content;margin:20px auto 0;color:var(--muted);font-size:15px;text-underline-offset:4px}footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);padding:28px 6%;font-size:12px}a:focus-visible{outline:3px solid #24bbcf;outline-offset:6px}@media(min-width:1700px){.hero-art{border-right:1px solid #19343a;border-radius:16px;margin-right:6%}}@media(max-width:900px){header{height:94px}.hero{grid-template-columns:1fr;padding:48px 6% 55px;gap:40px}.hero-copy{max-width:650px}h1{font-size:64px}.hero-art{margin:0;border:1px solid #19343a;border-radius:12px}.hero-art img{aspect-ratio:1.65}.section-heading{display:block}.section-heading>p{margin-top:25px;max-width:620px}.wide{display:block}.wide img{aspect-ratio:1.65}.wide .card-copy{padding:25px}.wide h3{font-size:22px}}@media(max-width:560px){header{padding:0 6%;height:86px}.identity{width:220px;height:78px}.identity img{width:220px;top:-44px}.header-contact{font-size:14px}.hero{padding-top:38px;gap:32px}h1{font-size:clamp(43px,12vw,62px)}.eyebrow{font-size:12px;letter-spacing:.12em}.intro{font-size:19px}.body-copy{font-size:16px}.hero-art img{aspect-ratio:1.3}.art-caption{padding:16px;display:block;font-size:12px}.art-caption span{display:block}.work{padding:48px 6%}.section-heading{margin-bottom:28px}.gallery{grid-template-columns:1fr;gap:22px}.wide{grid-column:auto}.gallery img,.wide img{aspect-ratio:1.5}.card-copy{padding:20px}.contact{padding:58px 6%}.contact h2{font-size:37px}footer{display:block}footer span{display:block;margin:5px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Keep the complete logo and tagline visible; crop only outer white margin. */
header{height:auto;min-height:204px;padding-block:14px}.identity{width:320px;height:auto;aspect-ratio:1.8;flex-shrink:0}.identity img{width:128%;height:auto;left:-14%;top:-32%}
@media(max-width:560px){header{flex-direction:column;gap:5px;padding:12px 6% 18px;min-height:0}.identity{width:min(320px,100%);height:auto;aspect-ratio:1.8}.identity img{width:128%;left:-14%;top:-32%}.header-contact{padding:3px 0;font-size:14px}}

@media(max-width:560px){
 header,.hero-copy,.section-heading,footer{text-align:center}
 .hero-copy{width:100%;margin-inline:auto}
 .hero-copy .intro,.hero-copy .body-copy{margin-inline:auto}
 .hero-copy .button{display:flex;width:fit-content;max-width:100%;margin-inline:auto}
 .hero-copy .text-link{margin-inline:auto}
 .section-heading>p{margin-inline:auto}
 .art-caption{text-align:center}
 footer span{text-align:center}
}

/* A centred introduction and an interactive portfolio. */
.hero-copy{text-align:center;width:100%;margin-inline:auto}.hero-copy .intro,.hero-copy .body-copy{margin-inline:auto}.hero-copy .button,.hero-copy .text-link{margin-inline:auto}.hero-copy .button{display:flex;width:fit-content;max-width:100%}
.portfolio-image{display:block;position:relative;width:100%;padding:0;border:0;background:#02090d;color:#fff;cursor:zoom-in;overflow:hidden;text-align:left;font:inherit}.portfolio-image img{transition:transform .5s ease}.portfolio-image:hover img{transform:scale(1.025)}.view-image{position:absolute;bottom:16px;right:16px;padding:7px 12px;border:1px solid #ffffff55;border-radius:30px;background:#061014de;color:#fff;font-size:12px;letter-spacing:.02em;transition:background .2s}.portfolio-image:hover .view-image{background:#087d80}.portfolio-image:focus-visible{outline:3px solid var(--teal);outline-offset:-4px}.gallery article{transition:border-color .25s}.gallery article:hover{border-color:#39878d}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}
.viewer-open{overflow:hidden}.lightbox{width:calc(100% - 48px);max-width:1400px;max-height:calc(100dvh - 40px);margin:auto;padding:18px 24px;background:#061014;color:#fff;border:1px solid #315058;border-radius:12px;box-shadow:0 20px 100px #0009}.lightbox::backdrop{background:#02090deb;backdrop-filter:blur(8px)}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.lightbox-count{color:var(--teal);font-size:14px;letter-spacing:.1em}.lightbox button{border:1px solid #315058;border-radius:6px;background:#10242b;color:#fff;cursor:pointer;font:inherit}.lightbox-close{padding:6px 14px}.lightbox-close span{margin-left:10px;font-size:24px;line-height:1}.lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:16px}.lightbox-image{display:block;width:100%;height:calc(100dvh - 220px);max-height:760px;object-fit:contain;touch-action:pan-y}.lightbox-prev,.lightbox-next{font-size:34px!important;height:52px}.lightbox button:hover{background:#1d4149}.lightbox button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.lightbox-caption{text-align:center;margin:16px 0 0;font-size:18px}.lightbox-hint{text-align:center;color:var(--muted);font-size:12px;margin:4px 0 0}
@media(max-width:560px){.lightbox{width:calc(100% - 16px);padding:12px;border-radius:8px}.lightbox-stage{grid-template-columns:30px minmax(0,1fr) 30px;gap:5px}.lightbox-prev,.lightbox-next{height:44px}.lightbox-image{height:calc(100dvh - 210px)}.lightbox-caption{font-size:16px}.view-image{bottom:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.portfolio-image img,.gallery article,.view-image,.reveal{transition:none}.reveal{opacity:1;transform:none}}

/* Keep complete portfolio artwork visible, including during hover. */
.gallery .portfolio-image:hover img{transform:none}.card-copy{text-align:left}.card-copy h3{margin-bottom:7px}
@media(max-width:560px){.card-copy p{font-size:1rem}}
