:root{--bg:#08071f;--text:#e8edf3;--muted:#b8bbd0;--purple:#7217ff;--blue:#083dff;--line:#38374e;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--bg);color:var(--text);font-family:Future,Arial,sans-serif;font-size:16px;line-height:1.45}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bda3ff;outline-offset:6px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(38px,4.15vw,68px);margin-bottom:22px}h2{font-size:clamp(29px,2.7vw,43px);margin-bottom:20px}h3{font-size:23px}p{margin-bottom:22px}ul{padding-left:19px;margin-top:0}li{padding-bottom:5px}.wrap{width:min(1100px,72%);margin:auto}.wide{width:min(1460px,80%);margin:auto}.eyebrow{font-size:10px;letter-spacing:.08em;font-weight:500;color:#9253ff;margin-bottom:12px}.button,summary{display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:9px 22px;background:var(--purple);border-radius:30px;color:white;font-size:12px;font-weight:500;line-height:1.25;transition:background .2s,transform .2s}.button:hover{background:#8b40ff;transform:translateY(-2px)}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:4px}.site-header{height:74px;background:var(--bg);position:relative;z-index:10}.nav-inner{width:min(1300px,80%);height:100%;margin:auto;display:flex;align-items:center;gap:60px}.logo{flex:none;width:42px}.logo img{width:100%}.nav-inner nav{display:flex;align-items:center;gap:30px;flex:1;font-size:12px}.nav-inner nav>a:not(.button){padding:15px 0}.nav-inner nav>a:hover,.nav-inner nav a[aria-current=page]:not(.button){color:#a56bff}.contact-link{margin-left:auto}.menu-toggle{display:none}.hero{position:relative;background-color:#010106;background-image:linear-gradient(90deg,#010106 0%,rgba(1,1,6,.84) 28%,transparent 57%),var(--image);background-position:center,right center;background-size:cover,auto 115%;background-repeat:no-repeat;min-height:720px;display:flex;align-items:center}.hero-copy{max-width:600px;padding:95px 0}.hero-copy p{max-width:440px;font-size:15px;line-height:1.5}.hero .button{margin-right:10px}.intro{padding:95px 0;background:radial-gradient(ellipse at 0 0,#092cbb,transparent 58%)}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;align-items:center}.intro-grid>img{width:290px;mix-blend-mode:lighten}.intro h2{font-size:26px;line-height:1.22}.photo-section{min-height:750px;display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(0,0,9,.48),rgba(0,0,9,.05)),var(--image);background-size:cover;background-position:center}.photo-copy{max-width:430px;padding:95px 0}.photo-copy .eyebrow{color:var(--text)}.photo-copy p{font-size:15px}.photo-copy h3{font-size:19px;margin-bottom:10px}.clients{overflow:hidden;background:#130938}.clients img{width:100%;max-width:none;min-width:900px}.experience{padding-top:115px;padding-bottom:150px;overflow:visible}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:55px}.gallery figure{margin:0;height:285px;position:relative;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery figure:hover img{transform:scale(1.04)}.gallery figcaption{position:absolute;inset:0;padding:25px 18px;background:linear-gradient(transparent,rgba(0,0,0,.8));display:flex;flex-direction:column;justify-content:flex-end}.gallery figcaption strong{font-size:32px;font-weight:400;margin-bottom:35px}.gallery figcaption span{font-size:12px}.promise{min-height:450px;display:grid;grid-template-columns:63% 37%;background:radial-gradient(ellipse at 0 0,#093fff,transparent 70%)}.promise-inner{padding:95px 12% 95px 23%}.promise h2{font-size:34px;max-width:450px}.promise>img{width:100%;height:100%;max-height:480px;object-fit:cover}.about{padding:125px 0;display:grid;grid-template-columns:1fr 1fr;gap:140px}.about h3{font-size:18px;letter-spacing:-.02em;margin:22px 0 8px}.about p{font-size:14px;max-width:380px;color:var(--muted)}.about dl{text-align:center;margin:0;display:grid;gap:15px}.about dt{font-size:83px;line-height:1.1;letter-spacing:-.07em;color:#842aff}.about dd{margin:4px 0 0;font-size:17px}.ribbon{background:#010109 url(assets/sculpture-wide.webp) center/cover no-repeat;padding:110px 0;min-height:380px;display:flex;align-items:center}.ribbon h2{max-width:450px;font-size:36px}.split{display:grid;grid-template-columns:1fr 1fr;min-height:500px}.split-image{overflow:hidden}.split-image img{width:100%;height:100%;max-height:640px;object-fit:cover}.split-copy{padding:80px 20% 75px 16%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.split-copy p,.split-copy li{font-size:15px;line-height:1.5;color:#ccd0df}.split-copy .eyebrow{font-size:10px;color:#9455ff}.split.reverse .split-image{order:2}.split.reverse .split-copy{padding-left:28%;padding-right:13%}.split .button{margin-top:15px}.reviews{padding:110px 0}.reviews img{width:100%;margin-top:35px}.cta{background:#03020c url(assets/cta.webp) center 47%/cover no-repeat;min-height:440px;display:grid;place-items:center;text-align:center;padding:80px 25px}.cta h2{font-size:36px}.cta .button{margin-top:12px}footer{padding:80px 0 50px}.footer-grid{width:min(1120px,72%);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr 1.1fr 1.2fr;gap:60px;font-size:13px}.footer-grid a:not(.logo),.legal-link{display:block;line-height:1.6}.footer-grid p{margin-bottom:0}.footer-grid .eyebrow{font-size:10px;margin-bottom:13px}.footer-grid .legal-link{border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.footer-grid a:hover,.legal-link:hover{color:#a56bff}.legal-note{font-size:8px;color:#9351ff;text-align:center;width:80%;margin:95px auto 0;line-height:1.7}.portfolios{padding:110px 0 140px;background:linear-gradient(160deg,#093ef1 0%,#0b175d 25%,var(--bg) 55%)}.portfolios header{text-align:center}.portfolios header h2{font-size:54px;margin-bottom:15px}.portfolios header p{font-size:15px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:850px;margin:65px auto 0}.card{border:1px solid #45405d;border-radius:36px;background:rgba(6,5,30,.55);padding:55px 42px;display:flex;align-items:flex-start;flex-direction:column}.card h3{font-size:36px}.card li{font-size:14px}.card ul{margin-bottom:35px}.card .button{margin-top:auto}.included{padding:100px 0;background:#000 url(assets/cameraman.webp) right 30%/48% auto no-repeat;min-height:700px}.included h2{font-size:44px}.included-layout{display:flex;align-items:stretch;max-width:600px;gap:15px;margin-top:45px}.half-disc{width:230px;flex-shrink:0;background:#123bff;border-radius:0 240px 240px 0;min-height:370px;display:grid;place-items:center}.half-disc h3{font-size:28px;text-align:center;letter-spacing:-.03em}.included-layout ul{border:3px solid #123bff;border-radius:0 260px 260px 0;padding:40px 65px 40px 35px;margin:0;display:flex;flex-direction:column;justify-content:center}.included-layout li{font-size:13px}.quote-row{display:grid;grid-template-columns:63% 37%;background:linear-gradient(130deg,#0b3eff,var(--bg) 72%);margin-top:65px}.quote-row blockquote{padding:90px 15% 70px 23%;margin:0}.quote-row p{font-size:32px;line-height:1.14;letter-spacing:-.035em}.quote-row cite,.testimonial cite{font-style:normal;font-size:12px}.quote-row>img{width:100%;height:100%;object-fit:cover;max-height:520px}.contact-hero{padding:130px 0 400px;background:#010106 url(assets/contact-hero.webp) center 45%/cover no-repeat}.contact-hero h1{font-size:54px;text-align:center}.contact-hero .cards{max-width:1020px;margin-top:85px}.contact-hero .card{padding:50px 45px;min-height:360px;background:rgba(6,5,30,.55)}.contact-hero .card h2{font-size:38px}.contact-hero .card p{font-size:16px;line-height:1.6;margin-bottom:40px}.contact-details{display:grid;grid-template-columns:1fr 1fr}.address{padding:100px 15%;background:linear-gradient(155deg,#0c3bff,var(--bg) 55%)}.address>img{width:55px;margin-bottom:40px;mix-blend-mode:lighten}.address .eyebrow{color:var(--text);font-size:12px}.address address{font-style:normal;font-size:24px;line-height:1.4;margin-bottom:40px}.outline{background:transparent;border:1px solid #6a6394}.testimonial{position:relative;background:linear-gradient(135deg,var(--bg),#0a34d2)}.testimonial>img{width:100%;height:420px;object-fit:cover}.testimonial>.eyebrow{position:absolute;top:35px;left:10%;color:white}.testimonial blockquote{position:relative;margin:-90px 10% 65px}.testimonial blockquote p{font-size:35px;line-height:1.15;letter-spacing:-.04em;text-shadow:0 2px 18px #000}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:white;color:#08071f;padding:12px}.skip-link:focus{top:15px}details{margin-top:25px}summary{cursor:pointer;font-size:12px}details[open] summary{margin-bottom:20px}dialog{max-width:min(90vw,520px);border:1px solid #635986;border-radius:22px;padding:55px 35px 35px;background:var(--bg);color:var(--text)}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font-size:30px}.dialog-close{position:absolute;top:10px;right:15px;border:0;background:transparent;color:white;font-size:30px;cursor:pointer}
@media(min-width:1700px){.hero{min-height:960px}.photo-section{min-height:1000px}.split{min-height:650px}.hero-copy{max-width:700px}.hero-copy p{max-width:480px}.contact-hero{padding-bottom:600px}}
@media(max-width:1100px){.nav-inner{width:90%;gap:30px}.nav-inner nav{gap:18px}.wrap{width:80%}.wide{width:85%}.hero{min-height:620px}.hero-copy{max-width:480px}.hero-copy p{max-width:340px}.intro-grid{gap:50px}.intro h2{font-size:23px}.photo-section{min-height:620px}.promise h2{font-size:29px}.promise-inner{padding:70px 15%}.about{gap:70px}.split-copy{padding:60px 12%}.split.reverse .split-copy{padding:60px 16%}.split h2{font-size:29px}.split{min-height:430px}.footer-grid{width:85%;gap:30px}.included-layout{max-width:510px}.half-disc{width:180px}.included-layout ul{padding:35px 55px 35px 28px}.contact-hero h1{font-size:46px}.contact-hero .card{padding:35px 28px}.contact-hero .card h2{font-size:30px}.cards{gap:25px}.gallery figure{height:240px}.quote-row blockquote{padding:65px 15%}.contact-hero{padding-bottom:300px}}
@media(max-width:760px){html{scroll-padding-top:70px}.site-header{height:68px}.nav-inner{width:88%;justify-content:space-between}.logo{width:35px}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:12px 6px;background:transparent;border:0;cursor:pointer}.menu-toggle span{display:block;background:white;width:25px;height:2px}.nav-inner nav{display:none;position:absolute;top:68px;left:0;right:0;background:#0c0a29;padding:25px 6% 35px;flex-direction:column;align-items:stretch;gap:4px;border-bottom:1px solid #38314c}.nav-inner nav.open{display:flex}.nav-inner nav a{font-size:15px;padding:13px 0}.nav-inner nav .button{margin-top:10px;padding:14px}.contact-link{margin-left:0}.wide,.wrap{width:86%}h1{font-size:39px}h2{font-size:30px}.hero{align-items:flex-start;min-height:750px;background-image:linear-gradient(180deg,#010106 5%,rgba(1,1,6,.93) 34%,transparent 70%),var(--image);background-position:center,center bottom;background-size:cover,auto 66%}.hero-copy{padding:65px 0 300px;max-width:100%}.hero-copy p{max-width:390px;font-size:14px}.button,summary{min-height:42px;font-size:13px}.intro{padding:65px 0}.intro-grid{grid-template-columns:1fr;gap:40px}.intro-grid>img{width:155px}.intro h2{font-size:24px}.photo-section{min-height:620px;background-position:60% center;background-image:linear-gradient(90deg,rgba(0,0,9,.75),rgba(0,0,9,.15)),var(--image)}.photo-copy{padding:75px 0;max-width:340px}.photo-copy p{font-size:15px}.clients img{min-width:1100px}.clients{overflow-x:auto}.experience{padding:75px 0 80px}.gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:30px;padding-bottom:15px}.gallery figure{min-width:72%;height:285px;scroll-snap-align:start}.promise{grid-template-columns:1fr 40%;min-height:320px}.promise-inner{padding:45px 20px 45px 10%}.promise h2{font-size:24px}.promise>img{max-height:none;object-position:40% center}.about{padding:75px 0;grid-template-columns:1fr;gap:45px}.about dl{grid-template-columns:repeat(3,1fr);gap:7px}.about dt{font-size:44px;letter-spacing:-.06em}.about dd{font-size:11px}.ribbon{padding:70px 0;min-height:380px;background-position:62% center;background-image:linear-gradient(90deg,#010109c9,transparent),url(assets/sculpture-wide.webp)}.ribbon h2{font-size:29px;max-width:300px}.split,.split.reverse{grid-template-columns:1fr;min-height:0}.split .split-image,.split.reverse .split-image{order:0;height:300px}.split-copy,.split.reverse .split-copy{padding:55px 7% 70px}.split-copy li{font-size:15px}.split-copy p{max-width:480px}.reviews{padding:65px 0}.reviews img{min-width:650px}.reviews{overflow-x:auto}.cta{min-height:330px;padding:65px 7%;background-size:auto 100%}.cta h2{font-size:27px}.cta br{display:none}footer{padding:60px 0 35px}.footer-grid{width:86%;grid-template-columns:1fr 1fr;gap:40px 25px}.footer-grid>.logo{grid-column:1/-1}.footer-grid .eyebrow{font-size:11px}.footer-grid a:not(.logo),.legal-link{min-height:28px}.legal-note{font-size:8px;margin-top:50px;width:86%}.portfolios{padding:75px 0}.portfolios header h2{font-size:39px}.cards{grid-template-columns:1fr;margin-top:40px}.card{padding:40px 30px;border-radius:26px}.card h3{font-size:35px}.card li{font-size:15px}.included{padding:70px 0 380px;background-size:auto 480px;background-position:80% bottom}.included h2{font-size:32px}.included-layout{gap:9px;margin-top:30px}.half-disc{width:36%;min-height:340px}.half-disc h3{font-size:21px}.included-layout ul{padding:35px 27px 35px 25px;border-width:2px}.included-layout li{font-size:12px}.quote-row{grid-template-columns:1fr;margin-top:0}.quote-row blockquote{padding:60px 7%}.quote-row p{font-size:29px}.quote-row>img{max-height:270px;object-position:center}.contact-hero{padding:70px 0 180px;background-position:center bottom;background-size:auto 100%}.contact-hero h1{font-size:36px;text-align:left}.contact-hero h1 br{display:none}.contact-hero .cards{margin-top:40px}.contact-hero .card{min-height:320px;padding:35px 30px;background:#08071fbd}.contact-hero .card h2{font-size:30px}.contact-hero .card p{font-size:15px}.contact-details{grid-template-columns:1fr}.address{padding:65px 7%}.address address{font-size:23px}.testimonial blockquote{margin:-65px 7% 60px}.testimonial blockquote p{font-size:31px}.testimonial>img{height:340px}.testimonial>.eyebrow{left:7%;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.client-quote{margin:35px 0 0;padding:35px 0;border-top:1px solid #38374e;max-width:850px}.client-quote p{font-size:clamp(23px,2.4vw,35px);line-height:1.25}.client-quote cite{font-size:14px;font-style:normal;color:#b8bbd0}

/* Mobile layout: comfortable reading, compact sections and visible contact. */
.mobile-appointment{display:none}
@media(max-width:760px){
 .site-header{position:sticky;top:0;height:72px;border-bottom:1px solid #ffffff12}
 .nav-inner{width:calc(100% - 36px);gap:14px}.nav-inner .logo{width:34px}
 .mobile-appointment{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-height:42px;padding:10px 16px;border-radius:24px;background:var(--purple);font-size:12px}
 .menu-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center}
 .nav-inner nav{top:72px;max-height:calc(100dvh - 72px);overflow-y:auto}
 .wide,.wrap{width:calc(100% - 40px)}
 h1{font-size:clamp(32px,8.5vw,43px);line-height:1.1}h2{font-size:clamp(27px,7vw,34px)}
 .hero{min-height:0;background-size:cover,auto 380px;background-position:center,65% bottom}
 .hero-copy{padding:48px 0 290px;max-width:100%}.hero-copy p{font-size:16px;max-width:100%;line-height:1.6}
 .hero .button{margin:0 8px 12px 0}.button,summary{min-height:46px;padding:12px 22px;font-size:14px}
 .intro{padding:52px 0}.intro-grid{gap:28px}.intro-grid>img{width:120px}.intro h2{font-size:24px;line-height:1.3}
 .photo-section{min-height:540px;background-image:linear-gradient(90deg,#000009db,#00000960),var(--image)}
 .photo-copy{padding:56px 0;max-width:100%}.photo-copy p{font-size:16px;line-height:1.6}
 .clients{padding:10px 0;scrollbar-width:thin}.clients img{min-width:760px}
 .experience{padding:56px 0}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding:0}
 .gallery figure{min-width:0;height:240px}.gallery figcaption{padding:16px 12px}.gallery figcaption strong{font-size:28px;margin-bottom:20px}.gallery figcaption span{font-size:12px;line-height:1.4}
 .promise{grid-template-columns:1fr}.promise-inner{padding:48px 20px}.promise h2{font-size:30px;max-width:100%}.promise>img{height:260px;max-height:260px;object-position:center}
 .about{padding:56px 0;gap:32px}.about p{font-size:16px;line-height:1.6;max-width:none}.about dt{font-size:clamp(36px,11vw,50px)}.about dd{font-size:12px}
 .ribbon{min-height:300px;padding:52px 0}.split .split-image,.split.reverse .split-image{height:250px}
 .split-copy,.split.reverse .split-copy{padding:40px 20px 52px}.split-copy p,.split-copy li{font-size:16px}
 .reviews{padding:52px 0}.cta{min-height:300px;padding:56px 20px}.cta h2{font-size:29px;line-height:1.2}
 .footer-grid{width:calc(100% - 40px);gap:32px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div:first-of-type{grid-column:1/-1}.footer-grid{font-size:14px}.footer-grid a:not(.logo),.legal-link{padding:6px 0;overflow-wrap:anywhere}.legal-note{width:calc(100% - 40px);font-size:9px;margin-top:35px}
 .portfolios{padding:52px 0}.portfolios header h2{font-size:36px}.cards{gap:20px;margin-top:28px}.card{padding:30px 24px}.card h3{font-size:30px}
 .included{padding:52px 0 300px;background-size:auto 320px}.included-layout{flex-direction:column;gap:0}.half-disc{width:100%;min-height:0;border-radius:20px 20px 0 0;padding:22px}.half-disc h3{font-size:24px;margin:0}.included-layout ul{border-radius:0 0 20px 20px;padding:26px 28px 26px 40px}.included-layout li{font-size:15px}
 .contact-hero{padding:48px 0 64px;background-size:cover}.contact-hero h1{font-size:34px}.contact-hero .cards{margin-top:30px}.contact-hero .card{min-height:0;padding:30px 24px;background:#08071fe8}.contact-hero .card p{font-size:16px;margin-bottom:25px}
 .address{padding:48px 20px}.address address{font-size:21px;overflow-wrap:anywhere}.testimonial blockquote p{font-size:28px}
}
@media(max-width:360px){.gallery{grid-template-columns:1fr}.gallery figure{height:280px}.mobile-appointment{padding:10px 12px;font-size:11px}.nav-inner{gap:8px}}
