/* Shared styles for Miya's supporting pages. The landing page does not load this file. */
:root{
  --page-bg:#080611;
  --page-panel:rgba(18,12,34,.72);
  --page-panel-solid:#120c22;
  --page-line:rgba(201,103,255,.18);
  --page-line-strong:rgba(222,108,255,.35);
  --page-copy:#cbc3d4;
  --page-copy-soft:#9f96aa;
}

body.subpage{min-height:100vh;background:var(--page-bg)}
body.subpage::before{content:"";position:fixed;z-index:-2;inset:0;background:radial-gradient(circle at 12% -6%,rgba(181,71,255,.19),transparent 34%),radial-gradient(circle at 92% 22%,rgba(238,72,204,.10),transparent 28%),linear-gradient(180deg,#0c0817 0%,#080611 55%,#070510 100%);pointer-events:none}
body.subpage::after{content:"";position:fixed;z-index:-1;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 70%);pointer-events:none}

.skip-link{position:fixed;z-index:100;left:16px;top:12px;padding:10px 14px;border-radius:9px;background:#fff;color:#0b0714;font-weight:750;transform:translateY(-150%);transition:transform .18s ease}
.skip-link:focus{transform:translateY(0)}

.site-header{position:sticky;z-index:50;top:0;border-bottom:1px solid rgba(206,105,255,.13);background:rgba(8,6,17,.78);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.site-header .header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.site-logo{display:inline-flex;align-items:center;flex:0 0 auto}
.site-logo img{width:104px}
.site-nav{display:flex;align-items:center;gap:7px}
.site-nav a{padding:10px 13px;border-radius:10px;color:#aaa1b6;font-size:13px;font-weight:650;transition:color .18s ease,background .18s ease}
.site-nav a:hover{color:#fff;background:rgba(255,255,255,.045)}
.site-nav a[aria-current="page"]{color:#f7eefe;background:rgba(194,87,255,.11)}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border:1px solid rgba(238,99,239,.38);border-radius:999px;background:linear-gradient(135deg,rgba(174,74,255,.2),rgba(242,80,202,.17));font-size:13px;font-weight:750;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform .18s ease,border-color .18s ease}
.header-cta:hover{transform:translateY(-1px);border-color:rgba(244,116,242,.65)}

.page-main{min-height:calc(100vh - 208px)}
.page-hero{position:relative;padding:clamp(78px,9vw,132px) 0 clamp(58px,7vw,96px);overflow:hidden}
.page-hero.compact{padding-bottom:clamp(42px,5vw,66px)}
.page-hero::after{content:"";position:absolute;z-index:-1;width:440px;height:440px;border-radius:50%;right:-170px;top:-150px;background:radial-gradient(circle,rgba(231,84,231,.13),transparent 67%);filter:blur(3px)}
.hero-kicker{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#db87f9;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase}
.hero-kicker::before{content:"";width:28px;height:1px;background:linear-gradient(90deg,#b35aff,#ef63dd)}
.page-hero h1{max-width:890px;margin:0;font-size:clamp(46px,7.5vw,92px);line-height:.96;letter-spacing:clamp(-4px,-.32vw,-1.8px);font-weight:880}
.page-hero h1 span,.gradient-text{color:#e963ed;background:linear-gradient(100deg,#b95eff 0%,#f368dd 70%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero-lede{max-width:680px;margin:25px 0 0;color:var(--page-copy);font-size:clamp(17px,1.6vw,21px);line-height:1.62;letter-spacing:-.2px}
.hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.meta-pill{padding:8px 12px;border:1px solid var(--page-line);border-radius:999px;background:rgba(18,12,34,.48);color:#aaa1b5;font-size:12px}

.content-section{padding:0 0 clamp(72px,9vw,128px)}
.section-label{margin:0 0 14px;color:#db81f5;font-size:12px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}
.section-title{max-width:720px;margin:0;font-size:clamp(31px,4.3vw,54px);line-height:1.05;letter-spacing:-1.8px}
.section-intro{max-width:680px;margin:17px 0 0;color:var(--page-copy);font-size:16px;line-height:1.7}

.story-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:42px}
.story-card,.value-card,.contact-card,.legal-aside{border:1px solid var(--page-line);background:linear-gradient(145deg,rgba(22,14,41,.82),rgba(12,8,24,.72));box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 22px 60px rgba(0,0,0,.12)}
.story-card{min-height:300px;padding:clamp(28px,4vw,52px);border-radius:24px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative}
.story-card::before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-60px;top:-70px;background:radial-gradient(circle,rgba(219,82,240,.17),transparent 68%)}
.story-card.small{min-height:300px}
.card-number{margin-bottom:auto;color:rgba(223,146,251,.64);font-size:12px;font-weight:800;letter-spacing:2px}
.story-card h2,.story-card h3{max-width:560px;margin:0 0 14px;font-size:clamp(24px,3vw,40px);line-height:1.08;letter-spacing:-1.2px}
.story-card.small h3{font-size:27px}
.story-card p{max-width:620px;margin:0;color:var(--page-copy);font-size:15px;line-height:1.7}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.value-card{padding:28px;border-radius:18px}
.value-icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:23px;border:1px solid rgba(222,103,255,.32);border-radius:13px;background:rgba(183,75,255,.10);color:#ed75ed;font-size:20px}
.value-card h3{margin:0 0 9px;font-size:18px}
.value-card p{margin:0;color:var(--page-copy-soft);font-size:14px;line-height:1.65}

.cta-panel{position:relative;overflow:hidden;margin-bottom:clamp(72px,9vw,118px);padding:clamp(34px,5vw,64px);border:1px solid var(--page-line-strong);border-radius:26px;background:linear-gradient(115deg,rgba(90,35,139,.30),rgba(28,13,47,.74) 52%,rgba(111,29,100,.22));display:flex;align-items:center;justify-content:space-between;gap:36px}
.cta-panel::after{content:"♡";position:absolute;right:4%;top:50%;transform:translateY(-52%) rotate(-10deg);color:rgba(238,94,231,.08);font-size:190px;font-family:Georgia,serif;pointer-events:none}
.cta-copy{position:relative;z-index:1}
.cta-copy h2{margin:0 0 10px;font-size:clamp(27px,3.5vw,43px);letter-spacing:-1.4px}
.cta-copy p{max-width:580px;margin:0;color:var(--page-copy);line-height:1.6}
.primary-button{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 22px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:linear-gradient(110deg,#a64ff2,#e755db);color:#fff;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:0 10px 28px rgba(174,57,206,.22);transition:transform .18s ease,filter .18s ease}
.primary-button:hover{transform:translateY(-2px);filter:brightness(1.08)}

.document-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:clamp(42px,6vw,88px);align-items:start}
.document{min-width:0}
.document section{padding:0 0 44px;margin-bottom:44px;border-bottom:1px solid rgba(197,109,241,.14);scroll-margin-top:110px}
.document section:last-child{border-bottom:0}
.document h2{margin:0 0 18px;font-size:clamp(24px,3vw,34px);line-height:1.2;letter-spacing:-.8px}
.document h3{margin:27px 0 10px;font-size:17px}
.document p,.document li{color:var(--page-copy);font-size:15px;line-height:1.78}
.document p{margin:0 0 15px}
.document ul{padding-left:20px;margin:12px 0 17px}
.document li+li{margin-top:8px}
.document a,.inline-link{color:#e179f3;text-decoration:underline;text-decoration-color:rgba(225,121,243,.35);text-underline-offset:3px}
.document a:hover,.inline-link:hover{color:#fff}
.document ol{padding-left:23px;margin:12px 0 17px}
.document ol li+li{margin-top:8px}
.document blockquote{margin:18px 0;padding:14px 18px;border-left:2px solid #d761ee;background:rgba(192,78,234,.08);color:#d5cbe0}
.document table{display:block;max-width:100%;margin:20px 0;overflow-x:auto;border:1px solid var(--page-line);border-collapse:collapse;border-radius:12px;background:rgba(18,12,34,.45)}
.document th,.document td{min-width:150px;padding:13px 14px;border:1px solid var(--page-line);vertical-align:top;color:var(--page-copy);font-size:13px;line-height:1.55;text-align:left}
.document th{color:#f3eaf8;background:rgba(192,78,234,.12);font-weight:750}
.legal-aside{position:sticky;top:106px;padding:22px;border-radius:17px}
.legal-aside strong{display:block;margin-bottom:12px;font-size:13px}
.legal-aside a{display:block;padding:7px 0;color:#9f96aa;font-size:12px;line-height:1.3;transition:color .18s ease}
.legal-aside a:hover{color:#fff}
.notice{margin:0 0 38px;padding:18px 20px;border-left:2px solid #d761ee;border-radius:0 12px 12px 0;background:rgba(192,78,234,.08);color:#cfc5d7;font-size:13px;line-height:1.65}

.faq-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(40px,6vw,82px);align-items:start}
.faq-categories{position:sticky;top:106px;display:flex;flex-direction:column;gap:5px}
.faq-categories a{padding:11px 13px;border-radius:10px;color:#9f96aa;font-size:13px;font-weight:650}
.faq-categories a:hover{color:#fff;background:rgba(255,255,255,.035)}
.faq-group{margin-bottom:54px;scroll-margin-top:110px}
.faq-group h2{margin:0 0 16px;font-size:25px}
.faq-item{border-top:1px solid var(--page-line)}
.faq-item:last-child{border-bottom:1px solid var(--page-line)}
.faq-item summary{position:relative;padding:22px 44px 22px 0;cursor:pointer;list-style:none;font-size:16px;font-weight:700;line-height:1.45}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:4px;top:19px;color:#da69ef;font-size:25px;font-weight:300;transition:transform .2s ease}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-answer{padding:0 44px 23px 0;color:var(--page-copy);font-size:14px;line-height:1.72}
.faq-answer p{margin:0}

.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;margin-top:40px}
.contact-stack{display:grid;gap:14px}
.contact-card{padding:27px;border-radius:18px}
.contact-card .mini-label{display:block;margin-bottom:10px;color:#ad76c5;font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}
.contact-card h2{margin:0 0 7px;font-size:21px}
.contact-card p{margin:0;color:var(--page-copy-soft);font-size:13px;line-height:1.6}
.contact-card a{display:inline-block;margin-top:18px;color:#ed7ff0;font-size:14px;font-weight:750}
.contact-form{padding:clamp(26px,4vw,44px);border:1px solid var(--page-line);border-radius:22px;background:rgba(16,10,30,.69)}
.contact-form h2{margin:0 0 8px;font-size:28px}
.contact-form>p{margin:0 0 28px;color:var(--page-copy-soft);font-size:13px;line-height:1.6}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{margin-bottom:15px}
.field label{display:block;margin-bottom:8px;color:#cfc5d7;font-size:12px;font-weight:700}
.field input,.field select,.field textarea{width:100%;border:1px solid rgba(205,112,242,.19);border-radius:11px;background:#0d0919;color:#f7f3fb;padding:13px 14px;font:inherit;font-size:14px;outline:none;transition:border-color .18s ease,box-shadow .18s ease}
.field input,.field select{height:48px}
.field textarea{min-height:150px;resize:vertical;line-height:1.55}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(224,100,240,.56);box-shadow:0 0 0 3px rgba(201,80,232,.08)}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#ad7abd 50%),linear-gradient(135deg,#ad7abd 50%,transparent 50%);background-position:calc(100% - 17px) 21px,calc(100% - 12px) 21px;background-size:5px 5px;background-repeat:no-repeat}
.form-note{margin:12px 0 0;color:#81788c;font-size:11px;line-height:1.5}

.subpage-footer{border-top:1px solid rgba(196,83,255,.12);background:rgba(7,5,16,.82)}
.subpage-footer .footer-shell{min-height:132px}
.subpage-footer .footer-brand{display:inline-flex}
.subpage-footer .footer-links a[aria-current="page"]{color:#fff}

@media(max-width:1024px){
  .site-nav{gap:1px}.site-nav a{padding-inline:9px}
  .story-grid{grid-template-columns:1fr 1fr}
  .document-layout{grid-template-columns:minmax(0,1fr) 220px;gap:42px}
}
@media(max-width:820px){
  .site-header .header-inner{min-height:68px}.site-logo img{width:92px}.header-cta{display:none}
  .site-nav{overflow-x:auto;max-width:calc(100vw - 135px);scrollbar-width:none}.site-nav::-webkit-scrollbar{display:none}.site-nav a{white-space:nowrap}
  .story-grid,.contact-layout{grid-template-columns:1fr}
  .story-card,.story-card.small{min-height:270px}
  .values-grid{grid-template-columns:1fr 1fr}.value-card:last-child{grid-column:1/-1}
  .document-layout,.faq-layout{grid-template-columns:1fr}
  .legal-aside,.faq-categories{position:static}
  .legal-aside{display:none}
  .faq-categories{flex-direction:row;overflow:auto;padding-bottom:8px;scrollbar-width:none}.faq-categories a{white-space:nowrap;background:rgba(255,255,255,.025)}
  .cta-panel{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
  .site-header .header-inner{display:block;padding-top:15px;padding-bottom:11px}.site-logo img{width:88px}.site-nav{max-width:none;margin:10px -4px 0}.site-nav a{font-size:12px;padding:8px 9px}
  .page-hero{padding-top:58px}.page-hero h1{font-size:clamp(43px,14vw,64px)}.hero-lede{font-size:16px;line-height:1.58}
  .story-grid{gap:12px;margin-top:28px}.story-card,.story-card.small{min-height:245px;padding:27px;border-radius:18px}.story-card.small h3{font-size:24px}
  .values-grid{grid-template-columns:1fr;gap:11px}.value-card:last-child{grid-column:auto}.value-card{padding:24px}
  .cta-panel{padding:30px 24px;border-radius:20px}.primary-button{width:100%}
  .document section{padding-bottom:34px;margin-bottom:34px}.document p,.document li{font-size:14px}.notice{font-size:12px}
  .faq-group{margin-bottom:42px}.faq-item summary{padding-block:19px;font-size:15px}.faq-answer{padding-right:22px}
  .contact-form{padding:24px 18px}.form-row{grid-template-columns:1fr;gap:0}
  .subpage-footer .footer-shell{min-height:0}
}
@media(prefers-reduced-motion:reduce){.site-nav a,.header-cta,.primary-button,.faq-item summary::after{transition:none}}
