/* TYB shared design system — tokens, responsive layout flags, resets, shared interaction rules. */
:root{
  --tyb-red:#DD1F2B;--tyb-red-dark:#B8141F;--tyb-red-soft:#FF7078;--tyb-black:#151515;--tyb-white:#FFFFFF;
  --tyb-paper:#F3EFEA;--tyb-blush:#FFF3F3;--tyb-border:#E7E1DC;--tyb-muted:#65615F;--tyb-ph:#E9E3DD;
  --font:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --pad:clamp(20px,4vw,56px);--maxw:1280px;--sec:clamp(110px,12vw,170px);--ease:cubic-bezier(.22,1,.36,1);
  --r-sec:32px;--r-card:26px;--r-sm:16px;--r-btn:999px;
  --h1:clamp(44px,6.8vw,96px);--h2:clamp(36px,4.6vw,60px);--h2s:clamp(32px,3.8vw,50px);
  --desk:flex;--mob:none;
  --g-2:minmax(0,1fr) minmax(0,1fr);--g-3:repeat(3,minmax(0,1fr));--g-4:repeat(4,minmax(0,1fr));--g-6:repeat(6,minmax(0,1fr));
  --g-intro:minmax(0,1.1fr) minmax(0,.9fr);--g-hero:minmax(0,1.1fr) minmax(0,.9fr);--g-part:minmax(0,34fr) minmax(0,66fr);
  --g-foot:minmax(0,1.5fr) repeat(3,minmax(0,1fr));--foot-lead:auto;
  --g-cta:minmax(0,1fr) auto;--cta-h:92vh;--cta-pt:clamp(96px,9vw,140px);--cta-pb:clamp(64px,6vw,96px);--cta-btn-w:clamp(360px,30vw,440px);--cta-micro-align:right;
  --g-row:88px minmax(0,1fr) minmax(0,1fr) 40px;--desc-col:3;--arrow-col:4;--desc-op:0;
  --span-2:span 2;--order-flip:2;--hero-min:78vh;--sp-w:span 6;--sp-l:span 4;--sp-s:span 2;--sp-h:span 3;--calc-cols:minmax(0,63fr) minmax(0,37fr);--tbl-min:720px;--order-flip-img:0;--proc-dir:row;--proc-ox:auto;--proc-w:clamp(290px,28vw,380px);--proc-h:340px;--g-tier:minmax(0,.9fr) minmax(0,1.3fr) auto;--tier-price-align:end;--sum-pos:sticky;--sum-top:96px;--sum-l:auto;--sum-r:auto;--sum-b:auto;--sum-maxh:none;--sum-radius:28px;
}
@media (max-width:1100px){:root{--g-4:repeat(2,minmax(0,1fr));--g-6:repeat(3,minmax(0,1fr));--g-foot:repeat(3,minmax(0,1fr));--foot-lead:1/-1;--sp-w:1/-1;--sp-l:span 2;--sp-s:span 1;--sp-h:span 3}}
@media (max-width:900px){:root{--desk:none;--mob:flex;--g-2:minmax(0,1fr);--g-3:minmax(0,1fr);--g-intro:minmax(0,1fr);--g-hero:minmax(0,1fr);--g-part:minmax(0,1fr);--g-cta:minmax(0,1fr);--cta-micro-align:left;--r-sec:24px;--g-row:56px minmax(0,1fr) 32px;--desc-col:2;--arrow-col:3;--desc-op:1;--span-2:auto;--order-flip:0;--hero-min:auto;--sp-w:1/-1;--sp-l:1/-1;--sp-s:1/-1;--sp-h:1/-1;--calc-cols:minmax(0,1fr);--order-flip-img:2;--g-tier:minmax(0,1fr);--tier-price-align:start;--sum-pos:fixed;--sum-top:auto;--sum-l:0;--sum-r:0;--sum-b:0;--sum-maxh:85vh;--sum-radius:24px 24px 0 0}}
@media (max-width:640px){:root{--g-4:minmax(0,1fr);--g-6:repeat(2,minmax(0,1fr));--g-foot:repeat(2,minmax(0,1fr));--sp-w:1/-1;--sp-l:1/-1;--sp-s:1/-1;--sp-h:1/-1;--r-sec:22px;--r-card:22px;--cta-h:auto;--cta-pt:108px;--cta-pb:80px;--cta-btn-w:100%;--g-row:44px minmax(0,1fr) 24px;--proc-dir:column;--proc-ox:visible;--proc-w:auto;--proc-h:auto}}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#FFFFFF;color:#151515;font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0;padding:0}
ul,ol{list-style:none}
img{display:block;max-width:100%}
a{color:#151515;text-decoration:none}
a:hover{color:#DD1F2B}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid #DD1F2B;outline-offset:3px}
::selection{background:#DD1F2B;color:#FFFFFF}
[data-track]{scrollbar-width:none}
[data-track]::-webkit-scrollbar{display:none}
[data-arrow]{transition:transform .35s var(--ease)}
[data-cta]:hover [data-arrow],[data-cta]:focus-visible [data-arrow]{transform:translateX(6px)}
[data-row-title]{transition:transform .35s var(--ease)}
[data-row-desc]{opacity:var(--desc-op);transition:opacity .35s var(--ease)}
[data-row]:hover [data-row-title],[data-row]:focus-visible [data-row-title],[data-row]:hover [data-arrow],[data-row]:focus-visible [data-arrow]{transform:translateX(6px)}
[data-row]:hover [data-row-desc],[data-row]:focus-visible [data-row-desc]{opacity:1}
[data-num]{transition:transform .45s var(--ease)}
[data-lift]:hover [data-num]{transform:translate(-6px,6px)}
[data-mark]{opacity:0;transform:translate(-6px,-6px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
[data-lift]:hover [data-mark]{opacity:1;transform:none}
[data-zc] [data-z]{transition:transform 1s var(--ease)}
[data-zc]:hover [data-z]{transform:scale(1.02)}
@keyframes tyb-rise{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@keyframes tyb-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}html{scroll-behavior:auto}}
/* Anchor targets clear the sticky header */
main [id]{scroll-margin-top:96px}
