@import url("/fonts/fonts.css");

/* VideoFinder UK — own stylesheet, shared brand tokens. */
:root{
  --ground:#f3f5f7; --surface:#ffffff; --surface-2:#e8ecf0;
  --ink:#101722; --ink-2:#2b3440; --muted:#5c6673;
  --line:#dde3ea; --line-strong:#c4cdd7;
  --rec:#e2372b; --rec-soft:#fdecea;
  --uk:#16447a;                 /* deep British blue, secondary */
  --link:#16447a; --focus:#16447a;
  --shadow:0 1px 2px rgba(16,23,34,.05),0 14px 34px rgba(16,23,34,.08);

  --f-display:"Unbounded","Onest",system-ui,sans-serif;
  --f-body:"Onest",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;

  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:76px;
  --r-1:8px;--r-2:14px;--r-pill:999px;
  --wrap:1140px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --ground:#0c1118;--surface:#141b24;--surface-2:#1b232e;
  --ink:#e8edf3;--ink-2:#ccd4de;--muted:#8b95a3;
  --line:#222c38;--line-strong:#344050;
  --rec:#ff5448;--rec-soft:#2b1614;--uk:#6ba3dd;--link:#7fb0e6;--focus:#7fb0e6;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 14px 34px rgba(0,0,0,.4);color-scheme:dark;}}
:root[data-theme="dark"]{
  --ground:#0c1118;--surface:#141b24;--surface-2:#1b232e;
  --ink:#e8edf3;--ink-2:#ccd4de;--muted:#8b95a3;
  --line:#222c38;--line-strong:#344050;
  --rec:#ff5448;--rec-soft:#2b1614;--uk:#6ba3dd;--link:#7fb0e6;--focus:#7fb0e6;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 14px 34px rgba(0,0,0,.4);color-scheme:dark;}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--f-body);-webkit-font-smoothing:antialiased;min-height:100vh;display:flex;flex-direction:column}
img,svg{max-width:100%;display:block}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}
h1,h2,h3{text-wrap:balance}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:22px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}

/* header */
.head{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:saturate(1.3) blur(8px);border-bottom:1px solid var(--line)}
.head .wrap{display:flex;align-items:center;gap:var(--s-5);min-height:64px}
.brand{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font:700 18px/1 var(--f-display);letter-spacing:-.02em}
.brand:hover{text-decoration:none}
.brand svg{width:26px;height:26px;flex:none}
.brand b{color:var(--rec)}
.brand .reg{font:500 11px/1 var(--f-mono);color:var(--muted);letter-spacing:.14em;border:1px solid var(--line-strong);border-radius:5px;padding:3px 6px}
.nav{display:flex;align-items:center;gap:var(--s-5);margin-left:auto}
.nav a:not(.go){color:var(--muted);font-size:15px}
.nav a:not(.go):hover{color:var(--ink);text-decoration:none}
.go{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:var(--ground);border-radius:var(--r-pill);padding:9px 18px;font-weight:600;font-size:14.5px}
.go:hover{text-decoration:none;background:var(--ink-2)}

/* hero */
.hero{padding-block:var(--s-8) var(--s-7);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 80% at 15% -10%,color-mix(in srgb,var(--uk) 11%,transparent),transparent 58%)}
.hero .wrap{position:relative;max-width:900px}
.hero .kicker{display:inline-flex;align-items:center;gap:8px;color:var(--uk);font:600 13px/1 var(--f-body);margin-bottom:var(--s-4)}
.hero .kicker .dot{width:8px;height:8px;border-radius:50%;background:var(--rec)}
.hero h1{font:700 clamp(34px,5.6vw,62px)/1.03 var(--f-display);letter-spacing:-.03em;margin:0;max-width:16ch}
.hero .lead{margin:var(--s-4) 0 0;color:var(--muted);font-size:clamp(16px,1.6vw,19px);max-width:54ch}
.search{margin-top:var(--s-6);max-width:660px}
.search form{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:8px 8px 8px 20px;box-shadow:var(--shadow)}
.search form:focus-within{border-color:var(--ink)}
.search svg.lens{width:19px;height:19px;color:var(--muted);flex:none}
.search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:17px;padding:11px 0}
.search input::placeholder{color:var(--muted)}
.search button{flex:none;border:0;cursor:pointer;background:var(--rec);color:#fff;border-radius:var(--r-pill);padding:12px 24px;font-weight:600;font-size:15px}
.search button:hover{background:#c22b20}
.chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:var(--s-4)}
.chips .lbl{font:500 12px/1 var(--f-mono);letter-spacing:.06em;color:var(--muted);margin-right:2px}
.chips a{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--r-pill);padding:6px 13px;font-size:14px}
.chips a:hover{border-color:var(--line-strong);text-decoration:none}

