/* roulang page: index */
:root{
  --plum:#382036;
  --plum-2:#542c50;
  --plum-3:#74496e;
  --ink:#2e2630;
  --muted:#786d78;
  --paper:#fbf7f2;
  --cream:#f3eae2;
  --rose:#edd4d0;
  --coral:#c97868;
  --sage:#6c9589;
  --amber:#c99a58;
  --line:#e7dcd6;
  --white:#fffdfb;
  --radius:18px;
  --shadow:0 16px 42px rgba(56,32,54,.10);
  --ease:220ms ease;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7;font-size:15px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(251,247,242,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navbar{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.nav-side{display:flex;align-items:center;gap:24px}
.nav-side.right{justify-content:flex-end}
.nav-link{position:relative;color:var(--muted);font-size:14px;padding:26px 0;transition:color var(--ease)}
.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--coral);transform:scaleX(0);transition:transform var(--ease)}
.nav-link:hover,.nav-link.active{color:var(--plum)}
.nav-link.active:after,.nav-link:hover:after{transform:scaleX(1)}
.brand{color:var(--plum);font-weight:800;letter-spacing:-.05em;font-size:19px;white-space:nowrap}
.brand small{display:block;text-align:center;color:var(--coral);font-size:10px;letter-spacing:.14em;font-weight:600}
.search-mini{display:flex;align-items:center;border:1px solid var(--line);background:var(--white);border-radius:9px;height:40px;padding:0 11px;gap:8px}
.search-mini input{border:0;outline:0;background:transparent;width:108px;color:var(--ink)}
.search-mini button{background:transparent;color:var(--plum);font-size:17px}
.menu-toggle{display:none;background:transparent;color:var(--plum);font-size:25px;width:44px;height:44px}
.mobile-panel{display:none;border-top:1px solid var(--line);padding:10px 20px 18px;background:var(--paper)}
.mobile-panel a{display:block;padding:10px 0;color:var(--plum);border-bottom:1px solid var(--line)}
.eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--coral);font-weight:700}
.hero{padding:76px 0 64px;background:linear-gradient(110deg,#fbf7f2 0%,#f7eee9 58%,#ead9dc 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:74px;align-items:center}
.hero h1{font-size:clamp(40px,6vw,76px);line-height:1.08;letter-spacing:-.07em;color:var(--plum);margin:15px 0 22px;max-width:720px}
.hero-copy{font-size:17px;color:var(--muted);max-width:620px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.btn{min-height:46px;padding:10px 19px;border-radius:10px;border:1px solid transparent;transition:transform var(--ease),background var(--ease),box-shadow var(--ease),border-color var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(56,32,54,.12)}
.btn:focus-visible,.nav-link:focus-visible,.faq-q:focus-visible,.menu-toggle:focus-visible{outline:3px solid rgba(201,120,104,.35);outline-offset:3px}
.btn-primary{background:var(--plum);color:var(--white)}
.btn-primary:hover{background:var(--plum-2)}
.btn-secondary{background:transparent;border-color:var(--plum);color:var(--plum)}
.btn-secondary:hover{background:var(--rose)}
.btn-danger{background:#f5e2de;color:#8d4d45;border-color:#e7c2ba}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.hero-poster{min-height:390px;border-radius:24px;background:var(--plum);position:relative;padding:22px;box-shadow:var(--shadow);display:flex;align-items:flex-end;overflow:hidden}
.poster-art{position:absolute;inset:0;background:radial-gradient(circle at 70% 24%,#bd7f88 0 8%,transparent 9%),linear-gradient(145deg,#6d456b 0 28%,#342035 70%);opacity:.9}
.poster-art:after{content:"18+";position:absolute;right:28px;top:24px;font-size:60px;font-weight:800;color:rgba(255,255,255,.1)}
.poster-content{position:relative;color:#fff;z-index:1;width:100%}
.poster-content h2{font-size:28px;line-height:1.2;margin:10px 0}
.poster-meta{display:flex;gap:8px;flex-wrap:wrap;color:#ead9dc;font-size:12px}
.play-circle{position:absolute;right:25px;bottom:26px;width:64px;height:64px;border-radius:50%;background:var(--coral);color:#fff;font-size:25px;display:grid;place-items:center;transition:transform var(--ease)}
.play-circle:hover{transform:scale(1.05)}
.section{padding:82px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}
.section-head h2{font-size:clamp(27px,4vw,42px);line-height:1.2;letter-spacing:-.05em;color:var(--plum)}
.section-head p{max-width:560px;color:var(--muted)}
.metrics{display:grid;grid-template-columns:1.45fr 1fr 1fr 1.2fr;gap:12px;overflow:auto}
.metric{min-width:210px;background:var(--white);border:1px solid var(--line);padding:23px;border-radius:15px;position:relative}
.metric:first-child{border-top:3px solid var(--coral)}
.metric-label{color:var(--muted);font-size:13px}
.metric strong{display:block;color:var(--plum);font-size:36px;line-height:1.2;margin:6px 0}
.metric-note{font-size:12px;color:var(--sage)}
.mini-line{height:5px;background:var(--cream);border-radius:5px;margin-top:17px;overflow:hidden}
.mini-line span{display:block;width:72%;height:100%;background:var(--coral);border-radius:5px}
.matrix{display:grid;grid-template-columns:1.6fr .9fr .9fr;grid-template-rows:1fr 1fr;gap:16px}
.matrix-card{padding:25px;border:1px solid var(--line);background:var(--white);border-radius:var(--radius);min-height:170px;position:relative;overflow:hidden;transition:transform var(--ease),box-shadow var(--ease)}
.matrix-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.matrix-card.large{grid-row:span 2;background:var(--plum);color:#fff;min-height:356px}
.matrix-card.large p{color:#decbd9}
.matrix-card h3{margin:15px 0 8px;font-size:22px;color:var(--plum)}
.matrix-card.large h3{color:#fff;font-size:31px}
.matrix-card p{color:var(--muted);font-size:14px}
.index{font-size:12px;color:var(--coral);font-weight:800}
.card-arrow{position:absolute;right:21px;bottom:20px;color:var(--coral);font-weight:700}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sage);margin-right:7px}
.result-wrap{display:grid;grid-template-columns:.82fr 1.5fr;gap:18px}
.compare{background:var(--plum);border-radius:var(--radius);padding:28px;color:#fff}
.compare h3{font-size:23px;margin-bottom:22px}
.compare-row{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:10px;color:#ead9dc}
.compare-row strong{color:#fff}
.result-list{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:10px}
.video-row{display:grid;grid-template-columns:130px 1fr auto;gap:15px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}
.video-row:last-child{border-bottom:0}
.thumb{height:74px;border-radius:10px;background:linear-gradient(135deg,#c08a91,#53304f);position:relative}
.thumb:after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:20px}
.video-row h4{font-size:16px;color:var(--plum);margin-bottom:4px}
.video-row p{font-size:12px;color:var(--muted)}
.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:11px;background:var(--cream);color:var(--plum);margin-right:5px}
.badge.green{background:#e2eee9;color:#47766a}
.video-row .btn{min-height:38px;padding:7px 12px;font-size:13px}
.faq-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:50px}
.faq-index{font-size:72px;line-height:1;color:var(--rose);font-weight:800}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:transparent;color:var(--plum);padding:20px 0;font-weight:700;font-size:16px}
.faq-q span:last-child{font-size:24px;color:var(--coral);transition:transform var(--ease)}
.faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;color:var(--muted);transition:max-height var(--ease),padding var(--ease)}
.faq-item.open .faq-a{max-height:180px;padding:0 35px 20px 0}
.cta-section{padding:0 0 88px}
.cta-box{background:var(--plum);border-radius:24px;padding:42px;display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;color:#fff}
.cta-box h2{font-size:clamp(28px,4vw,43px);line-height:1.2;letter-spacing:-.05em;margin:12px 0}
.cta-box p{color:#decbd9}
.preference-form{background:var(--white);border-radius:16px;padding:25px;color:var(--ink)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:13px;font-weight:700;color:var(--plum)}
.field select,.field textarea,.field input{border:1px solid var(--line);background:#fffaf6;border-radius:9px;padding:11px 12px;outline:none;color:var(--ink)}
.field select:focus,.field textarea:focus,.field input:focus{border-color:var(--plum);box-shadow:0 0 0 3px rgba(84,44,80,.12)}
.field.full{grid-column:1/-1}
.field textarea{min-height:84px;resize:vertical}
.form-note{font-size:12px;color:var(--muted);margin:13px 0}
.form-status{font-size:13px;margin-top:9px;min-height:21px;color:var(--sage)}
.site-footer{background:#271827;color:#d9cbd5;padding:52px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px}
.footer-brand{font-size:20px;font-weight:800;color:#fff;margin-bottom:13px}
.footer-title{color:#fff;font-weight:700;margin-bottom:13px}
.footer-link{display:block;color:#bcaeb9;font-size:13px;margin:8px 0;transition:color var(--ease)}
.footer-link:hover{color:#fff}
.footer-copy{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:20px;font-size:12px;color:#a997a5;display:flex;justify-content:space-between;gap:15px}
.age-gate{position:fixed;inset:0;background:rgba(39,24,39,.72);z-index:80;display:grid;place-items:center;padding:20px}
.age-card{width:min(470px,100%);background:var(--paper);border-radius:22px;padding:38px;text-align:center;box-shadow:0 22px 70px rgba(0,0,0,.28)}
.age-mark{width:62px;height:62px;border-radius:50%;background:var(--rose);color:var(--plum);display:grid;place-items:center;font-size:22px;font-weight:800;margin:0 auto 20px}
.age-card h2{color:var(--plum);font-size:28px;margin-bottom:10px}
.age-card p{color:var(--muted);font-size:14px}
.age-actions{display:flex;gap:10px;margin-top:24px}
.age-actions .btn{flex:1}
.age-links{margin-top:17px;font-size:12px;color:var(--muted)}
.age-links a{text-decoration:underline}
.hidden{display:none!important}
@media(max-width:1024px){.hero-grid{gap:35px}.matrix{grid-template-columns:1.3fr 1fr}.matrix-card.large{grid-row:span 2}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}
@media(max-width:768px){
 .container{width:min(100% - 28px,620px)}.navbar{height:66px;display:flex;justify-content:space-between}.brand{font-size:16px;text-align:center}.brand small{font-size:9px}.nav-side{display:none}.menu-toggle{display:block}.mobile-panel.open{display:block}
 .hero{padding:50px 0 42px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:46px}.hero-poster{min-height:310px}.section{padding:58px 0}.section-head{display:block}.section-head p{margin-top:12px}.matrix{grid-template-columns:1fr 1fr;grid-template-rows:auto}.matrix-card.large{grid-column:1/-1;grid-row:auto;min-height:260px}.result-wrap,.faq-grid,.cta-box{grid-template-columns:1fr;gap:22px}.cta-box{padding:28px}.footer-grid{grid-template-columns:1fr 1fr}.footer-copy{display:block}.footer-copy span{display:block;margin-top:8px}
}
@media(max-width:520px){
 .hero h1{font-size:38px}.hero-copy{font-size:15px}.actions .btn{width:100%}.metrics{margin-right:-14px;padding-right:14px}.metric{min-width:220px}.matrix{grid-template-columns:1fr}.matrix-card.large{grid-column:auto}.video-row{grid-template-columns:86px 1fr}.video-row .btn{grid-column:2;width:max-content}.thumb{height:60px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.age-card{padding:28px 20px}.age-actions{flex-direction:column}.footer-grid{grid-template-columns:1fr}
}

/* roulang page: category1 */
:root{
 --plum:#382036;
 --plum-2:#542c50;
 --plum-3:#74496e;
 --ink:#2e2630;
 --muted:#786d78;
 --paper:#fbf7f2;
 --cream:#f3eae2;
 --rose:#edd4d0;
 --coral:#c97868;
 --sage:#6c9589;
 --amber:#c99a58;
 --line:#e7dcd6;
 --white:#fffdfb;
 --radius:18px;
 --shadow:0 16px 42px rgba(56,32,54,.10);
 --ease:220ms ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);line-height:1.7;font-size:15px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer;border:0}
img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(251,247,242,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navbar{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.nav-side{display:flex;align-items:center;gap:24px}
.nav-side.right{justify-content:flex-end}
.nav-link{position:relative;color:var(--muted);font-size:14px;padding:26px 0;transition:color var(--ease)}
.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:17px;height:2px;background:var(--coral);transform:scaleX(0);transition:transform var(--ease)}
.nav-link:hover,.nav-link.active{color:var(--plum)}
.nav-link.active:after,.nav-link:hover:after{transform:scaleX(1)}
.brand{color:var(--plum);font-weight:800;letter-spacing:-.05em;font-size:19px;white-space:nowrap}
.brand small{display:block;text-align:center;color:var(--coral);font-size:10px;letter-spacing:.14em;font-weight:600}
.search-mini{display:flex;align-items:center;border:1px solid var(--line);background:var(--white);border-radius:9px;height:40px;padding:0 11px;gap:8px}
.search-mini input{border:0;outline:0;background:transparent;width:108px;color:var(--ink)}
.search-mini button{background:transparent;color:var(--plum);font-size:17px}
.menu-toggle{display:none;background:transparent;color:var(--plum);font-size:25px;width:44px;height:44px}
.mobile-panel{display:none;border-top:1px solid var(--line);padding:10px 20px 18px;background:var(--paper)}
.mobile-panel a{display:block;padding:10px 0;color:var(--plum);border-bottom:1px solid var(--line)}
.eyebrow{font-size:12px;letter-spacing:.13em;color:var(--coral);font-weight:700}
.page-head{padding:64px 0 42px;border-bottom:1px solid var(--line)}
.page-head-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:end}
.page-head h1{font-size:clamp(36px,5vw,64px);line-height:1.1;letter-spacing:-.07em;color:var(--plum);margin:14px 0 18px}
.page-head p{max-width:690px;color:var(--muted);font-size:16px;margin:0}
.status-panel{background:var(--plum);color:#fff;padding:24px;border-radius:var(--radius);box-shadow:var(--shadow)}
.status-panel strong{font-size:34px;display:block;line-height:1.1}
.status-panel span{color:#decbd9;font-size:13px}
.status-line{display:flex;justify-content:space-between;padding-top:20px;margin-top:18px;border-top:1px solid rgba(255,255,255,.16);font-size:13px}
.status-line b{color:#f4d4cc}
.section{padding:58px 0}
.browser-layout{display:grid;grid-template-columns:236px 1fr;gap:30px;align-items:start}
.filter-box{position:sticky;top:104px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.filter-box h2{color:var(--plum);font-size:19px;margin:0 0 18px}
.filter-group{border-top:1px solid var(--line);padding:15px 0}
.filter-group:first-of-type{border-top:0;padding-top:0}
.filter-label{display:block;color:var(--plum);font-weight:700;font-size:13px;margin-bottom:9px}
.filter-option{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;margin:8px 0}
.filter-option input{accent-color:var(--plum)}
.btn{min-height:44px;padding:9px 17px;border-radius:10px;border:1px solid transparent;transition:transform var(--ease),background var(--ease),box-shadow var(--ease),border-color var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(56,32,54,.12)}
.btn:focus-visible,.nav-link:focus-visible,.faq-q:focus-visible,.menu-toggle:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(201,120,104,.35);outline-offset:3px}
.btn-primary{background:var(--plum);color:var(--white)}
.btn-primary:hover{background:var(--plum-2)}
.btn-secondary{background:transparent;border-color:var(--plum);color:var(--plum)}
.btn-secondary:hover{background:var(--rose)}
.btn-danger{background:#f5e2de;color:#8d4d45;border-color:#e7c2ba}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.content-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px}
.content-toolbar h2{font-size:24px;color:var(--plum);margin:0}
.toolbar-actions{display:flex;gap:9px;align-items:center}
.toolbar-actions select,.search-wide{height:42px;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink);padding:0 12px}
.search-wide{display:flex;align-items:center;gap:8px;width:215px}
.search-wide input{width:100%;border:0;outline:0;background:transparent}
.video-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}
.video-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}
.video-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d6b9bd}
.video-card.featured{grid-row:span 2}
.cover{aspect-ratio:16/9;background:linear-gradient(135deg,#4b2c4c,#bd847c 54%,#e8cfc4);position:relative;overflow:hidden}
.featured .cover{aspect-ratio:4/3}
.cover:before{content:"";position:absolute;width:55%;height:140%;right:-14%;top:-18%;background:rgba(255,245,237,.18);transform:rotate(20deg)}
.cover:after{content:"播放";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(56,32,54,.9);color:#fff;font-size:13px;opacity:.86;transition:transform var(--ease),opacity var(--ease)}
.video-card:hover .cover:after{transform:translate(-50%,-50%) scale(1.08);opacity:1}
.cover-meta{position:absolute;left:12px;right:12px;bottom:10px;display:flex;justify-content:space-between;color:#fff;font-size:12px;z-index:1}
.card-body{padding:17px}
.card-body h3{font-size:18px;line-height:1.35;color:var(--plum);margin:4px 0 8px}
.card-body p{font-size:13px;color:var(--muted);margin:0 0 14px}
.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-size:11px;background:var(--cream);color:var(--plum);margin-right:5px}
.badge.green{background:#e2eee9;color:#47766a}
.badge.amber{background:#f5ecd9;color:#8b6931}
.card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted);font-size:12px}
.card-foot .btn{min-height:36px;padding:6px 12px;font-size:13px}
.side-section{margin-top:24px;background:#f4e7e3;border-radius:var(--radius);padding:21px}
.side-section h3{font-size:18px;color:var(--plum);margin:0 0 12px}
.side-item{padding:12px 0;border-top:1px solid rgba(84,44,80,.15)}
.side-item:first-of-type{border-top:0}
.side-item strong{display:block;color:var(--plum);font-size:14px}
.side-item span{font-size:12px;color:var(--muted)}
.empty-state{display:none;text-align:center;background:var(--white);border:1px dashed #d5c2bd;border-radius:var(--radius);padding:45px 20px;color:var(--muted)}
.empty-state strong{display:block;color:var(--plum);font-size:20px;margin-bottom:6px}
.info-strip{margin-top:24px;padding:16px 18px;border-left:3px solid var(--sage);background:#eaf2ef;color:#4d6f67;border-radius:8px;font-size:13px}
.faq-section{background:var(--cream)}
.faq-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:50px}
.faq-index{font-size:72px;line-height:1;color:var(--rose);font-weight:800}
.faq-title{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-.05em;color:var(--plum);margin:12px 0}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;background:transparent;color:var(--plum);padding:20px 0;font-weight:700;font-size:16px}
.faq-q span:last-child{font-size:24px;color:var(--coral);transition:transform var(--ease)}
.faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;color:var(--muted);transition:max-height var(--ease),padding var(--ease)}
.faq-item.open .faq-a{max-height:180px;padding:0 35px 20px 0}
.cta-section{padding:0 0 82px}
.cta-box{background:var(--plum);border-radius:24px;padding:42px;display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;color:#fff}
.cta-box h2{font-size:clamp(28px,4vw,43px);line-height:1.2;letter-spacing:-.05em;margin:12px 0}
.cta-box p{color:#decbd9}
.feedback-form{display:grid;gap:13px}
.feedback-form label{font-size:13px;color:#f6e9e4}
.feedback-form select,.feedback-form textarea{width:100%;border:1px solid rgba(255,255,255,.2);background:#fffaf7;color:var(--ink);border-radius:9px;padding:10px}
.feedback-form textarea{min-height:90px;resize:vertical}
.feedback-form .btn{justify-self:start;background:var(--coral);color:#fff}
.form-status{font-size:13px;color:#f2d4c8;min-height:22px}
.site-footer{background:var(--plum);color:#fff;padding:48px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.footer-brand{font-size:20px;font-weight:800;margin-bottom:10px}
.footer-title{font-size:13px;color:#f0c6bd;font-weight:700;margin-bottom:12px}
.footer-link{display:block;color:#cbbbc6;font-size:13px;margin:7px 0;transition:color var(--ease)}
.footer-link:hover{color:#fff}
.footer-copy{border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:17px;display:flex;justify-content:space-between;gap:20px;color:#bcaeb9;font-size:12px}
.age-gate{position:fixed;inset:0;z-index:80;background:rgba(56,32,54,.72);display:grid;place-items:center;padding:20px}
.age-card{width:min(500px,100%);background:var(--paper);border-radius:22px;padding:35px;box-shadow:0 25px 80px rgba(25,12,24,.3);text-align:center}
.age-card .mark{width:50px;height:50px;border-radius:14px;background:var(--rose);color:var(--plum);display:grid;place-items:center;margin:0 auto 18px;font-weight:800}
.age-card h2{color:var(--plum);font-size:27px;margin:0 0 10px}
.age-card p{color:var(--muted);font-size:14px;margin:0 auto 22px;max-width:390px}
.age-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.age-note{font-size:11px;color:var(--muted);margin-top:18px}
@media(max-width:1024px){
 .browser-layout{grid-template-columns:205px 1fr}
 .navbar{gap:14px}.nav-side{gap:15px}.search-mini input{width:82px}
}
@media(max-width:768px){
 .container{width:min(100% - 28px,620px)}
 .navbar{height:68px;grid-template-columns:44px 1fr 44px}
 .nav-side{display:none}.brand{text-align:center;font-size:16px;overflow:hidden;text-overflow:ellipsis}
 .brand small{font-size:8px}.menu-toggle{display:block}
 .mobile-panel.open{display:block}.mobile-panel .search-mini{margin-top:12px}
 .page-head{padding:42px 0 30px}.page-head-grid{grid-template-columns:1fr;gap:24px}
 .browser-layout{grid-template-columns:1fr}.filter-box{position:static}
 .video-grid{grid-template-columns:1fr}
 .video-card.featured{grid-row:auto}
 .featured .cover{aspect-ratio:16/9}
 .content-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions{flex-wrap:wrap}
 .search-wide{flex:1;min-width:180px}
 .faq-grid,.cta-box{grid-template-columns:1fr;gap:25px}
 .cta-box{padding:28px 22px}.footer-grid{grid-template-columns:1fr 1fr}
 .footer-copy{flex-direction:column;gap:5px}
}
@media(max-width:520px){
 .page-head h1{font-size:38px}.section{padding:42px 0}
 .filter-box{padding:17px}.toolbar-actions select{width:100%}
 .toolbar-actions{display:grid;grid-template-columns:1fr 1fr}
 .search-wide{grid-column:1/-1;width:100%}
 .card-body{padding:15px}.age-card{padding:28px 20px}
 .footer-grid{grid-template-columns:1fr}
}
