/* HM Media v6 — white / indigo / violet / baby blue; structure inspired by redolive.com (no assets copied) */
@font-face{font-family:"Montserrat";src:url(../fonts/montserrat-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Inter";src:url(../fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-latin-ext-var.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-latin-var.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-latin-ext-italic-var.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-latin-italic-var.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--ink:#f1ede5;--ink2:#2a2560;--violet:#6c5ce7;--violet2:#8f7cf8;--blue:#8ecdf5;--lav:#f5f4fc;--line:#e4e2f2;--muted:#6b6889;--w:1240px;
 --disp:"Plus Jakarta Sans",system-ui,sans-serif;--sans:"Plus Jakarta Sans",system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:400 1.06rem/1.7 var(--sans);-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}
a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#141318;padding:.6rem 1rem;z-index:100}.skip:focus{left:1rem}
.w6{width:min(var(--w),100% - 2*clamp(1.25rem,5vw,4rem));margin:0 auto}.narrow6{max-width:900px}
.lbl{font:600 .72rem/1.3 var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--violet);margin:0 0 1.2rem}
.disp{font:700 clamp(2.3rem,6.4vw,5.6rem)/1.06 var(--disp);letter-spacing:.04em;text-transform:uppercase;margin:0}
.disp2{font:700 clamp(2rem,4.6vw,4rem)/1.05 var(--disp);letter-spacing:.04em;text-transform:uppercase;margin:0 0 clamp(2rem,5vw,3.5rem)}
.stmt{font:600 clamp(1.5rem,3.2vw,2.9rem)/1.25 var(--disp);letter-spacing:.005em;margin:0 0 2rem}
.stmt-s{font:500 clamp(1.1rem,2vw,1.5rem)/1.45 var(--disp);max-width:46rem;margin:2rem 0 0;color:var(--ink2)}
.body6{max-width:40rem;color:#d9d3c7}.note6{font-size:.8rem;color:var(--muted);letter-spacing:.02em}
.lnk6{display:inline-flex;align-items:center;gap:.45rem;font:600 .78rem var(--disp);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid transparent;transition:color .3s,border-color .3s}
.lnk6:hover{color:var(--violet);border-color:var(--violet)}
.ar{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;flex:none}.lnk6 .ar{color:var(--violet)}
.pill{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.4rem;border-radius:999px;background:var(--violet);color:#141318;text-decoration:none;font:600 .8rem/1 var(--disp);letter-spacing:.06em;transition:background .3s,transform .3s}
.pill:hover{background:var(--ink2)}.pill.big{padding:1rem 2rem;font-size:.9rem}
/* header */
.hd6{position:fixed;inset:0 0 auto;z-index:50;transition:background .4s,box-shadow .4s,padding .4s;padding:clamp(1rem,2.6vw,2rem) 0}
.hd6-in{width:min(1400px,100% - 2*clamp(1.25rem,5vw,4rem));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.wm{font:700 .95rem/1 var(--disp);letter-spacing:.42em;text-decoration:none;color:var(--ink);margin:0}
.hd6-nav{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.2rem)}.hd6-nav>a:not(.pill){text-decoration:none;font:500 .95rem var(--sans);color:var(--ink)}.hd6-nav>a:not(.pill):hover{color:var(--violet)}
.burger{width:40px;height:40px;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:8px}
.burger span{display:block;height:2px;background:var(--violet);transition:transform .4s}.burger[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.burger[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.home .hd6:not(.solid) .wm,.home .hd6:not(.solid) .hd6-nav>a:not(.pill),.pj-page .hd6:not(.solid) .wm,.pj-page .hd6:not(.solid) .hd6-nav>a:not(.pill){color:#141318}
.home .hd6:not(.solid) .burger span,.pj-page .hd6:not(.solid) .burger span{background:#fff}
.hd6.solid{background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line);padding:.85rem 0}
.menu{position:fixed;inset:0;z-index:45;background:var(--ink);color:#141318;display:flex;align-items:center;opacity:0;transition:opacity .45s}.menu.open{opacity:1}
.menu-in{width:min(var(--w),100% - 2*clamp(1.25rem,5vw,4rem));margin:0 auto;display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:end}
.menu-l{list-style:none;margin:0;padding:0}.menu-l a{display:inline-block;font:700 clamp(1.6rem,4.4vw,3.4rem)/1.25 var(--disp);letter-spacing:.03em;text-transform:uppercase;color:#141318;text-decoration:none;transition:color .3s,transform .3s}
.menu-l a:hover{color:var(--blue);transform:translateX(.4rem)}.menu-c a{display:block;color:#141318;text-decoration:none;margin-bottom:1.4rem}.menu-c .lbl{color:var(--blue);margin-bottom:.4rem}
.menu-open .hd6{background:transparent!important;box-shadow:none}.menu-open .hd6 .wm,.menu-open .hd6 .hd6-nav>a:not(.pill){color:#141318!important}.menu-open .burger span{background:#fff!important}
/* hero */
.hero6{padding:clamp(.75rem,2vw,1.6rem);padding-bottom:0}
.hero6-f{position:relative;height:calc(100svh - 2*clamp(.75rem,2vw,1.6rem));min-height:520px;overflow:hidden;background:var(--ink)}
.hero6-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero6-f::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,19,58,.82) 0%,rgba(22,19,58,.25) 45%,rgba(22,19,58,.35) 100%)}
.hero6-in{position:absolute;z-index:1;left:clamp(1.5rem,10vw,9rem);right:clamp(1.5rem,6vw,5rem);bottom:clamp(2.5rem,9vh,6rem);color:#141318}
.hero6-in .disp{max-width:16ch}
.side{position:absolute;z-index:1;left:clamp(.9rem,3vw,2.6rem);bottom:clamp(2.5rem,9vh,6rem);margin:0;writing-mode:vertical-rl;transform:rotate(180deg);font:600 .66rem var(--disp);letter-spacing:.32em;text-transform:uppercase;color:var(--blue)}
.badge{position:absolute;z-index:2;right:clamp(1.2rem,4vw,3.4rem);bottom:clamp(1.2rem,4vw,3rem);width:112px;height:112px;border-radius:50%;background:var(--violet);color:#141318;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font:600 .62rem/1.3 var(--disp);letter-spacing:.2em;text-transform:uppercase;padding:1.4rem;transition:transform .5s,background .3s}
.badge:hover{transform:rotate(-8deg) scale(1.05);background:var(--blue);color:var(--ink)}
/* sections */
.sec6{padding:clamp(5rem,12vw,10rem) 0}.pt0{padding-top:0}
.stmt-sec .stmt{font-size:clamp(1.6rem,3.6vw,3.2rem)}
.dark6{background:var(--ink);color:#141318}.dark6 .disp2{color:#141318}
.rows{list-style:none;margin:0;padding:0;border-top:1px solid #ffffff26}
.row{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;padding:clamp(2rem,4vw,3rem) 0;border-bottom:1px solid #ffffff26}
.row-k{margin:0;font:700 clamp(1rem,1.8vw,1.35rem)/1.3 var(--disp);letter-spacing:.06em;text-transform:uppercase}.row-k span{font-size:.62rem;color:var(--blue);margin-right:.8rem;vertical-align:super;letter-spacing:.1em}
.row p{margin:0 0 1.2rem;color:#d4d2ea;max-width:34rem}.dark6 .lnk6{color:#141318}.dark6 .lnk6 .ar{color:var(--blue)}.dark6 .lnk6:hover{color:var(--blue);border-color:var(--blue)}
.rows.light{border-top-color:var(--line)}.rows.light .row{border-bottom-color:var(--line)}.rows.light .row p{color:#d9d3c7}.rows.light .row-k span{color:var(--violet)}
/* tiles */
.mosaic{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.mosaic .tile{grid-column:span 2;aspect-ratio:4/3}.mosaic .tile.big{grid-column:span 3;aspect-ratio:3/2}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid2 .tile{aspect-ratio:4/3}.grid2 .tile.big{grid-column:1/-1;aspect-ratio:21/9}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grid3 .tile{aspect-ratio:4/5}
.tile{position:relative;display:block;overflow:hidden;background:var(--ink);color:#141318;text-decoration:none}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.6,.2,1),opacity .6s}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,19,58,.75) 0%,rgba(22,19,58,0) 55%);transition:background .6s}
.tile:hover img,.tile:focus-visible img{transform:scale(1.06)}.tile:hover::after,.tile:focus-visible::after{background:linear-gradient(0deg,rgba(108,92,231,.85) 0%,rgba(22,19,58,.25) 100%)}
.tile-t{position:absolute;z-index:1;left:clamp(1rem,2vw,1.6rem);bottom:clamp(1rem,2vw,1.4rem);right:3rem}
.tile-k{display:block;font:600 .6rem var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--blue);margin-bottom:.4rem}
.tile-n{display:block;font:700 clamp(1rem,1.8vw,1.5rem)/1.15 var(--disp);letter-spacing:.06em;text-transform:uppercase}
.tile .ar{position:absolute;z-index:1;top:1rem;right:1rem;width:1.2rem;height:1.2rem;color:var(--blue);transition:transform .5s}.tile:hover .ar{transform:translate(3px,-3px)}
.more{margin:2.4rem 0 0}
/* page heads + projects */
.phd{padding:clamp(9rem,20vw,14rem) 0 clamp(3rem,7vw,5rem)}
.pj-hero{position:relative;height:72svh;min-height:420px;overflow:hidden;background:var(--ink)}.pj-hero img{width:100%;height:100%;object-fit:cover}
.pj-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,19,58,.55) 0%,rgba(22,19,58,.1) 40%,rgba(22,19,58,.5) 100%)}
.pj-hero-in{position:absolute;z-index:1;left:0;right:0;bottom:2rem}.pj-hero .lbl{color:#141318}
.pj{padding-top:clamp(3rem,7vw,5rem)}.pj-meta{display:flex;gap:1rem;align-items:baseline;margin:1.6rem 0 clamp(3rem,7vw,5rem);font-size:.9rem}.pj-meta span{font:600 .62rem var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.pj-meta a{color:var(--violet);text-decoration:none}
.frame{background:var(--ink);box-shadow:0 30px 80px -40px rgba(22,19,58,.6)}.frame video{width:100%;aspect-ratio:16/9;object-fit:cover}.cap6{margin:1.2rem 0 0}
.pj-nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:clamp(3rem,7vw,5rem);padding-top:2rem;border-top:1px solid var(--line)}
.phones{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(1rem,2.4vw,1.8rem)}
.phone{position:relative;width:clamp(9rem,16vw,12rem);aspect-ratio:9/19.5;border-radius:1.7rem;padding:.42rem;background:var(--ink);box-shadow:0 24px 60px -24px rgba(22,19,58,.55)}
.phone::before{content:"";position:absolute;top:.8rem;left:50%;transform:translateX(-50%);width:28%;height:.32rem;border-radius:1rem;background:#000;z-index:1}
.phone video{width:100%;height:100%;object-fit:cover;border-radius:1.3rem}
/* cta + marquee + footer */
.cta6{padding:clamp(5rem,11vw,9rem) 0;background:var(--lav)}.cta6 .stmt{margin-bottom:1rem}.cta6 p{color:var(--muted);margin:0 0 2rem}.cta6 p a{color:var(--violet)}
.marq{overflow:hidden;padding:clamp(2.5rem,6vw,4.5rem) 0;border-bottom:1px solid var(--line)}
.marq-t{display:flex;width:max-content;text-decoration:none;animation:marq 38s linear infinite}
.marq-t span{font:700 clamp(3rem,9vw,7.5rem)/1 var(--disp);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;color:transparent;-webkit-text-stroke:1.5px var(--ink);transition:color .5s}
.marq:hover .marq-t span{color:var(--violet);-webkit-text-stroke-color:var(--violet)}
@keyframes marq{to{transform:translateX(-50%)}}
.ft6{padding:clamp(3.5rem,7vw,5rem) 0 0}.ft6-in{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:2rem}
.ft6-in a{display:flex;align-items:center;gap:.45rem;text-decoration:none;color:var(--ink);margin:.3rem 0;font-size:.95rem}.ft6-in a:hover{color:var(--violet)}.ft6-in .ar{color:var(--violet);width:.8em}
.ft6-h{font:600 1.05rem var(--disp);margin:0 0 .8rem}.ft6-s{color:var(--muted);font-size:.85rem;margin:.8rem 0 0}
.ft6-b{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;margin-top:3.5rem;padding:1.3rem 0 1.6rem;border-top:1px solid var(--line);font-size:.74rem;color:var(--muted)}
/* website design page (from website-design-copy.md) */
.wd6 .page-top{padding:clamp(9rem,20vw,14rem) 0 clamp(3rem,6vw,4rem)}.wd6 .wrap{width:min(900px,100% - 2*clamp(1.25rem,5vw,4rem));margin:0 auto}
.wd6 h1{font:700 clamp(2.3rem,6.4vw,5.6rem)/1.06 var(--disp);letter-spacing:.04em;text-transform:uppercase;margin:0 0 2rem}
.wd-kick{font:600 clamp(1.4rem,3vw,2.4rem)/1.25 var(--disp);margin:0 0 1.2rem}.wd-intro p{color:#d9d3c7;max-width:40rem}
.wd-sec{padding:clamp(3rem,7vw,5rem) 0;border-top:1px solid var(--line)}.wd-sec h2{font:700 clamp(1.3rem,2.6vw,2rem)/1.15 var(--disp);letter-spacing:.04em;text-transform:uppercase;margin:0 0 1.6rem}
.wd-sec p{color:#d9d3c7;max-width:40rem}.wd-sec strong{color:var(--ink)}.src{color:var(--muted);font-size:.8em}
.wd-list,.wd-steps{list-style:none;margin:0 0 1rem;padding:0;max-width:44rem}.wd-list li,.wd-steps li{padding:.85rem 0;border-top:1px solid var(--line);color:#d9d3c7}
.wd-steps{counter-reset:s}.wd-steps li{counter-increment:s}.wd-steps li::before{content:"0" counter(s);font:600 .66rem var(--disp);letter-spacing:.2em;color:var(--violet);margin-right:1rem}
.wd6 .cta{background:var(--lav);padding:clamp(5rem,11vw,9rem) 0}.wd6 .cta h2{font:600 clamp(1.5rem,3.2vw,2.9rem)/1.25 var(--disp);margin:0 0 1rem}.wd6 .ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.wd6 .btn{display:inline-flex;padding:.8rem 1.5rem;border-radius:999px;background:var(--violet);color:#141318;text-decoration:none;font:600 .78rem var(--disp);letter-spacing:.06em}.wd6 .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.wd6 .sec.showcase{padding:0}.wd6 .w6 .tile{aspect-ratio:21/9}
.addon6{background:var(--lav)}
.wd-notes{padding:2.5rem 0 3rem;border-top:1px solid var(--line)}.wd-notes .eyebrow{font:600 .62rem var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--muted)}
.wd-notes .fn,.wd-notes .srcs{font-size:.74rem;line-height:1.6;color:var(--muted);padding-left:1.1rem}.wd-notes .srcs{list-style:none;padding:0}.wd-notes a{color:var(--muted)}
.an-empty{border:1px dashed #cfcbe8;min-height:15rem;display:flex;align-items:center;justify-content:center;color:var(--muted);font:600 .72rem var(--disp);letter-spacing:.24em;text-transform:uppercase;background:var(--lav)}
/* contact + simple pages (shared generator) */
.sec.page-top{padding:clamp(9rem,20vw,14rem) 0 clamp(4rem,9vw,7rem)}.wrap{width:min(var(--w),100% - 2*clamp(1.25rem,5vw,4rem));margin:0 auto}.wrap.narrow{max-width:900px}
.page-top h1{font:700 clamp(2.3rem,6.4vw,5.6rem)/1.06 var(--disp);letter-spacing:.04em;text-transform:uppercase;margin:0 0 1.6rem}
.eyebrow{font:600 .72rem var(--disp);letter-spacing:.24em;text-transform:uppercase;color:var(--violet);margin:0 0 1.2rem}.sub{color:#d9d3c7;max-width:40rem}
.direct{display:flex;flex-wrap:wrap;gap:1.6rem;margin:2rem 0}.direct a{display:inline-flex;gap:.5rem;align-items:center;color:var(--violet);text-decoration:none;font-weight:600}.direct svg{width:1em;fill:currentColor}
.form{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 1.6rem;margin-top:2.6rem}.f{display:flex;flex-direction:column;gap:.45rem}.f.full{grid-column:1/-1}
.f label{font:600 .66rem var(--disp);letter-spacing:.2em;text-transform:uppercase;color:var(--ink2)}.f small{text-transform:none;letter-spacing:0;color:var(--muted);font-weight:400}
.f input,.f select,.f textarea{font:inherit;font-size:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink)}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px #6c5ce722}
.form-foot{display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}.form-foot p{margin:0;color:var(--muted);font-size:.9rem}.form-foot a{color:var(--violet)}
.btn{display:inline-flex;align-items:center;padding:.9rem 1.8rem;border-radius:999px;border:0;background:var(--violet);color:#141318;font:600 .82rem var(--disp);letter-spacing:.06em;cursor:pointer;text-decoration:none}.btn:hover{background:var(--ink2)}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}
.hp{position:absolute;left:-9999px}
/* mobile bar */
.mbar{display:none}
@media (max-width:760px){
 /* burger removed: keep header links visible */.mosaic{grid-template-columns:1fr 1fr}.mosaic .tile,.mosaic .tile.big{grid-column:span 1;aspect-ratio:4/5}.mosaic .tile.big:nth-child(-n+2){grid-column:1/-1;aspect-ratio:4/3}
 .grid2,.grid3{grid-template-columns:1fr}.grid2 .tile.big{aspect-ratio:4/3}.grid3 .tile{aspect-ratio:4/3}
 .row{grid-template-columns:1fr;gap:.8rem}.menu-in{grid-template-columns:1fr}.ft6-in{grid-template-columns:1fr 1fr}.ft6-in>div:first-child{grid-column:1/-1}
 .badge{width:84px;height:84px;font-size:.5rem;padding:1rem}.side{display:none}.hero6-in{left:1.4rem}.form{grid-template-columns:1fr}
 .mbar{display:flex;position:fixed;inset:auto 0 0;z-index:40;background:var(--ink);padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom));gap:.5rem}
 .mbar a{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;color:#141318;text-decoration:none;font:600 .74rem var(--disp);padding:.7rem;border:1px solid #ffffff2a;border-radius:999px}.mbar a.mb-main{background:var(--violet);border-color:var(--violet);flex:1.6}
 .mbar svg{width:1em;fill:currentColor}body{padding-bottom:4.4rem}
}
/* scroll fade-up (JS only) */
.js .fu{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.6,.2,1)}.js .fu.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .fu{opacity:1;transform:none;transition:none}.marq-t{animation:none}.tile img,.badge,.menu{transition:none}}
@media (max-width:760px){.disp,.wd6 h1,.page-top h1{font-size:clamp(1.6rem,8vw,2.6rem);letter-spacing:.02em}.disp2{font-size:clamp(1.5rem,7vw,2.2rem)}}
.disp,.disp2,.wd6 h1{overflow-wrap:break-word;hyphens:manual}
html,body{overflow-x:clip}
.still{margin:10px 0 0}.still img{width:100%;aspect-ratio:3/2;object-fit:cover}
.menu[hidden]{display:none}
.hero6-in .disp{max-width:none;overflow-wrap:normal;word-break:normal}
@media(max-width:600px){.hero6-in .disp{font-size:clamp(1.5rem,7.6vw,2.6rem)}}
.pj-gal{display:grid;grid-template-columns:1fr 1.9fr 1fr;gap:clamp(1rem,3vw,2.6rem);align-items:center;margin-top:clamp(2.5rem,6vw,5rem)}
.pj-gal .phone{width:100%;max-width:15rem;justify-self:center}
.pj-gal .still{margin:0}.pj-gal .still img{aspect-ratio:4/5;border-radius:.4rem}
@media(max-width:760px){.pj-gal{grid-template-columns:1fr 1fr;gap:1rem}.pj-gal .still{grid-column:1/-1;order:-1}.pj-gal .still img{aspect-ratio:3/2}.pj-gal .phone{max-width:11rem}}
.pj-ph{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.8rem,2vw,1.6rem);margin-top:clamp(1.5rem,4vw,3rem);grid-auto-flow:dense}
.pj-ph .still{margin:0}.pj-ph .still img{aspect-ratio:3/2;height:100%;border-radius:.4rem}
.pj-ph .wide{grid-column:1/-1}.pj-ph .wide img{aspect-ratio:21/10}
.pj-ph .tall{grid-row:span 2}.pj-ph .tall img{aspect-ratio:auto}
@media(max-width:760px){.pj-ph{grid-template-columns:1fr}.pj-ph .tall{grid-row:auto}.pj-ph .tall img{aspect-ratio:4/5}.pj-ph .wide img{aspect-ratio:3/2}}
/* vertical clips: no device frame, no shadow - clean edges (Hayley) */
.phone{background:none;padding:0;box-shadow:none;border-radius:.4rem;aspect-ratio:9/16;overflow:hidden}
.phone::before,.phone::after{display:none!important;content:none!important}
.phone video{border-radius:0;display:block}
.pj .still.solo{margin-top:clamp(2.5rem,6vw,5rem)}.pj .still.solo img{aspect-ratio:3/2;border-radius:.4rem}
.pj-vert{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,2.6rem);margin-top:clamp(1.5rem,4vw,3rem)}
.pj-vert .phone{width:100%;max-width:none}
@media(max-width:760px){.pj-vert{grid-template-columns:1fr;justify-items:center}.pj-vert .phone{max-width:22rem}}
/* SEMA: lighter overlay on its tile + project hero (cover itself also brightened) */
.tile[href$="/sema.html"]::after{background:linear-gradient(0deg,rgba(22,19,58,.5) 0%,rgba(22,19,58,0) 40%)}
.pj-hero[data-slug="sema"]::after{background:linear-gradient(180deg,rgba(22,19,58,.3) 0%,rgba(22,19,58,0) 35%,rgba(22,19,58,.28) 100%)}
.pj-trio{display:grid;grid-template-columns:1fr 1fr 2fr;gap:clamp(.8rem,2vw,1.6rem);margin-top:clamp(2.5rem,6vw,5rem)}
.pj-trio .still{margin:0}.pj-trio .still img{height:100%;aspect-ratio:3/4;border-radius:.4rem}.pj-trio .still:nth-child(3) img{aspect-ratio:3/2}
@media(max-width:760px){.pj-trio{grid-template-columns:1fr 1fr}.pj-trio .still:nth-child(3){grid-column:1/-1}}
.still.tallsolo{max-width:34rem;margin:clamp(2rem,5vw,4rem) auto 0}.still.tallsolo img{aspect-ratio:4/5;border-radius:.4rem}
.dr6{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:clamp(.8rem,2vw,1.6rem)}
.dr6 .still{margin:0}.dr6 img{height:100%;border-radius:.4rem}.dr6 .dr-a{grid-column:1/-1}.dr6 .dr-a img{aspect-ratio:21/9}.dr6 .dr-b img{aspect-ratio:16/10}.dr6 .dr-c img{aspect-ratio:auto;object-fit:cover}
@media(max-width:760px){.dr6{grid-template-columns:1fr 1fr}.dr6 .dr-a img{aspect-ratio:3/2}.dr6 .dr-b img,.dr6 .dr-c img{aspect-ratio:4/5}}
.ab6{display:grid;grid-template-columns:3fr 2fr;gap:clamp(.8rem,2vw,1.6rem);align-items:stretch}
.ab6 .still{margin:0}.ab6 img{border-radius:.4rem;height:100%}.ab-main img{aspect-ratio:4/5}.ab-side{display:grid;grid-template-rows:1fr 1fr;gap:clamp(.8rem,2vw,1.6rem)}.ab-side img{aspect-ratio:auto;object-fit:cover}
@media(max-width:760px){.ab6{grid-template-columns:1fr}.ab-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ab-side img{aspect-ratio:1}}
.dr6{grid-template-columns:1.6fr 1fr}.dr6 .dr-a{grid-column:auto}.dr6 .dr-a img,.dr6 .dr-b img{aspect-ratio:3/2}
.dr6 .dr-c{grid-column:2;grid-row:1/span 2;position:relative}.dr6 .dr-c img{position:absolute;inset:0;width:100%;height:100%}
.ab-side figure{position:relative;min-height:8rem}.ab-side img{position:absolute;inset:0;width:100%;height:100%}
@media(max-width:760px){.dr6{grid-template-columns:1fr 1fr}.dr6 .dr-a{grid-column:1/-1}.dr6 .dr-c{grid-column:auto;grid-row:auto;position:static}.dr6 .dr-c img{position:static;aspect-ratio:4/5}.ab-side figure{position:static}.ab-side img{position:static;aspect-ratio:1}}
/* Portfolio categories: own background each, big heading slides in from the side */
.cat6{padding:clamp(4rem,9vw,8rem) 0}.cat-cine{background:#fff}.cat-web{background:var(--ink);color:#141318}.cat-social{background:var(--lav)}
.cat6-h{font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(2.2rem,7vw,6rem);line-height:1;margin:0 0 clamp(2rem,5vw,3.5rem);color:var(--ink);overflow-wrap:anywhere}
.cat-web .cat6-h{color:#141318}.cat-social .cat6-h{color:var(--violet)}
.js .fu.slide{transform:translateX(-12vw);transition:opacity 1s ease,transform 1.1s cubic-bezier(.16,.84,.24,1)}.js .fu.slide.in{transform:none}
@media (prefers-reduced-motion:reduce){.js .fu.slide{opacity:1;transform:none;transition:none}}
@media(max-width:600px){.cat6-h{font-size:clamp(1.7rem,9vw,2.6rem)}}
/* richer page tones instead of plain white (Hayley) */
:root{--tint:#eeecf9;--tint2:#e3ecf9}
body{background:linear-gradient(180deg,var(--tint) 0%,#f3f2fb 40%,var(--tint2) 100%) fixed}
.cta6{background:linear-gradient(135deg,#e7e3fb 0%,#dfeafa 100%)}
.cat-cine{background:linear-gradient(180deg,#f1effb 0%,#e6edfa 100%)}
.cat-social{background:linear-gradient(160deg,var(--ink2) 0%,#3b2f86 100%);color:#141318}.cat-social .cat6-h{color:#141318}
.cat-web .tile-t,.cat-social .tile-t{color:#141318}
/* vertical clips: sleek 9:16, tiny radius, even grid (no phone frame/notch/shadow) */
.phone{background:none!important;padding:0!important;box-shadow:none!important;border-radius:.25rem;aspect-ratio:9/16;overflow:hidden;width:100%}
.phone video{border-radius:0;width:100%;height:100%;object-fit:cover;display:block}
.phones{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),17rem));justify-content:center;gap:clamp(.8rem,2vw,1.4rem);list-style:none;padding:0;margin:clamp(2rem,5vw,4rem) 0 0}
.phones li{width:100%}
.pj-vert .phone{max-width:none}
@media(max-width:600px){.phones{grid-template-columns:1fr 1fr}.phones li:only-child,.phones li:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:60%}}
.rally6{margin-top:clamp(3.5rem,8vw,6.5rem)}.rally6 .cat6-h{font-size:clamp(2rem,5vw,4rem)}
.rally-g{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.6rem,1.6vw,1.2rem)}
.rally-g .still{margin:0}.rally-g img{aspect-ratio:4/5;border-radius:.25rem}
@media(max-width:760px){.rally-g{grid-template-columns:1fr 1fr}}
.quote6{padding:clamp(7rem,18vw,15rem) 0;background:linear-gradient(180deg,var(--ink) 0%,var(--ink2) 100%);color:#141318;text-align:center}
.quote6-t{margin:0 auto;max-width:18ch;font-family:"Plus Jakarta Sans",system-ui,sans-serif;font-style:italic;font-weight:300;font-size:clamp(2.4rem,7vw,6.2rem);line-height:1.08;letter-spacing:-.01em;color:#141318}
.js .fu.slow{transform:translateY(40px);transition:opacity 1.8s ease,transform 1.8s cubic-bezier(.16,.84,.24,1)}.js .fu.slow.in{transform:none}
@media (prefers-reduced-motion:reduce){.js .fu.slow{opacity:1;transform:none;transition:none}}
/* ================= DARK THEME (Hayley: near-black, white text, baby blue + purple accents) ================= */
:root{--bg:#f7f4ee;--bg2:#f1ede5;--navy:#efeaf7;--plum:#efeaf7;--tx:#141318;--tx2:#4a4856;--ln:#ddd7cc;--grad:linear-gradient(90deg,#8ecdf5 0%,#8f7cf8 55%,#6c5ce7 100%)}
body{background:var(--bg)!important;color:var(--tx)}
.disp,.disp2,.stmt,.cat6-h,h1,h2,h3{color:#141318}
.disp2,.cat6-h{background:linear-gradient(90deg,#fff 0%,#fff 35%,#8ecdf5 75%,#8f7cf8 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cat-social .cat6-h,.cat-web .cat6-h{color:#141318}
.stmt-s,.body6,.row p,.cta6 p,.ft6-s,.note6,.src,.pj-meta span,.form-foot p,.f small,.wd-notes .fn,.wd-notes .srcs,.wd-notes a,.wd-notes .eyebrow{color:var(--tx2)!important}
.lbl,.eyebrow{color:#4b3cc4}
.lnk6,.dark6 .lnk6{color:#141318}.lnk6 .ar{color:#4b3cc4}.lnk6:hover{color:#4b3cc4;border-color:#8ecdf5}
.wm,.hd6-nav>a:not(.pill){color:#141318}.burger span{background:#fff}
.hd6.solid{background:rgba(7,7,13,.82)!important;box-shadow:0 1px 0 var(--ln)}
.pill,.btn,.wd6 .btn{background:var(--violet);color:#141318;box-shadow:0 0 0 rgba(142,205,245,0);transition:box-shadow .4s,background .4s}
.pill:hover,.btn:hover,.wd6 .btn:hover{background:#7d6ef0;box-shadow:0 0 28px -4px rgba(142,205,245,.55)}
.btn.ghost,.wd6 .btn.ghost{color:#141318;border-color:var(--ln)}
.menu{background:radial-gradient(120% 90% at 80% 0%,#1b1440 0%,#f7f4ee 60%)}
.dark6{background:var(--bg2)}.sec6{background:transparent}
.rows.light,.rows.light .row,.rows,.row{border-color:var(--ln)!important}
.frame{background:#000;box-shadow:none}
.cta6,.wd6 .cta,.addon6{background:radial-gradient(90% 120% at 15% 0%,#1d1650 0%,#f1ede5 70%)!important}
.marq{border-color:var(--ln)}.marq-t span{color:transparent;-webkit-text-stroke:1px rgba(142,205,245,.55)}.marq-t:hover span{-webkit-text-stroke-color:#8f7cf8}
.ft6{background:#000;color:var(--tx2)}.ft6-in a{color:#e4e3f2}.ft6-in a:hover{color:#4b3cc4}.ft6-h{color:#4b3cc4}.ft6-b{border-color:var(--ln)}
.wd-sec,.wd-notes{border-color:var(--ln)}.wd-sec strong{color:#141318}.wd-list li,.wd-steps li{color:#d6d4ea;border-color:var(--ln)}
.an-empty{border-color:#34305a;color:var(--tx2)}
.f label{color:#4b3cc4}.f input,.f select,.f textarea{background:#10101a;color:#141318;border-color:#2c2a46}.f input:focus,.f select:focus,.f textarea:focus{border-color:#8ecdf5;outline:2px solid rgba(142,205,245,.35)}
.mbar{background:#000;border-top:1px solid var(--ln)}
.skip{background:#8ecdf5;color:#000}
.cat-cine{background:#000!important}.cat-web{background:linear-gradient(180deg,#070b22 0%,var(--navy) 100%)!important}.cat-social{background:linear-gradient(180deg,#120b28 0%,var(--plum) 100%)!important}
.cat6{position:relative}.cat6::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--grad);opacity:.5}
.quote6{background:radial-gradient(70% 90% at 50% 50%,#1a1442 0%,#f7f4ee 75%)!important}
.quote6-t{text-shadow:0 0 40px rgba(143,124,248,.35)}
.tile{background:#0d0d16}.tile:hover{box-shadow:0 0 0 1px rgba(142,205,245,.35),0 0 40px -10px rgba(143,124,248,.6)}
.badge{background:var(--violet);color:#141318;box-shadow:0 0 30px -6px rgba(143,124,248,.7)}
.pj-nav{border-color:var(--ln)}
/* ===== cinematic service rows (Cinematography page) ===== */
.cine6{list-style:none;margin:0;padding:0;border-top:1px solid var(--ln)}
.cr{position:relative;display:grid;grid-template-columns:7rem 1fr 1.2fr;align-items:center;gap:1.5rem;padding:clamp(2.2rem,5vw,4rem) clamp(.5rem,2vw,1.5rem);border-bottom:1px solid var(--ln);overflow:hidden;isolation:isolate}
.cr-media{position:absolute;inset:0;z-index:-1;opacity:0;transform:scale(1.08);transition:opacity .9s ease,transform 1.6s cubic-bezier(.16,.84,.24,1)}
.cr-media video,.cr-media img{width:100%;height:100%;object-fit:cover;display:block}
.cr-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,13,.92) 0%,rgba(7,7,13,.55) 55%,rgba(7,7,13,.8) 100%)}
.cr:hover .cr-media,.cr:focus-within .cr-media{opacity:1;transform:scale(1)}
.cr-n{font:300 clamp(2.4rem,5vw,4rem)/1 var(--disp);color:transparent;-webkit-text-stroke:1px #8ecdf5;font-variant-numeric:tabular-nums}
.cr-t{position:relative;margin:0;font:700 clamp(2rem,5.5vw,4.6rem)/1 var(--disp);text-transform:uppercase;letter-spacing:.02em;color:#141318;justify-self:start}
.cr-t::after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,.84,.24,1)}
.cr:hover .cr-t::after,.cr.in .cr-t::after{transform:scaleX(1)}
.cr p{margin:0;color:var(--tx2);max-width:30rem;font-size:1.05rem}
@media(max-width:800px){.cr{grid-template-columns:auto 1fr;gap:.6rem 1.2rem}.cr p{grid-column:1/-1}.cr.in .cr-media{opacity:.9;transform:none}}
.js .cr.fu{transform:translateX(-6vw)}.js .cr.fu.in{transform:none}
/* staggered word reveal + parallax */
.js .wr .w{display:inline-block;opacity:0;transform:translateY(.6em);transition:opacity .8s ease,transform .9s cubic-bezier(.16,.84,.24,1);transition-delay:calc(var(--i)*45ms)}
.js .wr.in .w{opacity:1;transform:none}
.still,.ab6 figure,.dr6 figure{overflow:hidden}.js .px img{transform:translateY(var(--py,0)) scale(1.1);will-change:transform}
@media (prefers-reduced-motion:reduce){.cr-media,.cr-t::after,.js .wr .w,.js .cr.fu{transition:none!important;transform:none!important;opacity:1}.js .px img{transform:none!important}.cr-media{opacity:.0}}
/* footer: marquee removed; Hayley's purple as the footer band + accent */
.marq{display:none!important}
.ft6{background:linear-gradient(135deg,#6c5ce7 0%,#5a49d6 55%,#3d2fa8 100%)!important;color:#efeefe}
.ft6-in a,.ft6-b,.ft6-s{color:#f3f2ff!important}.ft6-h{color:#d9f0ff!important}.ft6-in a:hover{color:#141318;text-decoration:underline}.ft6 .ar{color:#d9f0ff}.ft6-b{border-color:rgba(255,255,255,.25)!important}
.ft6 .wm{color:#141318}
:root{--accent:#6c5ce7}
.menu-sub a{display:inline-block;font:500 1rem var(--sans)!important;letter-spacing:.04em!important;text-transform:none!important;color:#4b3cc4!important;margin:0 1.1rem .4rem 0}
.cat6-links{display:flex;gap:1.6rem;flex-wrap:wrap;margin:-1rem 0 2.4rem}
/* cinematic rows v2: long horizontal links that expand to reveal previews */
.cr{display:block;padding:0;grid-template-columns:none}
.cr-a{display:grid;grid-template-columns:7rem minmax(0,1fr) minmax(0,1.1fr) 3rem;align-items:center;gap:1.5rem;padding:clamp(2.2rem,5vw,4rem) clamp(.5rem,2vw,1.5rem);text-decoration:none;color:inherit}
.cr-t{position:relative;font:700 clamp(2rem,5.5vw,4.6rem)/1 var(--disp);text-transform:uppercase;letter-spacing:.02em;color:#141318;justify-self:start}
.cr-t::after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,.84,.24,1)}
.cr-d{color:var(--tx2);max-width:30rem;font-size:1.05rem}
.cr-go{justify-self:end;color:#4b3cc4;transition:transform .5s}.cr-go .ar{width:2rem;height:2rem}
.cr:hover .cr-go,.cr:focus-within .cr-go{transform:translate(4px,-4px)}
.cr:hover .cr-t::after,.cr:focus-within .cr-t::after{transform:scaleX(1)}
.cr-rv{display:grid;grid-template-rows:0fr;transition:grid-template-rows .8s cubic-bezier(.16,.84,.24,1)}
.cr-rv-in{overflow:hidden;min-height:0}
.cr:hover .cr-rv,.cr:focus-within .cr-rv{grid-template-rows:1fr}
.cr-pv{display:flex;gap:1rem;padding:0 clamp(.5rem,2vw,1.5rem) clamp(2rem,4vw,3rem) calc(7rem + 1.5rem + clamp(.5rem,2vw,1.5rem));height:clamp(11rem,22vw,17rem)}
.cr-pv video,.cr-pv img{height:100%;border-radius:.25rem;object-fit:cover;display:block}
.cr-pv-film video{aspect-ratio:16/9;width:auto}
.cr-pv-ph img{aspect-ratio:4/5;width:auto;transform:scale(.9);opacity:0;transition:transform .9s cubic-bezier(.16,.84,.24,1),opacity .7s}
.cr:hover .cr-pv-ph img,.cr:focus-within .cr-pv-ph img,.cr.inview .cr-pv-ph img{transform:none;opacity:1}
.cr-pv-ph img:nth-child(2){transition-delay:.08s}.cr-pv-ph img:nth-child(3){transition-delay:.16s}
.cr-pv-dr video{aspect-ratio:9/16;width:auto}.cr-pv-dr img{aspect-ratio:3/2;width:auto}
.cr-media{display:none}
@media(max-width:800px){.cr-a{grid-template-columns:auto 1fr auto;gap:.6rem 1rem}.cr-d{grid-column:1/-1;grid-row:2}.cr-n{font-size:2rem}
 .cr.inview .cr-rv{grid-template-rows:1fr}.cr.inview .cr-t::after{transform:scaleX(1)}.cr-pv{padding-left:clamp(.5rem,2vw,1.5rem);height:11rem;overflow-x:auto}}
@media (hover:none){.cr.inview .cr-rv{grid-template-rows:1fr}}
@media (prefers-reduced-motion:reduce){.cr-rv,.cr-pv-ph img,.cr-t::after,.cr-go{transition:none!important}}
.pt-cat{padding:clamp(3rem,7vw,6rem) 0}.pt-cat:nth-of-type(even){background:linear-gradient(180deg,#070b22,#efeaf7)}.pt-cat:nth-of-type(3n){background:linear-gradient(180deg,#120b28,#efeaf7)}
.nc{text-transform:none!important}
.av-g{margin-top:clamp(2rem,5vw,4rem)}.av-g img{aspect-ratio:3/2}
/* project template: full-bleed main film on top */
.pj-film{position:relative;width:100%;background:#000;overflow:hidden}
.pj-film video{display:block;width:100%;aspect-ratio:21/9;object-fit:cover;max-height:88svh}
.pj-film.vert video{aspect-ratio:21/9;object-position:50% 40%}
@media(max-width:760px){.pj-film video{aspect-ratio:16/9}.pj-film.vert video{aspect-ratio:4/5}}
.pj-page .hd6:not(.solid){background:linear-gradient(180deg,rgba(0,0,0,.55),transparent)}
.pj-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.8rem,2vw,1.6rem);margin-top:clamp(2rem,5vw,4rem)}
.pj-pair .still{margin:0;position:relative}.pj-pair img{aspect-ratio:4/3;border-radius:.25rem;height:100%}
.pj-pair .tall img{aspect-ratio:4/3}
.av-g .tall img{aspect-ratio:3/2}
@media(max-width:600px){.pj-pair{grid-template-columns:1fr}}
.pj-pair .still:only-child{grid-column:1/-1;max-width:36rem;width:100%;margin:0 auto}.pj-pair .still.tall:only-child img{aspect-ratio:4/5}
/* home: social section with animated abstract analytics graphic (no numbers) */
.soc6{padding:clamp(5rem,11vw,9rem) 0;background:radial-gradient(90% 120% at 85% 20%,#3b2a8f 0%,#1a1046 45%,#f7f4ee 100%);border-top:1px solid #2a2350}
.soc6-in{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.soc-l{list-style:none;margin:1.6rem 0 2.2rem;padding:0;counter-reset:s}
.soc-l li{counter-increment:s;padding:.85rem 0;border-bottom:1px solid rgba(142,205,245,.18);font:600 clamp(1rem,1.6vw,1.25rem) var(--disp);letter-spacing:.04em;text-transform:uppercase;color:#141318}
.soc-l li::before{content:"0" counter(s);color:#4b3cc4;font-weight:400;margin-right:1rem;font-size:.8em}
.soc-g{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 0 18px rgba(143,124,248,.35))}
.soc-grid line{stroke:rgba(142,205,245,.12);stroke-width:1}
.soc-bars rect{fill:url(#sg);opacity:.28;transform-origin:center bottom;transform-box:fill-box}
.soc-line{fill:none;stroke:url(#sg);stroke-width:4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.js .soc-vis .soc-line{stroke-dashoffset:1;transition:stroke-dashoffset 2.6s cubic-bezier(.4,.1,.2,1) .3s}
.js .soc-vis.in .soc-line{stroke-dashoffset:0}
.js .soc-vis .soc-bars rect{transform:scaleY(0);transition:transform 1.2s cubic-bezier(.16,.84,.24,1);transition-delay:calc(var(--k)*70ms)}
.js .soc-vis.in .soc-bars rect{transform:none}
.js .soc-vis .soc-nodes circle{opacity:0;transition:opacity .8s;transition-delay:calc(1.2s + var(--k)*.45s)}
.js .soc-vis.in .soc-nodes circle{opacity:1}
.soc-vis.in .soc-nodes circle[r="16"]{animation:pulse 3.2s ease-in-out infinite;animation-delay:calc(2.8s + var(--k)*.4s);transform-origin:center;transform-box:fill-box}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(1.5);opacity:.35}}
.js .soc-vis.fu{transform:none}
@media(max-width:800px){.soc6-in{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.js .soc-vis .soc-line{stroke-dashoffset:0;transition:none}.js .soc-vis .soc-bars rect{transform:none;transition:none}.js .soc-vis .soc-nodes circle{opacity:1;transition:none}.soc-vis .soc-nodes circle{animation:none!important}}
/* home: website design block (animated wireframe -> phone) */
.web6{padding:clamp(5rem,11vw,9rem) 0;background:radial-gradient(90% 120% at 15% 30%,#0f2a55 0%,#0a1030 45%,#f7f4ee 100%);border-top:1px solid #1a2550}
.web-vis{display:block;border-radius:.4rem;transition:transform .6s,filter .6s}.web-vis:hover{transform:translateY(-4px);filter:drop-shadow(0 0 30px rgba(142,205,245,.35))}
.web-g{width:100%;height:auto;overflow:visible}
.web-g .wf{fill:none;stroke:rgba(142,205,245,.55);stroke-width:1.5}.web-g .dot{fill:#8f7cf8}
.web-g .wb{fill:url(#wg);opacity:.22}.web-g .wb0{opacity:.45}.web-g .ph{fill:#f1ede5;stroke:url(#wg);stroke-width:2}
.web-g .pb{fill:url(#wg);opacity:.5}
.web-phone{opacity:0;transform-box:fill-box}
.js .web-vis .wb{transform:translateX(-30px);opacity:0;transition:transform .9s cubic-bezier(.16,.84,.24,1),opacity .9s;transition-delay:calc(var(--k)*.12s)}
.js .web-vis.in .wb{transform:none;opacity:.25}.js .web-vis.in .wb0{opacity:.45}
.js .web-vis.in .web-phone{animation:phoneIn 1s cubic-bezier(.16,.84,.24,1) 1.4s forwards}
.js .web-vis .pb{opacity:0;transition:opacity .6s;transition-delay:calc(2.1s + var(--k)*.12s)}.js .web-vis.in .pb{opacity:.55}
@keyframes phoneIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.js .web-vis.fu{transform:none}
html:not(.js) .web-phone{opacity:1}
@media (prefers-reduced-motion:reduce){.js .web-vis .wb,.js .web-vis .pb{transform:none;opacity:.3;transition:none}.web-phone,.js .web-vis.in .web-phone{opacity:1;animation:none}}
.web6 .soc6-in{grid-template-columns:1.2fr 1fr}
@media(max-width:800px){.web6 .soc6-in{grid-template-columns:1fr}}
/* website-design page cinematic */
.wd6-sec{padding:clamp(4rem,9vw,7rem) 0;border:0!important;position:relative}
.wd6-sec:nth-of-type(odd){background:linear-gradient(180deg,#f7f4ee,#efeaf7)}.wd6-sec:nth-of-type(even){background:linear-gradient(180deg,#f1ede5,#efeaf7)}
.wd6-sec::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--grad);opacity:.4}
.wd6 .wrap.narrow{max-width:62rem}
.wd-cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;margin:2rem 0}
.wd-cards li{border:1px solid #2a2850!important;border-radius:.5rem;padding:1.3rem 1.4rem!important;background:linear-gradient(160deg,rgba(143,124,248,.08),rgba(142,205,245,.03));color:#e6e5f5!important;transition:border-color .4s,box-shadow .4s}
.wd-cards li:hover{border-color:rgba(142,205,245,.6)!important;box-shadow:0 0 30px -12px rgba(142,205,245,.6)}
.wd-tl{list-style:none;padding:0;margin:2rem 0;counter-reset:st;position:relative}
.wd-tl::before{content:"";position:absolute;left:1.1rem;top:.4rem;bottom:.4rem;width:2px;background:var(--grad);opacity:.6}
.wd-tl li{counter-increment:st;position:relative;padding:1rem 0 1rem 3.6rem!important;border:0!important;color:#e6e5f5!important}
.wd-tl li::before{content:counter(st);position:absolute;left:0;top:.8rem;width:2.3rem;height:2.3rem;border-radius:50%;display:grid;place-items:center;background:#f1ede5;border:1.5px solid #8ecdf5;color:#4b3cc4;font:600 .9rem var(--disp)}
.wd-kick{font:500 clamp(1.4rem,3vw,2.2rem)/1.3 var(--disp);color:#141318}
.wd-page{padding-top:clamp(8rem,14vw,11rem)!important;background:radial-gradient(80% 100% at 80% 0%,#1d1650,#f7f4ee 70%)}
.wd-page h1{font:700 clamp(2.6rem,8vw,6.5rem)/1 var(--disp);text-transform:uppercase;background:linear-gradient(90deg,#fff 30%,#8ecdf5 70%,#8f7cf8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.wd-ex{padding:clamp(4rem,9vw,7rem) 0}.wd-ex-g{display:grid;grid-template-columns:2fr 1fr;gap:1.2rem;align-items:stretch}
.wd-next{border:1px dashed #3a3670;border-radius:.4rem;display:flex;flex-direction:column;justify-content:center;padding:2rem;color:var(--tx2)}
@media(max-width:760px){.wd-ex-g{grid-template-columns:1fr}}
.ex-g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.8rem,2vw,1.4rem)}
.ex-t img{aspect-ratio:16/10}.ex-t.soon{aspect-ratio:16/10;background:radial-gradient(80% 100% at 30% 20%,#2a1f6e,#f1ede5 70%);border:1px dashed #3a3670}
.ex-soon{position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(142,205,245,.05) 0 2px,transparent 2px 22px)}
@media(max-width:700px){.ex-g{grid-template-columns:1fr}}
.wd-pk{background:linear-gradient(180deg,#f7f4ee,#efeaf7)}
.pk-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.2rem}
.pk{border:1px solid #2a2850;border-radius:.5rem;padding:clamp(1.6rem,3vw,2.4rem);background:linear-gradient(160deg,rgba(143,124,248,.12),rgba(142,205,245,.03));display:flex;flex-direction:column;transition:border-color .4s,box-shadow .4s}
.pk:hover{border-color:rgba(142,205,245,.6);box-shadow:0 0 40px -14px rgba(142,205,245,.6)}
.pk h3{margin:0 0 1rem;font:700 clamp(1.3rem,2.4vw,1.8rem) var(--disp);text-transform:uppercase;color:#141318}
.pk ul{list-style:none;padding:0;margin:0 0 1.8rem;flex:1}.pk li{padding:.6rem 0 .6rem 1.6rem;border-bottom:1px solid #22203a;color:#dcdbee;position:relative}
.pk li::before{content:"";position:absolute;left:0;top:1.15rem;width:.6rem;height:.6rem;border-radius:50%;background:var(--grad)}
.pk .pill{align-self:flex-start}
.wd-consult{padding:clamp(5rem,11vw,8rem) 0;text-align:center;background:radial-gradient(70% 100% at 50% 0%,#3b2a8f,#f1ede5 75%)}
.wd-consult .pill{margin-top:1.4rem}
.ex-g{grid-template-columns:repeat(3,1fr)}@media(max-width:900px){.ex-g{grid-template-columns:1fr}}
.cr-t{font-size:clamp(2rem,4.1vw,3.9rem)!important;max-width:100%}
.cr-t{font-size:clamp(1.8rem,3.5vw,3.3rem)!important}.cr-d{padding-left:1rem}
@media(min-width:901px){.cr-a{grid-template-columns:7rem max-content minmax(0,1fr) 3rem!important;column-gap:3rem!important}.cr-d{padding-left:0}}
/* ===== v7 ===== */
.quote6-t{white-space:nowrap;font-size:clamp(1.05rem,5.4vw,5rem)!important;max-width:none!important;text-align:center}
.web-g .wi{opacity:0;transition:opacity .9s ease calc(.35s + var(--k)*.18s)}
.web-vis.in .web-g .wi,.web6 .in .wi,.web-g.in .wi{opacity:1}
@media (prefers-reduced-motion:reduce){.web-g .wi{opacity:1;transition:none}}
.rows .row{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,background .45s,border-color .45s;border-radius:14px;will-change:transform}
.rows .row:hover,.rows .row:focus-within{transform:translateY(-8px) scale(1.015);background:linear-gradient(135deg,rgba(142,205,245,.08),rgba(108,92,231,.14));box-shadow:0 18px 50px rgba(108,92,231,.25)}
@media (prefers-reduced-motion:reduce){.rows .row:hover{transform:none}}
.pf6{position:relative;overflow:hidden;padding:clamp(8rem,16vw,13rem) 0 clamp(3rem,7vw,6rem);background:radial-gradient(80% 120% at 85% 0%,rgba(108,92,231,.35),transparent 60%),radial-gradient(60% 90% at 0% 100%,rgba(142,205,245,.18),transparent 60%),#f7f4ee}
.pf6-t{position:relative;margin:.4rem 0 0;font:700 clamp(3.2rem,15vw,13rem)/.9 var(--disp);letter-spacing:.04em;text-transform:uppercase}
.pf6-a{display:block;background:linear-gradient(100deg,#fff 0%,#fff 35%,#8ecdf5 55%,#8f7cf8 75%,#fff 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:pfSweep 7s ease-in-out infinite alternate,pfIn 1.2s cubic-bezier(.2,.7,.2,1) both}
.pf6-o{position:absolute;inset:0;color:transparent;-webkit-text-stroke:1px rgba(75,60,196,.25);transform:translate(.06em,.06em);z-index:-1;animation:pfIn 1.6s .15s cubic-bezier(.2,.7,.2,1) both}
.pf6-line{display:block;height:2px;margin-top:2rem;background:linear-gradient(90deg,#8ecdf5,#8f7cf8,transparent);transform-origin:left;animation:pfLine 1.4s .4s cubic-bezier(.2,.7,.2,1) both}
@keyframes pfSweep{to{background-position:100% 0}}@keyframes pfIn{from{opacity:0;transform:translateY(.25em);letter-spacing:.2em}}@keyframes pfLine{from{transform:scaleX(0)}}
@media (prefers-reduced-motion:reduce){.pf6-a,.pf6-o,.pf6-line{animation:none}}
.tl6{list-style:none;margin:4rem 0 2rem;padding:0 0 0 clamp(1.4rem,4vw,3rem);position:relative}
.tl6::before{content:"";position:absolute;left:0;top:.4rem;bottom:0;width:2px;background:linear-gradient(#8ecdf5,#8f7cf8 70%,transparent)}
.tl-i{position:relative;margin:0 0 clamp(3rem,7vw,5.5rem)}
.tl-dot{position:absolute;left:calc(-1*clamp(1.4rem,4vw,3rem) - 7px);top:.35rem;width:16px;height:16px;border-radius:50%;background:#f7f4ee;border:2px solid #8ecdf5;box-shadow:0 0 0 6px rgba(142,205,245,.12)}
.tl-n{margin:0;color:#4b3cc4;font:600 .8rem/1 var(--disp);letter-spacing:.2em}
.tl-h{margin:.5rem 0 .4rem;font:700 clamp(1.6rem,3.4vw,2.6rem)/1.05 var(--disp);text-transform:uppercase;color:#141318}
.tl-d{margin:0 0 1.4rem;color:rgba(20,19,24,.7);max-width:46ch}
.tl-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tl-g.one{grid-template-columns:1fr}
.tl-g .still img,.tl-trio .still img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.tl-g .still.tall img{aspect-ratio:auto;max-height:640px}
.tl-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tl-trio .still img{aspect-ratio:4/5}
.tl-cred{display:flex;gap:.8rem;margin:0 0 1rem}.tl-cred .still{width:clamp(84px,11vw,130px);margin:0}.tl-cred .still img{aspect-ratio:3/4;object-fit:cover;width:100%;opacity:.85;border-radius:6px}
@media (max-width:700px){.tl-g,.tl-trio{grid-template-columns:1fr}.tl-trio .still img{aspect-ratio:3/2}}
.ex6{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;margin:2.5rem 0;padding:clamp(1rem,2.5vw,1.8rem);border:1px solid rgba(142,205,245,.14);border-radius:18px;background:linear-gradient(135deg,rgba(142,205,245,.05),rgba(108,92,231,.08))}
.ex6-v{max-width:720px;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#0d0c1a}
.ex6-v video{width:100%;height:100%;object-fit:cover;display:block}
.ex6-t h3{margin:.3rem 0 .6rem;font:700 clamp(1.3rem,2.4vw,2rem)/1.1 var(--disp);text-transform:uppercase;color:#141318}
.ex6 .ex-soon,.ex6 .ex-slot{display:block;width:100%;height:100%;background:repeating-linear-gradient(135deg,rgba(142,205,245,.06) 0 14px,transparent 14px 28px),linear-gradient(135deg,#120f2a,#1d1747)}
.ex6.slot{border-style:dashed;opacity:.85}.ex6.slot .ex6-v,.ex6.soon .ex6-v{aspect-ratio:16/7}
@media (max-width:860px){.ex6{grid-template-columns:1fr}}
.soc-hero{padding:clamp(7.5rem,14vw,11rem) 0 clamp(3rem,6vw,5rem);background:radial-gradient(70% 100% at 100% 0%,rgba(108,92,231,.4),transparent 60%),linear-gradient(180deg,#0b0918,#f7f4ee)}
.soc-hero-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.soc-hero .pill{margin-top:1.4rem}
.soc-col{position:relative;height:clamp(340px,42vw,560px)}
.sc{position:absolute;margin:0;border-radius:16px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.5)}.sc img{width:100%;height:100%;object-fit:cover;display:block}
.sc1{left:0;top:0;width:52%;height:88%}.sc2{right:0;top:8%;width:52%;height:46%}.sc3{right:8%;bottom:0;width:30%;height:42%;transform:rotate(4deg)}
@media (max-width:860px){.soc-hero-in{grid-template-columns:1fr}.soc-col{height:420px}}
.why-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:2rem}
.why-c{padding:1.6rem;border-radius:16px;background:linear-gradient(135deg,rgba(142,205,245,.07),rgba(108,92,231,.12));border:1px solid rgba(142,205,245,.14)}
.why-c h3{margin:0 0 .5rem;font:700 1.15rem/1.2 var(--disp);text-transform:uppercase;color:#141318}.why-c p{margin:0;color:rgba(20,19,24,.78)}
.src6{margin-top:1.4rem;font-size:.85rem;color:rgba(20,19,24,.6)}.src6 a{color:#4b3cc4}
.hire6-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.hire6-in .still img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:14px}
@media (max-width:860px){.why-g,.hire6-in{grid-template-columns:1fr}}
.an6{background:linear-gradient(160deg,#1a1240,#f7f4ee 70%)}
.an6-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.an-l{list-style:none;padding:0;margin:1.4rem 0 0;display:flex;flex-wrap:wrap;gap:.6rem}.an-l li{padding:.5rem 1rem;border:1px solid rgba(142,205,245,.3);border-radius:999px;color:#141318;font-size:.9rem}
.an-g{width:100%;height:auto}.an-card{fill:rgba(20,19,24,.03);stroke:rgba(142,205,245,.2)}.an-grid{stroke:rgba(20,19,24,.08)}
.an-area{fill:url(#ag);opacity:.14}.an-line{fill:none;stroke:url(#ag);stroke-width:3;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:anDraw 3.2s ease-in-out infinite alternate}
.an-pulse{fill:#fff;animation:anP 1.8s ease-in-out infinite}.an-chip{fill:rgba(142,205,245,.25);animation:anC 2.4s ease-in-out infinite}.an-chip.k2{animation-delay:.4s;fill:rgba(143,124,248,.35)}.an-chip.k3{animation-delay:.8s}
@keyframes anDraw{to{stroke-dashoffset:0}}@keyframes anP{50%{r:11;opacity:.5}}@keyframes anC{50%{opacity:.4}}
@media (prefers-reduced-motion:reduce){.an-line{animation:none;stroke-dashoffset:0}.an-pulse,.an-chip{animation:none}}
@media (max-width:860px){.an6-in{grid-template-columns:1fr}}
.dr-sf{margin:0}.dr-sf img{width:100%;max-height:82vh;object-fit:cover;object-position:50% 30%;border-radius:16px;display:block}
html:not(.js) .web-g .wi{opacity:1}
/* v7 premium: packages, why, site-wide polish */
.pk-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,3vw,2.2rem);align-items:stretch;margin-top:2.4rem}
.pk7{position:relative;border-radius:22px;padding:1px;background:linear-gradient(140deg,rgba(142,205,245,.25),rgba(108,92,231,.25));transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,background .5s}
.pk7-in{height:100%;display:flex;flex-direction:column;padding:clamp(1.8rem,4vw,3rem);min-height:480px;border-radius:21px;background:radial-gradient(120% 80% at 100% 0%,rgba(108,92,231,.18),transparent 60%),#f1ede5}
.pk7.feat{background:linear-gradient(140deg,#8ecdf5,#8f7cf8 60%,#6c5ce7);box-shadow:0 30px 80px rgba(108,92,231,.3)}
.pk7.feat .pk7-in{background:radial-gradient(120% 80% at 100% 0%,rgba(142,205,245,.18),transparent 60%),#0e0c22}
.pk7:hover,.pk7:focus-within{transform:translateY(-10px);background:linear-gradient(140deg,#8ecdf5,#8f7cf8);box-shadow:0 40px 90px rgba(108,92,231,.38),0 0 0 1px rgba(142,205,245,.4)}
.pk7-n{font:700 clamp(2.6rem,5vw,4rem)/1 var(--disp);color:transparent;-webkit-text-stroke:1px rgba(142,205,245,.7)}
.pk7 h3{margin:.8rem 0 0;font:700 clamp(1.4rem,2.6vw,2rem)/1.1 var(--disp);text-transform:uppercase;color:#141318}
.pk7-rule{display:block;height:2px;margin:1.3rem 0;background:linear-gradient(90deg,#8ecdf5,#8f7cf8,transparent);transform:scaleX(0);transform-origin:left;transition:transform 1.1s .3s cubic-bezier(.2,.7,.2,1)}
.pk7.in .pk7-rule,html:not(.js) .pk7-rule{transform:none}
.pk7 ul{list-style:none;padding:0;margin:0 0 2rem;flex:1}.pk7 li{position:relative;padding:.55rem 0 .55rem 1.8rem;color:rgba(20,19,24,.82);border-bottom:1px solid rgba(20,19,24,.06)}
.pk7 li::before{content:"";position:absolute;left:0;top:1rem;width:.8rem;height:.8rem;border-radius:50%;background:linear-gradient(135deg,#8ecdf5,#8f7cf8)}
.pk7 .pill{align-self:flex-start}
.pk7-badge{position:absolute;top:1.3rem;right:1.3rem;padding:.35rem .8rem;border-radius:999px;font:600 .7rem/1 var(--disp);letter-spacing:.15em;text-transform:uppercase;color:#f1ede5;background:linear-gradient(90deg,#8ecdf5,#8f7cf8)}
.pk7-in{position:relative}
@media (max-width:820px){.pk-g{grid-template-columns:1fr}.pk7-in{min-height:0}}
.why7{list-style:none;padding:0;margin:2.4rem 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(142,205,245,.18)}
.why7-i{position:relative;padding:clamp(1.6rem,3vw,2.6rem) clamp(1.2rem,2.4vw,2rem);border-bottom:1px solid rgba(142,205,245,.12);border-right:1px solid rgba(142,205,245,.12);transition:background .5s,transform .5s cubic-bezier(.2,.7,.2,1)}
.why7-i:nth-child(3n){border-right:0}
.why7-i::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,#8ecdf5,#8f7cf8);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.why7-i:hover{background:linear-gradient(160deg,rgba(142,205,245,.06),rgba(108,92,231,.14))}.why7-i:hover::after,.why7-i.in::after{transform:scaleX(1)}
.why7-i.in::after{transition-delay:.4s;opacity:.35}.why7-i:hover::after{opacity:1}
.why7-n{display:block;font:700 clamp(2.8rem,5vw,4.4rem)/1 var(--disp);background:linear-gradient(135deg,#8ecdf5,#8f7cf8);-webkit-background-clip:text;background-clip:text;color:transparent}
.why7-ic{width:28px;height:28px;margin:1rem 0 .6rem;fill:none;stroke:#8ecdf5;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .5s}
.why7-i:hover .why7-ic{transform:translateY(-3px) rotate(-6deg);stroke:#c9bfff}
.why7-i p{margin:0;color:rgba(20,19,24,.78)}.why7-i strong{display:block;margin-bottom:.35rem;color:#141318;font:700 1.05rem/1.25 var(--disp);text-transform:uppercase}
@media (max-width:900px){.why7{grid-template-columns:repeat(2,minmax(0,1fr))}.why7-i:nth-child(3n){border-right:1px solid rgba(142,205,245,.12)}.why7-i:nth-child(2n){border-right:0}}
@media (max-width:560px){.why7{grid-template-columns:1fr}.why7-i{border-right:0!important}}
/* site-wide engagement polish */
.disp2.fu::after,.cat6-h.fu::after{content:"";display:block;width:clamp(48px,7vw,96px);height:3px;margin-top:.9rem;border-radius:3px;background:linear-gradient(90deg,#8ecdf5,#8f7cf8);transform:scaleX(0);transform-origin:left;transition:transform 1s .35s cubic-bezier(.2,.7,.2,1)}
.disp2.fu.in::after,.cat6-h.fu.in::after,html:not(.js) .disp2::after{transform:scaleX(1)}
.stmt.fu::after,.cta6 .stmt::after{display:none}
.tile,.still,.wd-cards li,.why-c,.ex6,.row,.an-l li{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s,background .5s}
.tile:hover{transform:translateY(-6px);box-shadow:0 26px 60px rgba(108,92,231,.28)}
.still{overflow:hidden;border-radius:12px}.still img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.still:hover img{transform:scale(1.04)}
.wd-cards li{border:1px solid rgba(142,205,245,.14);background:linear-gradient(150deg,rgba(142,205,245,.05),rgba(108,92,231,.1));border-radius:14px}
.wd-cards li:hover,.why-c:hover,.ex6:hover{transform:translateY(-6px);border-color:rgba(142,205,245,.45);box-shadow:0 22px 50px rgba(108,92,231,.25)}
.an-l li:hover{transform:translateY(-3px);border-color:#8ecdf5}
.phd{position:relative;overflow:hidden}.phd::before{content:"";position:absolute;inset:-20% -10% auto auto;width:60vw;height:60vw;border-radius:50%;background:radial-gradient(closest-side,rgba(108,92,231,.28),transparent);animation:phdF 14s ease-in-out infinite alternate;pointer-events:none}
@keyframes phdF{to{transform:translate(-8vw,6vw) scale(1.15)}}
.fu{transition-timing-function:cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion:reduce){.pk7,.pk7-rule,.why7-i,.why7-i::after,.tile,.still img,.wd-cards li,.why-c,.ex6,.disp2.fu::after,.cat6-h.fu::after{transition:none!important;transform:none!important}.phd::before{animation:none}.disp2.fu::after,.cat6-h.fu::after,.pk7-rule,.why7-i::after{transform:scaleX(1)!important}}
.wd6-sec:has(.why7) .wrap.narrow{max-width:min(1240px,92vw)}
.nl-note{margin:0;padding:1.2rem 0 1.6rem;text-align:center;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(20,19,24,.38)}
.promo7{background:linear-gradient(160deg,#120d2c,#f7f4ee 70%)}
.promo7-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(1.6rem,4vw,3.5rem);align-items:center}
.promo7-v{border-radius:16px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 30px 70px rgba(0,0,0,.5),0 0 0 1px rgba(142,205,245,.18);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.promo7-v:hover{transform:translateY(-6px);box-shadow:0 36px 80px rgba(108,92,231,.35),0 0 0 1px rgba(142,205,245,.45)}
.promo7-v video{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:860px){.promo7-in{grid-template-columns:1fr}}
.soc-hero h1.disp{font-size:clamp(2.2rem,5.2vw,4.8rem)!important;overflow-wrap:normal;word-break:normal;hyphens:none}
@media (max-width:860px){.soc-hero h1.disp{font-size:clamp(2rem,9.5vw,3.4rem)!important}}
.social-reels .tile,section:has(> .w6 > .tile.big[href$="/reels.html"]) .tile.big{max-width:1100px}
.tile.big[href$="/reels.html"] img{aspect-ratio:16/9;height:auto;object-fit:cover;object-position:50% 40%}
picture{display:contents}
.faq7-l{margin-top:2rem;border-top:1px solid rgba(142,205,245,.18)}
.faq7-i{border-bottom:1px solid rgba(142,205,245,.14);transition:background .4s}
.faq7-i summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.3rem .4rem;font:700 clamp(1rem,1.8vw,1.2rem)/1.3 var(--disp);text-transform:uppercase;color:#141318}
.faq7-i summary::-webkit-details-marker{display:none}
.faq7-x{position:relative;flex:0 0 22px;height:22px;border-radius:50%;border:1px solid rgba(142,205,245,.5);transition:transform .4s,background .4s}
.faq7-x::before,.faq7-x::after{content:"";position:absolute;left:5px;right:5px;top:10px;height:1.5px;background:#8ecdf5}.faq7-x::after{transform:rotate(90deg);transition:transform .4s}
.faq7-i[open] .faq7-x{transform:rotate(180deg);background:rgba(142,205,245,.12)}.faq7-i[open] .faq7-x::after{transform:rotate(0)}
.faq7-i p{margin:0 .4rem 1.4rem;color:rgba(20,19,24,.78);max-width:62ch;animation:faqIn .45s ease both}
.faq7-i:hover{background:linear-gradient(90deg,rgba(142,205,245,.05),transparent)}
@keyframes faqIn{from{opacity:0;transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.faq7-i p{animation:none}.faq7-x,.faq7-x::after{transition:none}}
/* v8 trust pills, multi-step form, reviews, youtube */
.trust7{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:1.6rem 0 2rem}
.trust7 li{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border-radius:999px;background:#efeaf7;border:1px solid rgba(142,205,245,.35);color:#e9ecff;font-size:.88rem}
.trust7 svg{width:16px;height:16px;fill:none;stroke:#8ecdf5;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ms7{position:relative;margin-top:1rem;padding:clamp(1.4rem,3.5vw,2.6rem);border-radius:22px;border:1px solid rgba(142,205,245,.18);background:radial-gradient(90% 70% at 100% 0%,rgba(108,92,231,.18),transparent 60%),#0b0a18;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.ms7 .hp{position:absolute;left:-9999px}
.ms7-prog{display:none;margin-bottom:1.6rem}.js .ms7-prog{display:block}
.ms7-prog ol{display:flex;justify-content:space-between;list-style:none;padding:0;margin:.7rem 0 0;font:600 .72rem/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;color:rgba(20,19,24,.45)}
.ms7-prog li.on{color:#4b3cc4}
.ms7-prog{position:relative}.ms7-prog::before{content:"";display:block;height:4px;border-radius:4px;background:rgba(20,19,24,.08)}
.ms7-bar{position:absolute;left:0;top:0;height:4px;width:33%;border-radius:4px;background:linear-gradient(90deg,#8ecdf5,#8f7cf8);transition:width .6s cubic-bezier(.2,.7,.2,1)}
.ms7-step{border:0;margin:0 0 1.6rem;padding:0;min-width:0}
.js .ms7-step{display:none;margin:0}.js .ms7-step.on{display:block;animation:msIn .5s cubic-bezier(.2,.7,.2,1) both}.js .ms7-step.on.back{animation-name:msBack}
@keyframes msIn{from{opacity:0;transform:translateX(28px)}}@keyframes msBack{from{opacity:0;transform:translateX(-28px)}}
.ms7 legend{display:block;padding:0;margin:0 0 1.2rem;font:700 clamp(1.3rem,2.6vw,1.9rem)/1.15 var(--disp);text-transform:uppercase;color:#141318}
.ms7-k{display:block;margin-bottom:.5rem;font:600 .72rem/1 var(--disp);letter-spacing:.18em;color:#4b3cc4}
.chips7{display:flex;flex-wrap:wrap;gap:.6rem}
.chip7{position:relative;cursor:pointer}.chip7 input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip7 span{display:inline-block;padding:.75rem 1.15rem;border-radius:999px;border:1px solid rgba(142,205,245,.3);background:rgba(20,19,24,.03);color:#e9ecff;transition:transform .3s,background .3s,border-color .3s,box-shadow .3s}
.chip7:hover span{transform:translateY(-2px);border-color:#8ecdf5}
.chip7 input:checked+span{background:linear-gradient(135deg,#8ecdf5,#8f7cf8);color:#0b0a18;border-color:transparent;box-shadow:0 10px 28px rgba(108,92,231,.35);font-weight:600}
.chip7 input:focus-visible+span{outline:2px solid #fff;outline-offset:3px}
.chips7.sm .chip7 span{padding:.55rem .95rem;font-size:.9rem}
.f7{margin:0 0 1.1rem}.f7 label,.f7-l{display:block;margin-bottom:.45rem;font-size:.9rem;color:rgba(20,19,24,.8)}
.f7 input,.f7 textarea{width:100%;box-sizing:border-box;padding:.85rem 1rem;border-radius:12px;border:1px solid rgba(142,205,245,.22);background:#f7f4ee;color:#141318;font:inherit;transition:border-color .3s,box-shadow .3s}
.f7 input:focus,.f7 textarea:focus{outline:0;border-color:#8ecdf5;box-shadow:0 0 0 4px rgba(142,205,245,.15)}
.f7 .bad{border-color:#ff8fa3;box-shadow:0 0 0 4px rgba(255,143,163,.12)}.f7 .good{border-color:rgba(142,205,245,.6)}
.f7.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width:560px){.f7.two{grid-template-columns:1fr}}
.ms7-hint{margin:.4rem 0 0;font-size:.8rem;color:rgba(20,19,24,.5)}.ms7-err{min-height:1.2em;margin:.8rem 0 0;color:#ff8fa3;font-size:.9rem}
.f7 .msg{display:block;margin-top:.35rem;font-size:.8rem;color:#ff8fa3}
.ms7-act{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.4rem}.ms7-act .ms7-next:only-child{margin-left:auto}
.ms7-back{background:none;border:0;color:rgba(20,19,24,.7);font:inherit;cursor:pointer;padding:.6rem 0}.ms7-back:hover{color:#4b3cc4}
html:not(.js) .ms7-next,html:not(.js) .ms7-back{display:none}
.ms7-ok{text-align:center;padding:2rem 0}.ms7-ok svg{width:84px;height:84px;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ms7-ok circle{stroke:#8ecdf5;stroke-dasharray:151;stroke-dashoffset:151;animation:okD .8s ease forwards}.ms7-ok path{stroke:#fff;stroke-dasharray:36;stroke-dashoffset:36;animation:okD .5s .7s ease forwards}
.ms7-ok h2{margin:1rem 0 .4rem;font:700 2rem/1 var(--disp);text-transform:uppercase;color:#141318;animation:msIn .6s .9s both}.ms7-ok p{color:rgba(20,19,24,.75);animation:msIn .6s 1s both}
@keyframes okD{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.js .ms7-step.on,.ms7-ok h2,.ms7-ok p{animation:none}.ms7-ok circle,.ms7-ok path{animation:none;stroke-dashoffset:0}.ms7-bar,.chip7 span{transition:none}}
.rv7{background:linear-gradient(180deg,#f7f4ee,#120d2c 60%,#f7f4ee)}
.rv7-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,calc((100% - 2.4rem)/3));gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1.6rem .2rem 1rem;scrollbar-width:none}
.rv7-track::-webkit-scrollbar{display:none}
.rv7-c{scroll-snap-align:start;margin:0;padding:1.8rem;border-radius:20px;border:1px solid rgba(142,205,245,.16);background:radial-gradient(100% 80% at 0% 0%,rgba(142,205,245,.08),transparent 60%),#f1ede5;display:flex;flex-direction:column;gap:1.2rem;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s,border-color .5s;animation:rvF 6s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-2s)}
.rv7-c:hover{transform:translateY(-8px);border-color:rgba(142,205,245,.45);box-shadow:0 28px 60px rgba(108,92,231,.3)}
@keyframes rvF{to{transform:translateY(-4px)}}
.rv7-c.ph{border-style:dashed}
.rv7-src{align-self:flex-start;display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .8rem;border-radius:999px;background:#efeaf7;border:1px solid rgba(142,205,245,.35);font-size:.78rem;color:#e9ecff}
.rv7-src svg{width:15px;height:15px;fill:#8ecdf5}.rv7-src.s-youtube svg{fill:#ff6b81}.rv7-src.s-facebook svg{fill:#7aa7ff}
.rv7-c blockquote{margin:0;flex:1}.rv7-c blockquote p{margin:0;font:500 clamp(1.05rem,1.6vw,1.25rem)/1.5 var(--body,inherit);color:#141318}
.rv7-c blockquote p::before{content:"\201C";display:block;font:700 3rem/0.6 var(--disp);color:#4b3cc4;margin-bottom:.4rem}
.rv7-c figcaption strong{display:block;color:#141318}.rv7-c figcaption span{color:rgba(20,19,24,.55);font-size:.88rem}
.rv7-nav{display:flex;gap:.6rem;justify-content:flex-end}.rv7-b{width:46px;height:46px;border-radius:50%;border:1px solid rgba(142,205,245,.35);background:#efeaf7;color:#141318;font-size:1.1rem;cursor:pointer;transition:background .3s,transform .3s}.rv7-b:hover{background:#6c5ce7;transform:translateY(-2px)}
html:not(.js) .rv7-nav{display:none}
@media (max-width:860px){.rv7-track{grid-auto-columns:86%}}
@media (prefers-reduced-motion:reduce){.rv7-c{animation:none;transition:none}}
.yt-l{display:inline-flex;align-items:center;gap:.45rem}.yt-i{width:20px;height:20px;fill:currentColor}
.pig7{margin:1.4rem 0 0}.pig7-a{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;color:rgba(20,19,24,.6);text-decoration:none;border-bottom:1px solid rgba(142,205,245,.25);padding-bottom:2px;transition:color .2s,border-color .2s}.pig7-a:hover,.pig7-a:focus-visible{color:#4b3cc4;border-color:#8ecdf5}.pig7-a svg{opacity:.8}
/* v8b: uncropped masonry galleries + lightbox */
.rally-g{display:block;columns:4 220px;column-gap:clamp(.6rem,1.4vw,1rem);max-width:1180px;margin-left:auto;margin-right:auto}
.rally-g .still{break-inside:avoid;margin:0 0 clamp(.6rem,1.4vw,1rem);display:block;overflow:hidden;border-radius:.3rem;background:#0b0b14}
.rally-g img,.rally-g .tall img,.av-g img,.av-g .tall img{aspect-ratio:auto!important;height:auto!important;width:100%;object-fit:contain!important;display:block;border-radius:.3rem}
.js .rally-g .px img,.js .pj-pair .px img{transform:none!important}
@media(max-width:1100px){.rally-g{columns:3}}
@media(max-width:760px){.rally-g{columns:2}}
.pj-pair{align-items:start}.pj-pair img,.pj-pair .tall img,.pj-pair .still.tall:only-child img{aspect-ratio:auto!important;height:auto!important;object-fit:contain!important}
.rally-g img,.pj-pair img{cursor:zoom-in}
.lb8{position:fixed;inset:0;z-index:200;background:rgba(5,5,10,.94);display:flex;align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem);opacity:0;transition:opacity .25s}
.lb8.on{opacity:1}.lb8 img{max-width:100%;max-height:100%;object-fit:contain;border-radius:.3rem;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lb8 button{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:50%;border:1px solid rgba(142,205,245,.4);background:rgba(20,20,35,.8);color:#141318;font-size:1.4rem;cursor:pointer}
@media (prefers-reduced-motion:reduce){.lb8{transition:none}}
/* v8b: modest photo banner above the film */
.pj-hero.ph8{height:clamp(300px,58svh,620px);min-height:0}.pj-hero.ph8 img{object-position:50% 50%}
.pj-hero.ph8+.pj-film{margin-top:clamp(1.5rem,4vw,3rem)}
/* v8b: PORTFOLIO header always fits (9 caps + .04em tracking ≈ 6.6em wide + .06em outline offset) */
.pf6 .w6{overflow:visible}.pf6-t{font-size:clamp(2.6rem,12.2vw,13rem);white-space:nowrap;max-width:100%}
.pf6-a,.pf6-o{white-space:nowrap}
/* v9 single portfolio page: one idea per screen, dd.nyc-style flow */
.pf9-h .pf6-t{white-space:nowrap}
.pf9-st{padding:clamp(5rem,14vh,10rem) 0;background:#f7f4ee}
.pf9-fill{margin:0;font:600 clamp(1.9rem,5.2vw,4.4rem)/1.12 var(--disp);letter-spacing:-.01em;color:#141318}
.js .pf9-fill .w{color:rgba(20,19,24,.18);transition:color .35s ease}
.js .pf9-fill .w.on{color:#141318}.js .pf9-fill .w.on.k{color:#4b3cc4}
.pf9{background:#f7f4ee}
.pf9-anc{display:block;position:relative;top:-80px;height:0}
.pf9-i{min-height:88vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:clamp(3rem,9vh,7rem) clamp(1rem,4vw,3rem);scroll-margin-top:60px}
.pf9-f{width:100%;max-width:1600px;overflow:hidden;border-radius:6px}
.pf9-f video{display:block;width:100%;height:auto;max-height:82vh;object-fit:contain;background:#000;transform:scale(var(--z,1.03));transition:transform .2s linear}
.pf9-p{margin:0;max-width:min(1200px,100%);display:flex;justify-content:center}
.pf9-p img{display:block;width:auto;max-width:100%;height:auto;max-height:80vh;object-fit:contain;border-radius:4px}
.pf9-ph.tall .pf9-p img{max-height:84vh}
.pf9-l{margin:1.4rem 0 0;font:500 .95rem/1.3 var(--body,inherit);letter-spacing:.06em;text-transform:uppercase;color:rgba(20,19,24,.72);text-align:center}
.pf9-l span{color:#4b3cc4;margin-right:.8em;font-weight:700}
.pf9-film:nth-of-type(even) .pf9-l span{color:#4b3cc4}
.pf9-web{background:#f1ede5}
@media (max-width:700px){.pf9-i{min-height:auto;padding:3.2rem 1rem}.pf9-l{font-size:.8rem}}
@media (prefers-reduced-motion:reduce){.pf9-f video{transform:none!important;transition:none}.js .pf9-fill .w{color:#141318}}
.ex9{list-style:none;margin:clamp(2rem,5vw,3.5rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.8rem,2vw,1.6rem)}
.ex9-v{overflow:hidden;border-radius:6px;background:#000;aspect-ratio:16/9}.ex9-v video{display:block;width:100%;height:100%;object-fit:cover}
.ex9-l{margin:.7rem 0 0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:.7}
@media (max-width:760px){.ex9{grid-template-columns:1fr}}
.pf6-t{padding-right:.1em;box-sizing:border-box}.pf6-o{right:.1em}
.ft9-nl{font-size:.72rem;opacity:.55;color:inherit;text-decoration:none}.ft9-nl:hover{opacity:.9}
.pf9-p{display:block;width:100%;text-align:center}.pf9-p picture{display:block}.pf9-p img{margin:0 auto;width:auto;max-width:100%}
.dr9-v{max-width:360px;margin:0 auto;border-radius:6px;overflow:hidden}.dr9-v video{display:block;width:100%;height:auto}
.dr9-g{max-width:980px}.dr9-g .rally-g{columns:3 200px}
@media(max-width:760px){.dr9-g .rally-g{columns:2}}
.pf9-f{max-width:1200px}.pf9-f video{max-height:72vh}.pf9-p{max-width:1100px}.pf9-p img{max-height:70vh}.pf9-ph.tall .pf9-p img{max-height:76vh}
.dr9-q{font-size:clamp(1.05rem,2.6vw,1.9rem)!important;white-space:nowrap;margin:0 0 2.5rem}@media(max-width:420px){.dr9-q{white-space:normal}}
.pf9-p img{width:100%;height:auto;max-height:70vh;object-fit:contain;background:transparent}.pf9-ph.tall .pf9-p img{max-height:76vh}

/* ===== v10: light, airy, less stuff ===== */
html,body{background:#f7f4ee;color:#141318}
body{font-weight:300}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3,.disp,.disp2,.stmt{font-weight:400!important;letter-spacing:.01em}
.disp2,.cat6-h,.h10{font-size:clamp(1.5rem,3vw,2.3rem)!important;letter-spacing:.14em!important;text-transform:uppercase}
.disp2.fu::after,.cat6-h.fu::after{height:2px;width:40px;background:#6c5ce7}
.sec6,.sec10{padding:clamp(6rem,14vw,12rem) 0!important}
.sec6.pt0,.sec10.pt0{padding-top:0!important}
.c10{text-align:center}
.body10,.body6{font-size:1.06rem;line-height:1.75;color:#3d3b47;max-width:38rem;margin-left:auto;margin-right:auto}
.c10 .body10{text-align:center}
.h10{text-align:center;margin:0 0 clamp(2.5rem,6vw,4rem)}
.h10-1{font:300 clamp(2.2rem,6vw,4.2rem)/1.05 var(--disp);letter-spacing:.12em;text-transform:uppercase;text-align:center;margin:0 0 1.2rem;color:#141318}
.phd10{padding:clamp(9rem,18vw,14rem) 0 clamp(4rem,8vw,6rem);text-align:center}
.phd10 .body10{text-align:center}
/* header on cream */
.hd6,.hd6.solid{background:rgba(247,244,238,.92)!important;backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid #e6e0d5}
.hd6 .wm,.hd6-nav a:not(.pill){color:#141318!important}
.burger span{background:#141318!important}
/* pills: one small style */
.pill,.pill.big{display:inline-block;padding:.62rem 1.25rem!important;font-size:.86rem!important;font-weight:500;border-radius:999px;background:#5a49d6!important;color:#fff!important;border:0;box-shadow:none!important;letter-spacing:.02em}
.pill:hover{background:#4b3cc4!important;transform:translateY(-1px)}
.pills10{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}
.pill10{padding:.55rem 1.15rem;border:1px solid #5a49d6;border-radius:999px;color:#4b3cc4;font-size:.88rem;text-decoration:none;transition:background .3s,color .3s}
.pill10:hover{background:#5a49d6;color:#fff}
.lnk6{color:#4b3cc4!important}
/* hero */
.h10 .hero6-in,.hero6.h10 .hero6-in{color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.h10-wm{font:300 clamp(2.6rem,9vw,7rem)/1 var(--disp);letter-spacing:.3em;color:#fff;margin:0;text-transform:uppercase}
.h10-q{color:#fff!important;font-size:clamp(1.05rem,2.2vw,1.6rem)!important;margin-top:1.4rem;opacity:.92}
.hero6.h10 .hero6-f::after{background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.45))!important}
/* media: small, uncropped, centred */
.film10{max-width:860px;margin:0 auto clamp(3rem,7vw,5rem);border-radius:4px;overflow:hidden;background:#000}
.film10 video{display:block;width:100%;height:auto;object-fit:contain;max-height:62vh}
.grid10{columns:3 220px;column-gap:1.1rem;max-width:960px;margin:0 auto}
.grid10.g3{columns:3 200px;max-width:820px}
.grid10 .still{break-inside:avoid;margin:0 0 1.1rem;border-radius:3px;overflow:hidden;background:none}
.grid10 img,.rally-g img{display:block;width:100%;height:auto!important;object-fit:contain!important;transform:none!important}
@media(max-width:700px){.grid10,.grid10.g3{columns:2}}
.ab10-p{max-width:340px;margin:0 auto 3rem}.ab10-p img{width:100%;height:auto;display:block;border-radius:4px}
.ab10 .body10{margin-bottom:1.3rem}
/* drone */
.dr9-v{max-width:420px}
.dr9-q{color:#4b3cc4!important;text-align:center;margin:2.5rem auto 0!important;white-space:normal!important}
.trust7 li{background:#fff;border:1px solid #e3ddd2;color:#141318}
.trust7 svg{stroke:#4b3cc4}
/* sections that were dark become light */
.dark6,.cta6,.pf6,.soc-hero,.wd6,.ft6,.menu{background:#f7f4ee!important;color:#141318}
.cta6{padding:clamp(6rem,13vw,10rem) 0!important;text-align:center;border-top:1px solid #e6e0d5}
.cta6 .stmt{font-size:clamp(1.4rem,3vw,2.2rem)!important;font-weight:300!important}
.ft6{background:#efeae1!important;border-top:1px solid #e3ddd2}
.ft6 a,.ft6 p,.ft6 span{color:#3d3b47!important}
.ft6 .wm{color:#141318!important}
.menu{background:#f7f4ee!important}.menu a{color:#141318!important}
.mbar{background:rgba(247,244,238,.96)!important;border-top:1px solid #e3ddd2}.mbar a{color:#141318!important}.mbar .mb-main{background:#5a49d6!important;color:#fff!important}
.wd-cards li,.why7-i,.pk7,.pk7-in,.why-c,.rv7-c,.faq7-i,.chip7 span,.ms7,.f7 input,.f7 textarea{background:#fff!important;color:#141318!important;border-color:#e3ddd2!important;box-shadow:none!important}
.tile .tile-t,.tile .tile-n,.tile .tile-k{color:#fff}
.ex-t,.ex-t .tile-n,.ex-t .tile-k{color:#141318!important}.ex-t{background:#fff!important;border:1px solid #e3ddd2}
/* social heading overflow fix (>=1440 too) */
.soc-hero-in{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important}
.soc-hero h1.disp{font-size:clamp(2rem,4.6vw,4.4rem)!important;overflow-wrap:normal;word-break:normal}
/* calmer motion */
.js .fu{transform:translateY(14px)!important;transition:opacity 1s ease,transform 1s ease!important}.js .fu.in{transform:none!important}
.js .fu.slide{transform:translateY(14px)!important}
@media (prefers-reduced-motion:reduce){.js .fu{transform:none!important;opacity:1!important}}
.lg10{display:inline-flex;align-items:center;gap:0;position:relative}.logo10{display:block;height:40px;width:auto}.logo10.ft{height:44px}
.logo-on-dark{display:none!important}
.home .hd6:not(.solid) .logo-on-light{display:none!important}
.home .hd6:not(.solid) .logo-on-dark{display:block!important}
.home .hd6.solid .logo-on-light{display:block!important}
.home .hd6.solid .logo-on-dark{display:none!important}
.sm10{margin-top:1.6rem;font-size:.92rem}
.ln10{list-style:none;padding:0;margin:3rem auto 0;max-width:34rem;display:grid;gap:1.6rem}
.ln10 li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;align-items:start;border-top:1px solid #e3ddd2;padding-top:1.4rem}
.ln10 span{color:#5a49d6;font-weight:500;letter-spacing:.08em}.ln10 p{margin:.3rem 0 0;color:#3d3b47;line-height:1.6}
.price10{font:300 clamp(1.6rem,4vw,2.6rem)/1.2 var(--disp);letter-spacing:.04em;color:#141318;margin:0 0 1rem}
.price10::after{content:"";display:block;width:40px;height:2px;margin:1rem auto 0;background:linear-gradient(90deg,#8ecdf5,#6c5ce7)}
@media(max-width:700px){.logo10{height:32px}.hd6-nav a[href="/launch.html"],.hd6-nav a[href="/website-design.html#launch-kit"],.hd6-nav a[href="#launch-kit"]{display:none}}
@media(max-width:700px){.soc-hero h1.disp{font-size:clamp(1.5rem,7.4vw,2.4rem)!important;letter-spacing:.02em!important}}
.ex10-tag{display:inline-block;padding:.45rem 1rem;border:1px dashed #5a49d6;border-radius:999px;color:#4b3cc4;font-size:.85rem;margin:0 0 2rem}
.ex10-client{color:#3d3b47;font-size:.95rem;margin-top:1.4rem}
.ex10{margin:0}.ex10 img{display:block;width:100%;height:auto;border-radius:4px}
.ex10 figcaption{margin-top:.7rem;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:#4a4856;text-align:center}
.ex10-ph{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#efeae1 0 14px,#f3efe8 14px 28px);border:1px solid #e3ddd2;border-radius:4px;color:#6b6878;font-size:.9rem;letter-spacing:.06em}
.ex10.por .ex10-ph{aspect-ratio:4/5}.ex10.wide .ex10-ph{aspect-ratio:16/10}.ex10.phn .ex10-ph{aspect-ratio:9/16;max-width:300px;margin:0 auto}
.ex10.phn img{max-width:300px;margin:0 auto}
.ex10-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;max-width:900px;margin:0 auto}
.ex10-g2{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:820px;margin:0 auto}
@media(max-width:700px){.ex10-g3,.ex10-g2{grid-template-columns:1fr}.ex10-g3{max-width:340px}.hd6-nav a[href="/example.html"]{display:none}}
@media(max-width:1100px){.hd6-nav a[href="/example.html"],.hd6-nav a[href="/launch.html"],.hd6-nav a[href="/website-design.html#launch-kit"],.hd6-nav a[href="#launch-kit"]{display:none}}
.ex10-tag.c10{display:block;max-width:34rem;margin:1.5rem auto 0;text-align:center;border-radius:12px}
.ln10-im{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1rem}
.ln10-im .still{margin:0;flex:1 1 140px;max-width:260px;cursor:zoom-in}
.ln10-im img{display:block;width:100%;height:auto;object-fit:contain;border-radius:4px;border:1px solid #e3ddd2}
/* v10 contrast pass: no gradient/pale text, no colour blobs on the light theme */
h1,h2,h3,.disp,.disp2,.stmt,.pf6-a,.quote6-t{-webkit-text-fill-color:#141318!important;background-image:none!important;color:#141318!important;text-shadow:none!important}
.hero6.h10 h1,.hero6.h10 .h10-q{-webkit-text-fill-color:#fff!important;color:#fff!important}
.dr9-q{-webkit-text-fill-color:#4b3cc4!important}
main section{background-image:none!important}
main section::before,main section::after,.page-top::before,.page-top::after{display:none!important}
main p:not(.h10-q):not(.lbl):not(.eyebrow):not(.ex10-tag),main li,main dd,main summary~p{color:#33313d}
main strong{color:#141318}
.lbl,.eyebrow{color:#4b3cc4!important}
.wd-steps li,.wd-tl li{color:#33313d!important}
.btn{background:#5a49d6!important;color:#fff!important;border-radius:999px;padding:.62rem 1.25rem;font-size:.86rem}
.btn.ghost{background:transparent!important;color:#141318!important;border:1px solid #d9d3c7}
.rv7{background:#f1ede5!important}
.tile .tile-t,.tile .tile-n,.tile .tile-k{color:#fff!important;-webkit-text-fill-color:#fff!important}
.ex-t .tile-n,.ex-t .tile-k{color:#141318!important;-webkit-text-fill-color:#141318!important}
.smp10{margin:4rem auto 0;max-width:40rem;border-top:1px solid #e3ddd2;padding-top:2.5rem}
.smp10-t{text-align:center;font-size:.95rem!important;letter-spacing:.14em;text-transform:uppercase;margin:0 0 1.2rem}
.smp10-tabs{display:flex;justify-content:center;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem}
.smp10-tabs label{cursor:pointer;padding:.5rem 1.1rem;border:1px solid #5a49d6;border-radius:999px;font-size:.86rem;color:#4b3cc4}
.smp10-in{position:absolute;opacity:0;pointer-events:none}
.smp10-p{display:none}
#smp-j:checked~#smp-j-p,#smp-r:checked~#smp-r-p{display:block}
.smp10:has(#smp-j:checked) label[for=smp-j],.smp10:has(#smp-r:checked) label[for=smp-r]{background:#5a49d6;color:#fff}
.smp10-r{margin:1.6rem 0}.smp10-h{font-weight:500;margin:0 0 .6rem;color:#141318!important}
.smp10-in:focus-visible+*{outline:2px solid #5a49d6}
/* v10 How it works: colour band, cards, scroll-filled progress line, numbered circles */
main section.hiw10{background:linear-gradient(135deg,#ece8fb 0%,#e4f1fb 100%)!important;padding:clamp(5rem,10vw,8rem) 0!important}
.hiw10 .wrap.narrow{max-width:1180px}
.hiw10 h2{text-align:center}.hiw10 h2.disp2.fu::after{margin-left:auto;margin-right:auto}
.hiw10-l{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;margin:3.5rem 0 0!important;padding:0!important}
.hiw10-l::before{display:none!important}
.hiw10-bar{position:absolute;left:12.5%;right:12.5%;top:1.15rem;height:3px;border-radius:3px;background:rgba(90,73,214,.15);z-index:0}
.hiw10-bar span{display:block;height:100%;width:calc(var(--p,0)*100%);border-radius:3px;background:linear-gradient(90deg,#6c5ce7,#8ecdf5);transition:width .25s linear}
.hiw10-l li{position:relative;z-index:1;padding:3.6rem 1.4rem 1.6rem!important;background:#fff!important;border:1px solid #e3ddd2!important;border-radius:14px;text-align:center;color:#33313d!important;line-height:1.6;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,opacity .8s ease!important}
.hiw10-l li strong{display:block;font-size:1.1rem;margin-bottom:.4rem;color:#141318}
.hiw10-l li::before{left:50%!important;top:-1.15rem!important;transform:translateX(-50%);width:2.4rem!important;height:2.4rem!important;background:#fff!important;border:2px solid #b9b0f0!important;color:#5a49d6!important;transition:background .4s,color .4s,border-color .4s}
.hiw10-l li.on::before{background:#5a49d6!important;border-color:#5a49d6!important;color:#fff!important;animation:hiwPulse 1.1s ease-out 1}
.hiw10-l li:hover{transform:translateY(-6px)!important;box-shadow:0 14px 30px rgba(75,60,196,.12)!important}
.js .hiw10-l li.fu{transform:translateY(26px)!important}.js .hiw10-l li.fu.in{transform:none!important}
.js .hiw10-l li.fu.in:hover{transform:translateY(-6px)!important}
.hiw10-l li:nth-child(2){transition-delay:0s,0s,.0s!important}.hiw10-l li:nth-child(3){transition-delay:0s,0s,.12s!important}.hiw10-l li:nth-child(4){transition-delay:0s,0s,.24s!important}.hiw10-l li:nth-child(5){transition-delay:0s,0s,.36s!important}
@keyframes hiwPulse{0%{box-shadow:0 0 0 0 rgba(90,73,214,.45)}100%{box-shadow:0 0 0 14px rgba(90,73,214,0)}}
@media(max-width:860px){
 .hiw10-l{grid-template-columns:1fr;gap:1.6rem;padding-left:3.4rem!important}
 .hiw10-bar{left:1.15rem;right:auto;top:.5rem;bottom:.5rem;width:3px;height:auto}
 .hiw10-bar span{width:100%;height:calc(var(--p,0)*100%);background:linear-gradient(180deg,#6c5ce7,#8ecdf5)}
 .hiw10-l li{text-align:left;padding:1.4rem 1.3rem!important}
 .hiw10-l li::before{left:-3.4rem!important;top:1.2rem!important;transform:none}
}
@media (prefers-reduced-motion:reduce){.hiw10-l li,.hiw10-bar span,.hiw10-l li::before{transition:none!important;animation:none!important}.hiw10-l li:hover{transform:none!important}}
/* v10 website example tiles: 16:9 muted loop video (uncropped) or 'Video coming soon' slot */
.ex-g .tile.ex10{display:flex;flex-direction:column;aspect-ratio:auto!important;height:auto!important;padding:0!important;overflow:hidden;border-radius:12px}
.ex10-v{display:block;aspect-ratio:16/9;background:#141318;width:100%}
.ex10-v video{display:block;width:100%;height:100%;object-fit:contain}
.ex10-v.soon{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#efeae1 0 14px,#f4f0e9 14px 28px);border-bottom:1px solid #e3ddd2}
.ex10-v.soon span{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#4a4856}
.tile.ex10 .tile-t{position:static!important;padding:1rem 1.1rem!important;background:#fff!important}
.tile.ex10 .tile-t,.tile.ex10 .tile-n,.tile.ex10 .tile-k{color:#141318!important;-webkit-text-fill-color:#141318!important}
.tile.ex10>.ar{position:absolute;right:1rem;bottom:1.1rem;stroke:#4b3cc4}
.tile.ex10{position:relative}
.hiw10 .wrap.narrow{max-width:1180px!important;width:min(1180px,92vw)!important}.hiw10-l{max-width:none!important;width:100%}
.tile.ex10::before,.tile.ex10::after,.ex-soon{display:none!important}.tile.ex10{background:#fff!important}
/* v10 colour bands (all pages) */
main section.band10-cream{background-color:#f5f3ee!important}
main section.band10-lav{background-color:#e9e3fb!important}
main section.band10-blue{background-color:#dff0fc!important}
main section.hiw10{background-image:none!important}
main section[class*=band10]{padding-top:clamp(5rem,10vw,8rem)!important;padding-bottom:clamp(5rem,10vw,8rem)!important}
main section.phd10,main section.page-top,main section.phd{padding-top:clamp(8rem,15vw,12rem)!important}
.trust7 li,.wd-cards li,.why7-i,.pk7-in,.faq7-i,.ex-t,.rv7-c{background:#fff!important}
/* CTA band: deep purple, white text (contrast ≥ 7:1) */
main section.cta6,.cta6{background:#2e2370!important;border-top:0!important}
.cta6 h2,.cta6 .stmt{color:#fff!important;-webkit-text-fill-color:#fff!important}
.cta6 p,.cta6 a:not(.pill){color:#ece9ff!important}
.cta6 .pill{background:#fff!important;color:#2e2370!important}
.cta6 .pill:hover{background:#e7f3fc!important}
main section.band10-cta{background:#2a1f5c!important;color:#fff}
main section.band10-cta h2,main section.band10-cta h3,main section.band10-cta .stmt,main section.band10-cta .price10,main section.band10-cta strong{color:#fff!important;-webkit-text-fill-color:#fff!important}
main section.band10-cta p,main section.band10-cta li,main section.band10-cta a:not(.pill):not(.btn){color:#ece9ff!important}
main section.band10-cta .pill,main section.band10-cta .btn{background:#fff!important;color:#2e2370!important;-webkit-text-fill-color:#2e2370!important}
main section.band10-cta .btn.ghost{background:transparent!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:rgba(255,255,255,.5)!important}
main section.band10-cta .disp2::after,main section.band10-cta .price10::after{background:#8ecdf5!important}
main section.band10-cta .lbl{color:#d4ecfc!important}
main section[class*=band10-]{background-image:none!important}
/* compact spacing */
main section{padding-top:64px!important;padding-bottom:64px!important;min-height:0!important}
main section.band10-cta{padding-top:56px!important;padding-bottom:56px!important}
@media(max-width:760px){main section{padding-top:40px!important;padding-bottom:40px!important}}
/* fx10: text-section motion */
.fx10{position:relative;overflow:hidden;isolation:isolate}
.fx10::before,.fx10::after{content:"";position:absolute;z-index:-1;width:46vw;height:46vw;max-width:620px;max-height:620px;border-radius:50%;filter:blur(70px);opacity:.55;pointer-events:none;animation:blob10 22s ease-in-out infinite alternate}
.fx10::before{background:#ddd4fb;top:-30%;left:-12%}
.fx10::after{background:#cfe9fb;bottom:-35%;right:-10%;animation-delay:-11s}
main section.band10-cta.fx10::before{background:#4a3aa8;opacity:.6}main section.band10-cta.fx10::after{background:#3b5fa8;opacity:.45}
@keyframes blob10{0%{transform:translate(0,0) scale(1)}50%{transform:translate(6vw,3vw) scale(1.12)}100%{transform:translate(-4vw,-2vw) scale(.95)}}
mark.hl10{color:inherit;background:linear-gradient(90deg,rgba(142,205,245,.55),rgba(167,139,250,.45)) no-repeat 0 85%/0% 42%;padding:0 .08em;transition:background-size .9s cubic-bezier(.2,.7,.2,1) .3s}
.in10 mark.hl10{background-size:100% 42%}
.band10-cta mark.hl10{background-image:linear-gradient(90deg,rgba(142,205,245,.45),rgba(167,139,250,.55))}
.fx10 .pill10{display:inline-block;transition:background .25s,color .25s,transform .25s,box-shadow .25s;opacity:0;transform:translateY(12px)}
.in10 .pill10{opacity:1;transform:none;transition:opacity .5s,transform .5s,background .25s,color .25s,box-shadow .25s}
.in10 .pill10:nth-child(2){transition-delay:.12s}.in10 .pill10:nth-child(3){transition-delay:.24s}
.fx10 .pill10:hover,.fx10 .pill10:focus-visible{background:#5b3fd0!important;color:#fff!important;transform:translateY(-3px)!important;box-shadow:0 8px 20px rgba(91,63,208,.28);transition-delay:0s!important}
.fx10 .lnk6 svg,.fx10 .lnk6 .arr{transition:transform .25s}.fx10 .lnk6:hover svg,.fx10 .lnk6:hover .arr{transform:translateX(5px)}
.fx10 .w10{display:inline-block;opacity:0;transform:translateY(.4em);transition:opacity .5s,transform .5s;transition-delay:calc(var(--i)*.12s)}
.in10 .w10{opacity:1;transform:none}
.band10-cta.fx10 .pill{position:relative;overflow:hidden;animation:glow10 2.8s ease-in-out infinite}
.band10-cta.fx10 .pill::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}
.band10-cta.fx10 .pill:hover::after{transform:translateX(120%)}
@keyframes glow10{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.35)}50%{box-shadow:0 0 0 8px rgba(255,255,255,0)}}
.fx10 a[href^="tel:"]{text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat 0 100%/0% 2px;transition:background-size .35s}
.fx10 a[href^="tel:"]{background-size:100% 1px}.fx10 a[href^="tel:"]:hover,.fx10 a[href^="tel:"]:focus-visible{background-size:100% 2px}
@media(prefers-reduced-motion:reduce){.fx10::before,.fx10::after,.band10-cta.fx10 .pill{animation:none}.fx10 .w10,.fx10 .pill10{opacity:1!important;transform:none!important;transition:none}mark.hl10{background-size:100% 42%;transition:none}}
/* hiw10: hover-only circle fill */
main section.hiw10{padding:64px 0!important}
.hiw10-l li.on::before{background:#fff!important;border-color:#b9b0f0!important;color:#5a49d6!important;animation:none!important}
.hiw10-l li:hover::before,.hiw10-l li:focus-within::before,.hiw10-l li.tap10::before,.hiw10-l li:active::before{background:#5a49d6!important;border-color:#5a49d6!important;color:#fff!important}
.hiw10-l li.tap10,.hiw10-l li:focus-within{transform:translateY(-6px)!important;box-shadow:0 14px 30px rgba(75,60,196,.12)!important}
.hiw10-bar span{width:100%!important;height:100%!important;opacity:.35;transition:none!important}
@media(max-width:760px){main section.hiw10{padding:40px 0!important}}
/* addon10: Tailored to you */
main section.addon6{background-image:none!important;color:#fff!important;padding:88px 0!important;border-top:4px solid #8ecdf5;border-bottom:4px solid #8ecdf5}
main section.addon6 .addon10-in{width:min(1180px,92vw)!important;max-width:1180px!important;margin:0 auto!important;padding:0!important;text-align:left!important}
main section.addon6 .addon10-in>*{margin-left:0!important;margin-right:0!important;padding-left:0!important;text-align:left!important;max-width:720px}
main section.addon6 .addon10-h{color:#fff!important;font-weight:700!important;font-size:clamp(2.2rem,5vw,3.6rem)!important;letter-spacing:.06em;margin-bottom:1.2rem!important}
main section.addon6 .addon10-h::after{background:#8ecdf5!important;margin-left:0!important}
main section.addon6 .you10{color:#8ecdf5}
main section.addon6 .body6{color:#fff!important;margin-bottom:.9rem!important}
main section.addon6 .note6{color:#d9d4f3!important;margin-bottom:1.6rem!important}
main section.addon6 .pill{background:#8ecdf5!important;color:#141318!important;border-color:#8ecdf5!important}
main section.addon6 .pill:hover{background:#fff!important;border-color:#fff!important}
main section.addon6 ul.ex9{max-width:none!important;width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.4rem!important;margin:2.8rem 0 0!important;padding:0!important;box-sizing:border-box}
main section.addon6 ul.ex9 li{min-width:0!important;width:auto!important}
main section.addon6 .ex9-v{border-radius:12px;overflow:hidden;border:1px solid rgba(142,205,245,.45);box-shadow:0 0 28px rgba(142,205,245,.18)}
main section.addon6 .ex9-l{color:#d9d4f3!important}
main section.addon6::before,main section.addon6::after{display:none!important}
@media(max-width:760px){main section.addon6{padding:56px 0!important}main section.addon6 ul.ex9{grid-template-columns:1fr!important}}
main section.band10-cta2{background:#14306b!important}
footer,.ft6,.site-footer{background:#111015!important;color:#e9e7ef!important}
footer a,footer p,footer li,footer h3,footer h4,footer span,footer small{color:#e9e7ef!important}
footer .lbl,footer h3,footer h4{color:#fff!important}
main section.band10-cta .lbl,main section.band10-cta mark{color:#fff}
main section.addon6 .addon10-h .you10{color:#8ecdf5!important;-webkit-text-fill-color:#8ecdf5!important}
main section.addon6 .addon10-in>a.pill{padding:.55rem 1.3rem!important}
main section[class*=band10-][class]{background-image:none!important}
main section.band10-cta[class][class]{background-color:#2a1f5c!important}
main section.band10-cta2[class][class][class]{background-color:#14306b!important}
main section.band10-cta.cta .btn.ghost,main section.band10-cta .ctas a:not(:first-child){color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid rgba(255,255,255,.7)!important;background:transparent!important}
.fx10::before{opacity:.9}.fx10::after{opacity:.85}

/* Home hero: solid black behind video only */
.hero6.h10,.hero6.h10 .hero6-f{background:#000!important}
/* Home transparent header: glass Let's connect; solid purple once scrolled */
.home .hd6:not(.solid) a.pill,.home .hd6:not(.solid) .pill{
  background:rgba(255,255,255,.12)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border:1px solid rgba(255,255,255,.85)!important;box-shadow:none!important;backdrop-filter:blur(10px)
}
.home .hd6:not(.solid) a.pill:hover,.home .hd6:not(.solid) .pill:hover{
  background:rgba(255,255,255,.22)!important;color:#fff!important;-webkit-text-fill-color:#fff!important
}
.home .hd6.solid a.pill,.home .hd6.solid .pill{
  background:#5a49d6!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:0!important
}
/* Home intro under hero: solid black, light text */
.home main section.sec10.c10,.home main section.sec10.c10.band10-cream,.home main section.sec10.c10.band10-lav,.home main section.sec10.c10.band10-blue{
  background:#000!important;background-image:none!important;color:#f5f3ee!important
}
.home main section.sec10.c10 .body10,.home main section.sec10.c10 p,.home main section.sec10.c10 a.lnk6{
  color:#f5f3ee!important;-webkit-text-fill-color:#f5f3ee!important
}
.home main section.sec10.c10 .pill10{
  border-color:rgba(255,255,255,.85)!important;color:#fff!important;background:transparent!important
}
.home main section.sec10.c10 .pill10:hover,.home main section.sec10.c10 .fx10 .pill10:hover{
  background:#fff!important;color:#141318!important;-webkit-text-fill-color:#141318!important;border-color:#fff!important
}
.home main section.sec10.c10.fx10::before,.home main section.sec10.c10.fx10::after{opacity:.2;background:#333}
/* Home intro: cinematic word fade-up, then pills, then launch link */
.home main section.sec10.c10 .iw10{display:inline-block;opacity:0;transform:translateY(.45em);transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i)*.055s)}
.home main section.sec10.c10.in10 .iw10,.home main section.sec10.c10.in .iw10{opacity:1;transform:none}
.home main section.sec10.c10 .pill10{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease,background .25s,color .25s,border-color .25s,box-shadow .25s}
.home main section.sec10.c10.in10 .pill10,.home main section.sec10.c10.in .pill10{opacity:1;transform:none}
.home main section.sec10.c10.in10 .pill10:nth-child(1){transition-delay:.85s}
.home main section.sec10.c10.in10 .pill10:nth-child(2){transition-delay:1s}
.home main section.sec10.c10.in10 .pill10:nth-child(3){transition-delay:1.15s}
.home main section.sec10.c10 .home-launch{opacity:0;transform:translateY(10px);transition:opacity .55s ease,transform .55s ease;transition-delay:0s}
.home main section.sec10.c10.in10 .home-launch,.home main section.sec10.c10.in .home-launch{opacity:1;transform:none;transition-delay:1.4s}
@media(prefers-reduced-motion:reduce){
  .home main section.sec10.c10 .iw10,.home main section.sec10.c10 .pill10,.home main section.sec10.c10 .home-launch{opacity:1!important;transform:none!important;transition:none!important}
}
/* Footer: white text + on-dark logo (site-wide) */
footer.ft6,.ft6{background:#111015!important;color:#fff!important;border-top:0!important}
footer.ft6 a,footer.ft6 p,footer.ft6 span,footer.ft6 li,.ft6 a,.ft6 p,.ft6 span,.ft6 .wm,.ft6 .ft6-h,.ft6 .ft6-s,.ft6 .ft6-b span,.ft6 .ft9-nl{color:#fff!important;-webkit-text-fill-color:#fff!important}
footer.ft6 a:hover,.ft6 a:hover{color:#cfe9fb!important;-webkit-text-fill-color:#cfe9fb!important}
.ft6 .logo10.ft{filter:none}
/* Home: transparent header over hero (override light solid bar) */
.home .hd6:not(.solid){background:transparent!important;background-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent)!important;border-bottom:0!important;box-shadow:none!important;backdrop-filter:none!important}
.home .hd6:not(.solid) .wm,.home .hd6:not(.solid) .hd6-nav>a:not(.pill),.home .hd6:not(.solid) .hd6-nav a:not(.pill){color:#fff!important;-webkit-text-fill-color:#fff!important}
.home .hd6:not(.solid) .burger span{background:#fff!important}
.home .hd6:not(.solid) .logo10{filter:none}
.home .hd6.solid{background:rgba(247,244,238,.92)!important;backdrop-filter:saturate(1.2) blur(8px)!important;border-bottom:1px solid #e6e0d5!important}
.home .hd6.solid .wm,.home .hd6.solid .hd6-nav>a:not(.pill),.home .hd6.solid .hd6-nav a:not(.pill){color:#141318!important;-webkit-text-fill-color:#141318!important}
.home .hd6.solid .logo10{filter:none}
.home .hd6.solid .burger span{background:#141318!important}
/* Home: solid black header band (~2× bar) above the hero video — match Hayley crop */
.home .hd6:not(.solid){
  background:#000!important;background-image:none!important;
  backdrop-filter:none!important;border-bottom:0!important;box-shadow:none!important;
  padding:1.85rem 0!important
}
.home .hd6:not(.solid) .wm,.home .hd6:not(.solid) .hd6-nav>a:not(.pill),.home .hd6:not(.solid) .hd6-nav a:not(.pill){color:#fff!important;-webkit-text-fill-color:#fff!important}
.home .hd6:not(.solid) .burger span{background:#fff!important}
.home .hd6:not(.solid) .logo10{filter:none}
/* push video below the black nav band — use padding (not margin) so black fills flush under header (no cream/white stripe) */
.home main>.hero6.h10{
  padding:6.75rem 0 0!important;margin:0!important;background:#000!important;
  border:0!important;box-shadow:none!important
}
.home main>.hero6.h10 .hero6-f{
  margin-top:0!important;
  height:calc(100svh - 6.75rem - 2*clamp(.75rem,2vw,1.6rem))!important;
  min-height:480px;background:#000!important
}
.home .hd6:not(.solid){border-bottom:0!important;box-shadow:none!important}
@media(max-width:700px){
  .home .hd6:not(.solid){padding:1.35rem 0!important}
  .home main>.hero6.h10{padding:5.25rem 0 0!important}
  .home main>.hero6.h10 .hero6-f{margin-top:0!important;height:calc(100svh - 5.25rem - 1.5rem)!important}
}
/* Home hero: no cream bleed — kill global section padding / borders on the video band */
.home main>.hero6.h10{padding-bottom:0!important;border:0!important;outline:0!important}
.home main>.hero6.h10 .hero6-f,.home main>.hero6.h10 .hero6-v{display:block;border:0!important;outline:0!important}
.home main{background:#000}

/* Home: title band under video (not overlaid); video clean */
.home main>.hero6.h10 .hero6-in{display:none!important}
.home main>.hero6.h10 .hero6-f::after{display:none!important;background:none!important}
.home main section.home-title{
  background:#000!important;color:#fff!important;text-align:center;
  padding:22px 0 26px!important;min-height:0!important;margin:0!important
}
.home main section.home-title .h10-wm{
  font:300 clamp(1.55rem,4.2vw,2.6rem)/1 var(--disp);letter-spacing:.28em;color:#fff!important;
  -webkit-text-fill-color:#fff!important;margin:0;text-transform:uppercase
}
.home main section.home-title .h10-q{
  color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:.9;
  font-size:clamp(.95rem,1.8vw,1.25rem)!important;margin:12px 0 0
}
/* Home: no light gap between video and black title band; keep top padding so black sits under fixed header (no cream stripe) */
.home main{background:#000}
.home main>.hero6.h10{
  padding:6.75rem 0 0!important;margin:0!important;background:#000!important;border:0!important
}
.home main>.hero6.h10 .hero6-f{
  margin:0!important;border-radius:0!important
}
@media(max-width:700px){
  .home main>.hero6.h10{padding:5.25rem 0 0!important}
}
.home main section.home-title,
.home main section.home-title[class*=band10]{
  background:#000!important;background-image:none!important;
  margin:0!important;border:0!important;padding-top:22px!important;padding-bottom:26px!important
}
.home main>.hero6.h10 + .home-title{margin-top:0!important}

/* ===== Home black intro band: motion + tighter + attractive ===== */
.home main section.home-title,
.home main section.home-title[class*=band10]{
  position:relative;overflow:hidden;
  padding:28px 0 8px!important; /* tighten; feeds into next black section */
}
.home main section.sec10.c10,
.home main section.sec10.c10[class*=band10]{
  position:relative;overflow:hidden;
  padding:12px 0 48px!important; /* compact — was 64px sparse */
  margin:0!important
}
@media(max-width:760px){
  .home main section.home-title{padding:22px 0 6px!important}
  .home main section.sec10.c10{padding:8px 0 36px!important}
}
/* soft purple/blue glow drift behind intro (tasteful) */
.home main section.home-title::before,
.home main section.sec10.c10::before{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:55vw;height:55vw;max-width:520px;max-height:520px;border-radius:50%;
  background:radial-gradient(circle,rgba(108,92,231,.35),rgba(142,205,245,.12) 45%,transparent 70%);
  filter:blur(40px);opacity:.55;
  animation:introGlow 18s ease-in-out infinite alternate
}
.home main section.home-title::before{top:-30%;left:-10%}
.home main section.sec10.c10::before{bottom:-35%;right:-15%;animation-delay:-6s}
.home main section.home-title::after{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:40vw;height:40vw;max-width:380px;max-height:380px;border-radius:50%;
  right:-8%;top:10%;
  background:radial-gradient(circle,rgba(142,205,245,.22),transparent 65%);
  filter:blur(36px);opacity:.4;animation:introGlow 22s ease-in-out infinite alternate-reverse
}
@keyframes introGlow{
  0%{transform:translate(0,0) scale(1)}
  100%{transform:translate(4%,3%) scale(1.08)}
}
.home main section.home-title .w6,
.home main section.sec10.c10 .w6{position:relative;z-index:1}
/* title + quote word fade/slide */
.home main section.home-title .tw10{
  display:inline-block;opacity:0;transform:translateY(.5em);
  transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1);
  transition-delay:calc(var(--i)*.07s)
}
.home main section.home-title .qw10{
  display:inline-block;opacity:0;transform:translateY(.4em);
  transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1);
  transition-delay:calc(.35s + var(--i)*.06s)
}
.home main section.home-title.in10 .tw10,
.home main section.home-title.in10 .qw10,
.home main section.home-title.in .tw10,
.home main section.home-title.in .qw10{opacity:1;transform:none}
.home main section.home-title .h10-wm{
  font:300 clamp(1.7rem,4.6vw,2.85rem)/1.05 var(--disp)!important;
  letter-spacing:.26em!important
}
.home main section.home-title .h10-q{
  margin-top:14px!important;opacity:.92;
  letter-spacing:.02em
}
/* intro body already has iw10 — slightly snappier */
.home main section.sec10.c10 .iw10{transition-delay:calc(.15s + var(--i)*.05s)}
/* pills: purple/baby-blue accents, lift, stagger */
.home main section.sec10.c10 .pills10{margin-top:1.6rem!important;gap:.85rem}
.home main section.sec10.c10 .pill10{
  border-color:rgba(142,205,245,.7)!important;color:#fff!important;
  background:rgba(255,255,255,.04)!important;
  backdrop-filter:blur(6px);
  box-shadow:0 0 0 0 rgba(108,92,231,0)
}
.home main section.sec10.c10 .pill10:hover,
.home main section.sec10.c10 .pill10:focus-visible{
  background:linear-gradient(135deg,#6c5ce7,#5a49d6)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  border-color:transparent!important;
  transform:translateY(-4px)!important;
  box-shadow:0 10px 28px rgba(108,92,231,.35)!important
}
.home main section.sec10.c10.in10 .pill10:nth-child(1){transition-delay:.7s}
.home main section.sec10.c10.in10 .pill10:nth-child(2){transition-delay:.85s}
.home main section.sec10.c10.in10 .pill10:nth-child(3){transition-delay:1s}
/* launch CTA: purple accent + subtle pulse + arrow nudge */
.home main section.sec10.c10 .home-launch{margin-top:1.75rem!important}
.home main section.sec10.c10 .home-launch .lnk6{
  color:#cfe9fb!important;-webkit-text-fill-color:#cfe9fb!important;
  letter-spacing:.04em;font-weight:500;
  transition:color .25s,transform .25s
}
.home main section.sec10.c10 .home-launch .lnk6:hover{
  color:#fff!important;-webkit-text-fill-color:#fff!important
}
.home main section.sec10.c10 .home-launch .ar{
  display:inline-block;margin-right:.35rem;vertical-align:-.15em;
  width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;
  animation:launchNudge 2.4s ease-in-out infinite
}
.home main section.sec10.c10.in10 .home-launch{
  animation:launchPulse 3.2s ease-in-out .5s infinite
}
@keyframes launchNudge{
  0%,100%{transform:translate(0,0)}
  50%{transform:translate(3px,-3px)}
}
@keyframes launchPulse{
  0%,100%{filter:drop-shadow(0 0 0 rgba(142,205,245,0))}
  50%{filter:drop-shadow(0 0 10px rgba(142,205,245,.35))}
}
@media(prefers-reduced-motion:reduce){
  .home main section.home-title::before,
  .home main section.home-title::after,
  .home main section.sec10.c10::before{animation:none!important;opacity:.25}
  .home main section.home-title .tw10,
  .home main section.home-title .qw10{opacity:1!important;transform:none!important;transition:none!important}
  .home main section.sec10.c10 .home-launch .ar,
  .home main section.sec10.c10.in10 .home-launch{animation:none!important}
  .home main section.sec10.c10 .pill10:hover{transform:none!important}
}

/* Launch: packages purple flush under What I offer (no lavender strip) */
main section.launch-offer{padding-bottom:40px!important}
main section.launch-price,main section.launch-price[class*=band10]{
  background:#2a1f5c!important;background-image:none!important;color:#fff!important;
  padding-top:48px!important;padding-bottom:48px!important;margin-top:0!important
}
main section.launch-price .price10,main section.launch-price p,main section.launch-price .body10{color:#fff!important;-webkit-text-fill-color:#fff!important}
main section.launch-price .pill{background:#fff!important;color:#2a1f5c!important;-webkit-text-fill-color:#2a1f5c!important}

/* white-tile original logo */
.lg10 .logo10.tile10,.home .hd6 .logo10.tile10,.ft6 .logo10.tile10{display:block;height:60px;width:auto;background:#fff;border-radius:7px;filter:none!important;box-shadow:0 1px 6px rgba(0,0,0,.18)}
.ft6 .logo10.tile10.ft{height:72px}
@media(max-width:700px){.lg10 .logo10.tile10{height:48px}}
/* home title spice (Oct 16) */
.home main section.home-title .h10-wm{position:relative;display:inline-block;padding-bottom:14px}
.home main section.home-title .tw10:nth-child(2){
  background:linear-gradient(100deg,#b58cff 0%,#9fd8ff 35%,#ffffff 50%,#9fd8ff 65%,#b58cff 100%);background-size:250% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  animation:shim10 5.5s ease-in-out 1.2s infinite;filter:drop-shadow(0 0 14px rgba(150,120,255,.35))
}
@keyframes shim10{0%{background-position:100% 0}55%,100%{background-position:0 0}}
.home main section.home-title .h10-wm::after{
  content:"";position:absolute;left:12%;right:12%;bottom:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,#8b5cf6,#9fd8ff,#8b5cf6,transparent);
  transform:scaleX(0);transform-origin:center;transition:transform 1s cubic-bezier(.2,.7,.2,1) .45s
}
.home main section.home-title.in10 .h10-wm::after,.home main section.home-title.in .h10-wm::after{transform:scaleX(1)}
.home main section.home-title .h10-q{color:#d9ccff!important;text-shadow:0 0 18px rgba(159,216,255,.35);font-style:italic}
.home main section.home-title .qw10{transition-delay:.75s!important}
@media (prefers-reduced-motion:reduce){
  .home main section.home-title .tw10:nth-child(2){animation:none;background-position:0 0}
  .home main section.home-title .h10-wm::after{transform:none!important;transition:none!important}
}

/* clapperboard placeholder */
.ex10-v.clap10{background:radial-gradient(circle at 50% 45%,#f7f4ee,#ebe5f7)}
.ex10-v.clap10 svg{width:62%;height:auto;overflow:visible}
.clap10-arm{transform-box:fill-box;transform-origin:4px 100%;transform:rotate(-22deg)}
.ex10.in .clap10-arm{animation:clap10 .9s cubic-bezier(.5,0,.3,1) .4s forwards}
@keyframes clap10{0%{transform:rotate(-22deg)}70%{transform:rotate(0)}82%{transform:rotate(-4deg)}100%{transform:rotate(0)}}
.ex10:hover .clap10-arm{animation:clap10b .6s ease}
@keyframes clap10b{0%,100%{transform:rotate(0)}40%{transform:rotate(-18deg)}}
@media (prefers-reduced-motion:reduce){.clap10-arm,.ex10.in .clap10-arm,.ex10:hover .clap10-arm{animation:none!important;transform:rotate(0)!important}}
/* Why work with me v11: stacked rows */
section:has(.why11){background:#f7f4ee}
section:has(.why11) h2.disp2{font:700 .95rem/1.2 var(--disp)!important;letter-spacing:.14em!important;text-transform:uppercase;color:#4b2a9e!important;-webkit-text-fill-color:#4b2a9e!important;background:none!important;display:inline-block;padding-bottom:12px;border-bottom:3px solid #4b2a9e;margin-bottom:28px!important}
section:has(.why11) h2.disp2::after,section:has(.why11) h2.disp2::before{display:none!important}
.why11{list-style:none;margin:0;padding:0;counter-reset:none}
.why11-r{position:relative;display:grid;grid-template-columns:10px 120px 1fr;gap:0 34px;align-items:center;padding:34px 0;border-bottom:1px solid #ddd7cc}
.why11-r:last-child{border-bottom:0}
.why11-bar{align-self:stretch;width:10px;background:#4b2a9e;border-radius:2px;transform:scaleY(0);transform-origin:top;transition:transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--r)*.18s)}
.why11-n{overflow:hidden;font:800 clamp(4rem,9vw,7.5rem)/.9 var(--disp);color:#4b2a9e;text-align:center}
.why11-n span{display:inline-block;transform:translateY(105%);transition:transform .8s cubic-bezier(.2,.7,.2,1) calc(.15s + var(--r)*.18s)}
.why11-t h3{margin:0 0 12px;font:800 clamp(1.7rem,3.6vw,2.9rem)/1.05 var(--disp);font-stretch:condensed;letter-spacing:-.01em;text-transform:uppercase;color:#141318}
.ww11{display:inline-block;opacity:0;transform:translateY(.6em);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:calc(.3s + var(--r)*.18s + var(--w)*.07s)}
.why11-t p{margin:0;max-width:62ch;font-size:1.08rem;line-height:1.6;color:#33313d;opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .6s ease;transition-delay:calc(.65s + var(--r)*.18s)}
.why11-r.fu{opacity:1!important;transform:none!important}
.why11-r.in .why11-bar{transform:scaleY(1)}
.why11-r.in .why11-n span,.why11-r.in .ww11,.why11-r.in .why11-t p{opacity:1;transform:none}
@media(max-width:700px){.why11-r{grid-template-columns:6px 58px 1fr;gap:0 16px;padding:24px 0}.why11-bar{width:6px}.why11-n{font-size:3.4rem}.why11-t h3{font-size:1.45rem}.why11-t p{font-size:1rem}}
@media (prefers-reduced-motion:reduce){.why11-bar,.why11-n span,.ww11,.why11-t p{transition:none!important;transform:none!important;opacity:1!important}}
/* Home without header: video flush at top */
.home main>.hero6.h10.nohd11{padding:0!important}
.home main>.hero6.h10.nohd11 .hero6-f{height:calc(100svh - clamp(.75rem,2vw,1.6rem))!important;margin:0!important}
@media(max-width:700px){.home main>.hero6.h10.nohd11{padding:0!important}.home main>.hero6.h10.nohd11 .hero6-f{height:calc(100svh - 4.5rem)!important}}
/* Home reveal header (replaces removal) */
body.nohd11-on .hd6{position:fixed!important;top:0;left:0;right:0;transform:translateY(-110%);transition:transform .45s cubic-bezier(.2,.7,.2,1);background:#000!important;padding:.55rem 0!important;box-shadow:0 2px 14px rgba(0,0,0,.35)}
body.nohd11-on .hd6.rev11,body.nohd11-on .hd6:focus-within,body.menu-open.nohd11-on .hd6{transform:none}
body.nohd11-on .hd6 .logo10.tile10{height:50px}
@media (prefers-reduced-motion:reduce){body.nohd11-on .hd6,body.nohd11-on .hd6.rev11{transition:none!important}}
.why11-t h3{font-family:var(--disp)!important;font-weight:800!important;font-size:clamp(1.7rem,3.4vw,2.7rem)!important;line-height:1.05!important;letter-spacing:-.015em!important;color:#141318!important;-webkit-text-fill-color:#141318!important;transform:scaleX(.9);transform-origin:left}
@media(max-width:700px){.why11-t h3{font-size:1.4rem!important}}
/* Portfolio v11 dark */
main:has(.pf11){background:#0a0a0a}
.pf11{background:#0a0a0a;color:#fff;padding:clamp(6.5rem,10vw,8.5rem) 0 clamp(3rem,6vw,5rem)}
.pf11-w{max-width:1400px;margin:0 auto;padding:0 clamp(16px,3vw,40px)}
.pf11-h{font:800 clamp(2.6rem,6vw,4.5rem)/1 var(--disp)!important;letter-spacing:-.01em!important;text-transform:uppercase;color:#fff!important;-webkit-text-fill-color:#fff!important;margin:0 0 10px!important;background:none!important}
.pf11-h2{font:700 clamp(1.7rem,3.4vw,2.6rem)/1.1 var(--disp)!important;text-transform:uppercase;color:#fff!important;-webkit-text-fill-color:#fff!important;margin:clamp(3rem,6vw,5rem) 0 10px!important;background:none!important}
.pf11-u{display:block;width:180px;height:6px;background:#8c3cb4;border-radius:2px;margin-bottom:clamp(24px,3vw,40px)}
.pf11-u.sm{width:120px}
.pf11-g{display:grid;grid-template-columns:1.05fr 1fr;gap:16px}
.pf11-col{display:grid;grid-template-rows:340fr 264fr;gap:16px}
.pf11-c,.pf11-r{position:relative;overflow:hidden;border-radius:6px;margin:0;background:#141318;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.pf11-c img,.pf11-r img,.pf11-r video{display:block;width:100%;height:100%;object-fit:cover!important;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pf11-feat{height:clamp(360px,44vw,620px)}
.pf11-c:hover,.pf11-r:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(140,60,180,.28)}
.pf11-c:hover img,.pf11-r:hover img,.pf11-r:hover video{transform:scale(1.04)}
.pf11-o{position:absolute;left:0;right:0;bottom:0;padding:22px 22px 18px;background:linear-gradient(transparent,rgba(0,0,0,.8))}
.pf11-tag{display:block;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#d1b3ff;margin-bottom:4px}
.pf11-t{display:block;font:700 clamp(1.25rem,2vw,1.75rem)/1.15 var(--disp);color:#fff;text-transform:uppercase;letter-spacing:.02em}
.pf11-reels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.pf11-r{aspect-ratio:9/16}
.pf11-r .pf11-o{padding:40px 14px 14px}
.pf11-r .pf11-t{font-size:clamp(.82rem,1.15vw,1rem);line-height:1.2;overflow-wrap:anywhere;hyphens:auto}
.pf11-more{margin-top:2.5rem;display:flex;gap:1.5rem;flex-wrap:wrap}
.pf11-more .lnk6{color:#d1b3ff!important}
@media(max-width:860px){
 .pf11-g{grid-template-columns:1fr}.pf11-col{grid-template-rows:none;grid-template-columns:1fr 1fr}.pf11-col .pf11-c{aspect-ratio:4/3}.pf11-feat{height:auto;aspect-ratio:4/3}
 .pf11-reels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:10px;margin-right:calc(-1*clamp(16px,3vw,40px))}
 .pf11-r{flex:0 0 46vw;scroll-snap-align:start}
}
@media(max-width:520px){.pf11-col{grid-template-columns:1fr}.pf11-r{flex-basis:58vw}}
@media (prefers-reduced-motion:reduce){.pf11-c,.pf11-r,.pf11-c img,.pf11-r img,.pf11-r video{transition:none!important}.pf11-c:hover,.pf11-r:hover{transform:none}.pf11-c:hover img,.pf11-r:hover img,.pf11-r:hover video{transform:none}}
.logo10.mono11{height:40px;width:auto;background:none!important;box-shadow:none!important;filter:none!important;border-radius:0}
@media(max-width:700px){.logo10.mono11{height:34px}}
.pf11-a{display:block;width:100%;height:100%;color:inherit;text-decoration:none;cursor:pointer}
.pf11-a:focus-visible{outline:3px solid #c4a7ff;outline-offset:3px}
.pf11-c .pf11-a,.pf11-r .pf11-a{position:relative}
.pf11-c:not(.has-film):hover,.pf11-r:not(.has-film):hover{transform:none;box-shadow:none}
.pf11-dlg{border:0;padding:0;background:transparent;max-width:none;max-height:none;overflow:visible}
.pf11-dlg::backdrop{background:rgba(5,4,10,.88);backdrop-filter:blur(3px)}
.pf11-fr{width:min(92vw,1200px);aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.pf11-dlg.vert .pf11-fr{width:auto;height:min(86vh,900px);aspect-ratio:9/16;max-width:92vw}
.pf11-pv{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.pf11-x{position:absolute;top:-46px;right:0;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:#141318;font-size:26px;line-height:1;cursor:pointer}
.pf11-x:focus-visible{outline:3px solid #c4a7ff;outline-offset:2px}
@media(max-width:700px){.pf11-x{top:-48px;right:4px}.pf11-fr{width:94vw}}
/* Portfolio photos masonry */
.pf11-ms{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(120px,13vw,190px);grid-auto-flow:dense;gap:14px}
.pf11-m{grid-row:span 2;margin:0}
.pf11-m.t{grid-row:span 3}
.pf11-m.w{grid-column:span 2;grid-row:span 2}
.pf11-pa{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:6px;background:#141318}
.pf11-pa img{width:100%;height:100%;object-fit:cover!important;object-position:50% 30%;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .6s}
.pf11-pa:hover img{transform:scale(1.05)}
.pf11-pa:focus-visible{outline:3px solid #c4a7ff;outline-offset:3px}
.pf11-ct{position:absolute;top:12px;left:12px;background:#7b2fb0;color:#fff;font:700 .7rem/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;padding:7px 10px;border-radius:3px;box-shadow:0 2px 10px rgba(0,0,0,.35)}
.pf11-dlg.still .pf11-fr{width:auto;height:auto;aspect-ratio:auto;background:transparent;max-width:92vw}
.pf11-pi{display:block;max-width:92vw;max-height:86vh;width:auto;height:auto;border-radius:6px}
@media(max-width:860px){.pf11-ms{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:34vw;gap:10px}.pf11-m.w{grid-column:span 2}}
@media (prefers-reduced-motion:reduce){.pf11-pa img{transition:none}.pf11-pa:hover img{transform:none}}

/* Portfolio gallery */
.pf11-gal{border:0;padding:0;background:transparent;color:#fff;width:min(96vw,1200px);max-width:none;max-height:none;overflow:visible}
.pf11-gal::backdrop{background:rgba(5,4,10,.92);backdrop-filter:blur(3px)}
.pf11-gh{display:flex;align-items:center;gap:16px;margin-bottom:12px}
.pf11-gc{font:800 1.1rem/1 var(--disp);letter-spacing:.16em;text-transform:uppercase;padding:8px 12px;background:#7b2fb0;border-radius:3px}
.pf11-gn{font-size:.95rem;color:#d8d2e6;font-variant-numeric:tabular-nums}
.pf11-gx{margin-left:auto;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:#141318;font-size:26px;line-height:1;cursor:pointer}
.pf11-gs{position:relative;display:flex;align-items:center;justify-content:center;height:min(70vh,760px);background:#000;border-radius:8px;overflow:hidden}
.pf11-gi{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain!important;touch-action:pan-y}
.pf11-gp,.pf11-gq{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:#141318;font-size:32px;line-height:1;cursor:pointer;z-index:1}
.pf11-gp{left:12px}.pf11-gq{right:12px}
.pf11-gal.one .pf11-gp,.pf11-gal.one .pf11-gq,.pf11-gal.one .pf11-gt{display:none}
.pf11-gt{display:flex;gap:8px;overflow-x:auto;padding:12px 2px 4px}
.pf11-gt button{flex:0 0 auto;width:84px;height:58px;padding:0;border:2px solid transparent;border-radius:4px;overflow:hidden;background:#141318;cursor:pointer;opacity:.6}
.pf11-gt button[aria-current="true"]{border-color:#a970ff;opacity:1}
.pf11-gt img{width:100%;height:100%;object-fit:cover!important}
.pf11-gal button:focus-visible{outline:3px solid #c4a7ff;outline-offset:2px}
@media(max-width:700px){.pf11-gs{height:60vh}.pf11-gp,.pf11-gq{width:40px;height:40px;font-size:26px}.pf11-gt button{width:64px;height:46px}}
main section.pf11,main section.pf11[class*=band10]{background:#0a0a0a!important;color:#fff}
main:has(.pf11){background:#0a0a0a!important}
.pf11-m .pf11-a{position:relative;overflow:hidden;border-radius:6px;background:#141318}
.pf11-m .pf11-a img{width:100%;height:100%;object-fit:cover!important;object-position:50% 30%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.pf11-m .pf11-a:hover img{transform:scale(1.05)}
/* v11 collage grid (Hayley ref): natural aspect, staggered columns, no tags */
.pf11-ms{display:block!important;column-count:4;column-gap:14px}
.pf11-m,.pf11-m.t,.pf11-m.w,.pf11-m.s{display:block;break-inside:avoid;margin:0 0 14px;grid-row:auto;grid-column:auto}
.pf11-ms .pf11-pa{height:auto;border-radius:3px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.pf11-ms .pf11-pa img{height:auto!important;object-fit:contain!important}
.pf11-ms .pf11-pa:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.55)}
.pf11-ms .pf11-pa:hover img{transform:none}
.pf11-ms .pf11-m:nth-child(4n+2){margin-top:22px}
.pf11-ms .pf11-m:nth-child(4n+3) .pf11-pa{margin-left:8px;margin-right:-8px}
@media(max-width:860px){.pf11-ms{column-count:2;column-gap:10px}.pf11-m{margin-bottom:10px}.pf11-ms .pf11-m:nth-child(4n+3) .pf11-pa{margin:0}}
@media (prefers-reduced-motion:reduce){.pf11-ms .pf11-pa{transition:none}.pf11-ms .pf11-pa:hover{transform:none}}
.pf11-reels{grid-template-columns:repeat(4,minmax(0,1fr))}
.pf11-tana{height:clamp(260px,38vw,560px);margin-bottom:16px}
.pf11-reels{grid-template-columns:repeat(5,minmax(0,1fr))}
.pf11-arc{margin:16px 0 0}
.pf11-food{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.pf11-fd{aspect-ratio:16/10}
@media(max-width:700px){.pf11-food{grid-template-columns:1fr}}
/* justified rows: every row fills edge to edge, so the collage ends flush (no empty column gap) */
.pf11-ms{display:flex!important;flex-wrap:wrap;gap:12px;column-count:auto}
.pf11-ms .pf11-m{flex:var(--ar) 1 calc(var(--ar)*230px);margin:0!important;aspect-ratio:var(--ar)}
.pf11-ms .pf11-m .pf11-pa{display:block;width:100%;height:100%;margin:0!important}
.pf11-ms .pf11-pa img{width:100%;height:100%!important;object-fit:cover!important}
.pf11-ms .pf11-m{max-height:440px}.pf11-ms .pf11-m:last-child:nth-child(n){max-height:380px}
@media(max-width:860px){.pf11-ms{gap:8px}.pf11-ms .pf11-m{flex-basis:calc(var(--ar)*150px)}}
/* Oct 17: every horizontal film tile the same size: equal 16:9 tiles, one grid, 3 per row desktop, 1 on mobile */
.pf11-films{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 16px}
.pf11-films>.pf11-c{height:auto!important;aspect-ratio:16/9!important;margin:0!important;grid-column:auto!important;grid-row:auto!important}
.pf11-films>.pf11-c>.pf11-a,.pf11-films>.pf11-c>.pf11-pa{display:block;width:100%;height:100%}
@media(max-width:860px){.pf11-films{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pf11-films{grid-template-columns:1fr}}
/* Oct 17: Racing, Events, Aviation, Food match Portraits/Business rows, but never stretch or crop: natural aspect, last row stays at row size */
#racing+h2+span+.pf11-ms::after,#events+h2+span+.pf11-ms::after,#aviation+h2+span+.pf11-ms::after,#food+h2+span+.pf11-ms::after{content:"";flex:999 0 0}
#racing+h2+span+.pf11-ms .pf11-m,#events+h2+span+.pf11-ms .pf11-m,#aviation+h2+span+.pf11-ms .pf11-m,#food+h2+span+.pf11-ms .pf11-m{max-height:none!important}
.ft6-logo{display:inline-flex;align-items:center;background:#fff;border-radius:8px;padding:8px 12px;margin:0 0 14px;line-height:0}.ft6-logo img{height:36px;width:auto;display:block}
.cta6 mark.hl10,.in10 .cta6 mark.hl10,.cta6 .in10 mark.hl10,.cta6.in10 mark.hl10{background:none!important;color:inherit!important;-webkit-text-fill-color:inherit!important}
/* Oct 17: photo lightbox (overlay only; collage sizes untouched) */
.phlb{border:0;padding:0;margin:0;width:100vw;height:100vh;max-width:none;max-height:none;background:rgba(8,7,12,.94);display:none;align-items:center;justify-content:center}
.phlb[open]{display:flex}
.phlb::backdrop{background:rgba(8,7,12,.94)}
.phlb-i{max-width:92vw;max-height:88vh;width:auto;height:auto;object-fit:contain;display:block;border-radius:3px;box-shadow:0 20px 60px rgba(0,0,0,.6);pointer-events:none}
.phlb button{position:absolute;background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.phlb button:hover,.phlb button:focus-visible{background:rgba(255,255,255,.22);outline:2px solid #a78bfa}
.phlb-x{top:16px;right:16px}.phlb-p{left:16px;top:50%;transform:translateY(-50%)}.phlb-n{right:16px;top:50%;transform:translateY(-50%)}
.phlb button[hidden]{display:none}
html.phlb-on{overflow:hidden}
.phlb-i{width:min(92vw,calc(88vh * var(--ar,1.5)))!important;height:auto!important}
.ft6-logo{align-self:flex-start;width:max-content;max-width:100%}
.pf11-tana:not(.pf11-arc) .pf11-o{background:linear-gradient(transparent,rgba(0,0,0,.62))}
/* Oct 18: Hayley's full logo (wordmark + tagline) on its white tile; header height unchanged (negative margin absorbs the taller tile) */
.logo10.full12{height:60px!important;width:auto;margin:-10px 0;background:#fff;border-radius:6px;filter:none!important;box-shadow:0 1px 4px rgba(0,0,0,.15)}
@media(max-width:700px){.logo10.full12{height:52px!important;margin:-9px 0}}
.ft6-logo:has(.full12){padding:0;background:none}
.ft6-logo img.full12{height:auto;width:200px;max-width:100%;border-radius:8px}
/* Oct 18: Social hero photo 2 (camera on tripod in a hangar, 768x1024) shown whole: same width/position/corners, box follows the photo's 3:4 shape, no crop */
.soc-col .sc2{height:auto!important;aspect-ratio:768/1024;z-index:2}
.soc-col .sc2 img{height:100%;object-fit:contain}
/* Oct 18: header logo removed (header height kept at 68px); Home link + Services dropdown */
.hd6-in{min-height:40px;justify-content:flex-end}
.dd12{position:relative;display:flex;align-items:center}
.dd12-b{display:inline-flex;align-items:center;gap:.3rem;background:none;border:0;padding:0;cursor:pointer;font:500 .95rem var(--sans);color:#141318}
.home .hd6:not(.solid) .dd12-b{color:#fff}
.dd12-b:hover,.dd12.open .dd12-b{color:var(--violet)}
.dd12-c{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.dd12.open .dd12-c,.dd12:hover .dd12-c{transform:rotate(180deg)}
.dd12-p{position:absolute;top:100%;left:50%;min-width:250px;margin-top:12px;padding:.7rem 1.1rem;background:#121117;border-radius:10px;box-shadow:0 18px 40px rgba(0,0,0,.35);opacity:0;visibility:hidden;transform:translate(-50%,-6px);transition:opacity .2s,transform .2s,visibility 0s .2s;z-index:60}
.dd12-p::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.dd12:hover .dd12-p,.dd12.open .dd12-p,.dd12-p:focus-within{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .2s,transform .2s}
.hd6-nav .dd12-p a{display:flex!important;align-items:center;gap:.5rem;padding:.45rem 0;color:#f3f2ff!important;-webkit-text-fill-color:#f3f2ff!important;text-decoration:none;font:500 .95rem var(--sans);white-space:nowrap}
.hd6-nav .dd12-p a:hover,.hd6-nav .dd12-p a:focus-visible{color:#c4b5fd!important;-webkit-text-fill-color:#c4b5fd!important}
.dd12-p .ar,.mdd12-p .ar{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;flex:none}
@media (max-width:760px){/* burger removed: keep Services dropdown */.hd6-nav .dd12{display:block}}
@media (prefers-reduced-motion:reduce){.dd12-p,.dd12-c{transition:none!important}}
.mdd12-b{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;padding:0;cursor:pointer;font:700 clamp(1.6rem,4.4vw,3.4rem)/1.25 var(--disp);letter-spacing:.03em;text-transform:uppercase;color:#141318}
.mdd12-b .dd12-c{width:.7em;height:.7em}
.mdd12-b[aria-expanded="true"] .dd12-c{transform:rotate(180deg)}
.mdd12-p{list-style:none;margin:.4rem 0 .8rem;padding:.8rem 1.2rem;background:#121117;border-radius:10px;display:inline-block}
.mdd12-p[hidden]{display:none}
.menu-l .mdd12-p a{display:flex;align-items:center;gap:.5rem;font:500 1.05rem/1.2 var(--sans);text-transform:none;letter-spacing:0;color:#f3f2ff;padding:.45rem 0}
.menu-l .mdd12-p a:hover{color:#c4b5fd;transform:none}
/* dropdown text colour wins over the global nav/menu colour rules (Home solid header, menu overlay) */
.home .hd6 .hd6-nav .dd12-p a,.home .hd6.solid .hd6-nav .dd12-p a,.home .hd6:not(.solid) .hd6-nav .dd12-p a,.hd6 .hd6-nav .dd12-p a{color:#f3f2ff!important;-webkit-text-fill-color:#f3f2ff!important}
.home .hd6 .hd6-nav .dd12-p a:hover,.hd6 .hd6-nav .dd12-p a:hover,.hd6 .hd6-nav .dd12-p a:focus-visible{color:#c4b5fd!important;-webkit-text-fill-color:#c4b5fd!important}
.menu .menu-l .mdd12-p a{color:#f3f2ff!important;-webkit-text-fill-color:#f3f2ff!important}
.menu .menu-l .mdd12-p a:hover,.menu .menu-l .mdd12-p a:focus-visible{color:#c4b5fd!important;-webkit-text-fill-color:#c4b5fd!important}
.home .hd6.solid .dd12-b{color:#141318!important;-webkit-text-fill-color:#141318!important}
.home .hd6.solid .dd12-b:hover,.home .hd6.solid .dd12.open .dd12-b{color:var(--violet)!important;-webkit-text-fill-color:var(--violet)!important}
.ab10-p2{margin-top:2rem}
/* Oct 18: About: two vertical photos beside each other under the moved cover (natural aspect, no crop) */
.ab10-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:520px;margin:0 auto 2.5rem;align-items:start}
.ab10-pair .still{margin:0;border-radius:4px}
.ab10-pair img{width:100%;height:auto!important;display:block;object-fit:contain!important}
/* Personal Photography collage (hidden until photos arrive): natural-aspect masonry columns */
.pp12-ms{list-style:none;margin:1.5rem 0 0;padding:0;columns:3 240px;column-gap:14px}
.pp12-ms li{break-inside:avoid;margin:0 0 14px}
.pp12-ms img{width:100%;height:auto;display:block;border-radius:4px}
/* Personal Photography uses the Portfolio collage rows; last row keeps row size (no banner) */
#personal-photography .pf11-ms{columns:auto;margin-top:1.5rem}
#personal-photography .pf11-ms::after{content:"";flex:999 0 0}
#personal-photography .pf11-ms .pf11-m{max-height:none!important}
/* Oct 18: About photos of Hayley shown whole (natural aspect, no crop): cover, moved cover, pair, photo grid */
.ab10 .still img,.ab10-pair .still img,.phd10~.sec10 .grid10.g3 .still img{aspect-ratio:auto!important;height:auto!important;object-fit:contain!important}
/* Oct 18: no last-row banners in Portraits / Business Highlights either (pastor moved, portrait-14 removed) */
#portraits+h2+span+.pf11-ms::after,#business+h2+span+.pf11-ms::after{content:"";flex:999 0 0}
#portraits+h2+span+.pf11-ms .pf11-m,#business+h2+span+.pf11-ms .pf11-m{max-height:none!important}
/* Oct 18: Personal Captures film tile (same equal 16:9 tile as Portfolio films) */
.pp12-films{margin:0 0 16px}
.pf11-c video{display:block;width:100%;height:100%;object-fit:cover!important}
.pp12-films{grid-template-columns:minmax(0,429px)}
/* Oct 18: sparrow row under the mushroom/snail row; same 230px (desktop) / 150px (mobile) row height, natural aspect */
#personal-photography .pf11-ms.pp12-row2{margin-top:12px}
@media(max-width:860px){#personal-photography .pf11-ms.pp12-row2{margin-top:8px}}
/* Oct 18: no sound on any video: hide mute/volume controls in the pop-up player (audio tracks are stripped too) */
.pf11-pv::-webkit-media-controls-mute-button,.pf11-pv::-webkit-media-controls-volume-slider,.pf11-pv::-webkit-media-controls-volume-control-container{display:none!important}
/* Oct 18: snowy-tracks portrait joins the last Portraits row; pin that row to its previous height so the two existing photos keep their exact approved size */
@media(min-width:861px){#portraits+h2+span+.pf11-ms .pf11-m:nth-last-child(-n+3){flex:0 0 calc(var(--ar)*230.605px)}}
/* Oct 18: owl joins the sparrow row; pin that row to the sparrow's previous height so the sparrow keeps its exact size */
@media(min-width:861px){#personal-photography .pp12-row2 .pf11-m{flex:0 0 calc(var(--ar)*230.859px)}}
/* Oct 18 (late): new Racing/Aviation/Personal photos added after the previous last row. Pin the previous last row (and the new photos) to that row's previous height, natural aspect, so no existing photo changes size */
@media(min-width:861px){
#aviation+h2+span+.pf11-ms .pf11-m:nth-child(n+7){flex:0 0 calc(var(--ar)*230.875px)}}
@media(max-width:860px){
#aviation+h2+span+.pf11-ms .pf11-m:nth-child(n+7){flex:0 0 calc(var(--ar)*150.063px)}
#personal-photography .pp12-row2 .pf11-m{flex:0 0 calc(var(--ar)*150.109px)}}
/* Oct 18: site-wide header slide-down: hidden on load, slides down 0.5 s after scrolling starts, stays. Content/sizes unchanged */
body.hds12 .hd6{transform:translateY(-110%);transition:transform .3s cubic-bezier(.2,.7,.2,1),background .4s,box-shadow .4s,padding .4s}
body.nohd11-on.hds12 .hd6{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
body.hds12 .hd6.rev11,body.hds12 .hd6:focus-within,body.hds12.menu-open .hd6{transform:none}
@media (prefers-reduced-motion:reduce){body.hds12 .hd6{transition:none!important}}
/* Oct 18: Aviation additions block (own justified rows under the existing rows; last row not stretched) */
.pf11-ms.pf11-more{margin-top:12px}
.pf11-ms.pf11-more::after{content:"";flex:999 0 0}
.pf11-ms.pf11-more .pf11-m{max-height:none!important}
@media(max-width:860px){.pf11-ms.pf11-more{margin-top:8px}}
/* Oct 18: racing-16/19 removed. Remaining autocross photos pinned to their previous displayed sizes (desktop 432x288 / 345x230, mobile unchanged) */
.pf11-ms .pf11-br{flex:0 0 100%!important;height:0;margin:0 0 -12px!important;padding:0;aspect-ratio:auto!important;list-style:none}
@media(min-width:861px){
#racing+h2+span+.pf11-ms .pf11-k-racing-15-autocross,#racing+h2+span+.pf11-ms .pf11-k-racing-17-autocross{flex:0 0 calc(var(--ar)*288.188px)}
#racing+h2+span+.pf11-ms .pf11-k-racing-18-autocross,#racing+h2+span+.pf11-ms .pf11-k-racing-20-autocross,#racing+h2+span+.pf11-ms .pf11-k-racing-21-road-course{flex:0 0 calc(var(--ar)*230.219px)}}
@media(max-width:860px){.pf11-ms .pf11-br{margin-bottom:-8px!important}
#racing+h2+span+.pf11-ms .pf11-k-racing-20-autocross,#racing+h2+span+.pf11-ms .pf11-k-racing-21-road-course{flex:0 0 calc(var(--ar)*150.109px)}}
/* Oct 18: About reels (same reel size as Portfolio Client Reels: 250x444 desktop, 226x402 mobile) */
.ab12-reels{display:flex;flex-wrap:wrap;gap:18px}
.ab12-reels .pf11-r{flex:0 0 250px;width:250px;aspect-ratio:9/16}
@media(max-width:860px){.ab12-reels{gap:12px}.ab12-reels .pf11-r{flex:0 0 226px;width:226px}}
@media(max-width:480px){.ab12-reels{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.ab12-reels .pf11-r{scroll-snap-align:start}}
/* Oct 18 (final): aviation-32/33 join the last row of the Aviation additions block; pin that row to its previous height so aviation-31 keeps its size */
@media(min-width:861px){.pf11-more .pf11-k-aviation-31-event,.pf11-more .pf11-k-aviation-32-rpm-sim,.pf11-more .pf11-k-aviation-33-hangar-group{flex:0 0 calc(var(--ar)*230.891px)}}
@media(max-width:860px){.pf11-more .pf11-k-aviation-31-event,.pf11-more .pf11-k-aviation-32-rpm-sim,.pf11-more .pf11-k-aviation-33-hangar-group{flex:0 0 calc(var(--ar)*150.063px)}}
.dr12-reels{margin-top:18px}
/* Oct 18 (final): racing-40..42 join the end of the Racing additions block; pin that last row to its previous height so racing-38/39 keep their size */
@media(min-width:861px){.pf11-more .pf11-k-racing-38-photographer,.pf11-more .pf11-k-racing-39-young-driver,.pf11-more .pf11-k-racing-40-bmw-103,.pf11-more .pf11-k-racing-41-safety-crew,.pf11-more .pf11-k-racing-42-car-710{flex:0 0 calc(var(--ar)*230.594px)}}
@media(max-width:860px){.pf11-more .pf11-k-racing-39-young-driver,.pf11-more .pf11-k-racing-40-bmw-103,.pf11-more .pf11-k-racing-41-safety-crew,.pf11-more .pf11-k-racing-42-car-710{flex:0 0 calc(var(--ar)*150.109px)}}
/* Oct 18 (final): new Offroad section, same collage rules as Racing/Events/Aviation (no stretched last row) */
#offroad+h2+span+.pf11-ms::after{content:"";flex:999 0 0}
#offroad+h2+span+.pf11-ms .pf11-m{max-height:none!important}
/* ===== Oct 18 theme12: every page uses the Portfolio look (black #0a0a0a, purple accents, white type). Colors/typography only; layout, sizes and media untouched ===== */
body{background:#0a0a0a}
:where(body:not(.lk19)) main,:where(body:not(.lk19)) main:has(.pf11){background:#0a0a0a}
:where(body:not(.lk19)) main section[class*=band10-]:not(.band10-cta),:where(body:not(.lk19)) main section.sec10,:where(body:not(.lk19)) main section.sec6,:where(body:not(.lk19)) main section.sec,:where(body:not(.lk19)) main section.phd,:where(body:not(.lk19)) main section.phd10,:where(body:not(.lk19)) main section.soc-hero,:where(body:not(.lk19)) main section.wd-notes,:where(body:not(.lk19)) main .wd6{background-color:#0a0a0a!important;background-image:none!important}
.home main section.sec10.c10{background-color:#0a0a0a!important}
:where(body:not(.lk19)) main :is(h1,h2,h3,h4,h5,legend,strong,dt,summary):not(.pill *):not(.btn *):not(.pf11 *){color:#fff!important;-webkit-text-fill-color:#fff!important}
:where(body:not(.lk19)) main :is(p,li,span,label,small,em,sup,dd,td,th,figcaption,blockquote,div):not(.pill):not(.pill *):not(.btn):not(.btn *):not(.pf11 *):not([class*=tw10]):not(.pk7-n):not(.cr-n){color:#ece9ff!important}
:where(body:not(.lk19)) main :is(p.note6,.stmt-s,.row-k,.src,.src6,.nl-note,.cr-d,.sub){color:rgba(236,233,255,.74)!important}
:where(body:not(.lk19)) main :is(.lbl,.eyebrow,.ms7-k,.tile-k):not(.pf11 *){color:#d1b3ff!important}
:where(body:not(.lk19)) main a:not(.pill):not(.btn):not(.tile):not(.pf11 *):not(.pf11-a){color:#fff!important}
:where(body:not(.lk19)) main a.lnk6:not(.pf11 *),:where(body:not(.lk19)) main .lnk6{color:#d1b3ff!important}
:where(body:not(.lk19)) main a:not(.pill):not(.btn):not(.pf11 *):hover{color:#d1b3ff}
/* section titles: Portfolio weight, uppercase, white with the purple bar (bar is absolutely placed so it takes no layout space) */
main :is(h1,h2):not(.pf11 *):not(.hero6 *):not(.hi12-h){font-family:var(--disp)!important;font-weight:700!important;text-transform:uppercase;-webkit-text-fill-color:#fff!important;background:none!important}
:where(body:not(.lk19)) main :is(h2.h10,h2.disp2,h2.cat6-h):not(.pf11 *){position:relative}
:where(body:not(.lk19)) main :is(h2.h10,h2.disp2,h2.cat6-h):not(.pf11 *)::after{content:"";position:absolute;left:0;bottom:.16em;width:110px;height:8px;border-radius:0;background:#8c3cb4;transform:none;opacity:1;box-shadow:0 0 12px rgba(139,123,255,.55),0 0 26px rgba(122,107,240,.32)}
:where(body:not(.lk19)) main :is(h2.h10,.c10 h2.disp2,.c10 h2.cat6-h):not(.pf11 *)::after{left:50%!important;margin-left:-60px}
/* light cards and form fields become dark Portfolio cards */
main :is(li,div,figure,form,details,span,input,textarea,select,button,a.tile,.tile,.why-c,.pk7,.pk7-in,.faq7-i,.rv7-c,.rv7-src,.rv7-b,.ms7):not(.pill):not(.btn):not(.pf11 *):not(.pf11-c):not(.pf11-r)[class]{--tw:0}
:where(body:not(.lk19)) main :is(.why-c,.pk7,.pk7-in,.faq7-i,.rv7-c,.tile,.tile-t,.ex10,.ms7,.rv7-src,.rv7-b){background-color:#141318!important;border-color:rgba(209,179,255,.18)!important}
:where(body:not(.lk19)) main :is(.dr9-t li,.hire6 li,.wd-sec li.fu,.wd6-sec li,.launch-offer li,.page-top li,.page-top span):not(.pill *){border-color:rgba(209,179,255,.18)!important}
:where(body:not(.lk19)) main :is(.dr9-t li,.hire6 li,.wd6-sec li.fu,.page-top ul li){background-color:#141318!important}
:where(body:not(.lk19)) main :is(input,textarea,select){background-color:#141318!important;color:#fff!important;border-color:rgba(209,179,255,.28)!important}
:where(body:not(.lk19)) main :is(input,textarea)::placeholder{color:rgba(236,233,255,.5)}
:where(body:not(.lk19)) main .page-top span:not(.pill *)[class=""],:where(body:not(.lk19)) main .page-top label span{background-color:transparent}
:where(body:not(.lk19)) main :is(ul.cine6,ul.rows.light,.wd-notes){border-color:rgba(209,179,255,.18)!important}
:where(body:not(.lk19)) main .rows.light *{border-color:rgba(209,179,255,.18)!important}
:where(body:not(.lk19)) main .disp2.slide,:where(body:not(.lk19)) main h2 span{-webkit-text-fill-color:#fff}

/* ===== Oct 18 hi12: About intro, thinner (half the padding) and animated ===== */
main section.phd10.hi12{padding:clamp(4rem,7.5vw,6rem) 0 clamp(2rem,4vw,3rem)!important;background:#0a0a0a!important;position:relative;overflow:hidden}
.hi12 .hi12-h{color:#fff!important;-webkit-text-fill-color:#fff;font-weight:300;margin-bottom:.9rem;position:relative;display:block}
.hi12 .hi12-w{display:inline-block;position:relative}
.hi12 .hi12-h::after{content:"";display:block;height:4px;width:min(220px,40%);margin:.55rem auto 0;border-radius:2px;background:linear-gradient(90deg,transparent,#8c3cb4 20%,#d1b3ff 50%,#8c3cb4 80%,transparent);transform:scaleX(0);transform-origin:left center}
.hi12 .hi12-r{color:#ece9ff!important}
.hi12 .hi12-role{display:inline-block;color:#ece9ff}
.hi12 .hi12-s{color:#8c3cb4}
.js .hi12 .hi12-w{opacity:0;transform:translateY(.55em);filter:blur(4px)}
.js .hi12 .hi12-role,.js .hi12 .hi12-s{opacity:0;transform:translateY(8px)}
.js .hi12.go .hi12-w{opacity:1;transform:none;filter:none;transition:opacity .7s ease calc(var(--i)*.16s),transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--i)*.16s),filter .7s ease calc(var(--i)*.16s)}
.js .hi12.go .hi12-w{background:linear-gradient(100deg,#fff 40%,#d1b3ff 50%,#fff 60%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:hi12sh 1.6s ease calc(.6s + var(--i)*.16s) 1 both}
@keyframes hi12sh{from{background-position:100% 0}to{background-position:0 0}}
.js .hi12.go .hi12-h::after{transform:scaleX(1);transition:transform 1s cubic-bezier(.2,.7,.2,1) .55s}
.js .hi12.go .hi12-role{opacity:1;transform:none;transition:opacity .5s ease calc(.9s + var(--i)*.22s),transform .6s cubic-bezier(.2,.7,.2,1) calc(.9s + var(--i)*.22s)}
.js .hi12.go .hi12-s{opacity:1;transform:none;transition:opacity .5s ease calc(1s + var(--i,0)*.22s)}
.js .hi12.go .hi12-role.lit{color:#d1b3ff;transition:color .6s ease}
@media(max-width:860px){main section.phd10.hi12{padding:clamp(3.5rem,9vw,4.5rem) 0 clamp(1.6rem,4vw,2rem)!important}}
@media(prefers-reduced-motion:reduce){.js .hi12 .hi12-w,.js .hi12 .hi12-role,.js .hi12 .hi12-s{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important;-webkit-text-fill-color:#fff}.js .hi12 .hi12-h::after{transform:scaleX(1);transition:none}}

/* ===== Oct 18 ab13: About cover photo spacing, purple glow and motion (size/crop unchanged) ===== */
main section:has(>.w6.ab10){padding-top:clamp(2.5rem,5vw,4rem)!important}
.ab10 .ab10-p:not(.ab10-p2){position:relative;margin-top:0;margin-bottom:calc(3rem + clamp(.5rem,2vw,1.5rem));overflow:visible;isolation:isolate}
.ab10 .ab10-p:not(.ab10-p2)::before{content:"";position:absolute;inset:-14%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(140,60,180,.55),rgba(108,92,231,.25) 55%,transparent 100%);filter:blur(22px);opacity:.85;animation:ab13gl 6s ease-in-out infinite;pointer-events:none}
.ab10 .ab10-p:not(.ab10-p2) img{box-shadow:0 0 0 1px rgba(209,179,255,.18),0 20px 60px rgba(140,60,180,.35);border-radius:6px}
.js .ab10 .ab10-p.fu:not(.ab10-p2){transform:scale(.94);opacity:0;transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.js .ab10 .ab10-p.fu.in:not(.ab10-p2){opacity:1;transform:none}
.js .ab10 .ab10-p.fu.in:not(.ab10-p2) img{animation:ab13fl 7s ease-in-out 1.2s infinite}
@keyframes ab13fl{0%,100%{translate:0 0}50%{translate:0 -8px}}
@keyframes ab13gl{0%,100%{opacity:.7;scale:1}50%{opacity:1;scale:1.06}}
@media(prefers-reduced-motion:reduce){.ab10 .ab10-p:not(.ab10-p2)::before,.js .ab10 .ab10-p.fu.in:not(.ab10-p2) img{animation:none!important}.js .ab10 .ab10-p.fu:not(.ab10-p2){transform:none;opacity:1;transition:none}}

/* ===== Oct 18 ab13: staggered photo arrangement on About (column width and natural aspect identical to the old grid) ===== */

.grid10.g3.ab13-g{display:flex;gap:1.1rem;align-items:flex-start;max-width:820px}
.ab13-g .ab13-c{flex:1 1 0;min-width:0;display:flex;flex-direction:column}
.ab13-g .ab13-c1{margin-top:3.4rem}.ab13-g .ab13-c2{margin-top:1.6rem}
.ab13-g .ab13-f{margin:0 0 1.1rem}
.ab13-g .ab13-f:nth-child(2n){margin-bottom:2rem}
.ab13-g .ab13-c0 .ab13-f:nth-child(2){margin-left:0}
@media(max-width:700px){.grid10.g3.ab13-g{display:block}.ab13-g .ab13-c{display:contents}.ab13-g .ab13-f{break-inside:avoid}.ab13-g .ab13-c1,.ab13-g .ab13-c2{margin-top:0}}
main section.ab13{padding-top:clamp(1rem,3vw,2rem)!important}
/* Personal Captures: staggered offsets (translate only, sizes unchanged) and heading breathing room */
main section.pp12{padding-top:clamp(4rem,8vw,6.5rem)!important}
main section.pp12 h2.h10{margin-bottom:clamp(2.8rem,6vw,4.2rem)!important}
#personal-photography .pf11-m:nth-child(even){translate:0 14px}
#personal-photography .pf11-ms+.pf11-ms{margin-top:26px!important}
@media(max-width:860px){#personal-photography .pf11-m:nth-child(even){translate:0 8px}#personal-photography .pf11-ms+.pf11-ms{margin-top:16px!important}}
main section.ab12{padding-top:clamp(2.5rem,5vw,4rem)!important}

/* ===== Oct 18 mo13: photo movement and depth site-wide (no size or crop change at rest) ===== */
main :is(.still,.pf11-m .pf11-pa,.rally-g>*,.grid10>.still,.dr10-g>*){transition:translate .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease}
@media(hover:hover){main :is(.still,.pf11-m .pf11-pa,.rally-g>*,.dr10-g>*):hover{translate:0 -5px;box-shadow:0 16px 38px rgba(140,60,180,.34),0 0 0 1px rgba(209,179,255,.16)}}
.js .rv13{opacity:0;translate:0 18px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.7,.2,1)}
.js .rv13.on{opacity:1;translate:0 0}
@media(prefers-reduced-motion:reduce){.js .rv13{opacity:1;translate:none;transition:none}main :is(.still,.pf11-m .pf11-pa,.rally-g>*,.dr10-g>*){transition:none}main :is(.still,.pf11-m .pf11-pa,.rally-g>*,.dr10-g>*):hover{translate:none}#personal-photography .pf11-m:nth-child(even){translate:0 14px}}
@media(min-width:861px){#personal-photography .pp12-row3 .pf11-m{flex:0 0 calc(var(--ar)*230px)}}
@media(max-width:860px){#personal-photography .pp12-row3 .pf11-m{flex:0 0 calc(var(--ar)*150px);max-width:100%}}
main section:has(>.w6.ab10){overflow-x:clip}
.ab14-w2w{margin-top:clamp(1.6rem,3vw,2.4rem)}
.ab14-cap{margin:.7rem 0 0;font:500 .95rem/1.4 var(--sans);color:#ece9ff!important;letter-spacing:.01em}
.ab14-cap::before{content:"";display:inline-block;width:22px;height:3px;border-radius:2px;background:#8c3cb4;vertical-align:middle;margin-right:.6rem}
.dr14-films{margin-top:18px}
/* Oct 18: nature block shown at natural row height with no enlargement (pinned like row 3), centered so the ragged rows read as a staggered layout */
#personal-photography .pp12-row4{justify-content:center}
#personal-photography .pp12-row4::after{display:none}
@media(min-width:861px){#personal-photography .pp12-row4 .pf11-m{flex:0 0 calc(var(--ar)*230px)}}
@media(max-width:860px){#personal-photography .pp12-row4 .pf11-m{flex:0 0 calc(var(--ar)*150px);max-width:100%}}
main :is(.wd-cards li,.why7-i,.chip7 span,.f7 input,.f7 textarea){background:#141318!important;color:#ece9ff!important;border-color:rgba(209,179,255,.24)!important}
main .chip7 input:checked+span{background:linear-gradient(135deg,#8c3cb4,#6c5ce7)!important;color:#fff!important;border-color:transparent!important}
.dr14-films+.dr14-films{margin-top:18px}
/* ===== Oct 18 QA: headings never butt against the section above (beats .sec10.pt0 / .sec6.pt0 padding-top:0) ===== */
main section.pt0.pp12,main section.pt0.dr9-t,main section.pt0.launch-offer{padding-top:clamp(4rem,8vw,6.5rem)!important}
main section.sec10.pt0.ab13{padding-top:clamp(1rem,3vw,2rem)!important}
main section.sec10.pt0.ab12{padding-top:clamp(2.5rem,5vw,4rem)!important}
/* ===== Oct 18 QA: no cropped photos anywhere ===== */
.cr-pv-ph img,.cr-pv-dr img{aspect-ratio:auto!important;width:auto!important;height:100%!important;object-fit:contain!important}
.cr-pv{overflow-x:auto;scrollbar-width:thin}
.soc-col .sc1,.soc-col .sc3{height:auto!important;aspect-ratio:3/4}
.soc-col .sc1 img,.soc-col .sc3 img{height:100%;object-fit:contain!important}
main .still.px{height:auto!important;aspect-ratio:auto!important}
main .still.px picture{display:block;height:auto!important}
main .still.px img,.js main .still.px img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important}
/* mobile cinematography: open the card previews from the start so nothing jumps while scrolling (was a layout shift) */
@media(max-width:800px){.cr .cr-rv{grid-template-rows:1fr!important;transition:none}.cr .cr-pv-ph img{transform:none;opacity:1}}
/* Oct 18 QA: film tile covers show the whole photo (tile stays 16:9; any spare space is black), and no hover zoom that would crop */
/* Oct 19 (Hayley): Portfolio film/reel COVER tiles fill edge to edge, no black bars (explicit exception to no-crop; collage photos still never cropped) */
.pf11 .pf11-c img,.pf11 .pf11-r img,.pf11 .pf11-r video{object-fit:cover!important;object-position:50% 50%;background:#0a0a0a}
.pf11 .pf11-c:hover img{transform:none!important}
.js .soc-col .px img,.soc-col .sc img{transform:none!important}
/* Oct 19: semi see-through header on every page and state (top, solid, slide-down-on-scroll, mobile bar): black ~60% + blur. Colors only; size/position/slide-down unchanged. */
html body .hd6,html body .hd6.solid,html body.home .hd6:not(.solid),html body .home .hd6:not(.solid),html body .home .hd6.solid,html body.home .hd6.solid,html body.home.nohd11-on .hd6,html body.home.hds12 .hd6,html body.nohd11-on .hd6,html body.hds12 .hd6{background:rgba(0,0,0,.6)!important;background-image:none!important;-webkit-backdrop-filter:saturate(1.2) blur(12px)!important;backdrop-filter:saturate(1.2) blur(12px)!important;border-bottom:0!important;border-bottom-color:transparent!important;box-shadow:none!important}
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){html body .hd6,html body .hd6.solid,html body.home .hd6:not(.solid),html body .home .hd6:not(.solid),html body .home .hd6.solid,html body.home .hd6.solid,html body.home.nohd11-on .hd6,html body.home.hds12 .hd6,html body.nohd11-on .hd6,html body.hds12 .hd6{background:rgba(0,0,0,.82)!important}}
html body .hd6 .wm,html body .hd6 .hd6-nav>a:not(.pill),html body .hd6 .hd6-nav a:not(.pill),html body .home .hd6.solid .hd6-nav a:not(.pill),html body .home .hd6.solid .wm,html body.home .hd6.solid .hd6-nav a:not(.pill),html body.home .hd6.solid .hd6-nav>a:not(.pill),html body.home .hd6.solid .wm,html body.home .hd6.solid .dd12-b,html body .hd6 .dd12-b,html body .home .hd6.solid .dd12-b{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body .hd6 .hd6-nav>a:not(.pill):hover,html body .hd6 .hd6-nav a:not(.pill):hover,html body .hd6 .hd6-nav a[aria-current]:not(.pill),html body .hd6 .dd12-b:hover{color:#c4b5fd!important;-webkit-text-fill-color:#c4b5fd!important}
html body .hd6 .burger span,html body .home .hd6.solid .burger span,html body.home .hd6.solid .burger span{background:#fff!important}
/* Oct 19 (Hayley: "no gap"): justified collages (layout solved in v3.js). Every row fills the width; natural aspect; no crop; no stagger offsets or row pins. Scroll-in and hover motion kept. */
.jl19{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;align-items:flex-start!important;columns:auto!important;column-count:auto!important;max-width:none;padding:0!important;list-style:none}
.jl19::after,.jl19::before{content:none!important;display:none!important}
.jl19>.jl19-i{margin:0!important;max-height:none!important;min-width:0!important;aspect-ratio:auto!important;translate:none!important;break-inside:auto;box-sizing:border-box}
.jl19>.jl19-i>.pf11-pa,.jl19>.jl19-i>picture,.jl19>.jl19-i picture{display:block;width:100%!important;height:100%!important;margin:0!important}
.jl19>.jl19-i img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;aspect-ratio:auto!important}
.jl19-empty{display:none!important}
.ab13-g.jl19{max-width:820px;margin-left:auto;margin-right:auto}
/* Oct 19 (Hayley: header nav "make smaller and to the right side"): desktop nav ~16% smaller, tighter gaps, flush right at the page gutter; slimmer bar. Glass, slide-down and dropdown unchanged. */
@media (min-width:701px){
 html body .hd6 .hd6-in{justify-content:flex-end!important;min-height:34px!important}
 html body .hd6 .hd6-nav{margin-left:auto!important;gap:clamp(.8rem,1.75vw,1.6rem)!important}
 html body .hd6 .hd6-nav>a:not(.pill),html body .hd6 .hd6-nav a:not(.pill):not(.dd12-p a),html body .hd6 .dd12-b{font-size:12.8px!important;letter-spacing:.01em}
 html body .hd6 .hd6-nav .pill,html body .hd6 .hd6-nav a.pill{font-size:11.6px!important;padding:8.3px 16.8px!important;line-height:1.2}
 html body .hd6 .burger{width:34px!important;height:34px!important;padding:7px!important;gap:6px!important}
 html body .hd6,html body .hd6.solid,html body.home .hd6.solid,html body.nohd11-on .hd6,html body.hds12 .hd6{padding-top:9px!important;padding-bottom:9px!important}
}
/* ===== Oct 19 lk19: shared LIGHT theme (Brand Launch Kit + Website Design). Pre-restyle light design, every purple = the site's main purple #5a49d6; white text on purple bands ===== */
body.lk19{--violet:#5a49d6;--violet2:#5a49d6;--blue:#5a49d6;--hm:#5a49d6;background:#f5f3ee}
body.lk19 main{background:#f5f3ee}
body.lk19 main section.band10-lav,body.lk19 main section.band10-cta,body.lk19 main section.band10-cta2{background:#5a49d6!important;background-image:none!important}
body.lk19 main section:is(.band10-lav,.band10-cta) :is(h1,h2,h3,p,li,span,strong,em,small,label,a:not(.pill):not(.btn),.lbl,.price10,.stmt,dt,dd,summary):not(:is(.pk7,.wd-cards li,.why-c,.rv7-c,.faq7-i,.ln10 li,.ex10,.tile,.chip7 span,.ms7,.hiw10-l li,.ex9 li) *):not(.pk7-n){color:#fff!important;-webkit-text-fill-color:#fff!important}
body.lk19 main section:is(.band10-lav,.band10-cta) :is(h2.h10,h2.disp2)::after,body.lk19 main section:is(.band10-lav,.band10-cta) .price10::after{background:#fff!important}
body.lk19 main section:is(.band10-lav,.band10-cta) .pill,body.lk19 main section:is(.band10-lav,.band10-cta) .btn:not(.gho):not(.ghost){background:#fff!important;color:#5a49d6!important;-webkit-text-fill-color:#5a49d6!important;border-color:#fff!important}
body.lk19 main .pill:not(section:is(.band10-lav,.band10-cta) *){background:#5a49d6!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#5a49d6!important}
body.lk19 main :is(.lbl,.eyebrow,.ln10 span,.lnk6,a.lnk6,.tile-k):not(section:is(.band10-lav,.band10-cta) *){color:#5a49d6!important;-webkit-text-fill-color:#5a49d6!important}
body.lk19 main :is(h2.h10,h2.disp2,h2.cat6-h)::after{background:#5a49d6!important}
body.lk19 main .price10::after{background:#5a49d6!important}
body.lk19 main mark.hl10{background-image:linear-gradient(90deg,rgba(90,73,214,.28),rgba(90,73,214,.28))!important}
body.lk19 main :is(.pk7,.pk7.feat){background:#5a49d6!important}
body.lk19 main .pk7:hover,body.lk19 main .pk7:focus-within{background:#5a49d6!important;box-shadow:0 30px 70px rgba(90,73,214,.35)!important}
body.lk19 main .pk7-n{-webkit-text-stroke:1px rgba(90,73,214,.8)!important}
body.lk19 main .pk7-rule{background:linear-gradient(90deg,#5a49d6,rgba(90,73,214,.25),transparent)!important}
body.lk19 main .pk7-badge{background:#5a49d6!important;color:#fff!important}
body.lk19 main .pk7 ul{margin-bottom:0!important}
body.lk19 main .pk7-in,main .pk7-in{min-height:0!important}
main .pk7 ul{margin-bottom:0!important}
/* section titles keep the Portfolio typography on the light pages, in dark ink */
body.lk19 main :is(h1,h2):not(.hero6 *){font-family:var(--disp)!important;font-weight:700!important;text-transform:uppercase}
body.lk19 main :is(h1,h2,h3,h4):not(section:is(.band10-lav,.band10-cta) *){color:#141318;-webkit-text-fill-color:#141318}
body.lk19 main section:is(.band10-lav,.band10-cta) :is(.pk7,.wd-cards li,.why-c,.rv7-c,.faq7-i,.ex10,.tile) :is(h3,h4,strong){color:#141318!important;-webkit-text-fill-color:#141318!important}

/* ===== Oct 19 sf19: subtle fades where one section's background meets the next (every page). Element inserted by v3.js inside the section's top padding only (never over text/photos); hard section borders removed ===== */
main>section,main>div>section{border-top:0!important;border-bottom:0!important}
main hr{display:none!important}
.sf19-f{position:absolute;left:0;right:0;top:0;pointer-events:none;z-index:-1;background:linear-gradient(to bottom,var(--sf-from),var(--sf-to))}
.sf19-host{position:relative}
.sf19-iso{isolation:isolate}

/* ===== Oct 19 lo19: "What I offer" as cards (Brand Launch Kit). Wording unchanged ===== */
main section.launch-offer .w6.narrow6{max-width:1180px}
main section.launch-offer :is(h2,.body10){max-width:680px;margin-left:auto;margin-right:auto}
main section.launch-offer .ln10{max-width:none!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px!important;margin-top:2.6rem!important}
@media(max-width:1100px){main section.launch-offer .ln10{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){main section.launch-offer .ln10{grid-template-columns:1fr;gap:14px!important}}
main section.launch-offer .ln10 li{display:flex!important;flex-direction:column;gap:14px;border:0!important;padding:28px 24px 26px!important;border-radius:16px;background:#fff!important;color:#141318;box-shadow:0 10px 30px rgba(20,10,60,.18),0 0 0 1px rgba(90,73,214,.10);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease,opacity .7s ease,translate .7s cubic-bezier(.2,.7,.2,1)}
main section.launch-offer .ln10 li>span{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#5a49d6;color:#fff!important;-webkit-text-fill-color:#fff!important;font:700 .95rem/1 var(--disp)!important;letter-spacing:.04em;box-shadow:0 6px 18px rgba(90,73,214,.45)}
main section.launch-offer .ln10 li strong{display:block;font:700 1.08rem/1.25 var(--disp);color:#141318!important;-webkit-text-fill-color:#141318!important}
main section.launch-offer .ln10 li p{margin:.45rem 0 0!important;color:#3d3b47!important;-webkit-text-fill-color:#3d3b47!important;line-height:1.55}
.js main section.launch-offer .ln10 li.fu{opacity:0;transform:none!important;translate:0 26px}
.js main section.launch-offer .ln10 li.fu.in{opacity:1;translate:0 0}
main section.launch-offer .ln10 li:nth-child(2){transition-delay:0s,0s,.12s,.12s}main section.launch-offer .ln10 li:nth-child(3){transition-delay:0s,0s,.24s,.24s}main section.launch-offer .ln10 li:nth-child(4){transition-delay:0s,0s,.36s,.36s}
@media(hover:hover){main section.launch-offer .ln10 li:hover{transform:translateY(-6px)!important;box-shadow:0 22px 48px rgba(20,10,60,.28),0 0 0 1px rgba(255,255,255,.6),0 0 38px rgba(170,150,255,.55)}}
@media(prefers-reduced-motion:reduce){.js main section.launch-offer .ln10 li.fu{opacity:1;translate:none}main section.launch-offer .ln10 li{transition:none}main section.launch-offer .ln10 li:hover{transform:none!important}}
/* price line on one line (desktop); wraps naturally on mobile */
@media(min-width:861px){main section.launch-price .w6.narrow6{max-width:1000px}main section.launch-price p.body10{white-space:nowrap;max-width:none!important;font-size:clamp(1rem,1.2vw,1.08rem)!important}}

/* ===== Oct 19 wy19: "Why work with me" lighter + movement (wording unchanged) ===== */
.why11-t h3{font-weight:600!important;font-size:clamp(1.3rem,2.4vw,1.95rem)!important;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important}
@media(max-width:700px){.why11-t h3{font-size:1.2rem!important}}
.why11-n{font-weight:300!important;font-size:clamp(2.6rem,5.2vw,4.4rem)!important;color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:1.5px rgba(90,73,214,.75)}
@media(max-width:700px){.why11-n{font-size:2.6rem!important}}
.why11-bar{width:4px!important;background:#5a49d6!important}
.why11-r{transition:opacity .7s ease,translate .7s cubic-bezier(.2,.7,.2,1),box-shadow .4s ease,background-color .4s ease;border-radius:10px}
.js .why11-r.fu:not(.in){opacity:0!important;translate:-28px 0}
.js .why11-r.fu.in{opacity:1!important;translate:0 0}
.js .why11-r.fu{transition-delay:calc(var(--r,0)*.12s),calc(var(--r,0)*.12s),0s,0s}
.js .why11-r.fu.in:hover{transition-delay:0s}
@media(hover:hover){.why11-r:hover{translate:0 -3px;box-shadow:0 14px 34px rgba(90,73,214,.16),0 0 0 1px rgba(90,73,214,.12)}}
@media(prefers-reduced-motion:reduce){.js .why11-r.fu:not(.in){opacity:1!important;translate:none}.why11-r{transition:none}.why11-r:hover{translate:none}}

/* ===== Oct 19 lt19: letter-by-letter heading intro (site-wide; JS adds spans only when motion is allowed) ===== */
.lt19-w{display:inline-block;white-space:nowrap}
.lt19 .lt19-c{display:inline-block;opacity:0;transform:translateY(.42em);filter:blur(3px);transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1),filter .55s ease;transition-delay:var(--d,0ms);will-change:opacity,transform}
.lt19.lt19-go .lt19-c{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){.lt19 .lt19-c{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}

/* Oct 19 lk19 fix: on the light pages a global dark-theme rule left -webkit-text-fill-color white on dark-coloured text (invisible on cream). Fill follows the colour again. */
body.lk19 main :is(h1,h2,h3,h4,h5,p,li,span,a,strong,em,b,dt,dd,label,summary,small,blockquote,figcaption,legend,td,th,.lt19-c):not(.why11-n):not(.why11-n *):not(.pk7-n):not(.pk7-n *){-webkit-text-fill-color:currentColor!important}
body.lk19 main section:not(.band10-lav):not(.band10-cta):not(.band10-cta2) :is(h1,h2):not(.hero6 *):not(.pk7 *){color:#141318!important}
body.lk19 main .wd-cards li{background:#fff!important;border:1px solid rgba(90,73,214,.16)!important;box-shadow:0 8px 24px rgba(20,19,24,.06)!important}
body.lk19 main .wd-cards li :is(strong,b,h3,h4){color:#141318!important}
body.lk19 main .wd-cards li,body.lk19 main .wd-cards li :is(p,span){color:#4a4856!important}
body.lk19 main section .wd-steps li,body.lk19 main section .wd-steps li :is(p,span,strong,b,h3,h4,em){color:#141318!important}
body.lk19 main .rv7-src{color:#5a49d6!important}
html body.lk19 main section.band10-lav ol.wd-steps li,html body.lk19 main section.band10-lav ol.wd-steps li *{color:#141318!important;-webkit-text-fill-color:#141318!important}
html body.lk19 main section.band10-lav.hiw10 ol.wd-steps.hiw10-l li.fu,html body.lk19 main section.band10-lav.hiw10 ol.wd-steps.hiw10-l li.fu *:not(.zz){color:#141318!important;-webkit-text-fill-color:#141318!important}
body:not(.lk19) main .ms7-back{color:rgba(255,255,255,.78)!important;-webkit-text-fill-color:rgba(255,255,255,.78)!important}
/* Oct 19: light pages - every purple band is the site's main purple (the dark #2a1f5c CTA bands too), and fades kept short/faint between cream and purple */
html body.lk19 main section:is(.band10-cta,.band10-cta2){background:#5a49d6!important;background-image:none!important}
html body.lk19 .sf19-f{max-height:64px!important}
html body.lk19 main section.band10-cta[class][class][class],html body.lk19 main section.band10-cta2[class][class][class]{background-color:#5a49d6!important;background-image:none!important}

/* ===== Oct 20 pc20: featured photo in Personal Captures (own full-width row, natural aspect, never cropped) ===== */
.pc20-feat{position:relative;margin:0 0 clamp(18px,2.4vw,28px)!important;padding:0;isolation:isolate}
.pc20-feat picture{display:block;position:relative;z-index:1}
.pc20-feat img{display:block;width:100%!important;height:auto!important;max-width:none;object-fit:contain!important;aspect-ratio:auto!important;border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.55),0 0 0 1px rgba(167,139,250,.14);transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s ease}
.pc20-glow{position:absolute;left:6%;right:6%;bottom:-4%;height:40%;z-index:0;background:radial-gradient(closest-side,rgba(124,108,240,.55),transparent);filter:blur(34px);opacity:.75;animation:pc20g 6s ease-in-out infinite alternate;pointer-events:none}
@keyframes pc20g{from{opacity:.5}to{opacity:.95}}
.js .pc20-feat.fu:not(.in){opacity:0;transform:translateY(26px) scale(.985)}
.js .pc20-feat.fu{transition:opacity .9s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.js .pc20-feat.fu.in{opacity:1;transform:none}
@media(hover:hover){.pc20-feat:hover img{transform:translateY(-4px);box-shadow:0 26px 60px rgba(0,0,0,.6),0 0 40px rgba(124,108,240,.28),0 0 0 1px rgba(167,139,250,.22)}}
@media(prefers-reduced-motion:reduce){.pc20-glow{animation:none}.js .pc20-feat.fu:not(.in){opacity:1;transform:none}.pc20-feat img,.js .pc20-feat.fu{transition:none}.pc20-feat:hover img{transform:none}}

/* ===== Oct 20 tx20: text reveal site-wide (JS tags elements; nothing is hidden without JS) ===== */
html.tx20-on .tx20{transition:opacity .6s cubic-bezier(.2,.7,.2,1) var(--td,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--td,0ms),filter .6s ease var(--td,0ms)}
html.tx20-on .tx20:not(.tx20-in){opacity:0;transform:translateY(14px);filter:blur(3px)}
html.tx20-on .tx20.tx20-in{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){html.tx20-on .tx20,html.tx20-on .tx20:not(.tx20-in){opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}
@media print{html.tx20-on .tx20{opacity:1!important;transform:none!important;filter:none!important}}


/* Oct 21: featured heart photo ~60% of the content width on desktop, centred (mobile stays full width). Natural aspect, uncropped; nothing else changes */
@media (min-width:861px){.pp12 .pc20-feat{width:60%;margin-left:auto!important;margin-right:auto!important}}

/* Oct 22 cr22: six client reels in one row on desktop (3 x 2 on small laptops); phones keep the swipe row */
.pf11-reels{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
@media(max-width:1100px) and (min-width:861px){.pf11-reels{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v18.17: hamburger / slide-out menu removed (Hayley) */
html body .hd6 .burger,.burger{display:none!important}
.menu,#menu{display:none!important}
@media (max-width:760px){
  html body .hd6 .hd6-nav{flex-wrap:wrap!important;justify-content:flex-end!important;gap:.55rem .85rem!important;row-gap:.45rem!important}
  html body .hd6 .hd6-nav>a:not(.pill),html body .hd6 .hd6-nav a:not(.pill):not(.dd12-p a),html body .hd6 .dd12-b{font-size:12px!important}
  html body .hd6 .hd6-nav .pill,html body .hd6 .hd6-nav a.pill{font-size:11px!important;padding:7px 14px!important}
}
/* t1214u: one typeface sitewide — Plus Jakarta Sans */
html,body,button,input,select,textarea,html body *{font-family:"Plus Jakarta Sans",system-ui,sans-serif!important}


/* t1230 play-chrome */
/* Hide native play glyphs on silent autoplay loops (sitewide; also injected into shadow roots via JS).
   Prefer hiding play buttons only; keep enclosure from blanking the video frame. */
video[muted]::-webkit-media-controls-start-playback-button,
video[muted]::-webkit-media-controls-overlay-play-button,
video[autoplay]::-webkit-media-controls-start-playback-button,
video[autoplay]::-webkit-media-controls-overlay-play-button,
video[data-loop]::-webkit-media-controls-start-playback-button,
video[data-loop]::-webkit-media-controls-overlay-play-button,
video[loop][muted]::-webkit-media-controls-start-playback-button,
video[loop][muted]::-webkit-media-controls-overlay-play-button,
video.hero6-v::-webkit-media-controls-start-playback-button,
video.hero6-v::-webkit-media-controls-overlay-play-button,
video.promo7-video::-webkit-media-controls-start-playback-button,
video.promo7-video::-webkit-media-controls-overlay-play-button,
video.pf11-v::-webkit-media-controls-start-playback-button,
video.pf11-v::-webkit-media-controls-overlay-play-button,
video.fc-reel-v::-webkit-media-controls-start-playback-button,
video.fc-reel-v::-webkit-media-controls-overlay-play-button{
  display:none!important;
  -webkit-appearance:none!important;
  opacity:0!important;
  pointer-events:none!important;
  width:0!important;
  height:0!important;
}