/* platforms */
.scope{border-block:1px solid var(--line);background:var(--surface)}
.scope .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-3) var(--s-6);padding-block:var(--s-4)}
.scope .intro{font-size:14px;color:var(--muted);margin-right:auto}
.plat{display:inline-flex;align-items:center;gap:8px;font:600 14px/1 var(--f-body);color:var(--ink-2)}
.plat .sq{width:9px;height:9px;border-radius:3px;background:var(--c,var(--muted))}
.plat[data-p=youtube]{--c:#e1251b}.plat[data-p=vimeo]{--c:#17b3e8}.plat[data-p=dailymotion]{--c:#0a60f0}
.plat[data-p=iplayer]{--c:#e5007d}.plat[data-p=itvx]{--c:#b9d400}

/* section */
.block{padding-block:var(--s-8)}
.block-head{display:flex;align-items:flex-end;gap:var(--s-4);margin-bottom:var(--s-6)}
.block-head h2{font:700 clamp(24px,3.4vw,36px)/1.08 var(--f-display);letter-spacing:-.03em;margin:0}
.block-head p{margin:6px 0 0;color:var(--muted);font-size:15.5px}
.block-head .aside{margin-left:auto;color:var(--muted);font:500 12px/1 var(--f-mono);letter-spacing:.05em;white-space:nowrap}

/* FEATURED + list (signature layout) */
.feat{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s-7);align-items:start}
.bigclip{display:block;color:var(--ink)}
.bigclip:hover{text-decoration:none}
.bigclip:hover .bt{color:var(--link)}
.bigclip .poster{position:relative;aspect-ratio:16/9;border-radius:var(--r-2);overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow)}
.bigclip .poster svg{width:100%;height:100%}
.poster .dur{position:absolute;right:8px;bottom:8px;background:rgba(8,10,14,.82);color:#fff;font:500 12px/1 var(--f-mono);padding:4px 7px;border-radius:5px;font-variant-numeric:tabular-nums}
.poster .flag{position:absolute;left:8px;top:8px;background:var(--rec);color:#fff;font:600 10px/1 var(--f-mono);letter-spacing:.08em;padding:4px 7px;border-radius:5px}
.bigclip .bt{margin:var(--s-4) 0 0;font:700 clamp(18px,2vw,23px)/1.25 var(--f-display);letter-spacing:-.02em}
.bigclip .bm{display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:8px;font-size:14px;color:var(--muted);align-items:center}
.rail{display:grid;gap:0;border-top:1px solid var(--line)}
.rrow{display:grid;grid-template-columns:26px 92px 1fr;gap:var(--s-3);align-items:center;padding:var(--s-3) 0;border-bottom:1px solid var(--line);color:var(--ink)}
.rrow:hover{text-decoration:none}.rrow:hover .rt{color:var(--link)}
.rrank{font:800 18px/1 var(--f-display);color:var(--line-strong);text-align:center;font-variant-numeric:tabular-nums}
.rrow:nth-child(-n+3) .rrank{color:var(--rec)}
.rthumb{position:relative;aspect-ratio:16/9;border-radius:7px;overflow:hidden;background:var(--surface-2)}
.rthumb svg{width:100%;height:100%}
.rthumb .d{position:absolute;right:4px;bottom:4px;background:rgba(8,10,14,.82);color:#fff;font:500 10px/1 var(--f-mono);padding:2px 4px;border-radius:3px}
.rt{font-weight:600;font-size:14.5px;line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rm{font-size:12.5px;color:var(--muted);margin-top:2px}
.src{display:inline-flex;align-items:center;gap:5px;font:500 11px/1 var(--f-mono);color:var(--ink-2)}
.src::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--c,var(--muted))}
.src[data-p=youtube]{--c:#e1251b}.src[data-p=vimeo]{--c:#17b3e8}.src[data-p=dailymotion]{--c:#0a60f0}
.src[data-p=iplayer]{--c:#e5007d}.src[data-p=itvx]{--c:#b9d400}

/* how it works */
.howto{background:var(--surface);border-block:1px solid var(--line)}
.howto .wrap{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-8);align-items:center;padding-block:var(--s-8)}
.howto h2{font:700 clamp(24px,3.2vw,34px)/1.08 var(--f-display);letter-spacing:-.03em;margin:0 0 var(--s-5);max-width:14ch}
.flow{display:grid;gap:var(--s-5);margin:0;padding:0}
.flow li{list-style:none;display:grid;grid-template-columns:auto 1fr;gap:var(--s-4);align-items:start}
.flow .mk{width:36px;height:36px;border-radius:10px;background:var(--rec-soft);color:var(--rec);display:grid;place-items:center;flex:none}
.flow h3{margin:0 0 3px;font:700 17px/1.3 var(--f-body)}
.flow p{margin:0;color:var(--muted);font-size:14.5px;max-width:44ch}
.art{position:relative;aspect-ratio:4/3;border-radius:var(--r-2);overflow:hidden;background:linear-gradient(150% 120% at 75% 5%,var(--uk),#0a2546);box-shadow:var(--shadow);padding:var(--s-6);display:grid;align-content:space-between;color:#e9f1fb}
.art .tag{font:500 11px/1 var(--f-mono);letter-spacing:.1em;opacity:.85}
.art .big{font:800 clamp(28px,5vw,46px)/1 var(--f-display);letter-spacing:-.02em}
.art .ln{display:grid;gap:9px}
.art .ln span{height:9px;border-radius:3px;background:rgba(255,255,255,.16)}
.art .ln span:nth-child(1){width:74%}.art .ln span:nth-child(2){width:52%;background:rgba(255,106,95,.4)}.art .ln span:nth-child(3){width:64%}

/* faq */
.faq{display:grid;max-width:820px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:var(--s-4) 0;font-weight:700;font-size:17px;display:flex;align-items:center;gap:var(--s-3)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";margin-left:auto;width:10px;height:10px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s;flex:none}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq details p{margin:0 0 var(--s-4);color:var(--ink-2);max-width:72ch}

/* cta */
.cta{background:var(--ink);color:var(--ground)}
.cta .wrap{padding-block:var(--s-8);display:grid;gap:var(--s-5);justify-items:start}
.cta h2{font:700 clamp(24px,3.6vw,40px)/1.05 var(--f-display);letter-spacing:-.03em;margin:0;max-width:18ch}
.cta p{margin:0;color:color-mix(in srgb,var(--ground) 72%,transparent);max-width:52ch}
.cta .b{display:inline-flex;align-items:center;gap:8px;background:var(--rec);color:#fff;border-radius:var(--r-pill);padding:12px 24px;font-weight:600}
.cta .b:hover{text-decoration:none;background:#c22b20}

/* footer */
.foot{margin-top:auto;background:var(--surface);border-top:1px solid var(--line)}
.foot .wrap{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:var(--s-6);padding-block:var(--s-7) var(--s-5)}
.foot .ab .brand{margin-bottom:var(--s-3)}
.foot .ab p{margin:0;color:var(--muted);font-size:13.5px;max-width:34ch}
.foot h4{font:500 11px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 var(--s-3)}
.foot nav{display:grid;gap:9px}
.foot nav a{color:var(--ink-2);font-size:14.5px}
.foot nav a:hover{color:var(--ink)}
.legal{border-top:1px solid var(--line)}
.legal .wrap{display:flex;flex-wrap:wrap;gap:6px var(--s-5);padding-block:var(--s-4);font-size:12.5px;color:var(--muted)}
.legal .sep{margin-left:auto}

/* cookie */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;max-width:560px;margin-inline:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-2);box-shadow:var(--shadow);padding:var(--s-4) var(--s-5);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-4)}
.cookie p{margin:0;font-size:13.5px;color:var(--ink-2);flex:1;min-width:220px}
.cookie .acts{display:flex;gap:8px}
.cookie button{cursor:pointer;border-radius:8px;padding:8px 14px;font-weight:600;font-size:13.5px;border:1px solid var(--line-strong);background:transparent;color:var(--ink)}
.cookie button.ok{background:var(--ink);color:var(--ground);border-color:var(--ink)}

/* doc pages */
.doc{padding-block:var(--s-8) var(--s-7)}
.doc .wrap{max-width:760px}
.doc .crumbs{font-size:13.5px;color:var(--muted);margin-bottom:var(--s-4)}
.doc h1{font:700 clamp(28px,3.6vw,42px)/1.1 var(--f-display);letter-spacing:-.03em;margin:0 0 var(--s-2)}
.doc .upd{font:400 12px/1 var(--f-mono);color:var(--muted)}
.doc h2{font:700 20px/1.3 var(--f-body);margin:var(--s-6) 0 var(--s-2)}
.doc p,.doc li{color:var(--ink-2);max-width:70ch}
.doc ul{padding-left:1.2em}
.doc dl{display:grid;grid-template-columns:max-content 1fr;gap:10px 22px;margin:0}
.doc dt{font:500 12px/1.7 var(--f-mono);color:var(--muted)}
.doc dd{margin:0}
.nf{padding-block:var(--s-8)}
.nf .wrap{max-width:620px;display:grid;gap:var(--s-4)}
.nf .code{font:500 13px/1 var(--f-mono);color:var(--rec);letter-spacing:.12em}
.nf h1{font:700 clamp(28px,4vw,42px)/1.08 var(--f-display);letter-spacing:-.03em;margin:0}

/* responsive */
@media (max-width:860px){
  .feat{grid-template-columns:1fr;gap:var(--s-6)}
  .howto .wrap{grid-template-columns:1fr;gap:var(--s-6)}
  .art{max-width:460px}
  .foot .wrap{grid-template-columns:1fr 1fr}
  .nav a.hs{display:none}
}
@media (max-width:600px){
  .hero{padding-block:var(--s-7) var(--s-6)}
  .search button span{display:none}
  .scope .intro{flex-basis:100%}
  .foot .wrap{grid-template-columns:1fr}
  .legal .sep{margin-left:0;flex-basis:100%}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
