/* V6: one connected canvas, with quiet section changes and clear professional content. */
:root{--bg:#11170f;--paper:#eef0e5;--accent:#caff4b;--muted:#a3af96;--line:#3d4b32}html{scroll-padding-top:112px}body{background:var(--bg);overflow-x:hidden}#network-bg{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.64}main,footer{position:relative;z-index:1}.site-header{padding-inline:5.5%;background:#11170feb}.site-header nav{gap:23px}.site-header nav a{position:relative;padding:12px 0;font-size:10px}.site-header nav a:after{content:'';height:3px;width:3px;border-radius:100%;background:var(--accent);position:absolute;bottom:1px;left:50%;opacity:0;transition:opacity .25s}.site-header nav a[aria-current=location]{color:var(--accent)}.site-header nav a[aria-current=location]:after{opacity:1}.identity small{font-size:6px}.contact-link{background:#caff4b0a}.introduction,.reduced .introduction{height:100svh;min-height:740px}.intro-stage,.reduced .intro-stage{position:relative;height:100svh;min-height:740px;background:transparent;isolation:auto}.intro-grid,.portrait-orbit,.cv-teaser{display:none}.intro-stage:after{box-shadow:none;background:linear-gradient(0deg,#11170f,transparent 16%)}.intro-copy{top:22%;width:55%}.intro-copy h1{font-size:clamp(90px,9.6vw,148px);line-height:.88}.intro-description p{font-size:12px;line-height:1.8;max-width:370px}.intro-name{font-size:12px}.intro-copy .eyebrow{font-size:10px}.portrait-scene{right:-2%;bottom:-1%;height:86%;width:57%}.portrait-wrap{transition:none;transform:none!important}.is-entering .portrait-wrap{opacity:1}.is-entering .hello-sticker{visibility:visible}.hello-sticker{width:88px;height:88px;left:5%;top:11%}.hello-sticker>span{font-size:53px}.intro-scroll{font-size:9px;letter-spacing:.8px}.intro-scroll small{font-size:10px}.intro-meta{font-size:9px;bottom:28px}.intro-step{color:#a9b995}.intro-meta>span:last-child{color:var(--accent)}.intro-stage #hero-fx{pointer-events:none}#portrait-arm{transform-origin:225px 730px}.flow-section{position:relative;background:transparent;padding-block:120px;isolation:isolate;scroll-margin-top:0}.flow-section:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#11170fb5,transparent 16%,#11170f84 50%,transparent 90%)}.section-inner{max-width:1560px;margin:0 auto}.section-top{padding-top:30px;border-top:1px solid #a6c17a2a}.section-top .eyebrow{font-size:10px}.section-top .mono{font-size:9px;color:#82946d}.section-heading{margin:70px 0 65px}.section-heading h2,.career-intro h2{font:600 clamp(68px,7.2vw,114px)/.96 var(--display);letter-spacing:-1.5px;margin:0}.section-heading h2 em,.career-intro h2 em{font-style:normal;color:#b1c98e}.section-heading p{font-size:13px;line-height:1.9;color:#afbea0}.subtle{color:#708461;font-size:11px}.section-kicker{font:9px/1.8 monospace;letter-spacing:1.3px;color:#95ac7c;margin-bottom:26px}.career-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:8%;margin-top:72px}.career-intro>p:not(.section-kicker){max-width:365px;font-size:13px;line-height:1.9;color:#a8b59a;margin-top:30px}.career-stat{display:flex;align-items:center;gap:25px;margin:35px 0}.career-stat strong{font:500 88px/1 var(--display);letter-spacing:-3px;color:var(--accent)}.career-stat strong span{font:35px var(--body);margin-left:10px}.career-stat>span{font:8px/1.8 monospace;letter-spacing:1px;color:#94a77e}.career-timeline{padding-top:10px}.career-row{display:grid;grid-template-columns:118px 1fr;gap:30px;position:relative;padding:0 0 37px}.career-row:not(:last-child):after{content:'';position:absolute;left:117px;top:13px;bottom:-5px;width:1px;background:linear-gradient(#93aa6c66,#93aa6c22)}.career-period{position:relative;padding-right:18px;padding-top:7px;font:8px/1.9 monospace;color:#a3b88a;letter-spacing:.1px}.career-period i{position:absolute;right:-4px;top:8px;width:8px;height:8px;border-radius:50%;border:1px solid #caff4b;background:#182010;box-shadow:0 0 18px #caff4b22}.career-row:first-child .career-period i{background:var(--accent)}.career-row h3{font:500 32px/1.15 var(--display);margin:0 0 10px}.career-row .career-role{font-size:11px;color:#cbd6bb;line-height:1.8;margin:0 0 10px}.career-row p:last-child{color:#849775;font-size:11px;line-height:1.85;max-width:360px;margin:0}.experience-details{margin-top:50px;border-block:1px solid #81976040}.experience-details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:25px;padding:27px 0;font-size:14px}.experience-details>summary small{font:8px monospace;letter-spacing:1px;color:#899e73;margin-left:auto}.experience-details>summary i{font:24px var(--body);font-style:normal;color:var(--accent)}summary::-webkit-details-marker{display:none}.experience-details[open]>summary i{transform:rotate(45deg)}.experience-expanded{padding:25px 0 50px;animation:detail-in .4s ease both}.detail-heading{display:flex;justify-content:space-between;gap:30px;margin-bottom:30px}.detail-heading h3{font:500 42px/1 var(--display);margin:0}.detail-heading p{font-size:12px;color:#92a67d;max-width:340px;line-height:1.8;margin:0}.credit-group{border-top:1px solid #657b493b}.credit-group summary{list-style:none;display:flex;align-items:center;padding:22px 0;cursor:pointer;gap:30px}.credit-group summary>span{font:9px monospace;width:100px;color:#a3bb83}.credit-group summary strong{font-weight:500;font-size:13px}.credit-group summary i{margin-left:auto;color:#caff4b;font-style:normal}.credit-group[open] summary i{transform:rotate(45deg)}.credit-group ul{list-style:none;padding:8px 0 25px;margin:0;display:flex;flex-wrap:wrap;gap:10px}.credit-group li{padding:10px 16px;border:1px solid #6b81433d;background:#17210f94;font:14px/1.6 Arial,sans-serif;border-radius:2px}.profile-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;margin-top:40px}.profile-facts>div{border-top:1px solid #637a493d;padding-top:25px}.profile-facts .eyebrow{font-size:9px;color:var(--accent);margin-bottom:24px}.profile-facts p{display:flex;justify-content:space-between;font-size:12px;gap:20px}.profile-facts small{color:#899a77;font-size:10px}.service-list{border-top:1px solid #8a9d7044}.service-row{border-bottom:1px solid #8a9d7044}.service-row>summary{display:grid;grid-template-columns:70px 1fr 1fr 45px;align-items:center;padding:34px 0;list-style:none;cursor:pointer;gap:25px;transition:color .3s}.service-number{font:10px monospace;color:#94ac79}.service-row h3{font:500 clamp(42px,4.2vw,65px)/.98 var(--display);letter-spacing:-.4px;margin:0}.service-row h3 br{display:none}.service-promise{font-size:12px;line-height:1.8;color:#a8b999;max-width:220px;justify-self:center}.service-row>summary i{width:44px;height:44px;border:1px solid #91a97466;border-radius:50%;display:grid;place-items:center;font-size:23px;font-style:normal;transition:.3s}.service-row[open]>summary,.service-row>summary:hover{color:var(--accent)}.service-row[open]>summary i{transform:rotate(90deg);background:var(--accent);color:#15200c}.service-expanded{display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;padding:0 0 45px 95px;animation:detail-in .4s ease both}.service-art{height:280px;position:relative;background:#1c2916;overflow:hidden}.service-art img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.service-copy{font-size:14px;line-height:1.8;color:#ccd5c0;margin:0 0 22px;max-width:470px}.service-expanded ul{display:grid;grid-template-columns:1fr 1fr;gap:14px 25px;margin:0 0 30px;padding:0;list-style:none;font-size:11px;color:#91a77e}.service-expanded li:before{content:'+';color:var(--accent);margin-right:9px}.web-illustration{position:absolute;inset:20px;border:1px solid #caff4b77;background:#172010;transform:perspective(800px) rotateY(-9deg) rotateX(5deg);padding:17px}.web-browser-dots{font-size:7px;letter-spacing:4px;color:#caff4b}.web-wire{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin-top:30px}.web-wire span{height:70px;grid-column:span 3;background:linear-gradient(115deg,#caff4b33,transparent);border:1px solid #caff4b33}.web-wire i{height:50px;border:1px solid #caff4b33}.web-illustration b{font:8px monospace;letter-spacing:2px;color:#839d65;position:absolute;bottom:14px}.web-cursor{position:absolute;right:30px;top:65px;font-size:38px;color:#caff4b}.delivery-line{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:40px}.delivery-line>span{font:8px/1.8 monospace;letter-spacing:1px;color:#a0b889}.delivery-line p{font-size:12px;line-height:1.8;color:#8ea378}.client-strip{display:grid;grid-template-columns:repeat(6,1fr);border-block:1px solid #8193653d;padding:35px 0;gap:12px;align-items:center}.client-mark{display:flex;align-items:center;justify-content:center;gap:7px;min-height:95px;color:#d9e2cc;transition:color .3s,transform .3s}.client-mark:hover{color:var(--accent);transform:translateY(-4px)}.client-mark svg{width:36px;height:36px}.client-mark strong{font-size:17px;letter-spacing:1px;font-weight:700}.client-mark.mark-vertex strong{letter-spacing:-1px}.client-mark.mark-mono strong{letter-spacing:3px;font-size:14px}.client-mark.mark-pulse strong{font-size:25px;letter-spacing:-2px}.client-preview-note{color:#748963;font:8px/1.9 monospace;letter-spacing:.6px;margin-top:20px}.clients-footer{display:flex;justify-content:space-between;align-items:center;margin-top:45px}.clients-footer>span{font:8px monospace;letter-spacing:1.3px;color:#91aa78}.clients-section{padding-bottom:135px}.museum-chapter{z-index:2}.museum-chapter .stage{background:#11170f}.museum-vignette{background:linear-gradient(0deg,#11170ff5,transparent 30%,transparent 73%,#11170fd9),radial-gradient(ellipse,transparent 40%,#11170f6b)}.work-section{background:#11170ff7;position:relative;z-index:3}.connect-section{padding-bottom:100px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:start}.contact-details>.eyebrow{font-size:9px;color:#9aac86;margin:15px 0 25px}.direct-email{font:500 clamp(27px,2.5vw,42px)/1.2 var(--display);display:block;position:relative;width:max-content;max-width:100%;overflow-wrap:anywhere}.direct-email span{color:var(--accent);margin-left:18px}.direct-phone{display:block;font:500 24px var(--display);letter-spacing:1px;color:#adbf98;margin:25px 0 20px}.location-note{font:8px/2 monospace;letter-spacing:1px;color:#83996e;margin:35px 0 30px}.social-details{border-top:1px solid #6f865243}.social-details summary{list-style:none;padding:22px 0;display:flex;justify-content:space-between;cursor:pointer;font-size:11px}.social-details summary i{color:var(--accent);font-style:normal}.social-links{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.social-links a{display:grid;grid-template-columns:1fr 12px;padding:16px 0;border-bottom:1px solid #6f865223;gap:5px;min-width:0}.social-links a span{font-size:11px}.social-links a small{grid-column:1;grid-row:2;font:8px/1.8 monospace;color:#768f60;overflow-wrap:anywhere}.social-links a b{grid-column:2;grid-row:1;color:#99b777;font-weight:400}.social-links a:hover span{color:var(--accent)}.enquiry-panel{border:1px solid #94ac6c4a;background:#16200fc7;padding:34px}.form-top{display:flex;justify-content:space-between;font:8px monospace;letter-spacing:1px;color:#97af7a;border-bottom:1px solid #8d9f6c3d;padding-bottom:25px;margin-bottom:30px}.enquiry-panel form>label,.form-grid>label{display:block;font-size:11px;color:#d5dfc9;margin:0 0 25px}.enquiry-panel label small{font-size:9px;color:#738e5b;margin-left:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.enquiry-panel input:not([type=checkbox]),.enquiry-panel textarea{display:block;width:100%;border:0;border-bottom:1px solid #788e554d;background:transparent;color:#edf1e5;font:12px/1.7 var(--body);padding:14px 0 12px;outline:none;border-radius:0;resize:vertical}.enquiry-panel input:focus,.enquiry-panel textarea:focus{border-color:var(--accent)}.enquiry-panel input::placeholder,.enquiry-panel textarea::placeholder{color:#687f54}.enquiry-panel fieldset{padding:0;border:0;margin:0 0 26px}.enquiry-panel legend{font-size:11px;margin-bottom:18px}.service-options{display:flex;flex-wrap:wrap;gap:8px}.service-options label{cursor:pointer;position:relative}.service-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.service-options span{display:block;padding:10px 12px;border:1px solid #81965f5c;border-radius:25px;font-size:9px;color:#aabd94;transition:.2s}.service-options input:checked+span{background:#caff4b;color:#18210d;border-color:#caff4b}.service-options input:focus-visible+span{outline:2px solid #caff4b;outline-offset:3px}.enquiry-panel .pill{margin-top:3px}.form-note{font:9px/1.8 var(--body);color:#91a779;margin-top:18px;max-width:360px}.enquiry-panel [hidden]{display:none!important}#enquiry-preview h3{font:500 50px var(--display);margin:15px 0}#enquiry-preview>p{font-size:12px;line-height:1.9;color:#9db187}#enquiry-text{background:#11190c;border:1px solid #60784545;padding:18px;font-size:11px}.enquiry-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:25px}.enquiry-actions button{background:none;color:#b3c69c}.enquiry-actions .pill{font-size:10px}.enquiry-panel #enquiry-status{font-size:10px;color:#8fa779}footer{background:#11170fd9;border-top:1px solid #61784436;padding-block:35px 55px;font-size:9px;gap:25px}footer span{font-size:8px;line-height:1.8;color:#8b9f77}.text-link{font-size:11px}.reduced .reveal-block{transform:none!important;opacity:1!important}.reduced .intro-copy,.reduced .portrait-scene{transform:none!important;opacity:1!important}.reduced .flow-section *{animation:none!important}.service-row[open] .service-expanded,.experience-details[open] .experience-expanded{animation:detail-in .35s ease both}@keyframes detail-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.intro-copy{top:24%}.portrait-scene{right:1%;height:88%}.career-row h3{font-size:38px}.career-role{font-size:13px!important}.career-row p:last-child{font-size:12px}}
@media(max-width:1150px){.site-header nav{gap:17px}.identity{font-size:10px;gap:10px}.brand-mark{width:48px}.identity small{font-size:5px}.career-layout{gap:5%;grid-template-columns:.95fr 1.05fr}.career-row{grid-template-columns:105px 1fr;gap:25px}.career-row:not(:last-child):after{left:104px}.career-row h3{font-size:28px}.client-mark strong{font-size:14px}.client-mark svg{width:28px}.client-mark{gap:5px}.contact-layout{gap:6%}.service-row>summary{grid-template-columns:45px 1fr 210px 45px;gap:20px}.service-expanded{padding-left:65px}.intro-description p{font-size:11px}.intro-copy h1{font-size:10vw}.portrait-scene{width:60%;right:-5%}}
@media(max-width:900px){.site-header{height:112px;align-items:flex-start;padding-top:17px}.site-header nav{display:flex!important;position:absolute;top:auto;bottom:0;left:5.5%;right:5.5%;padding:0;height:40px;background:none;overflow-x:auto;justify-content:space-between;gap:20px;white-space:nowrap;scrollbar-width:none;border:0;flex-direction:row;transform:none}.site-header nav a{font-size:10px;padding:8px 0 12px}.site-header nav a:after{bottom:5px}.site-header nav.open{display:flex!important}.menu-toggle{display:none!important}.site-header .contact-link{font-size:9px;padding:10px 14px;margin-top:3px}.chapter-progress{top:111px}.identity .brand-mark{width:42px}.identity{font-size:10px;align-items:center}.identity small{font-size:5px;letter-spacing:.6px;margin-top:6px}.intro-copy{top:22%;width:61%}.portrait-scene{width:67%;right:-11%;height:76%}.intro-description p{max-width:280px}.flow-section{padding-block:95px}.career-layout{grid-template-columns:1fr;gap:50px}.career-intro{display:grid;grid-template-columns:1fr .8fr;gap:0 7%}.career-intro .section-kicker{grid-column:span 2}.career-intro h2{grid-row:2/5}.career-intro>p:not(.section-kicker){margin-top:8px;font-size:12px}.career-stat{margin:20px 0;gap:20px}.career-stat strong{font-size:65px}.career-stat>span{font-size:7px}.career-intro .text-link{width:max-content}.career-timeline{max-width:700px}.career-row{grid-template-columns:160px 1fr}.career-row:not(:last-child):after{left:159px}.career-row h3{font-size:32px}.career-period{font-size:9px}.section-heading{margin:50px 0}.section-heading h2,.career-intro h2{font-size:75px}.section-heading p{font-size:12px;max-width:280px}.service-row>summary{grid-template-columns:35px 1fr 180px 40px;gap:18px}.service-row h3{font-size:43px}.service-promise{font-size:11px}.service-expanded{padding-left:53px;gap:6%}.service-art{height:245px}.service-copy{font-size:12px}.service-expanded ul{grid-template-columns:1fr;gap:10px}.client-strip{grid-template-columns:repeat(3,1fr);gap:15px}.client-mark{height:90px}.client-mark strong{font-size:21px}.client-mark svg{width:36px}.contact-layout{grid-template-columns:1fr 1.2fr;gap:6%}.enquiry-panel{padding:25px}.form-grid{grid-template-columns:1fr;gap:0}.direct-email{font-size:30px}.social-links{grid-template-columns:1fr}.social-links a{padding:12px 0}.social-links small{display:none}.profile-facts{gap:25px}.profile-facts p{display:block}.profile-facts small{display:block;margin-top:8px}.museum-chapter .work-intro{top:140px}}
@media(max-width:600px){html{scroll-padding-top:130px}.introduction,.intro-stage,.reduced .introduction,.reduced .intro-stage{height:100svh;min-height:800px}.intro-copy{top:154px;width:88%;left:6%}.intro-name{margin:18px 0 13px;font-size:10px}.intro-copy .eyebrow{font-size:8px}.intro-copy h1{font-size:19.8vw;line-height:.88;letter-spacing:-1px}.intro-description{margin-top:20px}.intro-description p{font-size:10px;max-width:290px}.short-line{width:20px}.portrait-scene{height:46%;width:92%;right:-13%;bottom:10px}.hello-sticker{width:60px;height:60px;top:10%;left:3%;background:var(--accent);color:#18210a}.hello-sticker>span{font-size:37px}.intro-scroll{position:absolute;top:490px;max-width:95px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:8px;line-height:1.7;margin:0}.intro-scroll small{display:none}.scroll-circle{height:38px;width:38px}.intro-meta{font-size:7px;bottom:22px}.intro-meta>span:last-child{font-size:7px}.intro-step{display:none}.flow-section{padding:80px 6%}.section-top{padding-top:24px}.section-top .eyebrow{font-size:9px;letter-spacing:1px}.section-top .mono{display:none}.section-heading{display:block;margin:45px 0 40px}.section-heading h2,.career-intro h2{font-size:17vw;line-height:.98}.section-heading p{font-size:12px;line-height:1.9;margin-top:25px;max-width:340px}.career-layout{margin-top:40px;gap:50px}.career-intro{display:block}.section-kicker{font-size:8px}.career-intro>p:not(.section-kicker){font-size:12px;margin-top:25px}.career-stat{margin:28px 0}.career-stat strong{font-size:85px}.career-stat>span{font-size:8px}.career-row{grid-template-columns:84px 1fr;gap:23px;padding-bottom:32px}.career-row:not(:last-child):after{left:83px}.career-period{font-size:8px;padding-right:12px;line-height:1.8}.career-row h3{font-size:28px}.career-row .career-role{font-size:10px}.career-row p:last-child{font-size:10px}.experience-details{margin-top:25px}.experience-details>summary{font-size:12px;padding:24px 0;gap:15px}.experience-details>summary small{display:none}.experience-details>summary i{margin-left:auto}.detail-heading{display:block}.detail-heading h3{font-size:34px}.detail-heading p{margin-top:18px;font-size:11px}.credit-group summary{gap:15px;padding:20px 0}.credit-group summary>span{font-size:8px;width:80px;flex-shrink:0}.credit-group summary strong{font-size:11px}.credit-group li{padding:8px 12px;font-size:13px}.profile-facts{grid-template-columns:1fr;gap:25px}.profile-facts p{display:flex}.profile-facts small{margin:0}.service-row>summary{grid-template-columns:24px 1fr 35px;padding:28px 0;gap:16px}.service-row h3{font-size:43px;line-height:1}.service-row h3 br{display:block}.service-promise{display:none}.service-row>summary i{width:35px;height:35px;font-size:20px}.service-number{font-size:8px}.service-expanded{padding:0 0 30px;grid-template-columns:1fr;gap:25px}.service-art{height:230px}.service-copy{font-size:13px}.service-expanded ul{grid-template-columns:1fr 1fr;gap:14px;font-size:10px}.delivery-line{display:block;margin-top:30px}.delivery-line>span{font-size:7px}.delivery-line p{font-size:12px;margin:20px 0}.client-strip{grid-template-columns:repeat(2,1fr);gap:8px 15px;padding-block:24px}.client-mark{min-height:76px;height:76px;gap:8px}.client-mark strong{font-size:18px}.client-mark svg{width:32px}.client-preview-note{font-size:7px;line-height:1.9}.clients-footer{margin-top:30px}.clients-footer>span{display:none}.clients-footer .text-link{font-size:11px}.contact-layout{grid-template-columns:1fr;gap:50px}.contact-details>.eyebrow{margin-top:5px}.direct-email{font-size:39px}.direct-phone{font-size:26px}.location-note{font-size:8px;margin-block:30px 20px}.social-links{grid-template-columns:1fr 1fr}.social-links small{display:block}.social-links a{padding:15px 0}.enquiry-panel{padding:25px 20px}.enquiry-panel input:not([type=checkbox]),.enquiry-panel textarea{font-size:16px;line-height:1.6}.enquiry-panel input::placeholder,.enquiry-panel textarea::placeholder{font-size:11px}.form-note{font-size:9px}.service-options span{font-size:9px}.section-heading p br{display:none}.museum-chapter .work-intro{top:139px}.museum-tour-note{top:175px}.work-section{padding-top:75px}footer{padding:30px 6% 65px;font-size:8px}.connect-section{padding-bottom:70px}.enquiry-actions{gap:18px}.intro-stage:after{background:linear-gradient(0deg,#11170f,transparent 13%)}}
@media(max-width:360px){.site-header nav{gap:17px}.site-header nav a{font-size:9px}.identity small{font-size:4.5px}.intro-copy h1{font-size:20vw}.intro-scroll{top:510px}.portrait-scene{height:44%;width:97%;right:-18%}.career-row{grid-template-columns:76px 1fr;gap:20px}.career-row:not(:last-child):after{left:75px}.career-row h3{font-size:25px}.direct-email{font-size:34px}.service-options span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-block{opacity:1!important;transform:none!important}.service-expanded,.experience-expanded{animation:none!important}}

.icon-arrow{display:inline-block;width:16px;height:16px;vertical-align:middle;flex-shrink:0}.service-row>summary i .icon-arrow{width:21px;height:21px}.direct-email .icon-arrow{width:24px;height:24px}.social-links .icon-arrow{width:12px;height:12px}.door-caption .icon-arrow{width:22px;height:22px}.text-link .icon-arrow{margin-left:5px;width:13px;height:13px}.service-row>summary i{line-height:0}.contact-link .icon-arrow{width:12px;height:12px;margin-left:5px}

@media(max-width:600px){.portrait-scene{height:44%}.clients-section .section-heading h2{font-size:15vw}.section-heading .subtle{display:block;margin-top:6px}}

/* Preserve the artwork plane; overflow clipping can rasterize transformed photos incorrectly. */
.museum-art{transform-style:preserve-3d}.museum-mat{overflow:visible;transform:translateZ(1px);backface-visibility:hidden}

/* Phones use the compact menu; the horizontal tablet navigation starts above 600px. */
@media(max-width:600px){.site-header{height:72px;align-items:center;gap:8px;padding:0 6%}.site-header nav{display:none!important;position:absolute;top:72px;bottom:auto;left:5%;right:5%;height:auto;max-height:calc(100vh - 84px);max-height:calc(100dvh - 84px);padding:28px;background:#20271b;overflow-x:hidden;overflow-y:auto;justify-content:flex-start;gap:25px;white-space:normal;border:1px solid #566d3c;border-radius:5px;flex-direction:column;transform:none}.site-header nav.open{display:flex!important}.menu-toggle{display:grid!important;width:44px;height:44px;place-items:center;padding:0;flex:0 0 44px}.site-controls a,.site-controls button{min-height:44px}.chapter-progress{top:71px}.contact-layout>*{min-width:0}.direct-email{font-size:clamp(26px,7.2vw,39px);overflow-wrap:anywhere}}

/* iOS WebKit has a much smaller per-tab graphics budget than desktop browsers.
   Keep the complete portfolio usable while avoiding fixed canvases, WebGL bloom,
   large filter layers and compositor promotion on iPhone/iPad. */
html.ios-lite{scroll-behavior:auto}
html.ios-lite #network-bg,html.ios-lite #studio-fx,html.ios-lite #webgl,html.ios-lite .grain,html.ios-lite [data-open-room],html.ios-lite [data-sound-toggle],html.ios-lite .motion-control{display:none!important}
html.ios-lite :is(.portrait-scene,.live-photo,.card-image,.fx-outline,.cv-section.cinematic-cv){will-change:auto!important}
html.ios-lite :is(.hello-sticker,.round-button,.card-image:after,dialog::backdrop){backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
