/* Paid ads v4: one poster per moment. Brand kit vars from site.css; RTC + RTCRoman only. */
.ads8{--pad:clamp(20px,3.6vw,56px);--ease:cubic-bezier(.16,.8,.2,1);overflow:hidden}
.ads8 h1,.ads8 h2{font-family:RTC,Arial,sans-serif;font-weight:700;text-transform:uppercase;margin:0;letter-spacing:-.02em}
.v4-meta{position:absolute;display:grid;gap:3px;font-size:10px;line-height:1.3;letter-spacing:.16em;text-transform:uppercase;z-index:3}
.v4-meta.tl{top:var(--pad);left:var(--pad);text-align:left}.v4-meta.tr{top:var(--pad);right:var(--pad);text-align:right}
.v4-meta.bl{bottom:var(--pad);left:var(--pad)}.v4-meta.br{bottom:var(--pad);right:var(--pad);text-align:right}
.shp{position:absolute;inset:0;pointer-events:none}
.shp i{position:absolute;display:block}
/* dots (hero + google) */
.v4-title .shp i,.dots i{left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:var(--c);opacity:0;transform:translateY(-.5em);transition:opacity .6s ease var(--d),transform 1.2s var(--ease) var(--d)}
.in .v4-title .shp i,.in .dots i{opacity:1;transform:none}
/* hero */
.v4-hero{position:relative;min-height:max(640px,calc(100svh - 73px));display:flex;align-items:center;padding:calc(var(--pad) + 56px) var(--pad);box-sizing:border-box;border-bottom:1px solid var(--line)}
.v4-title{position:relative;font-size:min(15vw,19svh);line-height:.84}
.v4-title>span:not(.shp){display:block;position:relative;z-index:2}
.v4-title .l2{padding-left:1.15em}.v4-title .l3{padding-left:.42em}.v4-title .l4{padding-left:1.7em}
.v4-title .shp{z-index:1}.v4-title .shp i:nth-child(3n){z-index:3}
.v4-lede{position:absolute;right:var(--pad);bottom:calc(var(--pad) + 64px);max-width:300px;margin:0;font-size:15px;line-height:1.45}
.odot{position:absolute;left:var(--ox,1.7em);top:.33em;width:.2em;height:.2em;margin-left:.86em;border-radius:50%;background:var(--blue);opacity:0;transform:translateY(-.5em);transition:opacity .6s ease .36s,transform 1.2s var(--ease) .36s}
.in .odot{opacity:1;transform:none}
@media(max-width:700px){.odot{--ox:.9em}}
@media(prefers-reduced-motion:reduce){.odot{opacity:1;transform:none;transition:none}}
/* platform list */
.v5-list{position:relative;padding:calc(var(--pad) + 64px) var(--pad) clamp(80px,9vw,140px);border-bottom:1px solid var(--line)}
.v5-rows{max-width:1180px;margin-left:auto}
.v5-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:baseline;gap:12px 48px;padding:clamp(24px,2.6vw,36px) 0;border-top:1px solid var(--line)}
.v5-row:last-child{border-bottom:1px solid var(--line)}
.v5-row h2{display:flex;align-items:center;gap:16px;font-size:clamp(28px,3.2vw,46px);line-height:1}
.v5-row h2 i{flex:none;width:10px;height:10px;border-radius:50%}
.v5-row p{margin:0;font-size:16px;line-height:1.5}
/* how + faq */
.v4-how,.v4-faq{position:relative;padding:calc(var(--pad) + 64px) var(--pad) clamp(80px,9vw,140px);border-bottom:1px solid var(--line)}
.v4-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 4vw;max-width:1180px;margin-left:auto}
.v4-cols p{margin:0;font-size:17px;line-height:1.55}
.v4-cols b{display:block;margin-bottom:18px;font-family:RTC,Arial,sans-serif;font-size:clamp(48px,5vw,80px);line-height:.84;font-weight:700}
.v4-faq details{max-width:1180px;margin-left:auto}
.v4-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:baseline;gap:24px;font-family:RTC,Arial,sans-serif;font-weight:700;font-size:clamp(30px,4.4vw,68px);line-height:.9;text-transform:uppercase}
.v4-faq summary::-webkit-details-marker{display:none}.v4-faq summary::after{content:"+";font-family:RTCRoman,Arial,sans-serif;font-size:.6em}.v4-faq details[open] summary::after{content:"\2212"}
.v4-faq details p{max-width:560px;margin:22px 0 0;font-size:17px;line-height:1.55}
.a8-contact{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:40px 7vw;padding:clamp(56px,7vw,110px) var(--pad);background:var(--ink);color:var(--paper)}
.a8-ci h2{font-size:clamp(44px,5.6vw,96px);line-height:.86}.a8-ci h2 span{display:block;color:var(--yellow)}
.a8-ci p{max-width:360px;margin:24px 0 0;font-size:16px;line-height:1.45}
.a8-contact .project-form{display:grid;grid-template-columns:1fr 1fr;gap:26px 28px;align-self:center}
.a8-contact .project-form label{display:grid;gap:9px;font-size:11px;text-transform:uppercase}
.a8-contact .project-form .full,.a8-contact .form-actions{grid-column:1/-1}
.a8-contact input,.a8-contact select,.a8-contact textarea{width:100%;padding:0 0 12px;border:0;border-bottom:1px solid rgba(246,245,240,.46);border-radius:0;outline:0;background:transparent;color:var(--paper);font:16px/1.35 RTCRoman,Arial,sans-serif;text-transform:none}
.a8-contact select option{color:var(--ink)}.a8-contact textarea{min-height:90px;resize:vertical}
.a8-contact input:focus,.a8-contact select:focus,.a8-contact textarea:focus{border-bottom-color:var(--yellow)}
.a8-contact .hp-field{position:absolute;left:-9999px}
.a8-contact .form-submit{padding:15px 22px;border:0;border-radius:0;background:var(--yellow);color:var(--ink);font:11px RTCRoman,Arial,sans-serif;text-transform:uppercase;cursor:pointer}
.a8-contact .form-status{margin:12px 0 0;font-size:14px}
.a8-contact{margin-top:0}
.page-google-ads .site-footer{margin-top:0}
@media(max-width:1200px){.v4-hero{flex-direction:column;align-items:flex-start;justify-content:center}.v4-lede{position:static;margin-top:44px;align-self:flex-end}}
@media(max-width:900px){.v5-row{grid-template-columns:1fr}.v4-cols{grid-template-columns:1fr;max-width:560px}}
@media(max-width:700px){
 .v4-hero{display:block;min-height:0;padding-top:calc(var(--pad) + 110px);padding-bottom:calc(var(--pad) + 60px)}
 .v4-title{font-size:min(19vw,140px)}.v4-title .l2{padding-left:.5em}.v4-title .l3{padding-left:.2em}.v4-title .l4{padding-left:.9em}
 .v4-lede{position:static;margin-top:48px;align-self:auto}
 .a8-contact,.a8-contact .project-form{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.shp i{opacity:1!important;transform:none!important;transition:none!important}.st i{transform:rotate(32deg)!important}}

/* ---- v8 per-page hero shapes (same system as paid ads v5) ---- */
.v4-title>span:not(.shp){width:fit-content}
.v8t{--m:1}.v8t .l2{padding-left:calc(var(--i2)*var(--m))}.v8t .l3{padding-left:calc(var(--i3)*var(--m))}.v8t .l4{padding-left:calc(var(--i4)*var(--m))}
@media(max-width:700px){.v8t{--m:.45}.v8t .l2,.v8t .l3,.v8t .l4{padding-left:calc(var(--i)*var(--m))}}
.sh{position:absolute;pointer-events:none;z-index:-1}
.sx{display:block;opacity:0;transform:translateY(-.35em);transition:opacity .6s ease var(--d),transform 1.2s var(--ease) var(--d)}
.in .sx{opacity:1;transform:none}
/* SEO: bars on the baseline the last word rests on */
.bars5{left:calc(100% + .14em);bottom:.1em;display:flex;align-items:flex-end;gap:.035em;width:1.5em}
.bars5 .b{flex:1;background:var(--c);transform:scaleY(0);transform-origin:bottom;opacity:1}.in .bars5 .b{transform:none}
/* Maps: a thin route between dots */
.route{left:calc(100% + .25em);top:-.15em;width:2.2em;height:1.375em;overflow:visible}
.route .rl{fill:none;stroke:var(--ink);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:400;stroke-dashoffset:400;transition:stroke-dashoffset 1.6s var(--ease) .2s}
.in .route .rl{stroke-dashoffset:0}
.route .sx{transform:none;transition:opacity .5s ease var(--d)}
/* AI visibility: small squares framing the type */
.px3{display:flex;gap:.06em}.px3 .sx{width:.14em;height:.14em;background:var(--c)}
.px3.top{right:0;bottom:calc(100% + .05em)}.px3.bot{left:calc(var(--i3)*var(--m));top:calc(100% + .1em)}
/* Social: thin vertical bars */
.vb{position:absolute;width:.055em;background:var(--c);transform:scaleY(0);transform-origin:top;opacity:1;z-index:-1}.in .vb{transform:none}
/* Website: diagonal stripes cropped at the edge */
.wst{position:absolute;top:0;right:0;width:58%;height:100%;overflow:hidden;pointer-events:none;z-index:0}
.wst .sx{position:absolute;top:-6%;width:clamp(16px,2.1vw,32px);height:120%;background:var(--c);transform-origin:50% 0;transform:rotate(-38deg) scaleY(0);transition:transform 1.5s var(--ease) var(--d);opacity:1}
.in .wst .sx{transform:rotate(-38deg)}
.page-website-design .v4-hero .v4-meta.tr{background:var(--paper);padding:6px 8px;margin:-6px -8px}
.page-website-design .v4-title{position:relative;z-index:2}
@media(max-width:700px){.bars5{width:.8em;left:calc(100% + .1em);gap:.03em}}
.v4-faq details+details{margin-top:clamp(32px,4vw,56px)}
@media(prefers-reduced-motion:reduce){.sx,.route .rl{opacity:1!important;transform:none!important;stroke-dashoffset:0!important;transition:none!important}.wst .sx{transform:rotate(-38deg)!important}}
