/* anysexfr.com — 独立设计 P16 (list_index)
   Manrope 标题 / Figtree 正文 · 暖白底 + 淡青面层 · 深青 CTA 只用于按钮与发丝线 */

@font-face{font-family:'Manrope';src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-weight:300 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:'Manrope';src:url('/assets/fonts/manrope-latin-ext.woff2') format('woff2');font-weight:300 800;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF}
@font-face{font-family:'Figtree';src:url('/assets/fonts/figtree-latin.woff2') format('woff2');font-weight:300 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:'Figtree';src:url('/assets/fonts/figtree-latin-ext.woff2') format('woff2');font-weight:300 800;font-style:normal;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF}

:root{
  --bg:#fcfcfa;
  --ink:#151517;
  --mut:#54565b;
  --soft:#8b8d92;
  --panel:#eef3f4;
  --cta:#1f4a5c;
  --cta-ink:#ffffff;
  --line:rgba(21,21,23,.15);
  --hair:rgba(21,21,23,.08);
  --wrap:1240px;
  --measure:572px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Figtree',system-ui,sans-serif;font-size:17px;line-height:1.78;font-weight:400}
img{max-width:100%;display:block;height:auto}
h1,h2,h3{font-family:'Manrope',system-ui,sans-serif;font-weight:700;letter-spacing:-.015em;margin:0;line-height:1.14}
p{margin:0 0 18px}
ul{margin:0 0 18px;padding-left:20px}
li{margin:0 0 8px}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 32px}
.eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--cta);margin:0 0 10px;display:flex;align-items:center;gap:10px}
.eyebrow::after{content:"";flex:0 0 34px;height:1px;background:var(--line)}

