/* The sole layout owner. Artwork adapters keep their internal motion, not page positioning. */
.oc-hero.oc-hero{
 --hero-u:min(1vw,1.777778svh,19.2px);--relief-u:var(--hero-u);
 position:relative;display:block!important;isolation:isolate;overflow:hidden;
 height:calc(100svh - var(--header-height,144px))!important;min-height:600px!important;
 padding:0!important;margin:0!important;max-width:none;box-sizing:border-box;
 background:var(--oc-hero-surface)!important;color:var(--oc-hero-text);
}
.oc-hero.oc-hero::before,.oc-hero.oc-hero::after{display:none!important}
.oc-hero.oc-hero>.oc-hero-ground{display:block;position:absolute;inset:0;z-index:0;width:100%;height:100%;opacity:1;transform:none;pointer-events:none}
.oc-hero>.oc-hero-ground img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center bottom}
.oc-hero>.oc-hero-ground::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--oc-hero-surface),transparent 24%);pointer-events:none}
.oc-hero .oc-hero-shell{position:relative;z-index:1;width:calc(86 * var(--hero-u));height:100%;margin:0 auto;display:flex;align-items:center}
.oc-hero .oc-hero-copy{position:relative;z-index:3;width:calc(var(--oc-copy-width) * 1%);padding:32px 0;pointer-events:none}
.oc-hero .oc-hero-copy h1{position:static;margin:0;max-width:none;width:auto;font:600 calc(var(--oc-title-size) * var(--hero-u))/1.07 Inter,Arial,sans-serif;letter-spacing:-.045em;text-wrap:pretty;color:var(--oc-hero-text);overflow-wrap:normal}
.oc-hero .oc-hero-copy h1 .oc-hero-accent{display:inline;color:var(--oc-hero-accent)}
.oc-hero .oc-hero-copy>p{position:static;max-width:calc(33 * var(--hero-u));width:auto;margin:calc(1.7 * var(--hero-u)) 0 0;font:400 calc(var(--oc-intro-size) * var(--hero-u))/1.5 Inter,Arial,sans-serif;letter-spacing:-.015em;color:var(--oc-hero-text)}
.oc-hero .oc-hero-art-slot{position:absolute;right:0;top:32px;bottom:32px;width:min(calc(var(--oc-art-width) * 1vw),calc(var(--oc-art-max) * 1px),calc((100 - var(--oc-copy-width)) * 1% - 16px));height:auto;container-type:size;z-index:1;pointer-events:none}
.oc-hero .oc-hero-art-frame{
 --fit:min(100cqw,calc(100cqh * var(--oc-art-ratio)));--art-w:calc(var(--fit) * var(--oc-art-scale));--art-h:calc(var(--art-w) / var(--oc-art-ratio));
 position:absolute;width:var(--art-w);height:var(--art-h);
 left:clamp(0px,calc((100cqw - var(--art-w)) / 2 + var(--oc-art-x) * 1px),calc(100cqw - var(--art-w)));
 top:clamp(0px,calc((100cqh - var(--art-h)) / 2 + var(--oc-art-y) * 1px),calc(100cqh - var(--art-h)));
}
/* Only outer positioning is reset. Nested leaves, logo glints and motion masks are untouched. */
.oc-hero .oc-hero-art-frame :is(.green-stage,.ref-scene,.ref-crown-canvas,.relief-art,.social-reels-art,.sm-hero-art,.sb-hero-art,.ads-hero-art,.yt-hero-art,.pg-hero-art,.gpt-hero-art,.geo-hero-sculpture,.aso-hero-scene,.discovery-art,.tg-hero-art){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;transform:none!important;translate:none!important;scale:none!important;margin:0!important;padding:0!important;background:transparent!important;overflow:visible;container-type:normal}
.oc-hero .oc-hero-art-frame .green-stage::before,.oc-hero .oc-hero-art-frame .green-stage::after{display:none!important}
.oc-hero .oc-hero-art-frame :is(.ref-crown-picture,.social-stream-art,.relief-sculpture){width:100%;height:100%}
.oc-hero .oc-hero-art-frame picture>img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:1200px) and (max-aspect-ratio:1/1){
 .oc-hero.oc-hero{--hero-u:min(1vw,.4626svh);--relief-u:var(--hero-u);--oc-hero-button-width:calc(58 * var(--hero-u));--oc-hero-button-height:max(44px,calc(12 * var(--hero-u)));--oc-hero-partners-height:clamp(100px,calc(32 * var(--hero-u)),132px);min-height:520px!important}
 .oc-hero .oc-hero-shell{display:grid;width:auto;height:100%;margin:0;padding:24px 22px;box-sizing:border-box;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto minmax(90px,1fr) auto;gap:16px;align-items:start}
 .oc-hero .oc-hero-copy{display:contents}
 .oc-hero .oc-hero-copy h1{grid-row:1;grid-column:1;font-size:clamp(30px,calc(var(--oc-mobile-title-size) * 1vw),48px);line-height:1.1;letter-spacing:-.045em;max-width:700px}
 .oc-hero .oc-hero-copy>p{grid-row:2;grid-column:1;margin:0;max-width:560px;font-size:clamp(14px,calc(var(--oc-mobile-intro-size) * 1vw),20px);line-height:1.5}
 .oc-hero .oc-hero-actions{grid-row:3;grid-column:1;margin:0;justify-self:start;align-self:start}
 .oc-hero .oc-hero-button[data-hero-control]{font-size:max(14px,calc(4.25 * var(--hero-u)));padding:calc(2.5 * var(--hero-u)) calc(4 * var(--hero-u));border-radius:calc(4.1 * var(--hero-u));gap:calc(3.5 * var(--hero-u))}
 .oc-hero .oc-hero-partners[data-hero-control]{grid-row:5;grid-column:1;position:relative;inset:auto;align-self:end;justify-self:center;margin:0;z-index:3;width:calc(100% + 2 * var(--hero-u));max-width:420px;height:var(--oc-hero-partners-height);gap:calc(6 * var(--hero-u));padding:calc(3 * var(--hero-u)) calc(5 * var(--hero-u));border-radius:calc(4.5 * var(--hero-u))}
 .oc-hero .oc-hero-art-slot{grid-row:4;grid-column:1;position:relative;inset:auto;align-self:stretch;width:100%;height:100%;min-height:0}
 .oc-hero .oc-hero-art-frame{--oc-art-scale:var(--oc-mobile-art-scale);--oc-art-x:var(--oc-mobile-art-x);--oc-art-y:var(--oc-mobile-art-y)}
}
@media(max-width:599px) and (max-height:740px) and (orientation:portrait){
 .oc-hero .oc-hero-shell{padding:18px;gap:10px}
 .oc-hero .oc-hero-copy h1{font-size:clamp(25px,calc(var(--oc-mobile-title-size) * .92vw),32px)}
 .oc-hero .oc-hero-copy>p{font-size:13px;line-height:1.45}
}
@media(max-width:1000px) and (orientation:landscape){
 .oc-hero.oc-hero{--oc-hero-button-width:200px;--oc-hero-button-height:44px;min-height:340px!important}
 .oc-hero .oc-hero-shell{width:calc(100% - 56px)}
 .oc-hero .oc-hero-copy{position:static;width:48%;padding:20px 0}
 .oc-hero .oc-hero-copy h1{font-size:clamp(25px,3.5vw,36px)}
 .oc-hero .oc-hero-copy>p{max-width:none;font-size:13px;margin-top:14px;line-height:1.45}
 .oc-hero .oc-hero-actions{margin-top:16px}
 .oc-hero .oc-hero-button[data-hero-control]{font-size:14px;padding:10px 16px;border-radius:14px;gap:12px}
 .oc-hero .oc-hero-art-slot{top:16px;bottom:114px;width:44%}
 .oc-hero .oc-hero-partners[data-hero-control]{position:absolute;left:auto;right:0;top:auto;bottom:20px;width:240px;height:82px;margin:0}
}
