.public-home{background:#0b0d16}
.public-home .shell{max-width:1440px;padding-inline:clamp(24px,4.3vw,72px)}
.public-hero,.public-creator{position:relative;display:flex;align-items:center;background-size:cover;background-position:center;isolation:isolate}
.public-hero{min-height:clamp(480px,40vw,660px);background-image:url('assets/public-hero-nyc-calm.webp')}
.public-hero:before,.public-creator:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080b16e8 0%,#080b16bb 28%,#080b1640 52%,transparent 76%),linear-gradient(0deg,#0b0d1666,transparent 30%)}
.public-hero>.shell,.public-creator>.shell{width:100%;padding-block:50px}
.public-copy{max-width:540px}
.public-copy h1,.public-copy h2,.public-featured h2,.public-stories h2{font-family:Inter,'Noto Sans TC',system-ui,-apple-system,'Segoe UI',sans-serif;font-weight:700;letter-spacing:.02em;margin:0;text-wrap:balance}
.public-copy h1{font-size:clamp(40px,4.5vw,66px);line-height:1.2}
.public-copy h1 span,.public-copy h2 span{display:block}
.public-copy p{font-size:clamp(16px,1.55vw,21px);line-height:1.65;white-space:pre-line;margin:20px 0 26px;color:#e4e1ee}
.public-copy .eyebrow{font-size:15px;letter-spacing:.12em;color:#bb9aff;margin-bottom:18px}
.public-home .button{border-radius:9px;min-height:52px;padding-inline:31px;background:#10132277;border-color:#aa8cd2;font-size:16px}
@media(min-width:981px){.public-home .public-hero .actions .button{min-width:196px}.public-home .public-hero .actions .button.primary,.public-home .public-creator .actions .button.primary{min-width:210px;position:relative;justify-content:center;padding-inline:58px}.public-home .button-brand-mark{position:absolute;left:31px;width:21px;height:21px;margin-right:0;flex:none}.public-home .public-creator .actions .button.primary>span:last-child:not(.button-brand-mark){position:absolute;right:31px}}
.public-site-active .button.primary{background:linear-gradient(180deg,#9450e4 0%,#8338e2 52%,#6920d3 100%);border-color:#a875f3;color:#fff;font-weight:700;box-shadow:0 4px 20px #7828d12b}
.public-site-active .button.primary:hover{filter:brightness(1.06)}
.public-site-active .button:focus-visible,.public-site-active a:focus-visible{outline:3px solid #d2b2ff;outline-offset:4px}
.public-copy small{display:block;font-size:13px;color:#aaa6be;margin-top:18px}
.public-featured{padding-top:50px;padding-bottom:30px}
.public-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.public-section-head .eyebrow{font-size:11px;letter-spacing:.32em;color:#b18af5;margin-bottom:9px}
.public-featured h2{font-size:36px;line-height:1.2}
.public-section-head>a,.public-learn{color:#d1bbf8;font-size:14px}
.public-section-head>a:hover,.public-learn:hover{text-decoration:underline;text-underline-offset:5px}
.public-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.public-featured-empty{aspect-ratio:16/9;border:1px solid #ffffff12;border-radius:9px;background:#121420}
.public-stories{display:flex;align-items:center;gap:25px;padding-top:25px;padding-bottom:40px}
.public-stories h2{font-size:clamp(24px,2.1vw,30px);flex:none}
.public-story-links{display:flex;gap:9px;flex-wrap:wrap;flex:1;justify-content:flex-end}
.public-story-links>a{border:1px solid #585071;background:#161727;border-radius:999px;padding:12px 20px;font-size:14px;text-align:center}
.public-story-links>a:hover{background:#302442;border-color:#aa83e1}
.public-creator{min-height:340px;border-top:1px solid #ffffff12;background-image:url('assets/public-creator.webp')}
.public-creator:before{background:linear-gradient(90deg,#090c17f2 0%,#090c17d9 27%,#090c1766 48%,transparent 76%)}
.public-creator .public-copy{max-width:470px}
.public-creator h2{font-size:clamp(30px,3vw,43px);line-height:1.28}
.public-creator p{font-size:17px;margin:18px 0 24px}
.public-learn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding-inline:10px}
.public-home-active .footer{padding-block:28px}
@media(min-width:981px){.public-site-active .header-in{gap:18px}.public-site-active .nav{gap:18px;font-size:14px}.public-site-active .brand{font-size:24px}.public-site-active .search-wrap{width:clamp(120px,14vw,220px)}.public-site-active .language-wrap{margin-left:0}.public-site-active .account-link{border-radius:8px}}
@media(min-width:981px) and (max-width:1350px){.public-site-active .header-in{flex-wrap:wrap;padding-block:12px;row-gap:0}.public-site-active .nav{order:5;width:100%;height:44px;justify-content:center}.public-site-active .search-wrap{width:min(320px,30vw)}}
@media(max-width:1100px){.public-stories{flex-direction:column;align-items:flex-start;gap:18px}.public-story-links{justify-content:flex-start}.public-copy{max-width:470px}}
@media(max-width:700px){.public-hero{min-height:640px;align-items:flex-end;background-position:68% top}.public-hero:before{background:linear-gradient(0deg,#0b0d16 0%,#0b0d16e8 31%,#0b0d1640 65%,#0b0d1600 100%)}.public-hero>.shell{padding-top:260px;padding-bottom:36px}.public-copy h1{font-size:38px;max-width:420px}.public-copy p{font-size:16px;margin:16px 0 22px}.public-copy .eyebrow{font-size:13px;margin-bottom:12px}.public-home .button{font-size:14px;min-height:48px;padding-inline:18px}.public-featured{padding-top:32px;padding-bottom:10px}.public-featured h2{font-size:29px}.public-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-section-head>a{font-size:13px}.public-stories{padding-top:26px;padding-bottom:30px}.public-stories h2{font-size:24px}.public-story-links>a{padding:10px 15px;font-size:13px}.public-creator{min-height:520px;align-items:flex-end;background-position:65% top}.public-creator:before{background:linear-gradient(0deg,#0b0d16 0%,#0b0d16eb 37%,#0b0d1633 75%,transparent)}.public-creator>.shell{padding-top:230px;padding-bottom:32px}.public-creator h2{font-size:30px}.public-creator p{font-size:15px}.public-copy small{font-size:12px}}


/* Public brand styles stay separate from creator/admin and member interfaces. */
[data-nav][hidden]{display:none!important}
.public-stories{display:block}
.public-stories h2{margin-bottom:20px}
.public-story-links{justify-content:flex-start}
.public-story-links>a:before{content:'✦';color:#b985ff;margin-right:9px}
.public-membership{padding-top:28px;padding-bottom:42px}
.public-membership-heading{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.public-membership h2{font-size:clamp(28px,3vw,38px);margin:0;line-height:1.25;letter-spacing:-.02em}
.public-membership .public-section-head p{color:#c5c0d3;font-size:16px;line-height:1.6;margin:12px 0 0}
.public-coming-soon{color:#cda5ff;background:#7829c82b;border:1px solid #9b5ddd66;border-radius:8px;padding:5px 10px;font-size:12px}
.public-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.public-price-card{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #6b5b9270;border-radius:12px;background:linear-gradient(135deg,#171b2c,#10131f)}
.public-price-card.featured{border-color:#ae6cff;background:linear-gradient(150deg,#2a1b46,#171527);box-shadow:0 0 18px #8533d414}
.public-price-badge{min-height:26px;margin-bottom:16px;font-size:12px;font-weight:700;align-self:flex-start}
.public-price-badge.has-badge{background:#b777f4;color:#190d30;border-radius:999px;padding:5px 11px}
.public-price-card h3{font-size:20px;margin:0 0 12px;line-height:1.4}
.public-plan-price{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:7px;row-gap:2px}
.public-plan-price strong{font-size:clamp(29px,3vw,44px);letter-spacing:-.035em;line-height:1.15}
.public-plan-price>span{font-size:16px;color:#d9d1e8}
.public-price-card ul{list-style:none;padding:24px 0 0;margin:24px 0 28px;border-top:1px solid #9270c133;display:grid;gap:14px}
.public-price-card li{display:flex;align-items:baseline;gap:12px;font-size:14px;line-height:1.5}
.public-price-card li>span{font-size:20px;font-weight:700;color:#ba83fb}
.public-plan-button{margin-top:auto;width:100%;min-height:48px;background:#252037;color:#fff;border:1px solid #8e7baa;border-radius:7px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}
.public-price-card.featured .public-plan-button{background:#a64de5;border-color:#ba77ed;color:#fff}
.public-plan-button:hover{background:#403250;border-color:#c69af1}
.public-price-card.featured .public-plan-button:hover{background:#8d35ca}
.public-plan-button:focus-visible{outline:2px solid #d6b2ff;outline-offset:3px}
.public-pricing-notice{text-align:center;color:#aaa6be;font-size:13px;line-height:1.65;margin:20px 0 0}
@media(max-width:800px){.public-pricing-grid{grid-template-columns:1fr}.public-price-card{padding:24px}.public-price-badge:empty{display:none}.public-plan-price strong{font-size:38px}.public-membership{padding-top:18px;padding-bottom:32px}}

.public-plan-detail{min-height:22px;margin:14px 0 0;font-size:13px;line-height:1.65;color:#c8bddc}
.public-price-card ul{margin-top:18px}
.public-card-footnote{font-size:12px;color:#c6bdd8;line-height:1.75;margin:14px 0 0}

/* Phone and small-tablet layout: keep readable cards instead of shrinking desktop columns. */
@media(max-width:980px){
  .public-pricing-grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .public-price-card{padding:24px;overflow-wrap:anywhere}
  .public-price-badge:empty{display:none}
  .public-plan-price strong{font-size:40px}
  .public-membership{padding-top:24px;padding-bottom:36px}
  .public-site-active .header-in{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand account menu" "search search language" "nav nav nav";gap:12px 10px;padding-block:12px}
  .public-site-active .brand{grid-area:brand;min-width:0;font-size:20px;letter-spacing:.06em;gap:7px}
  .public-site-active .brand-mark{width:24px;height:24px}
  .public-site-active .account-link{grid-area:account;margin:0;min-height:44px;display:inline-flex;align-items:center;padding:8px 12px}
  .public-site-active .mobile-menu{grid-area:menu;margin:0;min-height:44px;padding:8px 10px}
  .public-site-active .search-wrap{grid-area:search;min-width:0;width:100%;margin:0}
  .public-site-active .search{min-height:44px;font-size:16px}
  .public-site-active .language-wrap{grid-area:language;width:110px;margin:0}
  .public-site-active .language-select{min-height:44px}
  .public-site-active .nav{grid-area:nav;padding:0}
  .public-site-active .nav:not(.open){display:none}
  .public-site-active .nav a{min-height:44px}
  .public-site-active .footer .shell{line-height:1.8;overflow-wrap:anywhere}
}
@media(max-width:700px){
  .public-site-active .shell,.public-home .shell{padding-inline:20px}
  .public-hero{min-height:0;background-color:#0b0d16;background-repeat:no-repeat;background-size:auto 360px;background-position:68% top}
  .public-hero:before{background:linear-gradient(180deg,transparent 0px,#0b0d1633 200px,#0b0d16 350px)}
  .public-hero>.shell{padding-top:300px;padding-bottom:36px}
  .public-copy{max-width:100%;min-width:0}
  .public-copy h1{font-size:clamp(30px,8vw,38px);overflow-wrap:anywhere}
  .public-copy h2,.public-copy p{overflow-wrap:anywhere}
  .public-copy .actions{gap:12px}
  .public-copy .actions .button{flex:1 1 140px;min-width:0;white-space:normal;text-align:center;padding:12px 16px}
  .public-section-head{align-items:flex-start;flex-wrap:wrap;gap:12px}
  .public-featured h2{font-size:28px}
  .public-story-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:10px}
  .public-story-links>a{min-width:0;min-height:44px;padding:11px 12px;overflow-wrap:anywhere}
  .public-membership-heading{gap:10px}
  .public-price-card{padding:24px 22px}
  .public-price-card h3{font-size:22px}
  .public-plan-price strong{font-size:42px}
  .public-plan-detail,.public-price-card li{font-size:15px}
  .public-card-footnote{font-size:13px}
  .public-creator{min-height:0;background-color:#0b0d16;background-repeat:no-repeat;background-size:auto 340px;background-position:65% top}
  .public-creator:before{background:linear-gradient(180deg,transparent 0px,#0b0d1633 180px,#0b0d16 330px)}
  .public-creator>.shell{padding-top:280px;padding-bottom:32px}
  .public-learn{justify-content:center}
}
@media(max-width:360px){
  .public-site-active .shell,.public-home .shell{padding-inline:16px}
  .public-site-active .brand{font-size:18px;letter-spacing:.02em;gap:5px}
  .public-site-active .brand-mark{width:20px;height:20px}
  .public-site-active .header-in{column-gap:7px}
  .public-site-active .account-link,.public-site-active .mobile-menu{font-size:12px;padding-inline:8px}
}

/* Approved mobile homepage and independent left/right panels. */
.public-mobile-membership,.public-mobile-tabs,.public-mobile-feed{display:none}
.public-mobile-dialog{border:1px solid #8c63b04d;background:#0b0d16;color:#f7f5ff;padding:24px;max-height:none;height:100%;height:100dvh;max-width:none;width:min(390px,90vw);overflow-y:auto;overscroll-behavior:contain}
.public-mobile-dialog::backdrop{background:#02030abd}
.public-mobile-menu-panel{margin:0 auto 0 0;border-radius:0 16px 16px 0}
.public-mobile-pricing-panel{margin:0 0 0 auto;width:min(520px,96vw);border-radius:16px 0 0 16px}
body:has(.public-mobile-dialog[open]){overflow:hidden}
.public-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;font-size:23px}
.public-mobile-close{width:44px;height:44px;flex:none;background:transparent;border:1px solid #ffffff20;border-radius:9px;color:#eee1ff;font-size:30px;line-height:1}
.public-mobile-submit{width:100%;border-radius:9px}
.public-mobile-menu-note,.public-mobile-login p{font-size:14px;line-height:1.65;color:#bfb3d1}
.public-mobile-nav{display:grid;gap:7px;padding-block:20px;border-bottom:1px solid #ffffff20;margin-bottom:24px}
.public-mobile-nav a{display:flex;align-items:center;min-height:48px;padding:10px 14px;border-radius:8px;font-size:17px;line-height:1.5}
.public-mobile-nav a:hover{background:#7c38ba25}
.public-mobile-language-label{display:block;font-size:13px;color:#bcb0ce;margin-bottom:10px}
.public-mobile-language{width:100%;background:#141423;color:#f7f5ff;border:1px solid #695377;border-radius:8px;min-height:48px;padding:10px;font:inherit;font-size:16px}
.public-mobile-login{margin-top:32px;border-top:1px solid #ffffff20;padding-top:24px}
.public-mobile-login .button{width:100%;border-radius:9px}
.public-mobile-login small{display:block;color:#bfb3d1;font-size:12px;line-height:1.6;text-align:center;margin-top:12px}
.public-mobile-pricing-panel .public-membership{padding:0;max-width:none}
.public-mobile-pricing-panel .public-section-head{display:block}
.public-mobile-pricing-panel .public-pricing-grid{grid-template-columns:minmax(0,1fr)}
.public-mobile-pricing-panel .public-membership-heading{align-items:flex-start}
.public-copy h1 .archivo-heading-latin,.public-copy h2 .archivo-heading-latin{display:inline}
@media(max-width:980px){
 .public-site-active .header{position:sticky;top:0}
 .public-site-active .header-in{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"menu brand pricing";gap:8px;min-height:64px;padding-block:7px}
 .public-site-active .brand{grid-area:brand;justify-content:center;font-size:20px;letter-spacing:.03em;min-width:0}
 .public-site-active .brand-mark{display:inline-block;width:24px;height:24px}.public-site-active .brand{gap:8px}
 .public-site-active .mobile-menu{grid-area:menu;width:44px;height:44px;min-height:44px;padding:0;font-size:0;border:0;border-radius:8px}
 .public-site-active .mobile-menu:before{content:'☰';font-size:25px}
 .public-site-active .public-mobile-membership{grid-area:pricing;display:block;max-width:128px;min-height:44px;border:1px solid #a875f3;border-radius:10px;padding:10px 13px;background:linear-gradient(180deg,#9450e4,#6920d3);color:#fff;font-size:13px;line-height:1.3}
 .public-site-active .header-in>.account-link,.public-site-active .header-in>.search-wrap,.public-site-active .header-in>.language-wrap,.public-site-active .header-in>.nav{display:none}
 .public-home>.public-membership,.public-home>.public-desktop-only{display:none}
 .public-mobile-tabs{display:flex;gap:9px;overflow-x:auto;scrollbar-width:none;align-items:center;padding-block:14px;white-space:nowrap}
 .public-mobile-tabs::-webkit-scrollbar{display:none}
 .public-mobile-tabs a,.public-mobile-tabs button{flex:none;border:1px solid #ffffff20;border-radius:999px;padding:10px 16px;min-height:44px;background:#161825;color:#d6cde5;font-size:14px}
 .public-mobile-tabs a{background:#f4f0fb;color:#151120}
 .public-home .public-hero{min-height:350px;margin:0 20px;align-items:flex-end;border-radius:16px;overflow:hidden;background-size:cover;background-position:66% center}
 .public-home .public-hero:before{background:linear-gradient(90deg,#080b16c9,transparent 80%),linear-gradient(0deg,#080b16d9,transparent 65%)}
 .public-home .public-hero>.shell{padding:26px 22px}
 .public-home .public-hero .public-copy{max-width:430px}
 .public-home .public-hero h1{font-size:clamp(28px,5vw,38px);max-width:360px}
 .public-home .public-hero .eyebrow,.public-home .public-hero small,.public-home .public-hero .actions>.button:not(.primary){display:none}
 .public-home .public-hero p{font-size:15px;margin:13px 0 20px;max-width:310px}
 .public-home .public-hero .actions .button{flex:0 1 auto}
 .public-mobile-feed{display:block;padding-top:28px}
 .public-mobile-collection{margin-bottom:34px;scroll-margin-top:90px}
 .public-mobile-collection h2{font-size:25px;line-height:1.3;margin:0;overflow-wrap:anywhere}
 .public-mobile-collection .public-section-head{gap:12px;align-items:baseline;flex-wrap:wrap}
 .public-mobile-collection .public-section-head>a{font-size:12px}
 .public-mobile-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
 .public-mobile-work{min-width:0}
 .public-mobile-work .live-film-art{border-radius:9px;aspect-ratio:16/10}
 .public-mobile-work .live-play{width:36px;height:36px;font-size:15px}
 .public-mobile-work h3{font-size:15px;line-height:1.5;margin:9px 0 3px;overflow-wrap:anywhere}
 .public-mobile-work p{font-size:12px;color:#aba2bb;margin:0;line-height:1.5;overflow-wrap:anywhere}
 .public-mobile-work-empty{aspect-ratio:16/10;border:1px solid #ffffff14;border-radius:9px;background:#121420}
 .public-mobile-empty{font-size:14px;line-height:1.6;color:#a9a2b7}
 .public-mobile-creator-list{display:grid;gap:12px}
 .public-mobile-creator-list>a{display:flex;align-items:center;gap:13px;min-width:0;border:1px solid #8f75b140;background:#171927;border-radius:10px;padding:15px}
 .public-mobile-creator-list>a>span:nth-child(2){min-width:0;flex:1;overflow-wrap:anywhere}
 .public-mobile-creator-list strong{font-size:16px}
 .public-mobile-creator-list small{display:block;font-size:12px;color:#b8aac9;margin-top:5px}
 .public-mobile-avatar{display:block;flex:none;width:48px;height:48px;border-radius:50%;overflow:hidden;background:#453051}
 .public-mobile-avatar img{width:100%;height:100%;object-fit:cover}
 .public-home .public-creator{margin:0 20px 24px;border-radius:16px;overflow:hidden;min-height:300px;background-size:cover;background-position:62% center}
 .public-home .public-creator:before{background:linear-gradient(90deg,#090c17e6,#090c1740 85%)}
 .public-home .public-creator>.shell{padding:28px 22px}
 .public-home .public-creator h2{font-size:28px}
 .public-home .public-creator .public-copy{max-width:340px}
 .public-home .public-creator .public-learn{display:none}
}
@media(max-width:360px){
 .public-site-active .brand{font-size:18px}
 .public-site-active .public-mobile-membership{font-size:11px;max-width:98px;padding-inline:9px}
 .public-home .public-hero,.public-home .public-creator{margin-inline:16px}
 .public-mobile-dialog{padding:20px}
}


/* 2026-10-07 approved mobile public-site refinement */
@media(max-width:980px){
  .public-site-active{background:#080b13}
  .public-site-active .header{background:#080b13f2;border-bottom:0;backdrop-filter:blur(18px)}
  .public-site-active .header-in{min-height:64px;padding:6px 16px;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"menu brand pricing";gap:8px}
  .public-site-active .brand{font-size:21px;font-weight:800;letter-spacing:.07em;gap:8px}.public-site-active .brand-mark{display:inline-block!important;width:26px!important;height:26px!important;flex:none}
  .public-site-active .mobile-menu{width:42px;height:42px;min-height:42px;border-radius:10px;color:#fff}
  .public-site-active .mobile-menu:before{font-size:27px;font-weight:300}
  .public-site-active .public-mobile-membership{min-height:40px;max-width:112px;padding:8px 12px;border-radius:11px;border-color:#9b5af0;background:linear-gradient(180deg,#9450e4 0%,#6920d3 100%);font-size:12px;font-weight:700;box-shadow:0 5px 16px #6f26c52b;white-space:nowrap}
  .public-home .shell{padding-inline:16px}
  .public-mobile-tabs{padding:5px 16px 9px;gap:10px;background:#080b13}
  .public-mobile-tabs a,.public-mobile-tabs button{min-height:38px;padding:8px 18px;border-radius:999px;border:1px solid #4b4f62;background:#111522;color:#e8e5f2;font-size:14px;font-weight:600}
  .public-mobile-tabs a{background:#fff;color:#151722;border-color:#fff}

  .public-home .public-hero{min-height:300px;margin:0 16px;border-radius:17px;background-position:62% center;box-shadow:0 14px 38px #0005}
  .public-home .public-hero:before{background:linear-gradient(90deg,#080b16dc 0%,#080b16b8 40%,#080b162f 76%,transparent 100%),linear-gradient(0deg,#080b16cc 0%,transparent 60%)}
  .public-home .public-hero>.shell{padding:24px 22px}
  .public-home .public-hero .public-copy{max-width:64%}
  .public-home .public-hero .eyebrow{display:none}
  .public-home .public-hero h1{font-size:clamp(30px,8vw,38px);line-height:1.18;letter-spacing:.01em;max-width:340px}
  .public-home .public-hero p{font-size:14px;line-height:1.5;margin:12px 0 18px;max-width:285px;color:#ddd7e8}
  .public-home .public-hero small{display:none}
  .public-home .public-hero .actions>.button:not(.primary){display:none}
  .public-home .public-hero .actions .button.primary{min-width:158px;min-height:48px;padding:0 24px;border-radius:11px;font-size:15px;gap:9px}
  .public-home .public-hero .button-brand-mark{width:18px;height:18px;flex:none}

  .public-mobile-feed{display:block;padding:20px 16px 4px}
  .public-mobile-collection{margin-bottom:30px}
  .public-mobile-collection .public-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
  .public-mobile-collection h2{font-size:25px;line-height:1.25;letter-spacing:.01em}
  .public-mobile-collection .public-section-head>a{font-size:13px;color:#d7c7f4;white-space:nowrap}
  .public-mobile-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
  .public-mobile-work .live-film-art,.public-mobile-work-empty{aspect-ratio:1.64;border-radius:10px}
  .public-mobile-work h3{font-size:15px;line-height:1.35;margin:8px 0 2px;color:#fff}
  .public-mobile-work p{font-size:12px;line-height:1.4;color:#a9a4b7}
  .public-mobile-creator-list{gap:10px}
  .public-mobile-creator-list>a{min-height:70px;padding:10px 13px;border-radius:13px;border:1px solid #4c5062;background:linear-gradient(180deg,#151925,#10141e);gap:12px}
  .public-mobile-avatar{width:48px;height:48px}
  .public-mobile-creator-list strong{font-size:16px}
  .public-mobile-creator-list small{font-size:12px;margin-top:2px}

  .public-home .public-creator{margin:2px 16px 20px;min-height:190px;border-radius:17px;background-position:70% center}
  .public-home .public-creator:before{background:linear-gradient(90deg,#080b16e8 0%,#080b16ad 47%,#080b1626 78%,transparent)}
  .public-home .public-creator>.shell{padding:23px 22px}
  .public-home .public-creator .public-copy{max-width:62%}
  .public-home .public-creator h2{font-size:27px;line-height:1.18}
  .public-home .public-creator p{display:none}
  .public-home .public-creator .actions{margin-top:16px}
  .public-home .public-creator .button.primary{min-width:146px;min-height:46px;padding:0 20px;border-radius:11px;font-size:14px}
  .public-home .public-creator .button-brand-mark{width:17px;height:17px}
  .public-home .public-creator .public-learn{display:none}

  .public-mobile-dialog{padding:24px 28px 30px;background:linear-gradient(180deg,#0b0f19 0%,#090d16 100%);border-color:#34394c;box-shadow:0 0 70px #000a}
  .public-mobile-menu-panel{width:min(420px,88vw);border-radius:0}
  .public-mobile-pricing-panel{width:min(560px,94vw);border-radius:0}
  .public-mobile-panel-head{min-height:64px;margin-bottom:18px;font-size:27px}
  .public-mobile-panel-brand{display:flex;align-items:center;gap:12px}
  .public-mobile-panel-brand .brand-mark{display:inline-block;width:31px;height:31px}
  .public-mobile-panel-brand-text{font-size:27px;font-weight:800;letter-spacing:.16em;line-height:1}
  .public-mobile-close{border:0;width:42px;height:42px;font-size:36px;font-weight:200;color:#f3ecff}
  .public-mobile-submit{min-height:64px;border-radius:12px;font-size:18px;gap:12px}
  .public-mobile-menu-note{font-size:14px;text-align:center;margin:12px 0 20px}
  .public-mobile-nav{gap:4px;padding:10px 0 22px;margin-bottom:22px}
  .public-mobile-nav a{min-height:62px;padding:11px 14px;border-radius:11px;font-size:18px;font-weight:600;gap:16px}
  .public-mobile-nav a:first-child{background:transparent;color:#fff}
  .public-mobile-nav-icon{display:inline-flex;width:30px;justify-content:center;color:#caa8ff;font-size:23px;line-height:1}
  .public-mobile-language-label{font-size:14px;margin-bottom:10px}
  .public-mobile-language{min-height:54px;border-radius:11px;font-size:16px;background:#0e1320;border-color:#626985}
  .public-mobile-login{margin-top:30px;padding-top:28px}
  .public-mobile-login p{font-size:14px;margin:0 0 16px}
  .public-mobile-login .button{min-height:60px;border-radius:12px;font-size:18px}
  .public-mobile-login small{font-size:12px;margin-top:12px}

  .public-mobile-pricing-panel .public-membership-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}
  .public-mobile-pricing-panel .public-membership h2{font-size:34px}
  .public-mobile-pricing-panel .public-coming-soon{font-size:13px;border-radius:999px;padding:7px 13px;background:transparent;border:2px solid #8c45e6;color:#bf8dff}
  .public-mobile-pricing-panel .public-section-head p{font-size:15px;margin-top:8px}
  .public-mobile-pricing-panel .public-pricing-grid{gap:18px}
  .public-mobile-pricing-panel .public-price-card{padding:22px 20px;border-radius:17px;background:linear-gradient(180deg,#111726,#0c111d);border-color:#464c61}
  .public-mobile-pricing-panel .public-price-card.featured{background:radial-gradient(circle at 82% 18%,#6530b963,transparent 44%),linear-gradient(180deg,#181229,#0e111d);border:2px solid #9a45ed;box-shadow:0 0 26px #6f28b82a}
  .public-mobile-pricing-panel .public-price-badge.has-badge{background:linear-gradient(180deg,#9450e4,#6920d3);color:#fff}
  .public-mobile-pricing-panel .public-price-card h3{font-size:25px;margin:8px 0 8px}
  .public-mobile-pricing-panel .public-plan-price strong{font-size:44px}
  .public-mobile-pricing-panel .public-plan-price span{font-size:17px}
  .public-mobile-pricing-panel .public-price-card ul{border-top:1px solid #3c4150;padding-top:14px}
  .public-mobile-pricing-panel .public-price-card li{font-size:15px}
  .public-mobile-pricing-panel .public-price-card li>span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#8b3dea;color:white;margin-right:10px}
  .public-mobile-pricing-panel .public-plan-button{min-height:52px;border-radius:10px}
  .public-mobile-pricing-panel .public-pricing-notice{text-align:center;font-size:13px}
}

/* Compact mobile header and official mark */
@media(max-width:980px){.public-site-active .header-in{min-height:62px;padding-block:6px;gap:6px}.public-site-active .brand{font-size:clamp(16px,4vw,20px);letter-spacing:.075em;gap:6px;white-space:nowrap}.public-site-active .brand .brand-mark{display:inline-block!important;width:22px!important;height:22px!important;flex:none}.public-site-active .public-mobile-membership{max-width:none;min-height:38px;padding:7px 11px;font-size:12px;border-radius:10px}.public-site-active .mobile-menu{width:40px;height:40px;min-height:40px}.public-mobile-tabs{padding-top:5px;padding-bottom:8px}}


/* 2026-10-07 mobile drawer polish v2 */
@media(max-width:980px){
  .public-mobile-menu-panel{padding:18px 22px 26px}
  .public-mobile-panel-head{min-height:48px;margin-bottom:14px;align-items:flex-start}
  .public-mobile-panel-brand{gap:8px;margin-left:0;margin-top:0}
  .public-mobile-panel-brand .brand-mark{width:24px;height:24px}
  .public-mobile-panel-brand-text{font-size:23px;letter-spacing:.14em;line-height:1}
  .public-mobile-close{width:34px;height:34px;min-width:34px;min-height:34px;margin-top:-2px;margin-right:-2px;border:0;border-radius:8px;font-size:0;position:relative;background:transparent}
  .public-mobile-close:before{content:'☰';position:absolute;inset:0;display:grid;place-items:center;font-size:23px;font-weight:400;line-height:1;color:#f2ecff}
  .public-mobile-submit{width:calc(100% - 24px);margin-inline:auto;min-height:54px;border-radius:11px;font-size:17px;padding-inline:18px}
  .public-mobile-menu-note{max-width:calc(100% - 34px);margin:10px auto 18px;font-size:13px;line-height:1.55}
  .public-mobile-nav{padding-top:8px}
  .public-mobile-nav a{width:calc(100% - 24px);margin-inline:auto;min-height:54px;padding:10px 14px}
  .public-mobile-login{width:calc(100% - 24px);margin:26px auto 0;padding-top:24px}
  .public-mobile-login .button{min-height:54px;border-radius:11px}
}

/* Mobile drawer links stay unboxed when selected or tapped. */
@media(max-width:980px){
  .public-mobile-nav a,
  .public-mobile-nav a:hover,
  .public-mobile-nav a:active,
  .public-mobile-nav a:first-child{
    background:transparent;
    border:0;
    box-shadow:none;
    -webkit-tap-highlight-color:transparent;
  }
  .public-mobile-nav a:focus:not(:focus-visible){outline:none}
}

/* Align all six mobile drawer navigation entries to the panel's left edge. */
@media(max-width:980px){
  .public-mobile-nav a{width:100%;margin-inline:0;padding-inline:0;justify-content:flex-start;text-align:left;gap:12px}
  .public-mobile-nav-icon{flex:0 0 26px;width:26px}
}

/* Approved transparent-to-neon purple treatment for logo-bearing actions on all screen sizes. */
.public-site-active .button.primary:has(.button-brand-mark){
  background:linear-gradient(135deg,rgba(157,143,198,.13) 0%,rgba(145,104,215,.28) 25%,rgba(148,80,228,.7) 53%,#8338e2 76%,#6920d3 100%);
  border:1px solid #bba2f078;
  color:#fff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 #ffffff30,0 7px 24px #7828d124;
}
.public-site-active .button.primary:has(.button-brand-mark):hover{filter:brightness(1.08)}

/* Unified public membership and sign-in action hierarchy. */
.public-site-active .button.primary.public-mobile-submit,
.public-site-active .public-mobile-membership{
  background:linear-gradient(135deg,rgba(157,143,198,.13) 0%,rgba(145,104,215,.28) 25%,rgba(148,80,228,.7) 53%,#8338e2 76%,#6920d3 100%);
  border:1px solid #bba2f078;
  color:#fff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 #ffffff30,0 7px 24px #7828d124;
}
.public-site-active .button.primary.public-mobile-submit:hover,
.public-site-active .public-mobile-membership:hover{filter:brightness(1.08)}
.public-site-active .account-link:not(.has-account),
.public-site-active .public-mobile-login .button{
  background:rgba(19,17,29,.68);
  border:1px solid rgba(190,150,244,.72);
  color:#f3ecff;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 #ffffff0d,0 0 9px rgba(160,98,232,.12);
}
.public-site-active .account-link:not(.has-account):hover,
.public-site-active .public-mobile-login .button:hover{
  background:rgba(39,29,55,.78);
  border-color:rgba(208,183,243,.8);
}


/* Mobile homepage banners span the screen; keep text comfortably inset. */
@media(max-width:980px){
  .public-home .public-hero,
  .public-home .public-creator{
    margin-inline:0;
    width:100%;
    border-radius:0;
    border:0;
    box-shadow:none;
  }
  .public-home .public-hero h1{font-size:clamp(31.5px,8.4vw,39.9px)}
  .public-home .public-creator h2{font-size:28.35px}
}

html[lang="ja"] .public-copy h1{line-height:1.4;letter-spacing:.015em;word-break:normal;overflow-wrap:normal}html[lang="ja"] .public-copy h1>span{white-space:nowrap}@media(max-width:700px){html[lang="ja"] .public-copy h1{font-size:clamp(28px,7.8vw,36px)}}

/* Discovery cards show the creator's artwork, never a video frame or player. */
.live-film-art.live-cover-art{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#171424}
.live-film-art.live-cover-art img{display:block;width:100%;height:100%;object-fit:contain}
.public-featured-work{display:block;min-width:0;color:#f4effa;text-decoration:none}
.public-featured-work .live-cover-art{border-radius:9px}
.public-featured-work h3{font:650 16px/1.5 system-ui;margin:10px 0 4px;overflow-wrap:anywhere}
.public-featured-work p{font:400 13px/1.5 system-ui;color:#b0a7bd;margin:0}
.public-series-detail{padding-top:30px;padding-bottom:60px;color:#f3eef9}
.public-series-back{display:inline-block;color:#d2b9ee;margin-bottom:24px;text-decoration:none;font-size:14px}
.public-series-heading{display:grid;grid-template-columns:minmax(220px,42%) minmax(0,1fr);gap:28px;align-items:center}
.public-series-cover .live-cover-art{border:1px solid #ffffff15;border-radius:12px}
.public-series-heading h1{font:700 clamp(25px,4vw,45px)/1.3 system-ui;margin:10px 0 15px;overflow-wrap:anywhere}
.public-series-heading a{color:#c4b0dc;font-size:14px}
.public-series-kicker{font-size:12px;color:#bd95eb;margin:0}
.public-series-about,.public-series-episodes{margin-top:34px}
.public-series-detail h2{font:650 22px/1.4 system-ui;margin:0 0 18px}
.public-series-about p{font:400 15px/1.8 system-ui;color:#c2b9cf;white-space:pre-wrap;overflow-wrap:anywhere}
.public-series-episode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.public-series-episode{display:block;min-width:0;color:#f1e9fa;text-decoration:none}
.public-series-episode .live-cover-art{border-radius:9px}
.public-series-episode>span:not(.live-film-art){display:block;font:400 11px/1.5 system-ui;color:#aa9aba;margin-top:9px}
.public-series-episode h3{font:600 15px/1.5 system-ui;overflow-wrap:anywhere;margin:5px 0}
.public-series-episode:focus-visible,.public-featured-work:focus-visible{outline:2px solid #b68ade;outline-offset:5px}
@media(max-width:760px){.public-series-heading{grid-template-columns:minmax(0,1fr);gap:20px}.public-series-episode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.public-series-detail{padding-top:24px}.public-series-detail h2{font-size:21px}}

/* Shared cover labels for public and member home collections. */
.home-cover-card{display:block;position:relative;min-width:0;overflow:hidden;border-radius:9px;color:#fff;text-decoration:none}
.home-cover-card .live-cover-art{aspect-ratio:16/9;border-radius:inherit}
.home-cover-caption{position:absolute;inset:auto 0 0;z-index:1;display:block;padding:25px 9px 8px;background:linear-gradient(transparent,rgba(7,6,14,.9));pointer-events:none}
.home-cover-title{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere;font:650 clamp(12.705px,1.155vw,16.17px)/1.35 system-ui;color:#fff;text-shadow:0 1px 3px #000}
.home-cover-age{position:absolute;z-index:2;top:7px;right:7px;white-space:nowrap;padding:3px 5px;border-radius:5px;background:rgba(8,7,15,.38);font:500 clamp(8.5px,.65vw,10px)/1.2 system-ui;color:rgba(255,255,255,.88);pointer-events:none}

.member-tile.home-cover-card{aspect-ratio:16/9;align-self:flex-start}

/* Creator discovery is shared by guest/member homepages at every width. */
.creator-discovery{display:block;margin-top:28px;margin-bottom:40px;scroll-margin-top:90px}
.creator-discovery .public-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.creator-discovery h2{font-size:26px;line-height:1.3;margin:0}
.creator-discovery .public-section-head>a{font-size:14px;color:#d7c7f4;white-space:nowrap}
.creator-discovery .public-mobile-creator-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.creator-discovery .public-mobile-creator-list>a{display:flex;align-items:center;gap:13px;min-width:0;padding:14px;border:1px solid #4c5062;border-radius:13px;background:linear-gradient(180deg,#151925,#10141e);color:#fff;text-decoration:none}
.creator-discovery .public-mobile-creator-list>a>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}
.creator-discovery strong{font-size:16px}.creator-discovery small{display:block;font-size:13px;color:#b8aac9;margin-top:3px}
.creator-discovery .public-mobile-avatar{display:block;width:48px;height:48px;flex:none;border-radius:50%;overflow:hidden;background:#453051}
.creator-discovery .public-mobile-avatar img{width:100%;height:100%;object-fit:cover}
.creator-discovery a:focus-visible{outline:2px solid #b893ff;outline-offset:3px}
.member-main .creator-discovery{max-width:none;padding-inline:0}
@media(max-width:980px){.creator-discovery .public-mobile-creator-list{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-discovery h2{font-size:25px}}
@media(max-width:600px){.creator-discovery .public-mobile-creator-list{grid-template-columns:minmax(0,1fr)}.creator-discovery{margin-top:0;margin-bottom:30px}.creator-discovery .public-section-head>a{font-size:13px}}

/* Approved public landing: black, restrained violet, real catalogue and local plans. */
.public-home.landing-home{background:#050609;color:#faf8ff;padding-bottom:48px}
.landing-home .shell{max-width:1360px;margin-inline:auto;padding-inline:clamp(20px,4vw,64px)}
.landing-home .public-hero{min-height:clamp(440px,39vw,620px);margin:0;border-radius:0;align-items:center;background-image:url('/flira/little-robot-clean.jpg');background-position:center;background-size:cover}
.landing-home .public-hero:before{background:linear-gradient(90deg,#050609f5 0%,#050609d9 27%,#05060955 50%,#05060900 75%),linear-gradient(0deg,#050609 0%,transparent 28%)}
.landing-home .public-hero>.shell{padding-block:90px 80px;width:100%}.landing-home .public-copy{max-width:600px}
.landing-home .public-hero h1{font-size:clamp(34px,3.7vw,56px);line-height:1.25;max-width:600px;font-weight:750;letter-spacing:.01em}
.landing-home .public-hero p{max-width:520px;font-size:17px;line-height:1.7;margin:20px 0 28px}
.landing-home .public-hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.landing-home .public-hero .actions>.button{display:inline-flex!important;align-items:center;justify-content:center;min-width:175px;padding:0 24px;min-height:48px;font-size:15px;border-radius:7px;flex:none}
.landing-home .public-featured{padding-block:20px 36px}.landing-home .public-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.landing-home h2{font:700 clamp(22px,2vw,28px)/1.35 Inter,'Noto Sans TC',system-ui,sans-serif;letter-spacing:.01em;margin:0 0 20px}
.landing-home .public-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.landing-home .public-section-head h2{margin:0}.landing-home .public-section-head>a{font-size:13px;color:#cfc3e3;white-space:nowrap}
.landing-home .home-cover-card{min-width:0;aspect-ratio:16/9;border-radius:10px;overflow:hidden}
.landing-home .landing-reasons{padding-block:20px 34px}.landing-reason-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.landing-reason-card{min-width:0;padding:26px 20px 24px;border:1px solid #7d52af65;border-radius:9px;background:linear-gradient(155deg,#111019,#08090e);box-shadow:inset 0 -2px 12px #7838c715;text-align:center}.landing-reason-card svg{width:34px;height:36px;color:#a876f2;margin-bottom:12px}.landing-reason-card h3{font-size:17px;line-height:1.4;margin:0 0 10px;color:#faf7ff}.landing-reason-card p{font-size:14px;line-height:1.65;color:#bbb5c7;margin:0}
.landing-home .public-membership{display:block!important;padding-block:20px 32px}.landing-home .public-price-card{padding:24px;border-radius:9px;background:linear-gradient(135deg,#111019,#08090d);border-color:#63547f99}.landing-home .public-price-card.featured{background:linear-gradient(135deg,#21123a,#0c0b14);border-color:#9c65ed;box-shadow:0 0 19px #8a4bdf25}.public-membership .public-plan-price strong{white-space:nowrap}.public-membership .landing-ad-free{font-size:13px;color:#c1b7d1;margin:8px 0 24px}.public-membership .public-plan-button{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:auto}.landing-home .public-price-badge{margin-bottom:12px}.landing-home .public-price-badge.has-badge{border-radius:6px;background:#8150d7;color:#fff}.landing-home .public-price-card h3{font-size:21px}.landing-home .public-plan-price strong{font-size:clamp(30px,3.2vw,47px)}.landing-home .public-plan-detail{font-size:14px;min-height:23px;margin-top:16px}
.landing-home .landing-submit{padding-block:16px 24px}.landing-submit-banner{min-height:220px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:34px;border:1px solid #65507650;border-radius:10px;background:#100e16 url('/flira/assets/creator-fox-friends.webp') center/cover no-repeat}.landing-submit-banner h2{max-width:55%;font-size:clamp(22px,2.3vw,33px);text-shadow:0 2px 10px #000}.landing-submit-banner .button{display:inline-flex;align-items:center;gap:15px;min-height:44px;padding-inline:22px;font-size:14px}
.landing-home .landing-faq{padding-block:12px 20px}.landing-faq details{border:1px solid #50445f80;border-radius:7px;background:#0b0c12;margin-bottom:9px}.landing-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:16px 20px;font-size:15px}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq summary span{font-size:23px;color:#c6b5df;line-height:1}.landing-faq details[open] summary span{transform:rotate(45deg)}.landing-faq details p{margin:0;padding:0 20px 20px;max-width:980px;color:#bbb5c7;font-size:14px;line-height:1.8}.landing-home a:focus-visible,.landing-home summary:focus-visible{outline:2px solid #ba90fa;outline-offset:4px}
body:has(.landing-home) .header{background:#050609e8;border-bottom:1px solid #ffffff0c}body:has(.landing-home) .brand{color:#fff}body:has(.landing-home) #footerLeft,body:has(.landing-home) #footerRight{display:none}body:has(.landing-home) .footer{border-top:1px solid #ffffff15}
@media(min-width:981px){body:has(.landing-home) .header-in>.nav,body:has(.landing-home) .header-in>.search-wrap{display:none}body:has(.landing-home) .language-wrap{margin-left:auto}body:has(.landing-home) .public-mobile-membership{display:block;order:6;min-height:38px;border:1px solid #9262ce;border-radius:7px;background:linear-gradient(180deg,#8140d5,#6421bd);padding:8px 16px;color:#fff;font:600 13px system-ui}body:has(.landing-home) .header-in{display:flex;gap:22px;min-height:72px}}
@media(max-width:980px){.landing-home .public-hero{min-height:450px;background-position:57% center}.landing-home .public-hero>.shell{padding-block:90px 65px}.landing-home .public-hero .public-copy{max-width:65%}.landing-home .public-hero .actions>.button{min-width:150px;padding-inline:18px}.landing-reason-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-home .public-featured-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-home .public-pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.landing-home .public-price-card{padding:18px 14px}.landing-home .public-plan-price strong{font-size:30px}.landing-submit-banner{min-height:210px}}
@media(max-width:600px){.landing-home .public-hero{min-height:510px;align-items:flex-end;background-position:65% top}.landing-home .public-hero:before{background:linear-gradient(0deg,#050609 0%,#050609e8 24%,#05060970 48%,#05060900 80%)}.landing-home .public-hero>.shell{padding:260px 20px 28px}.landing-home .public-hero .public-copy{max-width:none}.landing-home .public-hero h1{font-size:33px;max-width:380px}.landing-home .public-hero p{font-size:14px;margin:15px 0 20px;max-width:340px}.landing-home .public-hero .actions{flex-wrap:nowrap;gap:10px}.landing-home .public-hero .actions>.button{min-width:0;min-height:46px;padding-inline:10px;flex:1;font-size:13px}.landing-home .public-featured{padding-block:18px 26px}.landing-home .public-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.landing-home h2{font-size:22px;margin-bottom:15px}.landing-home .landing-reasons{padding-block:12px 24px}.landing-reason-grid{gap:10px}.landing-reason-card{padding:20px 12px}.landing-reason-card h3{font-size:15px}.landing-reason-card p{font-size:12px;line-height:1.7}.landing-home .public-pricing-grid{grid-template-columns:minmax(0,1fr)}.landing-home .public-price-card{padding:22px}.landing-home .public-plan-price strong{font-size:40px}.landing-home .public-price-badge{margin-bottom:8px;min-height:0}.landing-home .public-membership{padding-block:12px 20px}.landing-home .landing-submit{padding-block:12px 20px}.landing-submit-banner{min-height:320px;padding:22px;justify-content:flex-end;background-position:68% top;position:relative;isolation:isolate;overflow:hidden}.landing-submit-banner:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#09070cf2,transparent 85%)}.landing-submit-banner h2{max-width:100%;font-size:23px}.landing-faq summary{padding:14px;font-size:14px}.landing-faq details p{padding:0 14px 16px;font-size:13px}}
@media(max-width:980px){body:has(.landing-home) .header-in>.account-link{display:block;grid-area:pricing;font-size:13px;padding:8px;white-space:nowrap}body:has(.landing-home) .header-in>.public-mobile-membership{display:none}}

/* Desktop header and balanced, translucent-violet entry buttons. */
.public-site-active .landing-home .public-hero .actions .button.primary,
.public-site-active .landing-home .landing-submit-action{
 background:linear-gradient(135deg,rgba(142,112,177,.12) 0%,rgba(98,52,153,.38) 32%,rgba(114,40,210,.88) 72%,#7726de 100%);
 border:1px solid #ad85e0b0;color:#fff;
 box-shadow:inset 0 1px 1px #efe3ff38,inset 0 -1px 2px #1c082f66,0 5px 18px #51159533;
 backdrop-filter:blur(9px);font-weight:700
}
.public-site-active .landing-home .public-hero .actions .button.primary:hover,
.public-site-active .landing-home .landing-submit-action:hover{border-color:#d4b4ff;box-shadow:inset 0 1px 1px #fff5,0 6px 22px #762bd44d}
.landing-submit-banner .landing-submit-income{max-width:52%;margin:0 0 20px;color:#ddd4e8;font-size:15px;line-height:1.7;text-shadow:0 1px 6px #000}
@media(min-width:981px){
 body:has(.landing-home) .header-in{min-height:58px;padding-block:6px;gap:16px}
 body:has(.landing-home) .header-in>.account-link{min-height:32px;padding:6px 12px;font-size:12px;line-height:1.3;border-radius:7px}
 body:has(.landing-home) .header-in>.public-mobile-membership{min-height:32px;padding:6px 12px;font-size:12px;line-height:1.3}
 body:has(.landing-home) .language-wrap{position:relative;width:34px;height:34px;flex:none}
 body:has(.landing-home) .language-wrap:before{content:"";position:absolute;inset:7px;pointer-events:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e4dbee' stroke-width='1.6'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cellipse cx='12' cy='12' rx='4.2' ry='9.5'/%3E%3Cpath d='M2.5 12h19M4.5 6.5h15M4.5 17.5h15'/%3E%3C/svg%3E")}
 body:has(.landing-home) .language-select{width:34px;max-width:34px;height:34px;min-height:34px;padding:0;border:1px solid transparent;background:transparent;color:transparent;font-size:0;cursor:pointer}
 body:has(.landing-home) .language-select:hover{border-color:#9b76c3}
 body:has(.landing-home) .language-select:focus-visible{outline:2px solid #c29be9;outline-offset:2px}
 body:has(.landing-home) .language-select option{font-size:14px;color:#fff;background:#151322}
 .public-home.landing-home .public-hero .actions>.button,
 .public-home.landing-home .public-hero .actions>.button.primary{width:205px;min-width:205px;max-width:205px;height:48px;min-height:48px;padding:0 18px;box-sizing:border-box}
}
@media(max-width:600px){.landing-submit-banner .landing-submit-income{max-width:100%;font-size:13px;margin-bottom:16px}}

/* Public mobile homepage: direct account/language access and edge-to-edge invitation. */
@media(max-width:980px){
 body:has(.landing-home) .header-in{grid-template-columns:minmax(0,1fr) auto 30px;grid-template-areas:"brand account language";gap:10px;min-height:58px;padding:8px 16px}
 body:has(.landing-home) .header-in>.mobile-menu{display:none!important}
 body:has(.landing-home) .header-in>.brand{grid-area:brand;justify-content:flex-start;min-width:0;margin:0}
 body:has(.landing-home) .header-in>.account-link{grid-area:account;min-height:30px;padding:5px 9px;border-radius:7px;font-size:12px;line-height:1.3;margin:0;max-width:42vw;white-space:normal;text-align:center}
 body:has(.landing-home) .header-in>.language-wrap{display:flex;grid-area:language;position:relative;width:30px;height:30px;margin:0}
 body:has(.landing-home) .language-wrap:before{content:"";position:absolute;inset:5px;pointer-events:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e4dbee' stroke-width='1.6'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cellipse cx='12' cy='12' rx='4.2' ry='9.5'/%3E%3Cpath d='M2.5 12h19M4.5 6.5h15M4.5 17.5h15'/%3E%3C/svg%3E")}
 body:has(.landing-home) .language-select{width:30px;max-width:30px;height:30px;min-height:30px;margin:0;padding:0;border:1px solid transparent;background:transparent;color:transparent;font-size:0;cursor:pointer}
 body:has(.landing-home) .language-select option{font-size:14px;color:#fff;background:#151322}
 body:has(.landing-home) .language-select:focus-visible{outline:2px solid #c29be9;outline-offset:2px}
 .landing-home .landing-submit.shell{max-width:none;width:100%;padding-inline:0}
 .landing-home .landing-submit-banner{border:0;border-radius:0}
}
@media(max-width:360px){body:has(.landing-home) .header-in{gap:7px;padding-inline:12px}body:has(.landing-home) .header-in>.brand{font-size:18px}body:has(.landing-home) .header-in>.account-link{font-size:11px;padding:5px 7px}}

/* Override the legacy brand header grid only on the public mobile landing. */
@media(max-width:980px){
 body.public-site-active:has(.landing-home) .header-in{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto 30px!important;
  grid-template-areas:"brand account language"!important;align-items:center;
  gap:10px!important;min-height:58px!important;padding:8px 16px!important
 }
 body.public-site-active:has(.landing-home) .header-in>.farybo-brand{grid-area:brand!important;justify-self:start}
 body.public-site-active:has(.landing-home) .header-in>.account-link{grid-area:account!important;justify-self:end}
 body.public-site-active:has(.landing-home) .header-in>.language-wrap{display:flex!important;grid-area:language!important;visibility:visible!important;margin:0!important}
 body.public-site-active:has(.landing-home) .language-wrap:before{background-image:url('/language-icon.svg')}
 .public-home.landing-home .public-hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:424px;align-items:stretch}
 .public-home.landing-home .public-hero .actions>.button,
 .public-home.landing-home .public-hero .actions>.button.primary{
  width:100%;min-width:0!important;max-width:none;height:48px;min-height:48px;
  padding:0 10px;box-sizing:border-box;border-radius:9px;font-size:13px;line-height:1.3;white-space:normal
 }
}
@media(max-width:360px){body.public-site-active:has(.landing-home) .header-in{gap:7px!important;padding-inline:12px!important}}

/* Mobile featured stories: swipe through up to five real covers. */
@media(max-width:600px){
 .public-home.landing-home .public-featured-grid{
  display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76%;
  gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;
  overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;padding:3px 0 8px
 }
 .public-home.landing-home .public-featured-grid::-webkit-scrollbar{display:none}
 .public-home.landing-home .public-featured-grid>.home-cover-card{scroll-snap-align:start;min-width:0}
 .public-home.landing-home .public-featured-grid>.home-cover-card:nth-child(n+6){display:none}
}


/* Shared footer directory: keep the pricing and FAQ sections above intact. */
.footer.farybo-directory{padding:48px 0 22px;background:#0b0c14;border-top:1px solid #ffffff18}
.footer.farybo-directory>.shell{display:block;max-width:1440px}
.footer-directory-grid{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:42px;padding-bottom:38px}
.footer-directory-grid section{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-directory-grid h2{font:600 14px/1.5 Inter,system-ui,sans-serif;color:#f1edf9;margin:0 0 5px}
.footer.farybo-directory a{color:#aba6bc;font-size:13px;line-height:1.65;text-decoration:none}
.footer.farybo-directory a:hover{color:#d5b5ff;text-decoration:underline;text-underline-offset:4px}
.footer-brand-row{display:flex;justify-content:space-between;align-items:center;gap:28px;border-top:1px solid #ffffff15;padding-top:26px}
.footer-brand{font-size:22px;letter-spacing:.07em;color:#f6f2ff}.footer-brand-row p{max-width:560px;font-size:13px;line-height:1.8;color:#aaa4b9;margin:10px 0 0}.footer-copyright{font-size:11px;color:#8e889f;margin-top:24px}
@media(max-width:700px){.footer-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.footer-directory-grid section:last-child{grid-column:1/-1}.footer-brand-row{align-items:flex-start;flex-direction:column;gap:16px}.footer.farybo-directory{padding-top:34px}}

.footer-contact-links{display:flex;align-items:flex-start;flex-direction:column;gap:12px}.footer-contact-links a{display:inline-flex;align-items:center;gap:9px}

.public-price-card .public-plan-button:disabled,.public-price-card .public-plan-button:disabled:hover{background:#2e2e45;color:#8b879d;border-color:#575269;cursor:not-allowed;opacity:.7}