/* ---------- header ---------- */
.top{border-top:3px solid var(--cta);background:var(--bg);border-bottom:1px solid var(--hair)}
.top__in{display:flex;align-items:center;gap:28px;min-height:74px;flex-wrap:wrap}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:'Manrope',sans-serif;font-weight:800;font-size:22px;letter-spacing:-.02em}
.brand span{display:block;width:9px;height:9px;border-radius:2px;background:var(--cta)}
.nav{display:flex;flex-wrap:wrap;gap:22px;font-size:15px}
.nav a{text-decoration:none;color:var(--ink);padding:3px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current="page"]{border-bottom-color:var(--cta)}
.top__end{margin-left:auto;display:flex;align-items:center;gap:12px}
.age{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--mut);border:1px solid var(--line);border-radius:999px;padding:4px 8px;line-height:1}
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--cta);color:var(--cta-ink);text-decoration:none;font-family:'Figtree',sans-serif;font-weight:700;font-size:15.5px;min-height:46px;padding:0 22px;border-radius:999px}
.btn:hover{background:#173a48}
.btn--sm{min-height:42px;font-size:14.5px;padding:0 18px}

/* ---------- hero: index ---------- */
.idx{padding:24px 0 34px}
.idx__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 44px;align-items:end;padding-bottom:16px;border-bottom:1px solid var(--line)}
.idx__head h1{font-size:clamp(29px,3.2vw,42px);max-width:25ch;letter-spacing:-.025em}
.idx__lede{margin:12px 0 0;color:var(--mut);font-size:17px;max-width:52ch}
.idx__buy{display:flex;align-items:center;gap:12px;padding-bottom:4px}
.idx__buy .btn{min-height:56px;padding:0 30px;font-size:16px}
.idx__grid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:40px;padding-top:18px;align-items:start}
.rows{list-style:none;margin:0;padding:0}
.rows li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 12px;padding:13px 0;border-bottom:1px solid var(--hair)}
.rows li:first-child{border-top:1px solid var(--hair)}
.rows .num{grid-row:span 2;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--hair);border-radius:3px;font-family:'Manrope',sans-serif;font-size:12.5px;font-weight:700;color:var(--cta)}
.rows .nm{font-family:'Manrope',sans-serif;font-weight:700;font-size:16.5px;letter-spacing:-.01em;align-self:end}
.rows .ds{font-size:13.6px;line-height:1.5;color:var(--mut)}
.idx__fig{margin:0}
.idx__fig img{width:100%;aspect-ratio:1440/920;object-fit:cover;object-position:top center;border:1px solid var(--hair);border-radius:6px;background:#111}
.idx__cap{font-size:13px;color:var(--soft);margin-top:9px;max-width:48ch}

/* ---------- partners ---------- */
.band{background:var(--panel);border-top:1px solid rgba(31,74,92,.14);border-bottom:1px solid rgba(31,74,92,.14);padding:26px 0 24px}
.band__in{max-width:1140px;margin:0 auto;padding:0 32px}
.band__label{display:flex;align-items:center;gap:16px;margin:0 0 16px;font-size:12px;font-weight:700;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:#374151}
.band__label::after{content:"";flex:1 1 auto;height:1px;background:rgba(31,74,92,.2)}
.band__row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;justify-items:center;gap:0}
.band__a{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;line-height:0;opacity:.94;overflow:hidden}
.band__a:hover{opacity:1}
.band__a img{height:auto;width:auto;max-height:28px;max-width:100%;object-fit:contain}
.band__a[href$="/go/livejasmin"] img{max-height:23px}
.band__a[href$="/go/faphouse"] img{max-height:26px}

/* ---------- sections ---------- */
.sec{padding:44px 0 6px}
.sec--first{padding-top:36px}
.sec h2{font-size:clamp(23px,2.1vw,29px);margin:0 0 16px;max-width:27ch}
.sec .intro{color:var(--mut);font-size:17.5px;max-width:var(--measure);margin-bottom:22px}
.prose p{max-width:var(--measure)}

/* rows_detail: text + numbered rail */
.detail{display:grid;grid-template-columns:minmax(0,1fr) 226px;gap:44px;align-items:start}
.detail__aside{background:var(--panel);border-radius:6px;padding:18px 20px}
.detail__aside p{margin:0 0 10px;font-size:13.5px;line-height:1.55;color:#2d3f46}
.detail__aside strong{display:block;font-family:'Manrope',sans-serif;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--cta);margin-bottom:8px}

/* shots */
.shots{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:24px}
.shots figure{margin:0}
.shots img{width:100%;border:1px solid var(--hair);border-radius:6px;aspect-ratio:1200/430;object-fit:cover;object-position:top left;background:#111}
.shots figcaption{font-size:13.5px;line-height:1.55;color:var(--soft);margin-top:9px;max-width:46ch}

/* facts */
.facts{background:var(--panel);border-radius:8px;padding:26px 30px 12px;margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.facts div{display:grid;grid-template-columns:132px 1fr;gap:12px;border-bottom:1px solid rgba(31,74,92,.14);padding:11px 0;font-size:15px}
.facts dt{font-family:'Manrope',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cta);padding-top:3px}
.facts dd{margin:0}

/* page head */
.phead{padding:36px 0 30px;border-bottom:1px solid var(--hair);background:linear-gradient(180deg,#f4f8f9,var(--bg))}
.phead h1{font-size:clamp(28px,2.9vw,38px);max-width:26ch;letter-spacing:-.025em}
.phead p{margin:14px 0 0;color:var(--mut);max-width:var(--measure)}

/* section entries */
.item{border-top:1px solid var(--hair);padding:20px 0 4px;display:grid;grid-template-columns:52px minmax(0,1fr) 214px;gap:6px 20px;align-items:start}
.item__n{font-family:'Manrope',sans-serif;font-weight:700;font-size:13px;color:var(--cta);letter-spacing:.06em;padding-top:4px}
.item h3{font-size:18px;margin:0 0 6px}
.item p{margin:0 0 14px;max-width:552px;font-size:16px;line-height:1.72;color:#2b2c30}
.item__meta{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding-top:5px}

/* faq */
.faq{max-width:800px}
.faq details{border-top:1px solid var(--hair);padding:15px 0}
.faq summary{cursor:pointer;list-style:none;font-family:'Manrope',sans-serif;font-weight:700;font-size:16.5px;line-height:1.45;display:grid;grid-template-columns:30px 1fr;gap:8px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"?";color:var(--cta);font-family:'Manrope',sans-serif;font-size:14px;border:1px solid var(--line);border-radius:999px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;margin-top:2px}
.faq details[open] summary::before{content:"!";}
.faq .ans{padding:10px 0 0 30px;font-size:16px;line-height:1.74;color:#2b2c30;max-width:560px}
.faq .ans p{margin:0 0 12px}

/* guide chapters */
.step{border-top:1px solid var(--hair);padding:24px 0 4px;display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px 24px}
.step__n{font-family:'Manrope',sans-serif;font-size:24px;font-weight:800;color:var(--panel);-webkit-text-stroke:1px var(--cta);letter-spacing:-.02em}
.step h2{font-size:21px;margin:0 0 10px;max-width:28ch}
.step p{max-width:var(--measure)}

/* table */
.tbl{width:100%;border-collapse:collapse;margin:20px 0 6px;font-size:15.5px;max-width:780px;background:#fff;border:1px solid var(--hair);border-radius:6px;overflow:hidden}
.tbl caption{caption-side:top;text-align:left;font-size:13px;color:var(--soft);padding-bottom:10px}
.tbl th,.tbl td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--hair)}
.tbl thead th{background:var(--panel);font-family:'Manrope',sans-serif;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--cta)}
.tbl td:first-child{font-weight:600}

/* note */
.note{border-left:2px solid var(--cta);padding:2px 0 2px 18px;margin:24px 0 0;max-width:548px}
.note p{margin:0;font-size:15.5px;color:#2b2c30}

/* footer: centred single */
.ft{margin-top:52px;border-top:1px solid var(--line);padding:34px 0 46px;text-align:center}
.ft__in{max-width:620px;margin:0 auto;padding:0 32px}
.ft .brand{justify-content:center;font-size:19px;margin-bottom:12px}
.ft p{margin:0 auto 10px;font-size:14px;color:var(--mut);line-height:1.65;max-width:52ch}
.ft .fine{font-size:12.5px;color:var(--soft)}

@media (max-width:1023px){
  .idx__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px}
  .detail{grid-template-columns:1fr}
  .item{grid-template-columns:44px minmax(0,1fr);}
  .item__meta{display:none}
}
@media (max-width:860px){
  .idx__head{grid-template-columns:1fr;align-items:start}
  .idx__buy{padding-bottom:0}
  .idx__grid{grid-template-columns:1fr;gap:26px}
  .facts{grid-template-columns:1fr;padding:22px 22px 8px}
  .shots{grid-template-columns:1fr;gap:22px}
  .step{grid-template-columns:1fr}
  .step__n{font-size:18px}
}
@media (max-width:767px){
  .top__in{min-height:0;padding:12px 0 0;gap:10px}
  .top__end{margin-left:auto}
  .brand{font-size:20px}
  .nav{order:3;width:100%;display:grid;grid-template-columns:repeat(3,max-content);gap:9px 18px;font-size:15px;padding:10px 0 12px}
  .wrap{padding:0 18px}
  .band__in{padding:0 18px}
  .band__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 0}
  .band__a img{max-height:22px!important;max-width:100%}
  .idx{padding:16px 0 22px}
  .idx__head h1{font-size:26px}
  .idx__lede{font-size:15px;line-height:1.6;margin-top:8px}
  .idx__buy .btn{width:100%;min-height:52px}
  .idx__buy{width:100%;flex-wrap:nowrap;gap:10px}
  .idx__buy .btn{flex:1 1 auto;min-width:0;padding:0 12px}
  .idx__grid{gap:20px}
  .rows li{padding:7px 0}
  .rows .nm{font-size:15.5px}
  .rows .ds{font-size:12.6px;line-height:1.42}
  .rows .num{width:32px;height:32px;font-size:11.5px}
  .rows li{grid-template-columns:34px minmax(0,1fr);gap:0 10px}
  .idx__fig img{aspect-ratio:1440/660}
  .idx__cap{font-size:12px;margin-top:7px}
  .sec{padding:30px 0 4px}
  .phead{padding:24px 0 20px}
  .faq .ans{padding-left:0}
  .tbl{font-size:14.5px}
  .tbl th,.tbl td{padding:9px 10px}
  .facts div{grid-template-columns:120px 1fr}
}
