.ribbon-stage{display:contents}
@media(max-width:1024px) and (max-height:600px) and (orientation:landscape){
 #viewer.viewer .viewer-title-row>.hf-badge{padding:3px 5px;gap:4px;flex:0 0 auto}
 #viewer.viewer .viewer-info .hf-logo{width:40px}
 #viewer.viewer .viewer-info .hf-hm{font-size:6px;gap:2px}
 #viewer.viewer .viewer-info .hf-hm svg{width:4px;height:10px}
 #viewer.viewer .viewer-info .hf-prize{font-size:6px;padding:4px}
}
@media(max-width:760px), (max-height:900px){
 #viewer.viewer:not(.image-view) .viewer-info{width:var(--player-width,100%)!important;flex:none}
 #viewer.viewer.open:not(.image-view) .viewer-inner{overflow-y:auto!important;overflow-x:hidden!important}
}
body::after{height:var(--footer-height,128px)!important}
.site-crafted{position:fixed;left:50%;transform:translateX(-50%);z-index:70;color:#aaa1b9;font:9px/1.4 monospace;letter-spacing:.06em;white-space:nowrap;text-decoration:none}
.site-crafted:hover,.site-crafted:focus-visible{color:#80e6c1;text-decoration:underline}
@media(max-width:760px){.site-crafted{font-size:8px}}
.stage-nav{background:#000!important;opacity:1;backdrop-filter:none}
#home .ribbon,#home .ribbon-card{cursor:grab;user-select:none;-webkit-user-select:none}
#home .ribbon.is-dragging,#home .ribbon.is-dragging .ribbon-card{cursor:grabbing}
@media(min-width:761px){body.scroll-mode #home .ribbon>.hero-mark{width:280px!important}}
/* Desktop also uses document flow: never fit independent absolute blocks into one screen. */
@media(min-width:761px){
 body.scroll-mode #home#home{top:64px!important;height:calc(100svh - 176px - env(safe-area-inset-bottom))!important;overflow-y:auto!important;overflow-x:hidden!important;display:block!important}
 body.scroll-mode #home .collage{display:flex!important;flex-direction:column;height:auto!important;min-height:100%;padding:28px 0 40px;box-sizing:border-box;gap:32px;width:100%}
 body.scroll-mode #home .hero-copy{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;flex:none;padding:0 24px!important;box-sizing:border-box;display:flex!important;flex-direction:column;align-items:center;gap:16px;transform:none!important}
 body.scroll-mode #home .hero-copy h1{position:static!important;inset:auto!important;transform:none!important;width:100%!important;font-size:clamp(30px,3.2vw,52px)!important;line-height:1!important;text-align:center!important}
 body.scroll-mode #home .hero-copy p{position:static!important;inset:auto!important;transform:none!important;margin:0!important;text-align:center!important;line-height:1.5}
 #home .hero-services{position:static!important;inset:auto!important;transform:none!important;width:100%;line-height:1.6}
 #home .ribbon-stage{position:relative!important;display:block!important;flex:none;width:100%;height:260px!important;overflow:hidden}
 #home .ribbon{inset:0!important;height:100%}
 #home .ribbon-card{height:230px!important;min-height:0;width:190px}
 body.scroll-mode #home .hero-mark{top:50%!important;left:50%;width:210px;z-index:5}
 #home .featured-row{position:relative!important;inset:auto!important;transform:none!important;width:min(100% - 48px,1000px)!important;max-width:1000px!important;margin:0 auto;gap:24px 20px;flex:none}
 #home .featured-row-heading{position:static;grid-column:1/-1;margin:0 0 2px}
 #home .featured-row>.showreel-card{position:relative;inset:auto;grid-column:1/-1;height:58px;margin:0}
}
#home .ribbon-card.is-motion .motion-badge{left:9px;right:auto;top:9px;bottom:auto}
#viewer .hf-link{color:#80e6c1;font:12px/1.5 monospace;text-decoration:underline;flex-basis:100%;margin-top:8px}
#home .featured-summary .featured-info{padding-top:18px!important}
#home .featured-summary .featured-info h3{margin-bottom:8px}
.credit-value{color:#80e6c1!important;display:inline!important}
.motion-credits{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;color:#999}
@media(max-width:760px), (max-height:900px){.viewer-info .motion-credits{flex-direction:column;align-items:flex-start;gap:6px}}
body::after{content:'';position:fixed;inset:auto 0 0;height:calc(112px + env(safe-area-inset-bottom));background:#000;z-index:65;pointer-events:none}
@media(min-width:761px) and (max-height:900px){
 #home .featured-row{max-width:880px}
 body.scroll-mode #home .hero-copy h1{font-size:clamp(28px,3vw,42px)!important}
 #home .ribbon-stage{height:240px}
 #home .ribbon-card{height:210px;width:175px}
}
.showreel-card::before{content:'';position:absolute;inset:0;z-index:1;background:rgba(112,35,220,.55);pointer-events:none}
.showreel-card h3{z-index:2!important}
.showreel-card{position:relative;grid-column:1/-1;order:99;width:100%;height:38px;padding:0;border:1px solid #ff4d1680;border-radius:12px;overflow:hidden;background:#090909;color:white;cursor:pointer;isolation:isolate}
.showreel-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;pointer-events:none}
.showreel-card h3{position:relative;z-index:1;margin:0;font:600 12px/1 monospace;letter-spacing:.25em;text-transform:uppercase;text-shadow:0 1px 8px #000}
.showreel-card:hover{border-color:#ff4d16}
@media(min-width:761px) and (min-height:901px){#home .ribbon{bottom:58%}#home .ribbon-card{height:19svh}#home .featured-row{top:46svh;width:min(1100px,90vw,58svh);transform:translateX(-50%) scale(.84);transform-origin:top center}}
@media(max-width:760px), (max-height:900px){
 #home .featured-row>.showreel-card{position:relative;inset:auto;grid-column:1/-1;height:58px;margin:0 0 4px}
}
#viewer .viewer-title-row>.hf-badge{position:static;flex:0 0 auto;margin-left:auto;transform:none;max-width:100%;gap:8px;padding:6px 10px}
#viewer .viewer-info .hf-logo{width:70px;height:auto}
#viewer .viewer-info .hf-hm{font-size:9px}
#viewer .viewer-info .hf-hm svg{display:block;width:7px;height:15px}
#viewer .viewer-info .hf-prize{font-size:8px;padding:6px 8px;white-space:nowrap}
@media(max-width:760px), (max-height:900px){
 #viewer .viewer-title-row>.hf-badge{gap:5px;padding:5px 7px}
 #viewer .viewer-info .hf-logo{width:54px}
 #viewer .viewer-info .hf-hm{font-size:8px}
 #viewer .viewer-info .hf-prize{font-size:7px;padding:5px}
}
#viewer.viewer.open>.close[data-viewport-fixed]{position:fixed!important;left:var(--viewport-close-left)!important;top:var(--viewport-close-top)!important;right:auto!important;bottom:auto!important;width:44px!important;height:44px!important;min-height:44px!important;transform:scale(var(--viewport-close-scale,1))!important;transform-origin:top left!important;background:#000c!important;border-radius:50%!important;transition:none!important}
.featured-top-card .featured-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2;pointer-events:none}
.featured-top-card.preview-playing .featured-poster{visibility:hidden}
.featured-top-card .hf-badge{z-index:3}
@media(max-width:760px), (max-height:900px){
 #viewer .viewer-info .featured-info p{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;text-align:left}
 #home .featured-summary .featured-info p{flex-direction:column!important;align-items:flex-start!important;text-align:left}
}
@media(max-width:760px), (max-height:900px){
 #viewer.viewer.open:not(.image-view){padding:48px max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left))!important;background:#000!important;height:100dvh;box-sizing:border-box}
 #viewer.viewer.open:not(.image-view) .viewer-inner{width:100%!important;max-width:100%!important;height:auto!important;max-height:100%!important;padding:0!important;overflow:visible!important;min-width:0}
 #viewer:not(.image-view) #viewerStage{display:flex;flex-direction:column;align-items:center;width:100%;min-width:0;gap:12px}
 #viewer.viewer.open video.viewer-media{flex:none;max-width:100%!important;max-height:none!important;object-fit:contain;border-radius:12px}
 #viewer:not(.image-view) .viewer-info{width:100%;max-width:100%;min-width:0;max-height:none;overflow:visible;scrollbar-width:none;box-sizing:border-box;padding:0!important;gap:8px}
 #viewer .viewer-title-row{flex-wrap:wrap;gap:8px 12px;align-items:center}
 #viewer .viewer-title-row>b,#viewer .viewer-title-row>h3{flex:1 1 140px;font-size:14px!important;line-height:1.35}
 #viewer .viewer-title-row>.cl-badge{margin:0;max-width:100%;flex:0 1 auto}
 #viewer .viewer-info .cl-badge{padding:5px 9px;gap:8px}
 #viewer .viewer-info .cl-badge .cl-tag{font-size:8px;letter-spacing:.07em}
 #viewer .viewer-info .cl-logo{max-width:34px;height:15px}
 #viewer .viewer-info h3{font-size:14px!important;line-height:1.35}
 #viewer .viewer-info .featured-info p{font-size:9px;line-height:1.5;gap:4px 12px}
}
@media(max-width:1024px) and (max-height:600px) and (orientation:landscape){
 #viewer.viewer.open:not(.image-view){padding:12px 32px!important;background:#000!important;height:100dvh;box-sizing:border-box}
 #viewer.viewer.open:not(.image-view) .viewer-inner{width:100%!important;height:100%!important;max-height:none!important;padding:0!important;overflow:hidden!important;justify-content:center}
 #viewer:not(.image-view) #viewerStage{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;gap:8px}
 #viewer.viewer.open video.viewer-media{flex:none;max-width:100%!important;max-height:none!important;object-fit:contain;border-radius:12px}
 #viewer:not(.image-view) .viewer-info{flex:none;max-height:none;overflow:visible;scrollbar-width:none;box-sizing:border-box;width:100%;max-width:100%;padding:0!important;gap:4px}
 #viewer:not(.image-view) .viewer-info h3,#viewer:not(.image-view) .viewer-title-row>b{font-size:13px!important;line-height:1.3}
 #viewer:not(.image-view) .viewer-info .cl-badge{padding:4px 9px}
}
body.panel-open #home{visibility:hidden!important;pointer-events:none!important}
body.scroll-mode #motion,body.scroll-mode #stills{background:#000!important}
#home:focus{outline:none}
html,body.scroll-mode{height:100%;overflow:hidden!important}
body.scroll-mode #stills#stills.category-panel{overflow-y:auto!important;overflow-x:hidden!important}
body.scroll-mode #stills#stills .stills{display:grid!important;flex:none!important;height:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:auto!important;gap:14px!important}
body.scroll-mode #stills#stills .stills button:nth-of-type(n){grid-column:auto!important;grid-row:auto!important;width:100%!important;height:auto!important;aspect-ratio:16/10;overflow:hidden}
@media(max-width:760px), (max-height:900px){body.scroll-mode #stills#stills .stills{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}}
.viewer.image-view #viewerStage{align-items:center;justify-content:center}
.viewer.image-view #viewerStage .viewer-media{flex:0 1 auto;width:auto;height:auto;max-width:100%;max-height:calc(100% - 42px);min-height:0;border-radius:24px;object-fit:contain}
.hero-name{position:absolute;left:50%;transform:translateX(-50%);width:max-content;white-space:nowrap;font:600 10px/1.5 monospace;letter-spacing:.3em;color:#80e6c1;pointer-events:none}
body.panel-open .hero-name{opacity:0}
.site-copyright{position:fixed;left:50%;top:var(--copyright-center,calc(100svh - 20px));transform:translate(-50%,-50%);white-space:nowrap;z-index:70;color:#aaa1b9;font:11px/1.4 monospace;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}
@media(max-width:760px), (max-height:900px){.site-copyright{font-size:9px;letter-spacing:.06em}}
.category-panel,.viewer-inner{scrollbar-width:none;-ms-overflow-style:none}
.category-panel::-webkit-scrollbar,.viewer-inner::-webkit-scrollbar{display:none;width:0;height:0}
body.scroll-mode main{margin:0;height:100svh;overflow:hidden}
.topbar,body.scroll-mode footer,.scroll-note,.micro{display:none!important}
body.scroll-mode #home{position:absolute!important;inset:0!important;height:100svh!important;padding:0!important;min-height:0!important}
body.scroll-mode #home .collage{width:100%;height:100%;min-height:0}
.tile-ring{display:none!important}
body.scroll-mode .hero-mark{top:48%;width:clamp(210px,22vw,380px);z-index:5}
body.scroll-mode #home .ribbon > .hero-mark{top:50%!important;left:50%}
body.scroll-mode .hero-copy h1{left:4vw;bottom:6vh;width:92vw;transform:none;font-size:clamp(25px,4.1vw,64px);line-height:.98;letter-spacing:-.06em}
body.scroll-mode .hero-copy p{left:4.2vw;bottom:3vh;transform:none}
.ribbon{position:absolute;inset:19% 0 29%;overflow:hidden;perspective:1100px;touch-action:pan-y}
.ribbon-card{position:absolute;left:50%;top:50%;width:clamp(160px,16vw,280px);height:clamp(210px,31vh,360px);padding:0;border:1px solid #ffffff30;border-radius:22px;overflow:hidden;background:#090909;color:#fff;cursor:pointer;will-change:transform}
.ribbon-card{width:clamp(160px,13vw,240px)}
.ribbon-card img{width:100%;height:100%;object-fit:cover;display:block}
#contact .field:nth-child(3){grid-column:1/-1}
.ribbon-card span{position:absolute;bottom:0;left:0;right:0;background:#000a;padding:13px;text-align:left;font-size:12px;font-weight:700;line-height:1.2;text-transform:uppercase}
.stage-nav{position:fixed;z-index:70;bottom:23vh;left:50%;transform:translateX(-50%);display:flex;gap:12px;padding:8px;background:#000b;border-radius:40px}
.stage-nav button,.panel-close{padding:13px 22px;min-height:44px;border:1px solid #ffffff38;border-radius:30px;color:white;background:#080808;font:11px monospace;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.stage-nav button[aria-pressed=true]{background:#7434f5;border-color:#9464ff}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #b994ff;outline-offset:4px}
body.scroll-mode .category-panel:not(#home){position:fixed!important;inset:4vh 4vw 17vh!important;width:auto!important;height:auto!important;min-height:0!important;padding:32px!important;overflow:auto!important;overscroll-behavior:contain;background:rgba(5,5,8,.98);border:1px solid #ffffff25;border-radius:24px;z-index:30;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(70px) scale(.95)!important;transition:opacity .45s,transform .65s cubic-bezier(.2,.8,.2,1),visibility .45s!important}
body.scroll-mode .category-panel.is-open:not(#home){opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
body.panel-open .stage-nav{bottom:var(--nav-bottom,1.4svh)}
body.panel-open .hero-copy h1,body.panel-open .hero-copy p{opacity:0}
.panel-close{position:sticky;top:0;display:block;margin:0 0 12px auto;z-index:8}
body.scroll-mode .featured-grid{display:grid!important}
body.scroll-mode .featured-grid,body.scroll-mode .work-grid,body.scroll-mode .stills{width:100%!important;max-width:none!important;margin:0!important;min-width:0}
body.scroll-mode .category-panel:not(#home){overflow-x:hidden!important}
body.scroll-mode .featured-item,body.scroll-mode .project{min-width:0}
body.scroll-mode #contact.is-open{display:grid!important;grid-template-columns:1fr 1.2fr;gap:5vw;align-content:center}
#contact .panel-close{grid-column:1/-1}
#contact .field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}
#contact label{font-size:13px;color:#e9dfff}
#contact input,#contact textarea{width:100%;padding:15px 17px;background:#211c2b;border:1px solid #746781;border-radius:10px;color:#fff;font:16px Arial}
#contact textarea{min-height:130px;resize:vertical}
#contact input::placeholder,#contact textarea::placeholder{color:#b3a9bf}
.viewer{z-index:100}
.viewer-inner{max-height:90svh;overflow:auto}
.viewer.image-view{padding:20px}
.viewer.image-view .viewer-inner{width:min(1180px,100%);height:calc(100svh - 40px);max-height:none;overflow:hidden;display:flex;flex-direction:column}
.viewer.image-view .close{position:static;align-self:flex-end;flex:none;min-height:40px;margin:0 0 8px;padding:10px}
.viewer.image-view #viewerStage{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;overflow:hidden}
.viewer.image-view .viewer-media{width:100%;height:100%;min-height:0;flex:1;max-height:none;object-fit:contain}
.viewer.image-view .gallery-counter{flex:none;margin:12px 0 0;line-height:1.5;overflow-wrap:anywhere}
.viewer.image-view .viewer-nav{inset:48px 8px 35px}
.viewer.image-view .viewer-nav button{transform:none!important}
.viewer-info{padding:15px 0;color:#fff}
.viewer-info h3{margin:0 0 8px}
.viewer-info .cl-badge{position:static;display:inline-flex}
.viewer-info p{margin:8px 0}
.viewer-nav[hidden]{display:none!important}
.category-panel .section-head h2{font-size:26px!important;line-height:1.1!important;margin:0!important;letter-spacing:-.025em!important}
.category-panel .section-head{justify-content:flex-start!important;align-items:center!important;gap:24px!important;box-sizing:border-box}
.category-panel .section-head>span{position:static!important;width:auto!important;max-width:580px!important;text-align:left!important;font:400 11px/1.5 Arial,sans-serif!important;letter-spacing:.015em!important;text-transform:none!important;color:#aaa4b6;flex:1;min-width:0}
@media(max-width:760px), (max-height:900px){.category-panel .section-head{height:auto!important;min-height:56px;align-items:flex-start!important;flex-direction:column;gap:6px!important;padding-right:48px!important;margin-bottom:16px!important}.category-panel .section-head>span{font-size:10px!important}}
@media(min-width:761px) and (min-height:901px){
 #motion{container-type:inline-size}
 body.scroll-mode #motion#motion .work-grid{max-height:none!important}
 body.scroll-mode #motion#motion .work-grid{flex:none!important;width:100%!important;height:calc(100% - 56px)!important;align-self:center;grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-template-rows:minmax(0,min(18cqw,22%)) minmax(0,min(18cqw,22%)) minmax(0,min(14cqw,18%)) minmax(0,1fr)!important;gap:10px!important}
 body.scroll-mode #motion#motion .work-grid .project:nth-of-type(n){grid-column:span 4!important;grid-row:auto!important}
 body.scroll-mode #motion#motion .work-grid .project:nth-of-type(n+7):nth-of-type(-n+10){grid-column:span 3!important}
 body.scroll-mode #motion#motion .work-grid .project:last-child{grid-column:1/-1!important}
 #motion .project figure video{object-fit:cover}
}
.viewer-media{max-height:65svh}
.gallery-counter{font:12px monospace;color:#c6b9d9;margin-top:10px}
@media(max-width:760px), (max-height:900px){
 .ribbon{inset:14% 0 35%}.ribbon-card{width:145px;height:205px;border-radius:16px}.ribbon-card span{font-size:10px}
 body.scroll-mode .hero-mark{top:40%;width:175px}
 .stage-nav{bottom:26vh;gap:5px;width:max-content;max-width:98vw;padding:4px}
 .stage-nav button{font-size:9px;padding:12px 10px;letter-spacing:.05em}
 body.scroll-mode .hero-copy h1{bottom:10vh;font-size:5.5vw}
 body.scroll-mode .hero-copy p{bottom:6vh}
 body.scroll-mode .category-panel:not(#home){inset:2vh 2vw 15vh!important;padding:16px!important}
 body.scroll-mode #contact.is-open{display:block!important}
 body.scroll-mode .work-grid{grid-template-columns:1fr!important;grid-template-rows:none!important;display:flex!important;flex-direction:column}
 body.scroll-mode .work-grid .project{height:220px;flex:none}
 .viewer{padding:16px}
}
@media(prefers-reduced-motion:reduce){.category-panel{transition:none!important}}

/* Featured films above the logo, continuous ribbon below it. */
.featured-row{position:absolute;top:5svh;left:50%;transform:translateX(-50%);width:min(92vw,1450px,156svh);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.4vw,24px);z-index:10}
.featured-top-card{position:relative;aspect-ratio:2.35 / 1;width:100%;padding:0;border:1px solid #ffffff24;border-radius:16px;overflow:hidden;background:#080808;cursor:pointer;color:#fff}
.featured-top-card video{width:100%;height:100%;object-fit:cover;display:block}
.featured-top-title{position:absolute;inset:auto 0 0;padding:20px 12px 10px;background:linear-gradient(transparent,#000c);font:bold clamp(9px,1vw,16px)/1.2 Arial;text-align:left;text-transform:uppercase}
.featured-top-card .cl-badge{padding:5px 9px;top:7px;right:7px;gap:7px}
.featured-top-card .cl-tag{font-size:7px}
body.scroll-mode .hero-mark{top:40%;width:clamp(150px,29svh,340px)}
.ribbon{inset:54% 0 23%}
.ribbon-card{height:21svh;min-height:100px;width:clamp(150px,13vw,240px)}
.stage-nav{bottom:16svh}
body.scroll-mode .hero-copy h1{bottom:4.8svh;font-size:clamp(24px,3.3vw,48px)}
body.scroll-mode .hero-copy p{bottom:2svh}
@media(max-width:760px), (max-height:900px){
 .featured-row{top:7svh;width:96vw;gap:5px}
 .featured-top-card{border-radius:8px}
 .featured-top-title{font-size:7px;padding:10px 5px 5px}
 .featured-top-card .cl-badge{display:none}
 body.scroll-mode .hero-mark{top:35%;width:190px}
 .ribbon{inset:50% 0 26%}.ribbon-card{height:20svh;width:145px}
 .stage-nav{bottom:18svh}
 body.scroll-mode .hero-copy h1{bottom:7svh;font-size:5.5vw}
 body.scroll-mode .hero-copy p{bottom:3.5svh}
}

/* Logo travels as a reserved slot in the ribbon; Featured lives below. */
.ribbon{inset:5% 0 54%}
.ribbon-card{height:26svh;max-height:290px}
body.scroll-mode .hero-mark{top:25.5%;width:clamp(170px,30svh,340px)}
.featured-row{top:51svh;width:min(92vw,1450px,210svh);gap:20px}
.featured-summary{min-width:0}
.featured-row-heading{position:absolute;left:0;bottom:calc(100% + 15px);margin:0;color:#f4a465;font:11px monospace;letter-spacing:.18em;text-transform:uppercase}
.featured-summary .featured-top-card{border:1px solid #e984367d;transition:border-color .25s,box-shadow .25s}
.featured-summary .featured-top-card:hover,.featured-summary .featured-top-card:focus-visible{animation:featured-orange-pulse 1.25s ease-in-out infinite}
@keyframes featured-orange-pulse{0%,100%{border-color:#f39a53;box-shadow:0 0 0 1px #ef88372b,0 0 10px #ff791b12}50%{border-color:#ffc08a;box-shadow:0 0 0 2px #ff9b5266,0 0 22px #ff791b38}}
.featured-summary .featured-info{padding:10px 0 0;text-align:left}
.featured-summary .featured-info h3{font-size:clamp(12px,1.2vw,20px)!important;line-height:1.15;margin:0 0 7px}
.featured-summary .featured-info p{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:9px;line-height:1.5;margin:4px 0}
.featured-summary .featured-note{font-size:11px;line-height:1.4}
.hf-badge{position:absolute;top:7px;right:7px;display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #c8f00075;border-radius:30px;background:#0b1009ed;color:#cbfa00}
.hf-logo{width:65px;height:auto;filter:none}.hf-hm{display:flex;align-items:center;gap:4px;font:9px monospace}.hf-hm svg{width:7px;height:15px;fill:currentColor;stroke:currentColor}.hf-hm .flip{transform:scaleX(-1)}.hf-prize{font:bold 8px monospace;border-radius:20px;padding:6px;background:#cbfa00;color:#101800;text-transform:uppercase}
.stage-nav{bottom:6svh}
body.scroll-mode .hero-copy h1{bottom:2.8svh;font-size:clamp(18px,2.4vw,32px);width:auto}
body.scroll-mode .hero-copy p{bottom:1svh;font-size:8px}
@media(max-width:760px), (max-height:900px){
 .ribbon{inset:5% 0 59%}.ribbon-card{height:23svh}
 body.scroll-mode .hero-mark{top:23%;width:190px}
 .featured-row{top:47svh;width:96vw;gap:6px}
 .featured-summary .featured-info h3{font-size:9px!important}
 .featured-summary .featured-info p,.featured-summary .featured-note{font-size:7px;line-height:1.3}
 .hf-badge{top:3px;right:3px;padding:3px;gap:3px}.hf-logo{width:26px}.hf-hm{font-size:6px}.hf-hm svg{display:none}.hf-prize{font-size:5px;padding:3px}
 .stage-nav{bottom:14svh}
 body.scroll-mode .hero-copy h1{bottom:5svh;font-size:5vw}
 body.scroll-mode .hero-copy p{bottom:2svh}
}

/* Centered heading, lowered ribbon and two-plus-one Featured layout. */
body.scroll-mode .hero-copy h1{top:3svh;bottom:auto;left:50%;transform:translateX(-50%);width:96vw;text-align:center;font-size:clamp(25px,4svh,58px)}
body.scroll-mode .hero-copy p{top:12svh;bottom:auto;left:50%;transform:translateX(-50%);text-align:center;font-size:clamp(8px,.8vw,11px)}
.ribbon{inset:18% 0 54%}
.ribbon-card{height:23svh;max-height:290px}
body.scroll-mode .hero-mark{top:32%;width:clamp(150px,26svh,300px)}
.featured-row{top:52svh;width:min(1100px,90vw,58svh);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.featured-summary:last-child{grid-column:1/-1}
.featured-summary:last-child .featured-top-card{aspect-ratio:3.5/1}
.featured-summary .featured-info{padding-top:5px}
.featured-summary .featured-info h3{font-size:clamp(10px,1.1svh,17px)!important;margin-bottom:4px}
.featured-summary .featured-info p{font-size:clamp(7px,.65svh,10px);gap:3px 8px}
.featured-summary .featured-note{font-size:clamp(8px,.8svh,12px);line-height:1.3}
.featured-summary .featured-top-card{border-color:#ff7100;border-width:2px}
@keyframes featured-orange-pulse{0%,100%{border-color:#ff6900;box-shadow:0 0 0 1px #ff69003b,0 0 9px #ff690026}50%{border-color:#ffad38;box-shadow:0 0 0 2px #ff7b007a,0 0 22px #ff6a0055}}
.ribbon-card.is-motion{border:2px solid #8e49ff}
.ribbon-card .motion-badge{inset:9px 9px auto auto;width:auto;padding:6px 10px;border:1px solid #b185ff;border-radius:30px;background:#5925bde6;font:9px monospace;letter-spacing:.12em;color:white}
.stage-nav{bottom:1.4svh}
@media(max-width:760px), (max-height:900px){
 body.scroll-mode .hero-copy h1{top:4svh;font-size:6vw}
 body.scroll-mode .hero-copy p{top:12svh;font-size:8px}
 .featured-row{top:51svh;width:min(94vw,58svh);gap:10px}
 .ribbon{inset:19% 0 54%}.ribbon-card{height:21svh}
 body.scroll-mode .hero-mark{top:32.5%;width:170px}
 .stage-nav{bottom:1.4svh}
 .featured-summary .featured-info p{font-size:7px}
}

/* Thin resting strokes, asymmetric short pulses on interaction. */
.featured-summary .featured-top-card{border-width:1px;border-color:#ff710080;--stroke:#ff7900}
.ribbon-card.is-motion{border-width:1px;border-color:#8e49ff8c;--stroke:#a062ff}
.featured-summary .featured-top-card:hover,.featured-summary .featured-top-card:focus-visible{animation:none;border-color:#ff8b33}
.featured-top-card::after,.ribbon-card.is-motion::after{content:'';position:absolute;inset:3px;pointer-events:none;z-index:6;border:1px solid var(--stroke);border-radius:13px 18px 11px 17px;opacity:0}
.featured-top-card:hover::after,.featured-top-card:focus-visible::after,.ribbon-card.is-motion:hover::after,.ribbon-card.is-motion:focus-visible::after{animation:playful-stroke 1.55s ease-in-out infinite}
@keyframes playful-stroke{0%,100%{opacity:.15;transform:scale(.997) rotate(0)}22%{opacity:1;transform:scale(1.006,.985) rotate(-.45deg);border-width:1px 2px 1px 1px}45%{opacity:.45;transform:scale(.992,1.006) rotate(.3deg);border-width:1px}68%{opacity:.9;transform:scale(1.004,.994) rotate(-.15deg);border-width:1px 1px 2px 1px}84%{opacity:.25;transform:scale(.998) rotate(.1deg)}}
.topbar{display:flex!important;inset:18px auto auto 24px;width:max-content;height:30px;padding:0;border:0;background:transparent;overflow:visible}
.topbar nav{display:none!important}
.topbar .brand{display:flex;align-items:center;gap:10px}
.topbar .brand img{width:30px;height:30px;object-fit:contain;filter:brightness(0) invert(1)}
.topbar .brand span{display:inline!important;font-size:13px;color:white}
.topbar .brand .brand-name{color:#80e6c1;line-height:1.5}
body.scroll-mode .hero-copy h1 span{display:table;margin:0 auto;white-space:nowrap;line-height:.95}
@media(max-width:760px), (max-height:900px){.topbar{top:12px;left:14px}.topbar .brand img{width:23px;height:23px}.topbar .brand span{font-size:10px}body.scroll-mode .hero-copy h1{top:7svh}}

/* A soft orange backing peeks out, rather than a second inner outline. */
.featured-summary .featured-top-card{overflow:visible;isolation:isolate;box-shadow:none}
.featured-summary .featured-top-card video{border-radius:inherit;position:relative;z-index:1}
.featured-summary .featured-top-card::after{display:none;animation:none}
.featured-summary .featured-top-card::before{content:'';position:absolute;inset:0;z-index:-1;background:#ff7300;border-radius:inherit;filter:blur(2px);opacity:0;transform:translate(0,0) rotate(0);transition:opacity .3s,transform .4s;pointer-events:none}
.featured-summary .featured-top-card:hover::before,.featured-summary .featured-top-card:focus-visible::before{opacity:.85;animation:orange-backing .48s ease-out both}
.featured-summary .featured-top-card:hover,.featured-summary .featured-top-card:focus-visible{border-color:#ff710080;box-shadow:none;animation:none}
.featured-top-card .cl-badge,.featured-top-card .hf-badge{z-index:4}
@keyframes orange-backing{0%{inset:0;transform:none;opacity:0}35%{inset:-3px;transform:none;opacity:.85}65%{inset:-1.7px;transform:none;opacity:.8}100%{inset:-2px;transform:none;opacity:.8}}
@media(prefers-reduced-motion:reduce){.featured-summary .featured-top-card:hover::before{animation:none;transform:translate(-3px,3px)}}

/* Crisp backing patches, shared by featured and motion cards. */
.ribbon-card.is-stills{border:1px solid #80e6c18c;overflow:visible;isolation:isolate}
.ribbon-card.is-stills img{position:relative;z-index:1;border-radius:inherit}
.ribbon-card.is-stills span{z-index:2}
.ribbon-card.is-stills::before{content:'';position:absolute;inset:0;z-index:-1;background:#80e6c1;border-radius:inherit;opacity:0;transition:opacity .3s;pointer-events:none}
.ribbon-card.is-stills:hover::before,.ribbon-card.is-stills:focus-visible::before{opacity:.85;animation:orange-backing .48s ease-out both}
.ribbon-card .stills-badge{background:#153e32e6;border-color:#80e6c1;color:#80e6c1}
.featured-summary .featured-top-card::before{filter:none}
.ribbon-card.is-motion{overflow:visible;isolation:isolate;box-shadow:none}
.ribbon-card.is-motion img{position:relative;z-index:1;border-radius:inherit}
.ribbon-card.is-motion span{z-index:2;border-radius:0 0 21px 21px}
.ribbon-card.is-motion .motion-badge{border-radius:30px}
.ribbon-card.is-motion::after{display:none;animation:none}
.ribbon-card.is-motion::before{content:'';position:absolute;inset:0;z-index:-1;background:#9145ff;border-radius:inherit;opacity:0;transform:translate(0,0);transition:opacity .3s;pointer-events:none}
.ribbon-card.is-motion:hover::before,.ribbon-card.is-motion:focus-visible::before{opacity:.85;animation:orange-backing .48s ease-out both}
body.scroll-mode .hero-copy h1{top:7svh}
@media(max-width:760px), (max-height:900px){body.scroll-mode .hero-copy h1{top:10svh}}
@media(prefers-reduced-motion:reduce){.ribbon-card.is-motion:hover::before,.ribbon-card.is-motion:focus-visible::before{animation:none;transform:translate(-3px,3px)}}

/* Quieter editorial labels, with room for long production names. */
.ribbon-card span:not(.motion-badge){font-family:Arial,sans-serif;font-size:10px;font-weight:500;letter-spacing:.035em;line-height:1.35;padding:24px 11px 11px;background:linear-gradient(transparent,rgba(0,0,0,.85));border-radius:0 0 21px 21px;text-transform:none}
.ribbon-card .motion-badge{font-size:7px;padding:5px 8px;letter-spacing:.1em}
.featured-summary .featured-info h3{font-size:clamp(10px,.85svh,14px)!important;line-height:1.25}
.featured-summary .featured-info p{font-size:clamp(7px,.55svh,9px)}
.featured-summary .featured-note{font-size:clamp(8px,.7svh,11px)}
@media(max-width:760px), (max-height:900px){
 .ribbon-card span:not(.motion-badge){font-size:9px;padding:22px 9px 9px}
 .featured-row{width:92vw;gap:10px 12px}
 .featured-summary .featured-info h3{font-size:10px!important}
 .featured-summary .featured-info p{font-size:7px;line-height:1.5;display:flex;flex-wrap:wrap;letter-spacing:.04em}
 .featured-summary .featured-note{font-size:9px}
 .featured-top-card .cl-badge,.featured-top-card .hf-badge{max-width:calc(100% - 10px);right:5px;top:5px;transform:scale(.75);transform-origin:top right}
 .stage-nav{gap:7px;bottom: max(10px,env(safe-area-inset-bottom));padding:4px}
 .stage-nav button{font-size:9px;padding:12px 16px}
}
@media(prefers-reduced-motion:reduce){.ribbon-card.is-stills:hover::before,.ribbon-card.is-stills:focus-visible::before{animation:none}}

/* Viewer captions must not depend on the source card's grid styles. */
.featured-summary .featured-top-card,.featured-summary .featured-top-card:hover,.featured-summary .featured-top-card:focus-visible{border-color:#ff4a168c;--stroke:#ff4a16}
.featured-summary .featured-top-card::before{background:#ff4a16}
.hero-services{position:absolute;left:50%;transform:translateX(-50%);width:90vw;text-align:center;font:400 12px/1.6 Arial,sans-serif;letter-spacing:.025em;color:#b8b2c2;pointer-events:none}
body.panel-open .hero-services{opacity:0}
.hero-services .services-note{margin-top:5px;font-size:.9em;color:#8f899b;letter-spacing:.01em}
@media(max-width:760px), (max-height:900px){.hero-services{font-size:9px;width:94vw;letter-spacing:0}}
body.scroll-mode #contact#contact.category-panel{inset:50% auto auto 50%!important;width:min(720px,calc(100vw - 40px))!important;height:auto!important;max-height:calc(100svh - 130px);padding:52px 44px 36px!important;transform:translate(-50%,-45%)!important;overflow:auto!important}
body.scroll-mode #contact#contact.category-panel.is-open{display:grid!important;grid-template-columns:1fr!important;gap:28px!important;transform:translate(-50%,-50%)!important;align-content:start!important}
body.scroll-mode #contact.category-panel .panel-close{position:absolute!important;top:14px!important;right:14px!important}
body.scroll-mode #contact#contact.category-panel > .panel-close{position:absolute!important;inset:14px 14px auto auto!important;grid-area:auto!important;transform:none!important;margin:0!important;z-index:80}
#contact .contact-eyebrow{font:11px/1.5 monospace;letter-spacing:.16em;text-transform:uppercase;color:#80e6c1;margin:0 0 16px}
#contact .contact-intro h2{font:600 clamp(36px,4.5vw,58px)/1.05 Arial,sans-serif;letter-spacing:-.04em;color:#f3eff9;margin:0 0 20px}
#contact .contact-description{font:14px/1.6 Arial,sans-serif;color:#aaa4b6;margin:0}
#contact .contact-details{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid #ffffff20;padding-top:24px;gap:12px}
#contact .contact-email{font:500 clamp(18px,2.5vw,25px)/1.4 Arial,sans-serif;color:#f3eff9;text-decoration:none;letter-spacing:0;overflow-wrap:anywhere}
#contact .contact-phone{font:15px/1.5 Arial,sans-serif;color:#bab3c6;text-decoration:none;letter-spacing:.02em}
#contact .contact-send{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:12px;padding:14px 22px;border-radius:999px;background:#7939ff;color:white;text-decoration:none;font:500 14px/1.3 Arial,sans-serif;transition:background .2s}
#contact .contact-send:hover{background:#925cff}
#contact .contact-hint{font:11px/1.5 Arial,sans-serif;color:#8e879c;margin:0}
@media(max-width:760px), (max-height:900px){body.scroll-mode #contact.category-panel{padding:52px 24px 26px!important}#contact .contact-intro h2{font-size:38px}body.scroll-mode #contact.category-panel.is-open{gap:22px!important}}
.panel-backdrop{position:fixed;inset:0;z-index:29;background:#000;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s}
body.panel-open .panel-backdrop{visibility:visible;opacity:1}
body.scroll-mode .category-panel .panel-close{position:fixed!important;top:calc(4svh + 14px)!important;right:calc(4vw + 14px)!important;margin:0!important;padding:8px 12px!important;min-height:32px!important;font:9px/1.2 monospace!important;letter-spacing:.08em;z-index:80;background:#0a090eeF}
@media(max-width:760px), (max-height:900px){body.scroll-mode .category-panel .panel-close{top:calc(2svh + 10px)!important;right:calc(2vw + 10px)!important;min-height:40px!important}}
:root{--nav-bottom:calc(1.4svh + 40px)}
.stage-nav{bottom:var(--nav-bottom)!important}
@media(max-width:760px), (max-height:900px){:root{--nav-bottom:calc(max(10px,env(safe-area-inset-bottom)) + 40px)}}
.site-copyright{font-size:10px}
@media(max-width:760px), (max-height:900px){.site-copyright{font-size:8px}}
@media(min-width:761px) and (min-height:901px){
 body.scroll-mode .category-panel:not(#home){inset:4svh 4vw 11svh!important;overflow:hidden!important;padding:24px!important}
 body.scroll-mode #motion,body.scroll-mode #stills{display:flex!important;flex-direction:column;gap:12px}
 .category-panel .panel-close{position:absolute;right:24px;top:18px;margin:0}
 .category-panel .section-head{display:flex!important;flex:none;height:44px;margin:0!important;padding-right:110px}
 .category-panel .panel-center{display:none!important}
 body.scroll-mode .work-grid,body.scroll-mode .stills{flex:1;min-height:0!important;height:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;gap:12px!important}
 body.scroll-mode .work-grid .project:nth-of-type(n),body.scroll-mode .stills button:nth-of-type(n){position:relative!important;inset:auto!important;grid-column:auto!important;grid-row:auto!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important}
 body.scroll-mode .work-grid .project:last-child{grid-column:span 2!important}
 body.scroll-mode .stills button:last-of-type:not(.stills-more){grid-column:span 2!important}
 body.scroll-mode .stills .stills-more{grid-column:4!important;grid-row:3!important;align-self:stretch}
 .work-grid .project figure{height:100%!important;min-height:0}
 .category-panel .work-grid .project figcaption b{font-size:clamp(10px,1vw,15px)!important}
 body.scroll-mode #contact.is-open{grid-template-columns:1fr 1.2fr;align-items:center;gap:4vw;padding-top:72px!important}
 #contact .panel-close{grid-column:auto}
 #contact h2{font-size:clamp(24px,3vw,52px);line-height:1.1}
 #contact .field{gap:6px;margin-bottom:12px}
 #contact input,#contact textarea{padding:10px 12px;font-size:14px}
 #contact textarea{min-height:70px;height:12svh;max-height:140px;resize:none}
 .viewer-inner{max-height:94svh;overflow:hidden}
 .viewer video.viewer-media{max-height:calc(94svh - 225px);object-fit:contain}
}
.viewer{background:rgba(3,3,5,.97)}
.viewer-inner{position:relative;display:flex;flex-direction:column}
.viewer .close{position:static;align-self:flex-end;flex:none;min-height:40px;margin:0 0 10px;padding:10px 16px}
.viewer.open .close{position:absolute!important;top:10px!important;right:10px!important;display:grid!important;place-items:center;visibility:visible!important;opacity:1!important;transform:none!important;margin:0!important;padding:0!important;width:36px;height:36px;min-height:36px;font:26px/1 Arial,sans-serif!important;letter-spacing:0;z-index:110;background:#0a090ecc;border:1px solid #ffffff38;border-radius:50%;color:white;cursor:pointer}
.viewer-info{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:12px 24px;padding:18px 0 8px;min-width:0}
.viewer-info>figcaption,.viewer-info>.featured-info,.viewer-info>h3{flex:1 1 280px;min-width:0}
.viewer-info>.cl-badge{flex:0 0 auto;margin-left:auto}
.viewer.open .close{top:var(--close-top,14px)!important;right:var(--close-right,14px)!important;width:30px!important;height:30px!important;min-height:30px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.viewer.open .close:hover{background:transparent!important;color:#80e6c1}
.viewer.open .close svg{display:block;pointer-events:none}
.viewer.open>.close{position:fixed!important;bottom:auto!important;left:auto!important}
.viewer.open .viewer-inner{padding-top:44px;box-sizing:border-box;overflow:visible}
.viewer.open{padding:40px}
.viewer.image-view.open .viewer-inner{height:calc(100svh - 80px)}
.viewer-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;width:100%;min-width:0}
.viewer-title-row>b,.viewer-title-row>h3{flex:1;min-width:0;margin:0;font:600 clamp(16px,1.3vw,22px)/1.35 Arial,sans-serif;letter-spacing:0;overflow-wrap:anywhere}
.viewer-title-row>.cl-badge{flex:none}
.viewer-info .cl-badge{border-color:#80e6c17a!important;background:#112a22!important;color:#80e6c1!important}
.viewer-info .cl-badge .cl-tag{color:#80e6c1!important}
#motion .section-head>span,#stills .section-head>span{font:600 9px/1.5 monospace!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:#84f4d2!important}
.viewer-info figcaption:empty,.viewer-info .featured-info:empty{display:none}
@media(max-width:600px){.viewer-title-row{flex-wrap:wrap;gap:10px}.viewer-title-row>b,.viewer-title-row>h3{flex-basis:220px}.viewer-title-row>.cl-badge{margin-left:auto}}
.viewer-info figcaption,.viewer-info .featured-info{position:static;display:flex;flex-direction:column;gap:7px;padding:0;margin:0;background:none;max-width:100%}
.viewer-info figcaption b,.viewer-info h3{display:block;margin:0;font:600 clamp(16px,1.3vw,22px)/1.35 Arial,sans-serif;letter-spacing:0;text-transform:none;overflow-wrap:anywhere}
.viewer-info figcaption>span{display:block;margin:0;color:#80e6c1;font:400 11px/1.5 monospace;letter-spacing:.07em}
.viewer-info .featured-info p{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;font:400 11px/1.6 Arial,sans-serif;letter-spacing:.025em;color:#c1bbc9}
.viewer-info .cl-badge{position:static;display:inline-flex;flex-wrap:wrap;align-items:center;gap:12px;padding:9px 15px;max-width:100%;box-sizing:border-box;transform:none}
.viewer-info .cl-badge .cl-logo{width:auto;height:21px;max-width:56px;object-fit:contain}
.viewer-info .cl-badge .cl-logo-wide,.viewer-info .cl-badge.cl-wide .cl-logo{height:15px}
.viewer-info .cl-badge .cl-tag{font:400 11px/1.4 monospace;letter-spacing:.1em;white-space:nowrap}
.viewer .gallery-counter{font:400 12px/1.5 Arial,sans-serif;letter-spacing:.02em;color:#c1bbc9}
.work-grid .project figcaption b{line-height:1.3!important;letter-spacing:0!important}
.work-grid .project figcaption span{line-height:1.5!important;letter-spacing:.09em!important}
.featured-summary .featured-info p{line-height:1.6;column-gap:16px;row-gap:6px}
@media(max-width:760px), (max-height:900px){
 .viewer-info{gap:10px;padding-top:14px}
 .viewer-info figcaption b,.viewer-info h3{font-size:16px;line-height:1.4}
 .viewer-info .featured-info p{font-size:10px;gap:6px 14px}
 .viewer-info .cl-badge{gap:10px;padding:8px 12px}
 .viewer-info .cl-badge .cl-tag{font-size:10px}
 .viewer .gallery-counter{font-size:11px}
}

/* Shared modal header; close controls belong to their panel, not the viewport. */
body.panel-open .topbar{visibility:hidden;pointer-events:none}
.category-panel .panel-center{display:none!important}
.category-panel .section-head{display:flex!important;position:sticky;top:0;z-index:25;background:#050508;min-height:44px;padding-right:48px!important;margin:0 0 16px!important}
body.scroll-mode .category-panel .section-head>.panel-close,
body.scroll-mode #contact#contact.category-panel>.panel-close{position:absolute!important;inset:0 0 auto auto!important;width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;display:grid!important;place-items:center;border:0!important;border-radius:0!important;background:transparent!important;transform:none!important;grid-area:auto!important}
body.scroll-mode #contact#contact.category-panel>.panel-close{inset:8px 8px auto auto!important}
.panel-close:hover{color:#80e6c1!important}
.panel-close svg{pointer-events:none}
.category-panel .section-head::before{content:'';position:absolute;left:-24px;right:-24px;top:-24px;height:24px;background:#000;pointer-events:none}
#contact .contact-description{letter-spacing:.01em!important;text-transform:none!important}
@media(max-width:760px), (max-height:900px){
 body.scroll-mode main{height:100svh;inset:auto;margin:0}
 body.scroll-mode #home{top:58px!important;height:calc(100svh - 170px - env(safe-area-inset-bottom))!important;overflow-y:auto!important;overflow-x:hidden!important;display:block!important;overscroll-behavior:contain}
 body.scroll-mode #home .collage{display:flex!important;flex-direction:column;height:auto!important;min-height:100%;padding:30px 0 28px;box-sizing:border-box;gap:28px}
 body.scroll-mode #home .hero-copy{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important;flex:none;padding:0 18px!important;box-sizing:border-box;display:flex!important;flex-direction:column;align-items:center;gap:16px;transform:none!important}
 body.scroll-mode #home .hero-copy h1{position:static!important;inset:auto!important;transform:none!important;width:100%!important;font-size:clamp(20px,6vw,30px)!important;line-height:1!important;text-align:center!important}
 body.scroll-mode #home .hero-copy p{position:static!important;inset:auto!important;transform:none!important;margin:0!important;font-size:9px!important;text-align:center!important;line-height:1.5}
 #home .hero-services{position:static!important;inset:auto!important;transform:none!important;width:100%;font-size:11px;line-height:1.6}
 #home .hero-services .services-note{margin-top:7px;font-size:10px}
 #home .ribbon-stage{position:relative;display:block;flex:none;width:100%;height:210px;overflow:hidden}
 #home .ribbon{inset:0!important;height:100%}
 #home .ribbon-card{height:186px;min-height:0;width:145px}
 body.scroll-mode #home .hero-mark{top:50%!important;left:50%;width:165px;z-index:5;pointer-events:auto}
 #home .featured-row{position:relative!important;inset:auto!important;transform:none!important;width:calc(100% - 32px);margin:0 auto;gap:18px 12px;flex:none}
 #home .featured-row-heading{position:static;grid-column:1/-1;margin:0 0 2px;font-size:11px}
 #home .featured-summary .featured-info{padding-top:9px}
 #home .featured-summary .featured-info h3{font-size:11px!important;line-height:1.4!important}
 #home .featured-summary .featured-info p{display:flex;flex-wrap:wrap;font-size:8px;line-height:1.7;gap:4px 10px}
 #home .featured-summary .featured-note{font-size:11px;line-height:1.5;margin:7px 0}
 #home .featured-summary:last-child .featured-top-card{aspect-ratio:2.35/1}
 body.scroll-mode .category-panel:not(#home){inset:12px 10px calc(112px + env(safe-area-inset-bottom))!important;padding:14px!important;overflow-y:auto!important;overflow-x:hidden!important;border-radius:22px}
 .category-panel .section-head{flex-direction:column;align-items:flex-start!important;gap:5px!important;min-height:48px;padding-right:44px!important;margin-bottom:16px!important}
 .category-panel .section-head h2{font-size:25px!important}
 #motion .section-head>span{font-size:9px!important}
 body.scroll-mode #contact#contact.category-panel{inset:50% auto auto 50%!important;width:calc(100vw - 24px)!important;max-height:calc(100svh - 150px - env(safe-area-inset-bottom));padding:52px 24px 26px!important}
 body.scroll-mode #contact#contact.category-panel.is-open{gap:22px!important}
 #contact .contact-intro h2{font-size:clamp(28px,8vw,38px);line-height:1.08}
 #contact .contact-description{font-size:13px!important;line-height:1.6!important}
 .stage-nav{bottom:calc(42px + env(safe-area-inset-bottom))!important;background:#050505}
 .site-copyright{font-size:8px}
 body::after{content:'';position:fixed;inset:auto 0 0;height:calc(112px + env(safe-area-inset-bottom));background:#000;z-index:65;pointer-events:none}
}
