/* ============================================================
   BY ANY MEANS GTA · Free Trial funnel styles
   Builds on site.css tokens. Black / Gold / White · Anton + Inter Tight.
   Three steps: form -> calendar -> confirmation. Sharp edges, no radius.
   ============================================================ */

/* ---------- MINIMAL FUNNEL HEADER ---------- */
.ft-head{position:sticky;top:0;z-index:60;background:rgba(8,8,8,0.86);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--gold-line);}
.ft-head__in{display:flex;align-items:center;justify-content:space-between;gap:20px;height:74px;}
.ft-head__logo{display:flex;align-items:center;gap:12px;flex:none;}
.ft-head__mark{width:32px;height:32px;background:url('../gta-assets/microscope.png') center/contain no-repeat;flex:none;}
.ft-head__word{font-family:var(--font-display);font-size:20px;letter-spacing:0.02em;text-transform:uppercase;color:var(--white);line-height:1;}
.ft-head__word b{color:var(--gold);font-weight:400;}
.ft-head__right{display:flex;align-items:center;gap:22px;}
.ft-head__contact{font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:0.04em;color:var(--white-70);transition:color .2s;}
.ft-head__contact:hover{color:var(--gold);}
.ft-head__phone{display:inline-flex;align-items:center;gap:8px;}
@media(max-width:680px){.ft-head__contact--email{display:none;}}

/* ---------- HERO (copy + booking card) ---------- */
.ft-hero{position:relative;overflow:hidden;background:var(--black-deep);}
.ft-hero__media{position:absolute;inset:0;background:url('../gta-assets/youth-drive.jpg') center 24%/cover;filter:grayscale(0.24) contrast(1.07) brightness(0.4);}
.ft-hero__grain{position:absolute;inset:0;opacity:0.05;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.ft-hero__overlay{position:absolute;inset:0;background:linear-gradient(115deg,rgba(0,0,0,0.82) 0%,rgba(0,0,0,0.55) 42%,rgba(0,0,0,0.75) 100%);}
.ft-hero__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(30px,4vh,46px);padding:clamp(56px,8vh,96px) 0 clamp(64px,9vh,110px);}

