/* TFD Media: shared styles. Desktop layout scales with the viewport (--u = 1 design px at 1440 wide); under 800px it stacks. */
@font-face{font-family:"Abel";src:url(/assets/fonts/abel-latin.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Bebas Neue";src:url(/assets/fonts/bebas-neue-latin.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
  --navy:#021022; --cream:#f7e6d2; --gold:#d1a642; --paper:#f6f5f4;
  --u:calc(min(100vw,1700px)/1440);
  --hdr:80px;
  --d:calc(86.4*var(--u));
  --f-head:"Bebas Neue",Impact,"Arial Narrow",sans-serif;
  --f-body:Abel,"Arial Narrow",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--navy);color:#fff;font-family:var(--f-body);font-size:max(16px,calc(25*var(--u)));line-height:1.1;letter-spacing:max(.5px,calc(.752*var(--u)));overflow-x:hidden}
img,svg,video{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,p{margin:0;font-weight:400}
h1,h2,h3,h4{font-family:var(--f-head);line-height:1;color:var(--cream);text-transform:none;letter-spacing:normal}
.h55{line-height:1.266!important}
.skip-link{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:8px 12px;z-index:100}
.skip-link:focus{left:8px;top:8px}
main{display:block}
#page{padding-top:var(--hdr)}
.hero-first{margin-top:calc(-1*var(--hdr))}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto 0;height:var(--hdr);background:var(--navy);z-index:50;display:flex;align-items:center;padding:0 calc(58*var(--u))}
.hdr__logo{display:block;flex:none}
.hdr__logo img{width:185px;height:60px;object-fit:contain;object-position:left center}
.hdr__nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;gap:22px;white-space:nowrap}
.hdr__nav a{font-family:var(--f-head);font-size:13.27px;letter-spacing:.24em;text-decoration:none;color:#fff;padding:7px 0 4px;border-bottom:1px solid transparent}
.hdr__nav a[aria-current]{border-bottom-color:#fff}
.hdr__nav a:hover{border-bottom-color:rgba(255,255,255,.6)}
.hdr__actions{margin-left:auto;display:flex;align-items:center;gap:23px}
.hdr__icon{display:block;width:29px;height:29px;color:#fff}
.hdr__icon svg{width:100%;height:100%}
.hdr__cart{display:flex;align-items:center;gap:6px;color:#fff;text-decoration:none;font-size:15px;margin-left:13px;width:38px}
.hdr__cart svg{width:25px;height:19px;flex:none}
.hdr__cart span{font-family:var(--f-head);font-size:13px;letter-spacing:.2em}
.hdr__burger{display:none}
.menu{position:fixed;inset:0;background:var(--navy);z-index:49;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;padding-top:var(--hdr)}
.menu[hidden]{display:none}
.menu nav{display:flex;flex-direction:column;align-items:center;gap:22px}
.menu nav a{font-family:var(--f-head);font-size:33px;letter-spacing:.19em;text-decoration:none;color:#fff}
.menu__social{display:flex;gap:15px}
.menu__social .hdr__icon{width:25px;height:25px}

/* ---------- sections ---------- */
.sec{position:relative;isolation:isolate}
.sec__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sec__shade{position:absolute;inset:0;background:rgba(0,0,0,var(--o,0));z-index:-1}
.sec__shade.navy{background:rgba(2,16,34,var(--o,0))}
.sec--navy{background:var(--navy)}
.stage{position:relative;height:calc(var(--h)*var(--u));overflow:hidden}
.stage--grow{overflow:visible}
.abs{position:absolute;left:calc(var(--x)*var(--u));top:calc(var(--y)*var(--u));width:calc(var(--w)*var(--u))}
.fs{font-size:calc(var(--fs)*var(--u))}
.tc{text-align:center}
.nowrap{white-space:nowrap}
.cream{color:var(--cream)}

/* section dividers: chevron (zig) and wave */
.sec--div{z-index:3}
.sec--div > .sec__clip{padding-bottom:var(--d);position:relative;isolation:isolate}
.sec--zig > .sec__clip{clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - var(--d)),0 100%)}
.sec--wave > .sec__clip{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--d)*.5),0.00% calc(100% - var(--d)*0.500), 4.99% calc(100% - var(--d)*0.625), 9.33% calc(100% - var(--d)*0.730), 13.12% calc(100% - var(--d)*0.817), 16.47% calc(100% - var(--d)*0.884), 19.50% calc(100% - var(--d)*0.932), 22.30% calc(100% - var(--d)*0.960), 25.00% calc(100% - var(--d)*0.970), 27.70% calc(100% - var(--d)*0.960), 30.50% calc(100% - var(--d)*0.932), 33.53% calc(100% - var(--d)*0.884), 36.88% calc(100% - var(--d)*0.817), 40.67% calc(100% - var(--d)*0.730), 45.01% calc(100% - var(--d)*0.625), 50.00% calc(100% - var(--d)*0.500), 54.99% calc(100% - var(--d)*0.375), 59.33% calc(100% - var(--d)*0.270), 63.12% calc(100% - var(--d)*0.183), 66.47% calc(100% - var(--d)*0.116), 69.50% calc(100% - var(--d)*0.068), 72.30% calc(100% - var(--d)*0.040), 75.00% calc(100% - var(--d)*0.030), 77.70% calc(100% - var(--d)*0.040), 80.50% calc(100% - var(--d)*0.068), 83.53% calc(100% - var(--d)*0.116), 86.88% calc(100% - var(--d)*0.183), 90.67% calc(100% - var(--d)*0.270), 95.01% calc(100% - var(--d)*0.375), 100.00% calc(100% - var(--d)*0.500),100% 100%,0 100%,0 0)}
.divline{position:absolute;left:0;bottom:0;width:100%;height:var(--d);pointer-events:none;overflow:visible;z-index:4}
.divline polyline{fill:none;stroke:#fff;vector-effect:non-scaling-stroke}
.sec--zig .divline polyline{stroke-width:15px;stroke-linejoin:miter}
.sec--wave .divline polyline{stroke-width:6px}
.sec--under .sec__bg,.sec--under .sec__shade{top:calc(-1*var(--d));height:calc(100% + var(--d))}
.sec--zig.sec--under > .sec__clip{clip-path:polygon(0 calc(-1*var(--d)),100% calc(-1*var(--d)),100% 100%,50% calc(100% - var(--d)),0 100%)}
.sec--wave.sec--under > .sec__clip{clip-path:polygon(0 calc(-1*var(--d)),100% calc(-1*var(--d)),100% calc(100% - var(--d)*.5),0.00% calc(100% - var(--d)*0.500), 4.99% calc(100% - var(--d)*0.625), 9.33% calc(100% - var(--d)*0.730), 13.12% calc(100% - var(--d)*0.817), 16.47% calc(100% - var(--d)*0.884), 19.50% calc(100% - var(--d)*0.932), 22.30% calc(100% - var(--d)*0.960), 25.00% calc(100% - var(--d)*0.970), 27.70% calc(100% - var(--d)*0.960), 30.50% calc(100% - var(--d)*0.932), 33.53% calc(100% - var(--d)*0.884), 36.88% calc(100% - var(--d)*0.817), 40.67% calc(100% - var(--d)*0.730), 45.01% calc(100% - var(--d)*0.625), 50.00% calc(100% - var(--d)*0.500), 54.99% calc(100% - var(--d)*0.375), 59.33% calc(100% - var(--d)*0.270), 63.12% calc(100% - var(--d)*0.183), 66.47% calc(100% - var(--d)*0.116), 69.50% calc(100% - var(--d)*0.068), 72.30% calc(100% - var(--d)*0.040), 75.00% calc(100% - var(--d)*0.030), 77.70% calc(100% - var(--d)*0.040), 80.50% calc(100% - var(--d)*0.068), 83.53% calc(100% - var(--d)*0.116), 86.88% calc(100% - var(--d)*0.183), 90.67% calc(100% - var(--d)*0.270), 95.01% calc(100% - var(--d)*0.375), 100.00% calc(100% - var(--d)*0.500),100% 100%,0 100%)}
.sec--under:not(.sec--div){z-index:1}
.sec--flat-line{border-bottom:6px solid #fff}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--f-head);font-size:max(15px,calc(23.39*var(--u)));letter-spacing:.26em;text-transform:uppercase;text-decoration:none;color:var(--paper);border:4px solid var(--paper);border-radius:300px;background:transparent;padding:calc(9.4*var(--u)) calc(67.8*var(--u));cursor:pointer;line-height:1.1;white-space:nowrap;transition:background .2s,color .2s}
.btn:hover{background:var(--paper);color:var(--navy)}
.btn--fill{background:var(--paper);color:var(--navy);border-color:var(--paper);letter-spacing:.2em}
.btn--fill:hover{background:transparent;color:var(--paper)}
.btn--20{letter-spacing:.2em}
.btn--sm{font-size:max(12px,calc(16.7*var(--u)));letter-spacing:.2em;padding:calc(9*var(--u)) calc(30*var(--u));border-width:3px}

/* ---------- footer ---------- */
.ftr{min-height:calc(122*var(--u));height:calc(122*var(--u));min-height:108px}
.ftr__inner{position:absolute;inset:0;text-align:center}
.ftr__inner p{position:absolute;left:0;right:0;top:calc(17*var(--u));font-size:max(13px,calc(15*var(--u)))}
.ftr__social{position:absolute;left:0;right:0;top:calc(68*var(--u));display:flex;justify-content:center;gap:12px}
.ftr__social a{display:block;width:20px;height:20px;color:#fff}
.ftr__social svg{width:100%;height:100%}

/* ---------- video player (poster + play button, native controls after start) ---------- */
.player{position:relative;background:#000;overflow:hidden;aspect-ratio:16/9}
.player video,.player iframe,.player .player__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.player__play{position:absolute;left:50%;top:50%;width:80px;height:80px;margin:-40px 0 0 -40px;border:0;border-radius:50%;background:rgba(0,0,0,.55);cursor:pointer;display:grid;place-items:center;transition:background .2s;z-index:2}
.player__play::before{content:"";border-left:22px solid #fff;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.player__play:hover{background:rgba(0,0,0,.75)}
.abs.player{position:absolute}
.player.is-playing .player__play,.player.is-playing .player__poster{display:none}

/* ---------- quote modal ---------- */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:200;display:grid;place-items:center;padding:16px;overflow:auto}
.modal[hidden]{display:none}
.modal__box{position:relative;background:#fff;color:#000;width:min(552px,100%);padding:32px 28px 28px;border-radius:2px}
.modal__close{position:absolute;right:10px;top:4px;border:0;background:none;font-size:26px;line-height:1;cursor:pointer;color:#000}
.modal__box h2{font-family:var(--f-head);color:#000;font-size:clamp(26px,3.1vw,42px);line-height:1.05;text-transform:uppercase;margin:6px 0 32px}
.qform{font-family:var(--f-body);font-size:15px;letter-spacing:.02em}
.qform fieldset{border:0;margin:0 0 14px;padding:0}
.qform legend{padding:0;margin-bottom:4px}
.qform small{font-size:11px;color:#555}
.qform label{display:block;margin-bottom:14px}
.qform label>span{display:block;margin-bottom:4px}
.qform fieldset label>span{font-size:12px}
.qform__row{display:flex;gap:12px}
.qform__row label{flex:1;margin:0}
.qform input,.qform textarea{width:100%;background:#000;color:#fff;border:0;border-radius:4px;padding:11px 10px;font:inherit;letter-spacing:0}
.qform textarea{resize:vertical;min-height:110px}
.qform .hp{position:absolute;left:-9999px;opacity:0}
.qform__send{display:block;margin:6px auto 0;background:#000;color:#fff;border:0;border-radius:30px;padding:10px 26px;font-family:var(--f-head);font-size:14px;letter-spacing:.22em;cursor:pointer}
.qform__send:disabled{opacity:.5}
.qform__status{min-height:1.2em;text-align:center;font-size:14px;margin:0 0 8px}
.qform__status.is-error{color:#b00020}

@media (max-width:799px){
  /* On phones every design px is 1/390 of the screen width, and each element takes its --mx/--my/--mw (and --mfs, --mh) coordinates. */
  :root{--hdr:109.4px;--u:calc(100vw/390);--d:calc(23.4*var(--u))}
  body{font-size:calc(21.08*var(--u));letter-spacing:calc(.632*var(--u))}
  .hdr{padding:0 23px;justify-content:space-between}
  .hdr__nav,.hdr__actions{display:none}
  .hdr__logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
  .hdr__logo img{width:193px;height:63px;object-position:center}
  .hdr__burger{display:block;position:relative;width:47px;height:37px;background:none;border:0;padding:0;cursor:pointer;z-index:2}
  .hdr__burger span{position:absolute;left:8px;right:8px;height:1px;background:#fff;transition:transform .2s,top .2s}
  .hdr__burger span:first-child{top:14px}
  .hdr__burger span:last-child{top:22px}
  .hdr__burger[aria-expanded=true] span:first-child{top:18px;transform:rotate(45deg)}
  .hdr__burger[aria-expanded=true] span:last-child{top:18px;transform:rotate(-45deg)}
  .stage{height:calc(var(--mh)*var(--u))}
  .abs{left:calc(var(--mx)*var(--u));top:calc(var(--my)*var(--u));width:calc(var(--mw)*var(--u))}
  .fs{font-size:calc(var(--mfs,var(--fs))*var(--u))}
  .btn{font-size:calc(20.06*var(--u));letter-spacing:.26em;padding:0 calc(20*var(--u));height:calc(46*var(--u))}
  .btn--fill{letter-spacing:.2em}
  .ftr{height:calc(125*var(--u));min-height:0}
  .ftr__inner p{top:calc(27*var(--u));font-size:calc(15*var(--u))}
  .ftr__social{top:calc(78*var(--u))}
  .player__play{width:calc(44*var(--u));height:calc(44*var(--u));margin:calc(-22*var(--u)) 0 0 calc(-22*var(--u))}
  .player__play::before{border-left-width:calc(13*var(--u));border-top-width:calc(8*var(--u));border-bottom-width:calc(8*var(--u));margin-left:calc(3*var(--u))}
  .modal__box{padding:28px 18px 22px}
}
.hp-ok{display:none}
@media (max-width:799px){
  .m-left{text-align:left!important}
  .m-hide{display:none}
}
