:root{
  --ink:#100d0e;--black:#080708;--cream:#f1ede6;--paper:#f8f6f1;--red:#e51b2b;--wine:#8f1020;--muted:#aaa09d;--line:#ffffff26;--max:1240px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:#f7f3ee;font:400 16px/1.55 'DM Sans',sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.wrap{width:min(var(--max),calc(100% - 56px));margin-inline:auto}
.eyebrow{display:block;color:#f14a56;font-size:.66rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:'Manrope','DM Sans',sans-serif}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:12px 18px;border:1px solid var(--red);background:var(--red);color:#fff;font-size:.82rem;font-weight:700;letter-spacing:.01em;transition:background .22s,border-color .22s,transform .22s;cursor:pointer}
.btn:hover{background:#f02d3c;border-color:#f02d3c;transform:translateY(-2px)}
.btn span{font-size:1.12rem;line-height:1}
.btn-light{background:var(--cream);border-color:var(--cream);color:var(--ink)}
.btn-light:hover{background:#fff;border-color:#fff}
.btn-red{background:var(--red);border-color:var(--red);color:white}
.nav{height:76px;position:sticky;top:0;z-index:20;background:var(--ink);border-bottom:1px solid #ffffff19}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:block;width:116px;height:24px;overflow:hidden}.brand img{display:block;width:116px;height:24px;object-fit:cover;object-position:top;filter:invert(1)}
.nav-right{display:flex;align-items:center;gap:32px;color:#d1c8c5;font-size:.78rem}
.nav-dropdown{position:relative}
.services-toggle{display:flex;align-items:center;gap:7px;padding:9px 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.services-toggle span{color:#ef2435;font-size:1rem;transition:transform .2s}
.nav-dropdown.is-open .services-toggle span{transform:rotate(180deg)}
.services-menu{position:absolute;z-index:30;top:calc(100% + 13px);left:-14px;min-width:230px;padding:7px;background:#171314;border:1px solid #ffffff26;box-shadow:0 16px 35px #0008;opacity:0;visibility:hidden;transform:translateY(7px);transition:opacity .2s,transform .2s,visibility .2s}
.nav-dropdown.is-open .services-menu,.nav-dropdown:hover .services-menu,.nav-dropdown:focus-within .services-menu{opacity:1;visibility:visible;transform:none}
.services-menu a{display:block;padding:11px 12px;border-bottom:1px solid #ffffff16;color:#d1c8c5;font-size:.72rem;white-space:nowrap}
.services-menu a:last-child{border-bottom:0}
.services-menu a:hover,.services-menu a:focus-visible{background:#ffffff0b;color:#fff}
.nav-right a{transition:color .2s}
.nav-right a:hover{color:#fff}
.nav-right .btn{min-height:39px;padding:8px 13px;gap:10px}
.menu-btn{display:none}

/* Opening */
.hero{background:var(--ink);border-bottom:1px solid #ffffff20}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,29vw);max-width:1600px;min-height:calc(100svh - 76px);margin:auto}
.hero-copy{width:auto;margin:0;padding:clamp(62px,10vh,122px) 7vw 125px max(28px,calc((100vw - 1240px)/2));align-self:center;position:relative;z-index:1}
.hero-wordmark{display:block;width:clamp(185px,22vw,288px);height:clamp(38px,4.5vw,59px);object-fit:cover;object-position:top;filter:invert(1);translate:-9% 0;margin:32px 0 21px}
.hero h1{font-size:clamp(4.2rem,8.2vw,8.3rem);line-height:.89;letter-spacing:-.09em;margin:0 0 25px;max-width:820px}
.hero h1 em{font-style:normal;color:#ef2435}
.hero-copy p{max-width:490px;color:#c7bfbd;font-size:1rem;line-height:1.8;margin-bottom:26px}
.hero-actions{display:flex;align-items:center;gap:21px}
.hero-note{color:#9f9693;font-size:.59rem;letter-spacing:.16em}
.hero-side{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:34px 30px 72px;background:var(--red);color:white;overflow:hidden}
.hero-side:after{content:"";position:absolute;right:-10%;bottom:19%;width:68%;height:1px;background:#ffffff5c;transform:rotate(-48deg);transform-origin:right}
.hero-side-index{font-size:.65rem;letter-spacing:.15em}
.hero-rule{width:1px;height:31vh;background:linear-gradient(to bottom,#ffffffc9 0 var(--scroll-progress,12%),#ffffff26 var(--scroll-progress,12%) 100%);margin-left:auto;margin-right:16%;position:relative;transition:background .08s linear}
.hero-rule:after{content:"";position:absolute;left:-4px;top:var(--scroll-progress,12%);bottom:auto;width:9px;height:9px;border-radius:50%;background:var(--cream);transform:translateY(-50%);box-shadow:0 0 0 4px #ffffff12,0 0 16px #fff8;transition:top .08s linear}
.hero-side p{margin:0;font-size:1rem;line-height:1.2;letter-spacing:.12em}
.hero-side p b{font-size:.68rem;letter-spacing:.17em}
.hero-side-mark{font:700 5.4rem/.85 'Manrope',sans-serif;letter-spacing:-.12em;align-self:flex-end}
.hero-bottom{position:absolute;z-index:2;bottom:25px;left:max(28px,calc((100vw - 1240px)/2));right:calc(29vw + 30px);display:flex;justify-content:space-between;gap:15px;color:#928986;font-size:.59rem;letter-spacing:.13em}
.hero-bottom i{font-size:.9rem;font-style:normal;color:#ef2435;margin-left:7px}

/* YouTube scroll story */
.youtube-section{padding:85px 0 0;background:var(--ink)}
.section-intro{display:flex;align-items:end;justify-content:space-between;gap:45px;padding-bottom:42px}
.section-intro h2{margin:13px 0 0;font-size:clamp(2.9rem,6.5vw,6.2rem);line-height:.93;letter-spacing:-.085em}
.section-intro>p{max-width:360px;margin:0 0 6px;color:#b6adab;font-size:.91rem;line-height:1.8}
.journey-layout{width:min(1360px,calc(100% - 56px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);gap:55px;align-items:stretch}
.journey-pin{position:sticky;top:88px;align-self:start;height:calc(100svh - 112px);min-height:590px;display:flex;align-items:center}
.journey-frame{position:relative;width:100%;height:100%;max-height:800px;min-height:560px;display:flex;flex-direction:column;background:#080708;border:1px solid #ffffff2b;overflow:hidden}
.art-top{height:47px;flex:0 0 47px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;color:#f7f3ee;border-bottom:1px solid #ffffff24}
.art-brand{display:flex;align-items:center;gap:8px}
.art-brand svg{display:block;width:20px;height:15px}
.art-brand b{font:700 .69rem 'Manrope',sans-serif;letter-spacing:.01em}
.art-brand i{margin-left:8px;color:#a9a09e;font-size:.5rem;font-style:normal;letter-spacing:.15em}
.art-position{color:#f3eeee;font-size:.69rem}
.art-position b{color:#8f8583;font-size:.61rem;font-weight:500}
.art-canvas{position:relative;isolation:isolate;flex:1;min-height:0;overflow:hidden;background:var(--cream);color:var(--ink)}
.art-red-panel{position:absolute;z-index:-1;inset:0 0 0 72%;background:var(--red)}
.art-coordinates{position:absolute;top:18px;left:20px;right:20px;display:flex;justify-content:space-between;color:#706967;font-size:.48rem;font-weight:700;letter-spacing:.14em}
.art-coordinates span+span{color:#fff}
.journey-figure{position:absolute;z-index:2;right:1%;bottom:-4%;width:69%;height:95%;object-fit:contain;object-position:center bottom;transition:opacity .25s,transform .6s;filter:drop-shadow(0 14px 12px #1b10111a)}
.journey-figure.entering{animation:figureArrive .7s cubic-bezier(.2,.7,.15,1) both}
.identity-badge{position:absolute;z-index:5;top:8%;right:21%;min-height:39px;display:flex;align-items:center;gap:8px;padding:7px 10px;background:#fbf9f4;border:1px solid #1b171526;box-shadow:0 7px 20px #24131516;animation:badgeFloat 4.5s ease-in-out infinite}
.identity-badge small{font-size:.48rem;font-weight:700;letter-spacing:.1em;white-space:nowrap;color:#262020}
.badge-youtube svg{display:block;width:20px;height:15px}
.badge-sociello{display:none;width:82px;height:18px;object-fit:cover;object-position:top}
.identity-badge.is-sociello .badge-youtube{display:none}
.identity-badge.is-sociello .badge-sociello{display:block}
.stage-widget{position:absolute;z-index:4;left:5%;top:28%;width:min(41%,250px);padding:15px 15px 14px;background:#fbf9f4;border-left:3px solid var(--red);color:#1b1717;box-shadow:0 16px 38px #20151520;animation:widgetArrive .45s ease both}
.widget-label{display:block;margin-bottom:11px;color:#8d151f;font-size:.49rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.widget-title{display:block;font:700 .9rem/1.2 'Manrope',sans-serif;letter-spacing:-.035em;margin-bottom:12px}
.widget-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:9px;border-top:1px solid #d8d1ca;color:#716a67;font-size:.55rem}
.widget-meta b{color:#1b1717;font-weight:700}
.signal-list{display:grid;gap:8px}
.signal-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px;color:#5e5654;font-size:.55rem}
.signal-row b{font-size:.52rem;color:#9a1721}
.signal-line{grid-column:1/-1;height:3px;background:#e2dcd4}
.signal-line i{display:block;height:100%;width:var(--signal);background:var(--red)}
.script-lines{display:grid;gap:6px}
.script-lines span{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid #e0dad3;color:#625a57;font-size:.56rem}
.script-lines b{color:#201b1a;font-size:.57rem;letter-spacing:.05em}
.player-mock{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.player-thumb{height:64px;position:relative;display:grid;place-items:center;background:#211819;color:white;font-size:.55rem;letter-spacing:.13em}
.player-thumb:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:var(--red)}
.player-thumb i{font-size:.67rem;font-style:normal}
.player-info{font-size:.51rem;color:#655d5b;line-height:1.5}
.player-info b{display:block;color:#201a1a;font-size:.61rem}
.file-card{display:flex;align-items:center;gap:10px;padding:10px 0}
.file-icon{width:30px;height:35px;display:grid;place-items:center;background:#f1e7e1;color:#9b1522;font-size:1rem}
.file-lines b,.file-lines small{display:block}
.file-lines b{font-size:.62rem}
.file-lines small{margin-top:3px;color:#77706c;font-size:.52rem}
.upload-status{margin-top:10px;height:3px;background:#dfd9d1}
.upload-status i{display:block;width:100%;height:100%;background:var(--red)}
.edit-timeline{margin-top:12px;display:grid;gap:4px}
.edit-timeline i{display:block;height:6px;background:#ded7cf}
.edit-timeline i:nth-child(2){width:80%;background:#e51b2b}
.edit-timeline i:nth-child(3){width:62%;background:#211819}
.platform-list{display:flex;flex-wrap:wrap;gap:5px}
.platform-list span{padding:5px 7px;background:#eee8e1;border:1px solid #d9d1c9;color:#292222;font-size:.5rem;font-weight:700;letter-spacing:.03em}
.search-brand{font:700 1rem 'Manrope',sans-serif;letter-spacing:-.08em;margin:0 0 8px}
.search-brand i:nth-child(1){color:#4285f4;font-style:normal}.search-brand i:nth-child(2){color:#ea4335;font-style:normal}.search-brand i:nth-child(3){color:#fbbc05;font-style:normal}.search-brand i:nth-child(4){color:#4285f4;font-style:normal}.search-brand i:nth-child(5){color:#34a853;font-style:normal}.search-brand i:nth-child(6){color:#ea4335;font-style:normal}
.search-field{height:23px;border:1px solid #d9d3cc;border-radius:20px;margin-bottom:10px}
.search-result{padding:7px 0;border-top:1px solid #e2ddd6;font-size:.49rem;color:#746c68}
.search-result b{display:block;color:#2b2725;font-size:.57rem;margin-bottom:2px}
.deal-tag{display:inline-block;margin-bottom:10px;padding:5px 7px;background:var(--red);color:white;font-size:.46rem;font-weight:700;letter-spacing:.12em}
.deal-lines{display:grid;gap:7px;color:#5c5551;font-size:.54rem}
.deal-lines span{display:flex;justify-content:space-between;border-bottom:1px solid #e2ddd6;padding-bottom:6px}
.deal-lines b{color:#241e1c}
.revenue-bars{display:flex;align-items:end;gap:6px;height:43px;padding-top:6px;border-bottom:1px solid #d9d2ca}
.revenue-bars i{display:block;flex:1;background:#211819;height:var(--bar)}
.revenue-bars i:nth-child(2n){background:var(--red)}
.art-caption{position:absolute;z-index:5;left:5%;bottom:5%;max-width:40%;display:flex;align-items:start;gap:9px;color:#211a19}
.caption-number{font:700 .72rem 'Manrope',sans-serif;color:#ad1825}
.art-caption small{display:block;color:#766c69;font-size:.46rem;letter-spacing:.12em}
.art-caption b{display:block;margin-top:3px;font:700 .72rem/1.25 'Manrope',sans-serif}
.art-bottom{height:38px;flex:0 0 38px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 15px;color:#d9d0cd;font-size:.49rem;font-weight:700;letter-spacing:.09em}
.art-bottom i{color:#ed2636;font-style:normal;margin:0 3px}
.progress-track{height:2px;width:32%;background:#ffffff2b}
.progress-track span{display:block;width:9%;height:100%;background:var(--red);transition:width .45s}
.story-list{padding:0 0 0 2px}
.story-step{min-height:77vh;display:flex;align-items:center;gap:18px;padding:28px 0;opacity:.29;transform:translateX(8px);transition:opacity .35s,transform .35s;border-left:1px solid #ffffff22}
.story-step.active{opacity:1;transform:none;border-color:var(--red)}
.story-index{flex:0 0 39px;align-self:flex-start;margin:3px 0 0 16px;color:#f14652;font:600 .72rem 'Manrope',sans-serif}
.story-step small{display:block;color:#f14a56;font-size:.59rem;font-weight:700;letter-spacing:.17em}
.story-step h3{max-width:475px;margin:11px 0 10px;font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:1.02;letter-spacing:-.07em}
.story-step p{max-width:410px;margin:0;color:#b8aeab;font-size:.88rem;line-height:1.75}
.youtube-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:35px;padding:66px 0 72px;border-top:1px solid #ffffff25}
.youtube-cta h2{margin:12px 0;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96;letter-spacing:-.08em}
.youtube-cta p{margin:0;color:#b7adab;font-size:.88rem}
.youtube-cta .btn{white-space:nowrap}

/* Chapter transition */
.chapter-bridge{height:128vh;position:relative;background:var(--ink)}
.bridge-sticky{position:sticky;top:76px;height:calc(100svh - 76px);min-height:560px;overflow:hidden;background:var(--ink)}
.bridge-red{position:absolute;inset:0;background:var(--red);clip-path:inset(100% 0 0);will-change:clip-path}
.bridge-grid{position:relative;width:min(var(--max),calc(100% - 56px));height:100%;margin:auto;display:grid;grid-template-columns:1fr 2fr;grid-template-rows:65px 1fr 57px;align-items:center;color:#fff}
.bridge-kicker,.bridge-bottom{font-size:.6rem;font-weight:700;letter-spacing:.16em}
.bridge-kicker{grid-column:1/-1;align-self:start;padding-top:26px}
.bridge-title{grid-column:2;align-self:center;opacity:.1;transform:translateY(22px);transition:transform .15s linear}
.bridge-title small{font-size:.62rem;letter-spacing:.19em}
.bridge-title h2{margin:20px 0;font-size:clamp(3.5rem,8vw,8.3rem);line-height:.9;letter-spacing:-.095em}
.bridge-title p{margin:0;color:#ffe2e2;font-size:.91rem}
.bridge-growth{grid-column:1;grid-row:2;align-self:center;width:min(100%,280px);opacity:.1;transform:translateY(24px);transition:transform .15s linear;color:#fff}
.growth-label,.growth-foot{display:flex;align-items:center;justify-content:space-between;font-size:.52rem;font-weight:700;letter-spacing:.15em}
.growth-label b{font-size:1.3rem;font-weight:400}
.bridge-growth svg{display:block;width:100%;margin:13px 0 8px;overflow:visible}
.growth-guide{fill:none;stroke:#ffffff30;stroke-width:1}
.growth-bar{fill:#ffffff22;transform-box:fill-box;transform-origin:bottom;transform:scaleY(.12)}
.growth-line{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:350;stroke-dashoffset:350}
.growth-arrow{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.growth-foot{color:#ffe3e4;font-size:.45rem}
.bridge-bottom{grid-column:1/-1;align-self:end;padding-bottom:21px;border-top:1px solid #ffffff5e}
.bridge-bottom i{font-size:.9rem;font-style:normal;margin-left:8px}

/* Marketing */
.marketing-section{padding:102px 0 94px;background:var(--cream);color:#201a19}
.marketing-section .eyebrow{color:#a81925}
.marketing-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}
.marketing-head h2{margin:13px 0 0;font-size:clamp(3.2rem,6.4vw,6.4rem);line-height:.91;letter-spacing:-.09em}
.marketing-head h2 em{color:#b41a27;font-style:normal}
.marketing-head>p{max-width:360px;margin:0 0 6px;color:#706764;font-size:.91rem;line-height:1.8}
.marketing-experience{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr);gap:54px;align-items:stretch}
.marketing-options{border-top:1px solid #cfc5bd}
.marketing-option{position:relative;width:100%;min-height:77px;display:grid;grid-template-columns:42px 1fr 22px;grid-template-rows:1fr 0;align-items:center;gap:0 8px;padding:16px 0;border:0;border-bottom:1px solid #cfc5bd;background:transparent;color:#201a19;text-align:left;cursor:pointer;transition:padding .24s,color .24s}
.marketing-option.active{padding-left:10px}
.option-no{color:#a89c97;font:600 .68rem 'Manrope',sans-serif}
.option-name{font:650 1.04rem 'Manrope',sans-serif;letter-spacing:-.035em}
.option-mark{justify-self:end;color:#9d1722;font-size:1.1rem;transition:transform .25s}
.marketing-option.active .option-mark,.marketing-option:hover .option-mark{transform:translate(3px,-3px)}
.marketing-option small{grid-column:2/4;grid-row:2;margin-top:0;max-height:0;overflow:hidden;color:#9a1722;font-size:.48rem;font-weight:700;letter-spacing:.11em;opacity:0;transition:max-height .24s,opacity .2s,margin .2s}
.marketing-option:hover small,.marketing-option:focus-visible small,.marketing-option.active small{max-height:14px;margin-top:5px;opacity:1}
.marketing-option:focus-visible{outline:2px solid #a81925;outline-offset:3px}
.service-panel{min-height:385px;display:flex;flex-direction:column;justify-content:space-between;padding:21px 23px 20px;background:#171314;color:#f7f2ed;border-left:5px solid var(--red);position:relative;overflow:hidden}
.panel-top,.panel-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}
.panel-top{color:#e84751;font-size:.54rem;font-weight:700;letter-spacing:.15em}
.panel-top span+span{color:#a59b98;font-size:.49rem}
.panel-main{position:relative;display:grid;grid-template-columns:125px 1fr;gap:20px;align-items:center}
.panel-orbit{font:800 7rem/.8 'Manrope',sans-serif;letter-spacing:-.12em;color:#ffffff0d}
.panel-main>div{position:relative;z-index:1}
.panel-main small{color:#a59b98;font-size:.53rem;font-weight:700;letter-spacing:.16em}
.panel-main h3{max-width:480px;margin:10px 0 12px;font-size:clamp(1.6rem,3vw,2.8rem);line-height:.98;letter-spacing:-.065em}
.panel-main p{max-width:410px;margin:0;color:#c2b9b6;font-size:.84rem;line-height:1.72}
.service-panel.switching .panel-main{animation:panelSwitch .38s ease both}
.panel-bottom{padding-top:16px;border-top:1px solid #ffffff26;color:#bfb5b2;font-size:.54rem;font-weight:600;letter-spacing:.12em}
.panel-arrow{color:#ef3341;font-size:1.2rem}
.marketing-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}
.marketing-foot>span{color:#746a66;font-size:.58rem;font-weight:700;letter-spacing:.15em}
.marketing-foot i{color:#b41a27;font-style:normal;padding:0 3px}

/* Horizontal reel portfolio */
.reels-section{padding:87px 0 0;background:#100d0e;overflow:clip}
.reels-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:25px}
.reels-head h2{margin:13px 0 0;font-size:clamp(3rem,6.2vw,6rem);line-height:.92;letter-spacing:-.09em}
.reels-head h2 em{color:#ed2636;font-style:normal}
.reels-head>p{max-width:300px;margin:0 0 6px;color:#b3a9a6;font-size:.87rem;line-height:1.7}
.reel-zone{position:relative;height:calc(74vh + 240px)}
.reel-viewport{position:sticky;top:76px;height:calc(100svh - 76px);min-height:0;display:flex;align-items:stretch;overflow:hidden}
.reel-track{display:flex;gap:13px;padding:0 max(28px,calc((100vw - var(--max))/2));will-change:transform;transform:translate3d(0,0,0)}
.reel-card{position:relative;display:block;flex:0 0 clamp(270px,28vw,360px);height:100%;min-height:0;max-height:none;overflow:hidden;border:1px solid #ffffff42;padding:0;text-align:left;color:#fff;cursor:pointer}
.reel-one{background:#e51b2b}.reel-two{background:#ede8df;color:#171313}.reel-three{background:#211b1c}.reel-four{background:#f2eee7;color:#171313}.reel-five{background:#8f1020}
.reel-card-top{position:absolute;z-index:2;top:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;font-size:.54rem;letter-spacing:.13em}
.reel-card-top i{font-style:normal;opacity:.68}
.reel-card-top b{font-size:.51rem}
.reel-graphic{position:absolute;inset:0;display:block;overflow:hidden}
.reel-graphic>i{position:absolute;z-index:1;left:20px;top:22%;font:800 clamp(2.5rem,5.6vw,5rem)/.86 'Manrope',sans-serif;letter-spacing:-.09em}
.reel-one .reel-graphic>i{color:white}
.reel-one .reel-graphic>b{position:absolute;right:-12%;bottom:10%;width:69%;height:43%;border:1px solid #ffffff80;transform:rotate(-19deg)}
.reel-two .reel-graphic>i{top:26%;left:18px;font-size:clamp(2.4rem,5vw,4.6rem);color:#201a19}
.graphic-circle{position:absolute;top:27%;right:-15%;width:75%;aspect-ratio:1;border:40px solid var(--red);border-radius:50%}
.reel-three .reel-graphic>i{top:23%;color:#f5f0ea}
.graphic-lines{position:absolute;left:18px;right:18px;bottom:25%;height:1px;background:#ed2636;box-shadow:0 14px 0 #ffffff47,0 28px 0 #ffffff27,0 42px 0 #ffffff1b}
.reel-four .reel-graphic>i{left:22px;top:20%;font-size:clamp(2.3rem,4.9vw,4.5rem);color:#201a19}
.graphic-block{position:absolute;right:0;top:0;width:23%;height:100%;background:var(--red)}
.reel-five .reel-graphic>i{top:26%;font-size:clamp(2.4rem,5vw,4.5rem);color:#fff}
.graphic-ring{position:absolute;right:-20%;bottom:5%;width:74%;aspect-ratio:1;border:1px solid #ffffff6b;border-radius:50%;box-shadow:0 0 0 22px #ffffff0c,0 0 0 44px #ffffff0b}
.reel-play{position:absolute;z-index:3;top:50%;left:50%;width:48px;height:48px;display:grid;place-items:center;padding-left:3px;border-radius:50%;background:var(--cream);color:#991621;font-size:.7rem;transform:translate(-50%,-50%);transition:transform .25s}
.reel-card:hover .reel-play{transform:translate(-50%,-50%) scale(1.08)}
.reel-card:after{content:"";position:absolute;inset:auto 0 0;height:27%;background:linear-gradient(transparent,#100d0eeb);pointer-events:none}
.reel-two:after,.reel-four:after{background:linear-gradient(transparent,#211b1ce6)}
.reel-caption{position:absolute;z-index:4;left:15px;right:15px;bottom:15px}
.reel-caption small{display:block;color:#ffabb0;font-size:.5rem;font-weight:700;letter-spacing:.14em}
.reel-two .reel-caption small,.reel-four .reel-caption small{color:#ff5360}
.reel-caption b{display:block;margin-top:4px;font:650 .98rem/1.18 'Manrope',sans-serif;letter-spacing:-.035em}
.reels-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:0;padding-bottom:12px;color:#8e8481;font-size:.56rem;letter-spacing:.12em}
.reels-footer b{font-size:.65rem;font-weight:500;letter-spacing:0;color:#c0b6b3}

/* Ending and footer */
.close-section{position:relative;overflow:hidden;padding:78px 0 84px;background:var(--red)}
.close-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:28px}
.close-inner .eyebrow{color:#ffd5d8}
.close-inner h2{margin:13px 0 11px;font-size:clamp(3.1rem,7vw,6.8rem);line-height:.9;letter-spacing:-.09em}
.close-inner p{margin:0;color:#ffe1e2;font-size:.88rem}
.close-index{position:absolute;z-index:-1;right:9%;top:-80px;color:#ffffff0d;font:800 24rem/.9 'Manrope',sans-serif;letter-spacing:-.15em}
.footer{padding:39px 0 20px;background:#0a0809}
.footer-main{display:flex;justify-content:space-between;gap:30px;padding-bottom:26px;border-bottom:1px solid #ffffff20}
.footer-main>div:first-child>a{display:block;width:111px;height:23px;overflow:hidden}.footer-logo{display:block;width:111px;height:23px;object-fit:cover;object-position:top;filter:invert(1);translate:-9% 0}
.footer-main p{margin:11px 0 0;color:#928986;font-size:.73rem}
.footer-links{display:flex;gap:45px}
.footer-links b{display:block;margin-bottom:9px;color:#e9e3de;font-size:.61rem;letter-spacing:.1em}
.footer-links a,.book-link{display:block;margin:6px 0;padding:0;border:0;background:none;color:#a9a09d;font-size:.7rem;text-align:left;cursor:pointer}
.footer-links a:hover,.book-link:hover{color:#fff}
.copyright{display:flex;justify-content:space-between;gap:15px;padding-top:15px;color:#756d6a;font-size:.62rem}

/* Dialogs and motion */
.dialog{width:min(430px,calc(100% - 32px));padding:29px;border:1px solid #ffffff35;background:#181415;color:#f8f3ee;box-shadow:0 30px 90px #000b}
.dialog::backdrop{background:#060405dd;backdrop-filter:blur(4px)}
.dialog h2{margin:12px 0;font:700 1.75rem/1.04 'Manrope',sans-serif;letter-spacing:-.06em}
.dialog p{color:#c2b8b5;font-size:.88rem}
.dialog-close{float:right;border:0;background:none;color:#fff;font-size:1.45rem;cursor:pointer}
.dialog .btn{margin-top:4px}
@keyframes figureArrive{from{opacity:.2;transform:translate3d(24px,12px,0) scale(.985)}to{opacity:1;transform:none}}
@keyframes widgetArrive{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes badgeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes panelSwitch{from{opacity:.3;transform:translateY(9px)}to{opacity:1;transform:none}}

@media(max-width:980px){
  .nav-right{gap:18px;font-size:.72rem}
  .nav-right .btn{padding-inline:11px}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(210px,26vw)}
  .hero-copy{padding-left:35px}
  .hero-bottom{left:35px;right:calc(26vw + 30px)}
  .journey-layout{grid-template-columns:minmax(0,1fr) minmax(305px,.9fr);gap:30px}
  .journey-pin{top:86px;height:calc(100svh - 108px);min-height:520px}
  .journey-frame{min-height:520px}
  .stage-widget{left:4%;width:43%;padding:12px}
  .identity-badge{right:17%}
  .art-caption{max-width:42%}
  .marketing-experience{gap:30px}
  .panel-main{grid-template-columns:90px 1fr}
  .panel-orbit{font-size:5.5rem}
}
@media(max-width:700px){
  .wrap{width:calc(100% - 36px)}
  .nav{height:66px}
  .brand{width:104px;height:22px}.brand img{width:104px;height:22px}
  .menu-btn{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;border:1px solid #ffffff35;border-radius:0;background:transparent}
  .menu-btn span{width:16px;height:1px;margin:0 auto;background:#fff}
  .nav-right{display:none;position:absolute;top:65px;left:18px;right:18px;padding:12px 16px 16px;background:#171314;border:1px solid #ffffff24;flex-direction:column;align-items:stretch;gap:0}
  .nav-right.open{display:flex}
  .nav-right a{padding:11px 0;border-bottom:1px solid #ffffff14}
  .nav-dropdown{width:100%}
  .services-toggle{width:100%;justify-content:space-between;padding:11px 0;border-bottom:1px solid #ffffff14;text-align:left}
  .services-menu{position:static;display:none;min-width:0;padding:0 0 4px;border:0;background:#100d0e;box-shadow:none;opacity:1;visibility:visible;transform:none}
  .nav-dropdown.is-open .services-menu{display:block}
  .services-menu a{padding:10px 12px;border-bottom:1px solid #ffffff12}
  .nav-right .btn{margin-top:12px}
  .hero-grid{display:block;min-height:calc(100svh - 66px);padding-bottom:65px}
  .hero-copy{width:auto;margin:0;padding:12vh 24px 70px}
  .hero-wordmark{width:clamp(165px,48vw,235px);height:clamp(34px,10vw,48px);margin:27px 0 18px}
  .hero h1{font-size:clamp(3.7rem,15vw,6.2rem);margin-bottom:18px}
  .hero-copy p{max-width:430px;font-size:.91rem;line-height:1.7}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:13px}
  .hero-side{position:absolute;right:0;top:0;bottom:0;width:20%;z-index:0;padding:17px 10px 49px}
  .hero-side-index{font-size:.5rem}
  .hero-rule{height:21vh;margin-right:12%;margin-top:13vh}
  .hero-side p{font-size:.62rem;writing-mode:vertical-rl;transform:rotate(180deg);align-self:flex-end}
  .hero-side p b{font-size:.52rem}
  .hero-side-mark{font-size:3.1rem}
  .hero-bottom{left:18px;right:18px;bottom:17px;flex-direction:column;gap:5px;font-size:.5rem}
  .youtube-section{padding-top:62px}
  .section-intro{display:block;padding-bottom:27px}
  .section-intro h2{font-size:clamp(2.8rem,12.5vw,4.7rem)}
  .section-intro>p{max-width:460px;margin-top:14px;font-size:.82rem}
  .journey-layout{display:flex;width:calc(100% - 24px);flex-direction:column;gap:0}
  .journey-pin{position:sticky;top:66px;z-index:8;width:100%;height:296px;min-height:0;flex:0 0 296px;align-self:stretch;align-items:flex-start;padding-bottom:10px;background:linear-gradient(var(--ink) 84%,transparent)}
  .journey-frame{width:100%;height:279px;min-height:0;max-height:none;flex:0 0 100%}
  .art-top{height:33px;flex-basis:33px;padding:0 9px}
  .art-brand svg{width:16px;height:12px}
  .art-brand b{font-size:.58rem}
  .art-brand i{font-size:.42rem;margin-left:3px}
  .art-position{font-size:.58rem}
  .art-canvas{min-height:0}
  .art-red-panel{left:76%}
  .art-coordinates{top:9px;left:10px;right:10px;font-size:.39rem}
  .journey-figure{right:0;width:74%;height:98%;bottom:-7%}
  .identity-badge{top:9%;right:18%;min-height:27px;padding:4px 6px;gap:5px}
  .identity-badge small{font-size:.37rem}
  .badge-youtube svg{width:16px;height:12px}
  .badge-sociello{width:61px}
  .stage-widget{top:27%;left:4%;width:41%;padding:8px 8px 7px;border-left-width:2px}
  .widget-label{font-size:.38rem;margin-bottom:6px}
  .widget-title{font-size:.65rem;margin-bottom:6px}
  .widget-meta{padding-top:5px;font-size:.4rem}
  .signal-list{gap:4px}
  .signal-row{font-size:.41rem;gap:3px}
  .signal-row b{font-size:.4rem}
  .signal-line{height:2px}
  .script-lines{gap:2px}
  .script-lines span{font-size:.41rem;padding:3px 0}
  .script-lines b{font-size:.41rem}
  .player-mock{gap:4px}
  .player-thumb{height:38px;font-size:.39rem}
  .player-info{font-size:.36rem}
  .player-info b{font-size:.42rem}
  .file-card{gap:5px;padding:4px 0}
  .file-icon{width:21px;height:23px;font-size:.72rem}
  .file-lines b{font-size:.43rem}
  .file-lines small{font-size:.38rem}
  .upload-status{margin-top:6px;height:2px}
  .edit-timeline{margin-top:6px;gap:2px}
  .edit-timeline i{height:4px}
  .platform-list{gap:3px}
  .platform-list span{padding:3px 4px;font-size:.39rem}
  .search-brand{font-size:.73rem;margin-bottom:4px}
  .search-field{height:15px;margin-bottom:5px}
  .search-result{padding:4px 0;font-size:.38rem}
  .search-result b{font-size:.43rem}
  .deal-tag{font-size:.36rem;padding:3px 4px;margin-bottom:5px}
  .deal-lines{gap:4px;font-size:.4rem}
  .deal-lines span{padding-bottom:3px}
  .revenue-bars{height:24px;gap:3px}
  .art-caption{left:4%;bottom:4%;max-width:41%;gap:5px}
  .caption-number{font-size:.53rem}
  .art-caption small{font-size:.35rem}
  .art-caption b{font-size:.53rem}
  .art-bottom{height:25px;flex-basis:25px;padding:0 9px;font-size:.38rem}
  .progress-track{width:28%}
  .story-list{padding:0 5px}
  .story-step{min-height:58vh;scroll-margin-top:39vh;gap:7px;padding:24px 0}
  .story-index{flex-basis:28px;margin-left:7px;font-size:.57rem}
  .story-step small{font-size:.48rem}
  .story-step h3{font-size:clamp(1.75rem,8vw,2.6rem);margin:8px 0}
  .story-step p{font-size:.79rem;line-height:1.65}
  .youtube-cta{display:block;margin-top:20px;padding:46px 0 51px}
  .youtube-cta h2{font-size:2.8rem}
  .youtube-cta p{font-size:.8rem}
  .youtube-cta .btn{margin-top:19px}
  .chapter-bridge{height:115vh}
  .bridge-sticky{top:66px;height:calc(100svh - 66px);min-height:470px}
  .bridge-grid{width:calc(100% - 36px);grid-template-columns:1fr;grid-template-rows:54px 1fr 47px}
  .bridge-kicker{padding-top:20px;font-size:.52rem}
  .bridge-title{grid-column:1;grid-row:2;align-self:center}
  .bridge-growth{position:absolute;right:0;bottom:78px;width:37%;max-width:190px}
  .bridge-title h2{font-size:clamp(3.15rem,13.5vw,5.4rem);margin:16px 0}
  .bridge-title p{max-width:280px;font-size:.82rem}
  .bridge-bottom{font-size:.52rem;padding-bottom:17px}
  .marketing-section{padding:68px 0 65px}
  .marketing-head{display:block;margin-bottom:25px}
  .marketing-head h2{font-size:clamp(3rem,13vw,4.8rem)}
  .marketing-head>p{margin-top:13px;font-size:.82rem}
  .marketing-experience{display:flex;flex-direction:column;gap:20px}
  .marketing-option{min-height:68px;grid-template-columns:31px 1fr 20px;padding:13px 0}
  .marketing-option.active{padding-left:7px}
  .option-name{font-size:.9rem}
  .marketing-option small{font-size:.4rem}
  .service-panel{min-height:316px;padding:16px}
  .panel-top{font-size:.46rem}
  .panel-top span+span{font-size:.42rem}
  .panel-main{grid-template-columns:66px 1fr;gap:11px}
  .panel-orbit{font-size:4.2rem}
  .panel-main h3{font-size:1.8rem;margin:8px 0}
  .panel-main p{font-size:.78rem}
  .panel-bottom{font-size:.43rem}
  .marketing-foot{align-items:flex-start;flex-direction:column;margin-top:22px}
  .marketing-foot>span{font-size:.49rem}
  .reels-section{padding:60px 0 0}
  .reels-head{display:block;margin-bottom:18px}
  .reels-head h2{font-size:clamp(2.8rem,12vw,4.5rem)}
  .reels-head>p{margin-top:12px;font-size:.8rem}
  .reel-zone{height:calc(59vh + 220px)}
  .reel-viewport{top:66px;height:calc(100svh - 66px);min-height:0}
  .reel-track{gap:9px;padding:0 18px}
  .reel-card{flex-basis:72vw;height:100%;min-height:0}
  .reel-card-top{top:12px;left:12px;right:12px}
  .reel-card-top i,.reel-card-top b{font-size:.45rem}
  .reel-graphic>i{left:15px;font-size:clamp(2.7rem,10vw,4.1rem)}
  .graphic-circle{border-width:28px}
  .reel-caption{left:12px;right:12px;bottom:12px}
  .reel-caption small{font-size:.42rem}
  .reel-caption b{font-size:.86rem}
  .reel-play{width:42px;height:42px}
  .reels-footer{display:block;padding:0 18px 10px;font-size:.47rem}
  .reels-footer b{display:block;margin-top:6px;font-size:.63rem}
  .close-section{padding:57px 0 61px}
  .close-inner{display:block}
  .close-inner h2{font-size:clamp(3.2rem,13vw,5rem)}
  .close-inner p{font-size:.81rem}
  .close-inner .btn{margin-top:20px}
  .close-index{right:1%;top:5px;font-size:12rem}
  .footer{padding-top:30px}
  .footer-main{display:block}.footer-main>div:first-child>a{width:104px;height:22px}.footer-logo{width:104px;height:22px}
  .footer-links{gap:34px;margin-top:23px}
  .copyright{display:block}
  .copyright span{display:block;margin:6px 0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reel-track{will-change:auto}
}
@media(prefers-reduced-motion:reduce){.reel-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.reel-track{transform:none!important}.reel-card{scroll-snap-align:start}}

/* Sociello opening: a quiet, animated map of the work */
.hero-wordmark{width:clamp(250px,37vw,490px);height:clamp(51px,7.7vw,101px);margin:27px 0 15px;filter:invert(1);animation:heroEntry .8s .1s cubic-bezier(.2,.7,.15,1) both}
.hero-copy>.eyebrow{animation:heroEntry .65s ease both}
.hero h1{animation:heroEntry .75s .18s cubic-bezier(.2,.7,.15,1) both}
.hero-copy>p{animation:heroEntry .75s .25s cubic-bezier(.2,.7,.15,1) both}
.hero-actions{animation:heroEntry .7s .55s cubic-bezier(.2,.7,.15,1) both}
.hero-workflow{position:relative;isolation:isolate;width:min(100%,510px);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:5px;margin:25px 0 25px;padding:0 0 2px;animation:heroEntry .7s .38s cubic-bezier(.2,.7,.15,1) both}
.hero-workflow:before,.hero-workflow:after{content:"";position:absolute;z-index:-1;top:17px;left:8%;right:8%;height:1px}
.hero-workflow:before{background:linear-gradient(90deg,#ffffff16,#ffffff45 50%,#ffffff16)}
.hero-workflow:after{background:linear-gradient(90deg,transparent,var(--red),transparent);background-size:32% 100%;background-repeat:no-repeat;animation:heroRoute 5.5s ease-in-out infinite}
.hero-flow-item{position:relative;display:flex;min-width:0;align-items:center;flex-direction:column;gap:8px;color:#ded5d1;text-align:center;animation:heroGlyph .7s cubic-bezier(.2,.7,.15,1) both}
.hero-flow-item:nth-child(1){animation-delay:.48s}.hero-flow-item:nth-child(2){animation-delay:.58s}.hero-flow-item:nth-child(3){animation-delay:.68s}.hero-flow-item:nth-child(4){animation-delay:.78s}.hero-flow-item:nth-child(5){animation-delay:.88s}
.hero-flow-item i{width:35px;height:35px;display:grid;place-items:center;border:1px solid #ffffff35;background:var(--ink);color:#f1e9e4;font-style:normal;transition:color .25s,border-color .25s,transform .25s}
.hero-flow-item:hover i{color:#ff4b59;border-color:#ff4b59;transform:translateY(-3px)}
.hero-flow-item svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.hero-flow-item small{color:#a99e9a;font-size:.48rem;font-weight:700;letter-spacing:.13em;white-space:nowrap}
.hero-side{animation:heroSideIn .85s .2s cubic-bezier(.2,.7,.15,1) both}

/* The eighth YouTube chapter: one source visibly becomes five formats */
.journey-frame.repurpose-mode .journey-figure{right:1%;width:43%;height:89%;opacity:.94}
.stage-widget.repurpose-widget{top:14%;left:4%;width:min(55%,370px);padding:13px 14px 12px;border-left-width:3px}
.repurpose-widget .widget-label{margin-bottom:8px}
.repurpose-source{display:grid;grid-template-columns:38% 1fr;align-items:center;gap:10px;padding:7px;background:#f0eae3;border:1px solid #ddd5cd}
.source-screen{position:relative;display:grid;min-height:49px;place-items:center;background:radial-gradient(ellipse at 75% 10%,#6d1b20 0,#261a19 39%,#111 85%);color:#fff;overflow:hidden}
.source-screen:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,#e51b2b55 100%)}
.source-play{position:relative;z-index:1;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:white;font-size:.53rem}
.source-screen small{position:absolute;left:6px;bottom:4px;z-index:1;color:#fff;font-size:.37rem;font-weight:700;letter-spacing:.1em}
.source-copy small,.source-copy b{display:block}
.source-copy small{color:#a11b25;font-size:.39rem;font-weight:700;letter-spacing:.13em}
.source-copy b{margin-top:4px;color:#211a19;font:700 .76rem/1.15 'Manrope',sans-serif;letter-spacing:-.025em}
.repurpose-connector{display:flex;align-items:center;gap:6px;margin:8px 0;color:#8d151f}
.repurpose-connector i{height:1px;flex:1;background:linear-gradient(90deg,#d8cfc7,var(--red));transform-origin:left center;animation:repurposeLine 1.3s ease-in-out infinite alternate}
.repurpose-connector i:last-child{transform-origin:right center;animation-delay:.25s}
.repurpose-connector b{font-size:.37rem;letter-spacing:.08em;white-space:nowrap}
.repurpose-output-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.repurpose-output{min-height:43px;display:flex;align-items:center;gap:5px;padding:5px;background:#f5f1eb;border:1px solid #e1d9d1;color:#282220;animation:repurposeOutput .45s cubic-bezier(.2,.7,.15,1) both}
.repurpose-output:nth-child(1){animation-delay:.08s}.repurpose-output:nth-child(2){animation-delay:.16s}.repurpose-output:nth-child(3){animation-delay:.24s}.repurpose-output:nth-child(4){animation-delay:.32s}.repurpose-output:nth-child(5){animation-delay:.4s}
.output-mark{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;background:var(--red);color:white;font:700 .62rem/1 'Manrope',sans-serif;font-style:normal}
.repurpose-output:nth-child(2) .output-mark{background:#a51b28}
.output-mark.output-x{background:#111;font-size:.68rem}
.output-mark.output-threads{background:#242020;font-size:.74rem}
.output-mark.output-blog{background:#d8c5b7;color:#4b2826;font-size:.47rem}
.repurpose-output b{font:700 .46rem/1.15 'Manrope',sans-serif;letter-spacing:-.02em}

/* Subtle entrance choreography carries through the lower chapters */
.motion-ready .marketing-head,.motion-ready .marketing-option,.motion-ready .service-panel,.motion-ready .reels-head,.motion-ready .reel-card,.motion-ready .youtube-cta,.motion-ready .close-inner{opacity:0;transform:translateY(18px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.15,1)}
.motion-ready .is-visible{opacity:1;transform:none}
.motion-ready .marketing-option:nth-child(2){transition-delay:.08s}.motion-ready .marketing-option:nth-child(3){transition-delay:.16s}.motion-ready .marketing-option:nth-child(4){transition-delay:.24s}
.motion-ready .reel-card:nth-child(2){transition-delay:.07s}.motion-ready .reel-card:nth-child(3){transition-delay:.14s}.motion-ready .reel-card:nth-child(4){transition-delay:.21s}.motion-ready .reel-card:nth-child(5){transition-delay:.28s}
.marketing-option small{transition:color .2s,letter-spacing .2s}
.marketing-option:hover small,.marketing-option:focus-visible small{color:#f14a56;letter-spacing:.16em}
@keyframes heroEntry{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes heroGlyph{from{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes heroRoute{0%{background-position:-32% 0}100%{background-position:132% 0}}
@keyframes heroSideIn{from{opacity:.3;clip-path:inset(0 0 0 100%)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes repurposeLine{from{opacity:.55;transform:scaleX(.45)}to{opacity:1;transform:scaleX(1)}}
@keyframes repurposeOutput{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:700px){
  .hero-wordmark{width:clamp(230px,68vw,330px);height:clamp(47px,14.2vw,69px);margin:23px 0 14px}
  .hero-workflow{width:calc(100% - 8px);gap:2px;margin:20px 0 20px}
  .hero-workflow:before,.hero-workflow:after{top:15px;left:8%;right:8%}
  .hero-flow-item{gap:6px}
  .hero-flow-item i{width:31px;height:31px}
  .hero-flow-item svg{width:16px;height:16px}
  .hero-flow-item small{font-size:.38rem;letter-spacing:.07em}
  .journey-frame.repurpose-mode .journey-figure{right:0;width:45%;height:88%;opacity:.9}
  .stage-widget.repurpose-widget{top:11%;left:3%;width:59%;padding:7px 7px 6px;border-left-width:2px}
  .repurpose-widget .widget-label{font-size:.34rem;margin-bottom:5px}
  .repurpose-source{grid-template-columns:37% 1fr;gap:5px;padding:4px}
  .source-screen{min-height:36px}
  .source-play{width:17px;height:17px;font-size:.42rem}
  .source-screen small{left:3px;bottom:2px;font-size:.29rem}
  .source-copy small{font-size:.31rem}
  .source-copy b{font-size:.58rem;margin-top:2px}
  .repurpose-connector{gap:3px;margin:5px 0}
  .repurpose-connector b{font-size:.27rem;letter-spacing:.03em}
  .repurpose-output-grid{gap:3px}
  .repurpose-output{min-height:32px;gap:3px;padding:3px}
  .output-mark{width:15px;height:15px;flex-basis:15px;font-size:.48rem}
  .repurpose-output b{font-size:.36rem}
}
@media(prefers-reduced-motion:reduce){
  .motion-ready .marketing-head,.motion-ready .marketing-option,.motion-ready .service-panel,.motion-ready .reels-head,.motion-ready .reel-card,.motion-ready .youtube-cta,.motion-ready .close-inner{opacity:1;transform:none}
  .hero-flow-item,.hero-workflow,.hero-wordmark,.hero-copy>.eyebrow,.hero h1,.hero-copy>p,.hero-actions,.hero-side{animation:none;opacity:1;clip-path:none}
}
.reel-card.has-video .reel-graphic{display:none}
.reel-card.has-video{isolation:isolate;cursor:default}
.reel-poster{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.15,1),filter .35s}
.reel-card.has-video:hover .reel-poster{transform:scale(1.035);filter:saturate(1.08)}
.reel-inline-video{position:absolute;z-index:1;inset:0;width:100%;height:100%;border:0;opacity:0;pointer-events:none;transition:opacity .35s}
.reel-card.has-video:after{z-index:2}
.reel-card.has-video.video-ready .reel-inline-video{opacity:1}
.reel-card.has-video .reel-card-top{z-index:4}
.reel-card.has-video .reel-play{z-index:5;border:0;cursor:pointer}
.reel-card.has-video .reel-caption{z-index:5}
.reel-dialog{width:min(500px,calc(100% - 28px));max-height:calc(100svh - 28px);overflow-y:auto}
.reel-video-frame{display:block;width:min(100%,38.25svh,360px);height:min(68svh,640px);aspect-ratio:9 / 16;margin:16px auto 0;border:0;background:#080708}
@media(max-width:700px){.reel-video-frame{width:min(100%,38.25svh,360px);height:min(68svh,640px)}}

/* Cross-browser reset and layout for the Services dropdown. */
.nav-right .nav-dropdown>.services-toggle{-webkit-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:0;padding:9px 0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;color:#d1c8c5;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;text-align:left;text-transform:none;cursor:pointer}
.nav-right .nav-dropdown>.services-toggle:hover,.nav-right .nav-dropdown>.services-toggle:focus-visible{color:#fff;outline:1px solid #ffffff50;outline-offset:5px}
.nav-right .nav-dropdown>.services-toggle span{display:inline-block;color:#ef2435;transition:transform .2s}
.nav-right .nav-dropdown.is-open>.services-toggle span{transform:rotate(180deg)}
.nav-right .services-menu{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:240px;padding:6px;background:#171314;border:1px solid #ffffff30;box-shadow:0 16px 35px #0009}
.nav-right .services-menu>a{display:block!important;width:100%;margin:0;padding:12px 13px;border:0;border-bottom:1px solid #ffffff16;color:#d1c8c5;font-size:.74rem;line-height:1.45;text-align:left;white-space:normal}
.nav-right .services-menu>a:last-child{border-bottom:0}
.nav-right .services-menu>a:hover,.nav-right .services-menu>a:focus-visible{background:#ffffff0b;color:#fff}
@media(max-width:700px){
  .nav-right .nav-dropdown>.services-toggle{display:flex;width:100%;justify-content:space-between;padding:11px 0;border:0!important;border-bottom:1px solid #ffffff14!important;background:transparent!important;color:#d1c8c5;text-align:left}
  .nav-right .services-menu{position:static;display:none!important;width:100%;min-width:0;padding:4px 0 5px 9px;border:0;border-left:1px solid #ef2435;background:#100d0e;box-shadow:none;opacity:1;visibility:visible;transform:none}
  .nav-right .nav-dropdown.is-open>.services-menu{display:flex!important}
  .nav-right .services-menu>a{padding:10px 12px;border-bottom:1px solid #ffffff12;font-size:.76rem}
}
@media(hover:hover) and (pointer:fine){
  html.has-site-cursor,html.has-site-cursor body,html.has-site-cursor a,html.has-site-cursor button,html.has-site-cursor summary,html.has-site-cursor select,html.has-site-cursor input[type=submit],html.has-site-cursor input[type=button],html.has-site-cursor input[type=checkbox],html.has-site-cursor input[type=radio]{cursor:none!important}
  .site-cursor{position:fixed;z-index:100000;top:0;left:0;width:30px;height:40px;display:grid;place-items:center;pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:width .22s cubic-bezier(.2,.7,.15,1),height .22s cubic-bezier(.2,.7,.15,1),opacity .16s,background .22s,border-color .22s;will-change:left,top,width,height}
  .site-cursor.is-visible{opacity:1}
  .site-cursor img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 2px #0005);transition:opacity .15s,transform .22s}
  .site-cursor:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#efede8;opacity:0;transform:scale(.3);transition:opacity .16s,transform .22s}
  .site-cursor.is-link{width:36px;height:36px;border:1px solid #ef2435;border-radius:50%;background:#ef24351a}
  .site-cursor.is-link img{opacity:0;transform:scale(.45)}
  .site-cursor.is-link:after{opacity:1;transform:scale(1)}
  .site-cursor.is-pressed.is-link{width:30px;height:30px;background:#ef24354a}
  .site-cursor.is-light img{filter:brightness(0) invert(1) drop-shadow(0 1px 2px #0005)}
  .site-cursor.is-light.is-link{border-color:#fff;background:#ffffff1c}
  .site-cursor.is-light.is-pressed.is-link{background:#ffffff45}
  html.has-site-cursor input[type=text],html.has-site-cursor input[type=email],html.has-site-cursor input[type=tel],html.has-site-cursor textarea{cursor:text!important}
}
@media(prefers-reduced-motion:reduce){.site-cursor,.site-cursor img,.site-cursor:after{transition:none!important}}

/* Keep scroll-down arrows optically centered with their link labels. */
.hero-actions .btn[href="#youtube"]>span[aria-hidden="true"],.service-actions .service-link[href="#workflow"]>span[aria-hidden="true"],.service-actions .service-link[href="#what-we-do"]>span[aria-hidden="true"]{display:inline-flex;align-items:center;justify-content:center;line-height:1;transform:translateY(-1px)}

/* Align the Services chevron to the label's visual center in desktop and mobile nav. */
.nav-right .nav-dropdown>.services-toggle span{display:inline-flex;align-items:center;justify-content:center;height:1em;line-height:1;position:relative;top:-.34em}
.nav-right .nav-dropdown.is-open>.services-toggle span{transform:rotate(180deg)}
.nav-right>a:not(.btn){position:relative;z-index:2;display:inline-flex;align-items:center;line-height:1.2;padding:6px 0;transform:translateY(-5px)}
.nav-right>a:not(.btn)::before{content:"";position:absolute;inset:-6px -8px}
.nav-right>a:not(.btn) .nav-label{display:inline-block;transform:translateY(5px)}
@media(max-width:760px){.nav-right>a:not(.btn){display:flex;align-items:center;line-height:1.2;padding:11px 0;text-align:left}.nav-right>a:not(.btn)::before{inset:-2px -4px}}

/* Brief Sociello-branded entry animation. */
.site-loader{position:fixed;z-index:100001;inset:0;display:grid;place-items:center;background:#100d0e;opacity:1;visibility:visible;animation:siteLoaderExit .5s 1.25s ease forwards}
.site-loader:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 46%,#3a111825 0,transparent 43%);pointer-events:none}
.site-loader-content{position:relative;width:min(320px,78vw);display:flex;flex-direction:column;align-items:center;text-align:center;animation:siteLoaderArrive .6s .05s both}
.site-loader-logo{display:block;width:190px;height:40px;object-fit:cover;object-position:top;filter:invert(1)}
.site-loader-caption{margin-top:20px;color:#bdb3b1;font-size:.58rem;font-weight:600;letter-spacing:.2em}
.site-loader-track{position:relative;width:100%;height:1px;margin-top:32px;background:#ffffff26;overflow:hidden}
.site-loader-progress{position:absolute;inset:0 auto 0 0;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;animation:siteLoaderProgress 1.25s cubic-bezier(.64,.02,.24,.99) forwards}
.site-loader-foot{width:100%;margin-top:10px;display:flex;justify-content:space-between;color:#837a78;font-size:.5rem;font-weight:600;letter-spacing:.15em}
.site-loader-foot span:last-child{color:#f14a56}
@keyframes siteLoaderProgress{to{transform:scaleX(1)}}
@keyframes siteLoaderArrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes siteLoaderExit{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(max-width:700px){.site-loader-logo{width:165px;height:35px}}
@media(prefers-reduced-motion:reduce){.site-loader{animation-duration:.01ms;animation-delay:.01ms}.site-loader-content,.site-loader-progress{animation-duration:.01ms;animation-delay:0s}}


/* Keep the current destination clear in the main navigation. */
.nav-right>a[aria-current="page"],.nav-right .services-toggle.is-current,.nav-right .services-menu>a[aria-current="page"]{color:var(--red)!important}
.nav-right .services-menu>a[aria-current="page"]{background:#ffffff08}


/* Touch feedback for phones and tablets. */
.site-touch-cursor{position:fixed;z-index:100000;top:0;left:0;width:30px;height:30px;border:1px solid #ef2435;border-radius:50%;background:#ef24351a;box-shadow:0 0 0 4px #ef243510;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.72);transition:opacity .16s ease,transform .2s cubic-bezier(.2,.7,.15,1),width .2s,height .2s,background .2s,border-color .2s;will-change:left,top,transform}
.site-touch-cursor:after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:#ef2435;transform:translate(-50%,-50%);transition:background .2s}
.site-touch-cursor.is-visible{opacity:.92;transform:translate(-50%,-50%) scale(1)}
.site-touch-cursor.is-link{width:38px;height:38px;background:#ef243528}
.site-touch-cursor.is-pressed{transform:translate(-50%,-50%) scale(.84)}
.site-touch-cursor.is-light{border-color:#fff;background:#ffffff22;box-shadow:0 0 0 4px #ffffff12}
.site-touch-cursor.is-light:after{background:#fff}
.site-touch-cursor.is-light.is-link{background:#ffffff30}
@media(prefers-reduced-motion:reduce){.site-touch-cursor,.site-touch-cursor:after{transition:none!important}}