.ft-hero__copy{display:flex;flex-direction:column;align-items:center;}
.ft-hero__eyebrow{margin-bottom:24px;letter-spacing:0.28em;justify-content:center;}
.ft-hero__title{font-family:var(--font-display);font-size:clamp(52px,6.6vw,108px);line-height:0.9;letter-spacing:-0.012em;text-transform:uppercase;max-width:13ch;}
.ft-hero__title em{color:var(--gold);}
.ft-hero__sub{margin-top:26px;max-width:46ch;font-size:clamp(17px,1.4vw,21px);line-height:1.5;color:var(--white-80);}
.ft-hero__sub strong{color:#fff;font-weight:600;}

.ft-bullets{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;max-width:44ch;}
.ft-bullets li{position:relative;padding-left:30px;font-size:16px;line-height:1.45;color:var(--white-80);}
.ft-bullets li::before{content:'';position:absolute;left:0;top:7px;width:11px;height:11px;background:var(--gold);clip-path:polygon(0 0,100% 50%,0 100%);}
.ft-bullets b{color:#fff;font-weight:600;}

.ft-proof{margin-top:36px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.ft-proof__stars{display:flex;flex-direction:column;gap:3px;}
.ft-proof__row{display:flex;align-items:center;gap:9px;}
.ft-proof__score{font-family:var(--font-display);font-size:26px;color:#fff;line-height:1;}
.ft-proof__starline{color:var(--gold);font-size:15px;letter-spacing:2px;}
.ft-proof__label{font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--white-70);}
.ft-proof__divider{width:1px;height:38px;background:var(--gold-line);}
.ft-proof__families{font-size:13px;line-height:1.4;color:var(--white-70);max-width:18ch;}
.ft-proof__families b{display:block;font-family:var(--font-display);font-size:19px;color:#fff;letter-spacing:0.01em;}

/* ---------- BOOKING CARD ---------- */
.ft-hero__card-col{width:100%;max-width:600px;}
.ft-card{background:var(--surface);border:1px solid var(--gold-line);box-shadow:var(--shadow-card);display:flex;flex-direction:column;text-align:left;}
.ft-card__head{padding:22px clamp(24px,2vw,32px) 0;}
.ft-card__body{padding:22px clamp(24px,2vw,32px) clamp(26px,2.4vw,34px);}

/* progress */
.ft-prog{display:flex;align-items:center;gap:10px;}
.ft-prog__step{display:flex;align-items:center;gap:9px;flex:none;}
.ft-prog__dot{width:26px;height:26px;border:1.5px solid var(--gold-line);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;color:var(--white-70);transition:all .25s var(--ease);}
.ft-prog__label{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--white-70);transition:color .25s;}
.ft-prog__step.is-active .ft-prog__dot{border-color:var(--gold);background:var(--gold);color:var(--black);}
.ft-prog__step.is-active .ft-prog__label{color:var(--gold);}
.ft-prog__step.is-done .ft-prog__dot{border-color:var(--gold);color:var(--gold);}
.ft-prog__step.is-done .ft-prog__label{color:#fff;}
.ft-prog__line{flex:1;height:1.5px;background:var(--gold-line);min-width:14px;}
.ft-prog__line.is-done{background:var(--gold);}
@media(max-width:520px){.ft-prog__label{display:none;}.ft-prog__line{min-width:8px;}}

.ft-card__title{font-family:var(--font-display);font-size:clamp(26px,2.4vw,34px);line-height:0.98;text-transform:uppercase;color:#fff;margin:18px 0 4px;letter-spacing:-0.005em;}
.ft-card__title em{color:var(--gold);}
.ft-card__note{font-size:13.5px;line-height:1.5;color:var(--white-70);}

/* ---------- FORM FIELDS ---------- */
.ft-form{display:flex;flex-direction:column;}
.ft-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.ft-field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;transition:transform .6s var(--ease),box-shadow .6s var(--ease);}
.ft-field__label{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);}
.ft-field input{appearance:none;-webkit-appearance:none;font-family:var(--font-body);font-size:16px;color:#fff;background:var(--black);border:1px solid var(--gold-line);padding:13px 14px;transition:border-color .25s,background .25s,box-shadow .6s var(--ease),transform .6s var(--ease);width:100%;}
.ft-field input::placeholder{color:rgba(255,255,255,0.32);}
.ft-field input:focus{outline:none;border-color:var(--gold);background:#161616;}
.ft-field input.is-error{border-color:#c97a6d;}

/* segmented choice */
.ft-seg{display:grid;gap:8px;transition:box-shadow .6s var(--ease),transform .6s var(--ease);}
.ft-seg--2{grid-template-columns:1fr 1fr;}
.ft-seg--3{grid-template-columns:1fr 1fr 1fr;}
.ft-seg__btn{font-family:var(--font-body);font-size:13.5px;font-weight:600;letter-spacing:0.02em;color:var(--white-80);background:var(--black);border:1px solid var(--gold-line);padding:12px 8px;cursor:pointer;transition:all .18s var(--ease);text-align:center;}
.ft-seg__btn:hover{border-color:rgba(226,221,159,0.5);color:#fff;}
.ft-seg__btn.is-on{background:var(--gold);border-color:var(--gold);color:var(--black);font-weight:700;}

.ft-submit{margin-top:10px;width:100%;justify-content:center;}
.ft-trust{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;letter-spacing:0.04em;color:var(--white-70);text-align:center;}
.ft-trust::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px rgba(226,221,159,0.7);flex:none;}

/* ---------- VERTICAL PROGRESS RAIL + NEXT-FIELD HIGHLIGHT ---------- */
.ft-form__main{display:grid;grid-template-columns:34px 1fr;gap:18px;align-items:stretch;}
.ft-rail{display:flex;flex-direction:column;align-items:center;gap:10px;}
.ft-rail__track{flex:1;width:4px;min-height:160px;background:var(--gold-line);position:relative;overflow:hidden;}
.ft-rail__fill{position:absolute;left:0;top:0;width:100%;background:var(--gold);box-shadow:0 0 12px rgba(226,221,159,0.55);transition:height .45s var(--ease);}
.ft-rail__count{font-family:var(--font-display);font-size:13px;letter-spacing:0.06em;color:var(--gold);line-height:1;}

.ft-field.is-next input,
.ft-field.is-next .ft-seg{border-color:var(--gold);animation:ftNextRing 1.8s ease-in-out infinite;}
@keyframes ftNextRing{0%,100%{box-shadow:0 0 0 1px var(--gold),0 0 0 rgba(226,221,159,0);}50%{box-shadow:0 0 0 1px var(--gold),0 0 18px rgba(226,221,159,0.4);}}
@media(prefers-reduced-motion:reduce){.ft-field.is-next input,.ft-field.is-next .ft-seg{animation:none;box-shadow:0 0 0 1px var(--gold),0 0 18px rgba(226,221,159,0.3);}}

/* delayed soft glow: gently lifts the whole next field off the page */
.ft-field.is-glow{position:relative;z-index:1;transform:translateY(-4px);box-shadow:0 18px 48px rgba(226,221,159,0.30),0 8px 20px rgba(0,0,0,0.5);}
@media(max-width:420px){.ft-form__main{grid-template-columns:26px 1fr;gap:12px;}}

/* ---------- CALENDAR (STEP 2) ---------- */
.ft-cal__sync{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--white-70);margin-bottom:16px;}
.ft-cal__sync::before{content:'';width:7px;height:7px;border-radius:50%;background:#5ec27e;box-shadow:0 0 9px rgba(94,194,126,0.8);animation:ftpulse 2.2s ease-in-out infinite;flex:none;}
@keyframes ftpulse{0%,100%{opacity:1}50%{opacity:.4}}

.ft-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.ft-day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:13px 6px;background:var(--black);border:1px solid var(--gold-line);cursor:pointer;transition:all .18s var(--ease);}
.ft-day:hover{border-color:rgba(226,221,159,0.5);}
.ft-day.is-on{border-color:var(--gold);background:rgba(226,221,159,0.08);}
.ft-day__dow{font-family:var(--font-body);font-size:10.5px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--white-70);}
.ft-day.is-on .ft-day__dow{color:var(--gold);}
.ft-day__num{font-family:var(--font-display);font-size:26px;line-height:1;color:#fff;}
.ft-day__mo{font-family:var(--font-body);font-size:10.5px;letter-spacing:0.08em;text-transform:uppercase;color:var(--white-70);}
.ft-day__open{font-size:10px;letter-spacing:0.04em;color:var(--gold);margin-top:2px;}
.ft-day__open--full{color:var(--white-70);}

.ft-monthtoggle{margin-top:14px;width:100%;background:none;border:1px dashed var(--gold-line);color:var(--white-80);font-family:var(--font-body);font-size:12.5px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;padding:11px;cursor:pointer;transition:all .18s;}
.ft-monthtoggle:hover{border-color:var(--gold);color:var(--gold);}

/* month grid */
.ft-month{margin-top:14px;border:1px solid var(--gold-line);padding:14px;background:var(--black);}
.ft-month__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.ft-month__title{font-family:var(--font-display);font-size:16px;letter-spacing:0.04em;text-transform:uppercase;color:#fff;}
.ft-month__arrow{width:30px;height:30px;border:1px solid var(--gold-line);background:none;color:var(--white-80);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .18s;}
.ft-month__arrow:hover:not(:disabled){border-color:var(--gold);color:var(--gold);}
.ft-month__arrow:disabled{opacity:0.3;cursor:not-allowed;}
.ft-month__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.ft-month__dow{text-align:center;font-size:10px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--white-70);padding-bottom:4px;}
.ft-month__cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:13px;color:var(--white-80);background:none;border:1px solid transparent;cursor:pointer;transition:all .15s;}
.ft-month__cell:hover:not(:disabled){border-color:rgba(226,221,159,0.5);color:#fff;}
.ft-month__cell.is-on{background:var(--gold);color:var(--black);font-weight:700;}
.ft-month__cell:disabled{color:rgba(255,255,255,0.18);cursor:not-allowed;}
.ft-month__cell--empty{cursor:default;border:none;}

/* time slots */
.ft-slots{margin-top:18px;}
.ft-slots__head{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:11px;}
.ft-slots__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.ft-slots__hint{font-family:var(--font-body);font-size:12.5px;color:var(--white-70);margin:-4px 0 11px;}
/* Unselected slots read clearly as tappable chips; selected fills gold. */
.ft-slot{font-family:var(--font-body);font-size:14px;font-weight:600;color:#fff;background:rgba(226,221,159,0.06);border:1.5px solid rgba(226,221,159,0.45);padding:12px 6px;cursor:pointer;transition:all .16s var(--ease);text-align:center;}
.ft-slot:hover:not(:disabled){border-color:var(--gold);background:rgba(226,221,159,0.14);}
.ft-slot.is-on{background:var(--gold);border-color:var(--gold);color:var(--black);font-weight:700;}
.ft-slot:disabled{opacity:0.32;text-decoration:line-through;cursor:not-allowed;}
.ft-slots__empty{font-size:13.5px;color:var(--white-70);line-height:1.5;}
/* "pick a time" attention state when someone taps Confirm too early */
.ft-slots.is-need{outline:2px solid var(--gold);outline-offset:8px;animation:ftShake .4s var(--ease);}
@keyframes ftShake{10%,90%{transform:translateX(-2px)}30%,70%{transform:translateX(3px)}50%{transform:translateX(-3px)}}
.ft-cal__needtime{font-family:var(--font-body);font-size:13.5px;font-weight:700;color:var(--gold);margin:0 0 2px;}

.ft-cal__foot{margin-top:20px;display:flex;flex-direction:column;gap:10px;}
.ft-cal__summary{font-size:13.5px;line-height:1.5;color:var(--white-80);padding:12px 14px;border:1px solid var(--gold-line);background:rgba(226,221,159,0.05);}
.ft-cal__summary b{color:var(--gold);font-weight:600;}
.ft-cal__actions{display:flex;gap:10px;}
.ft-back{background:none;border:1px solid var(--gold-line);color:var(--white-80);font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;padding:0 18px;cursor:pointer;transition:all .18s;flex:none;}
.ft-back:hover{border-color:var(--gold);color:var(--gold);}
.ft-cal__confirm{flex:1;justify-content:center;}

/* ---------- TRUST SECTIONS ---------- */
.ft-sec{padding:clamp(80px,11vh,140px) 0;}
.ft-sec--deep{background:var(--black-deep);}
.ft-sec__head{text-align:center;max-width:60ch;margin:0 auto clamp(48px,6vh,68px);}
.ft-sec__eyebrow{justify-content:center;margin-bottom:20px;}
.ft-sec__title{font-family:var(--font-display);font-size:clamp(36px,5vw,76px);line-height:0.92;text-transform:uppercase;letter-spacing:-0.012em;}
.ft-sec__title em{color:var(--gold);}
.ft-sec__sub{margin-top:20px;font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:var(--white-80);}

/* expect grid */
.ft-expect{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--gold-line);border:1px solid var(--gold-line);}
.ft-expect__card{background:var(--black);padding:clamp(30px,3vw,46px) clamp(26px,2.4vw,38px);display:flex;flex-direction:column;gap:14px;transition:background .3s;}
.ft-expect__card:hover{background:var(--black-lift);}
.ft-expect__num{font-family:var(--font-display);font-size:14px;letter-spacing:0.18em;color:var(--gold);}
.ft-expect__t{font-family:var(--font-display);font-size:clamp(22px,2vw,28px);line-height:0.98;text-transform:uppercase;color:#fff;}
.ft-expect__d{font-size:15px;line-height:1.6;color:var(--white-80);}

/* testimonials */
.ft-rating{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:40px;}
.ft-rating__score{font-family:var(--font-display);font-size:clamp(44px,5vw,64px);line-height:0.9;color:#fff;}
.ft-rating__meta{display:flex;flex-direction:column;gap:4px;text-align:left;}
.ft-rating__stars{color:var(--gold);font-size:18px;letter-spacing:2px;}
.ft-rating__label{font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--white-70);}
.ft-tst{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.ft-tstcard{background:var(--black-lift);border:1px solid var(--gold-line);padding:clamp(26px,2.4vw,34px);display:flex;flex-direction:column;gap:16px;transition:border-color .3s,transform .3s;}
.ft-tstcard:hover{border-color:rgba(226,221,159,0.5);transform:translateY(-4px);}
.ft-tstcard__top{display:flex;align-items:center;justify-content:space-between;}
.ft-tstcard__stars{color:var(--gold);font-size:14px;letter-spacing:2px;}
.ft-tstcard__date{font-size:12px;color:var(--white-70);}
.ft-tstcard__body{font-size:15.5px;line-height:1.6;color:var(--white-80);flex:1;}
.ft-tstcard__by{display:flex;align-items:center;gap:11px;padding-top:16px;border-top:1px solid var(--gold-line);}
.ft-tstcard__av{width:36px;height:36px;border-radius:50%;background:var(--black);border:1px solid var(--gold-line);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:13px;color:var(--gold);flex:none;}
.ft-tstcard__name{font-family:var(--font-body);font-size:14px;font-weight:600;color:#fff;}
.ft-tstcard__src{font-size:11.5px;letter-spacing:0.06em;color:var(--white-70);}

/* faq */
.ft-faq{max-width:860px;margin:0 auto;border-top:1px solid var(--gold-line);}
.ft-faqitem{border-bottom:1px solid var(--gold-line);}
.ft-faqitem__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 4px;background:none;border:none;text-align:left;cursor:pointer;color:#fff;transition:color .2s,padding .25s;}
.ft-faqitem__q:hover{color:var(--gold);padding-left:8px;}
.ft-faqitem.is-open .ft-faqitem__q{color:var(--gold);}
.ft-faqitem__qt{font-family:var(--font-display);font-size:clamp(18px,1.6vw,23px);line-height:1.08;text-transform:uppercase;letter-spacing:0.005em;}
.ft-faqitem__icon{position:relative;flex:none;width:18px;height:18px;}
.ft-faqitem__icon::before,.ft-faqitem__icon::after{content:'';position:absolute;background:currentColor;transition:transform .3s var(--ease),opacity .3s;}
.ft-faqitem__icon::before{top:8px;left:0;width:18px;height:2px;}
.ft-faqitem__icon::after{top:0;left:8px;width:2px;height:18px;}
.ft-faqitem.is-open .ft-faqitem__icon::after{transform:scaleY(0);opacity:0;}
.ft-faqitem__a{overflow:hidden;height:0;transition:height .34s var(--ease);}
.ft-faqitem__a-inner{padding:0 4px 26px;max-width:64ch;}
.ft-faqitem__a p{margin:0;font-size:16px;line-height:1.66;color:var(--white-80);}
.ft-faqitem__a em{color:var(--gold);font-style:normal;}

/* ---------- CONFIRMATION (STEP 3) ---------- */
.ft-confirm{position:relative;overflow:hidden;background:var(--black-deep);}
.ft-confirm__media{position:absolute;inset:0;background:url('../gta-assets/hero-drive.jpg') center 20%/cover;filter:grayscale(0.3) contrast(1.05) brightness(0.32);}
.ft-confirm__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0.78) 0%,rgba(0,0,0,0.5) 40%,rgba(0,0,0,0.92) 100%);}
.ft-confirm__inner{position:relative;z-index:2;text-align:center;padding:clamp(64px,9vh,120px) 0 clamp(40px,5vh,64px);}
.ft-confirm__eyebrow{justify-content:center;margin-bottom:22px;letter-spacing:0.3em;}
.ft-confirm__title{font-family:var(--font-display);font-size:clamp(52px,8vw,140px);line-height:0.88;text-transform:uppercase;letter-spacing:-0.015em;margin:0 auto 22px;}
.ft-confirm__title em{color:var(--gold);}
.ft-confirm__sub{font-size:clamp(17px,1.4vw,22px);line-height:1.5;color:var(--white-80);max-width:48ch;margin:0 auto;}
.ft-confirm__sub strong{color:#fff;font-weight:600;}

.ft-booking{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:0;margin-top:34px;border:1px solid var(--gold-line);background:rgba(20,20,20,0.7);}
.ft-booking__item{padding:18px clamp(22px,2.4vw,34px);border-left:1px solid var(--gold-line);text-align:center;}
.ft-booking__item:first-child{border-left:none;}
.ft-booking__k{font-family:var(--font-body);font-size:10.5px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-bottom:7px;}
.ft-booking__v{font-family:var(--font-display);font-size:clamp(18px,1.7vw,24px);line-height:1.02;text-transform:uppercase;color:#fff;}
@media(max-width:520px){.ft-booking{flex-direction:column;}.ft-booking__item{border-left:none;border-top:1px solid var(--gold-line);}.ft-booking__item:first-child{border-top:none;}}

/* video placeholder */
.ft-video-wrap{position:relative;z-index:2;max-width:920px;margin:0 auto;padding:0 var(--gutter) clamp(72px,10vh,120px);}
.ft-video{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#161616,#0c0c0c);border:1px solid var(--gold-line);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;}
.ft-video__grain{position:absolute;inset:0;opacity:0.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.ft-video__play{position:relative;width:84px;height:84px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;background:rgba(226,221,159,0.08);transition:transform .25s var(--ease),background .25s;cursor:pointer;}
.ft-video__play:hover{transform:scale(1.06);background:rgba(226,221,159,0.16);}
.ft-video__play::before{content:'';width:0;height:0;border-style:solid;border-width:14px 0 14px 24px;border-color:transparent transparent transparent var(--gold);margin-left:6px;}
.ft-video__label{position:relative;font-family:var(--font-display);font-size:clamp(18px,1.8vw,24px);text-transform:uppercase;letter-spacing:0.04em;color:#fff;}
.ft-video__cap{position:relative;font-size:13px;letter-spacing:0.04em;color:var(--white-70);max-width:40ch;text-align:center;}
.ft-video__badge{position:absolute;top:14px;left:14px;background:var(--gold);color:var(--black);font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;padding:6px 11px;}

/* next steps */
.ft-next{background:var(--black);padding:clamp(72px,10vh,120px) 0;border-top:1px solid var(--gold-line);}
.ft-next__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(40px,5vh,56px);}
.ft-next__card{background:var(--black-lift);border:1px solid var(--gold-line);padding:clamp(26px,2.2vw,34px);display:flex;flex-direction:column;gap:12px;transition:border-color .3s,transform .3s;}
.ft-next__card:hover{border-color:rgba(226,221,159,0.5);transform:translateY(-4px);}
.ft-next__num{font-family:var(--font-display);font-size:clamp(40px,4vw,58px);line-height:0.8;color:transparent;-webkit-text-stroke:1.5px var(--gold);}
.ft-next__t{font-family:var(--font-display);font-size:clamp(19px,1.7vw,23px);line-height:0.98;text-transform:uppercase;color:#fff;}
.ft-next__d{font-size:14.5px;line-height:1.55;color:var(--white-80);}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1080px){
  .ft-hero__inner{grid-template-columns:1fr;gap:44px;}
  .ft-hero__card-col{max-width:540px;width:100%;}
  .ft-expect,.ft-tst,.ft-next__grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:760px){
  .ft-hero__inner{grid-template-columns:1fr;}
  .ft-expect,.ft-tst{grid-template-columns:1fr;}
  .ft-next__grid{grid-template-columns:1fr 1fr;}
  .ft-rating{flex-wrap:wrap;}
}
@media(max-width:480px){
  .ft-row{grid-template-columns:1fr;gap:0;}
  .ft-next__grid{grid-template-columns:1fr;}
  .ft-slots__grid{grid-template-columns:1fr 1fr;}
  .ft-hero__title{font-size:clamp(44px,12vw,64px);}
}

.ft-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:36px 0;color:var(--ink-soft,#9a958a);font-size:14px;}
.ft-spinner{width:22px;height:22px;border-radius:50%;border:2px solid rgba(226,221,159,0.2);border-top-color:var(--gold);animation:ft-spin .8s linear infinite;flex:0 0 auto;}
@keyframes ft-spin{to{transform:rotate(360deg);}}

.ft-video--live{padding:0;display:block;}
.ft-video__player{display:block;width:100%;aspect-ratio:16/9;background:#000;border:1px solid var(--gold-line);}
