@import url('/assets/theme-tokens.css');
@charset "UTF-8";
.image-case-guide{margin:56px 0;min-width:0}.case-guide-heading{max-width:820px}.case-guide-heading h2{font-size:clamp(26px,4vw,38px);line-height:1.3;margin:12px 0}.case-guide-heading>p:last-child,.image-case header>p:last-child{color:var(--muted);line-height:1.9}.case-jump-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.case-jump-links a{padding:12px 16px;border:1px solid var(--line);background:var(--white);border-radius:10px}.image-case{padding:30px;margin-top:28px;border:1px solid var(--line);border-radius:20px;background:var(--white);scroll-margin-top:24px;min-width:0}.image-case h3{font-size:clamp(24px,3vw,32px);line-height:1.4;margin:10px 0}.image-case h4{font-size:18px;margin:0 0 14px}.case-result-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);align-items:start;gap:28px;margin:28px 0}.case-result-layout figure{margin:0;min-width:0}.case-result{width:100%;height:auto;display:block;border-radius:12px}.case-result-layout figcaption{font-size:12px;color:var(--muted);margin-top:10px}.case-settings{padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper);min-width:0}.case-settings dl{margin:0}.case-settings dl>div{padding:10px 0;border-bottom:1px solid var(--line)}.case-settings dt{font-size:12px;color:var(--muted);margin-bottom:5px}.case-settings dd{margin:0;font-size:15px;overflow-wrap:anywhere}.case-settings>p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:0}.case-prompt,.case-observations{margin:28px 0;min-width:0}.case-prompt p,.case-observations li{line-height:1.9;color:var(--muted)}.case-prompt pre{color:var(--ink);padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.9;max-width:100%;margin:16px 0}.case-prompt code{font:inherit}.case-observations ul{padding-left:22px}.case-observations li+li{margin-top:10px}@media(max-width:800px){.image-case{padding:20px;border-radius:16px}.case-result-layout{grid-template-columns:1fr;gap:18px}.case-result-layout figure{max-width:600px;width:100%;margin-inline:auto}.case-prompt pre{padding:16px;font-size:14px}.image-case-guide{margin:36px 0}}
.pricing-page .hero{grid-template-columns:1fr;padding:16px 0}.pricing-page .intro{margin:0;max-width:none}.pricing-page .hero h1{font-size:clamp(32px,5vw,52px);margin:0 0 12px}.public-pricing{padding-bottom:32px;min-width:0}.pricing-note{background:var(--green);border:1px solid var(--ink);padding:20px;margin-bottom:20px}.pricing-note p{margin:0 0 8px}.pricing-note small{color:var(--muted)}.pricing-jump{display:flex;gap:20px;margin-bottom:28px}.public-pricing section{scroll-margin-top:24px;margin-bottom:40px}.public-pricing section>p{color:var(--muted)}.public-price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-price-card{background:var(--white);border:1px solid var(--line);padding:24px;min-width:0}.public-price-card h3{margin:0 0 8px;overflow-wrap:anywhere}.public-price-card code{display:block;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.public-price-tier{border-top:1px solid var(--line);margin-top:16px;padding-top:8px}.public-price-tier>p,.pricing-period{font-size:12px;color:var(--muted)}.public-price-rates{margin:16px 0 0}.public-price-rates>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0}.public-price-rates dt{color:var(--muted);font-size:13px}.public-price-rates dd{margin:0;font:600 16px ui-monospace,monospace;text-align:right;overflow-wrap:anywhere}.public-price-rates dd small{font-size:11px;font-weight:400}.pricing-error{border:1px solid var(--line);padding:24px}@media(max-width:600px){.public-price-grid{grid-template-columns:1fr}.public-price-card{padding:18px}.pricing-note{padding:16px}}
.article-sections{min-width:0}
:root{color-scheme:light;--ink:#202c3c;--paper:#ffffff;--muted:var(--ui-primary-hover);--line:var(--ui-muted);--green:var(--ui-muted);--white:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--ui-background);font-family:"PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#16272506 1px,transparent 1px),linear-gradient(90deg,#16272506 1px,transparent 1px);background-size:24px 24px}a{color:inherit;text-underline-offset:5px}a:focus-visible,summary:focus-visible,pre:focus-visible{outline:3px solid var(--ui-primary-hover);outline-offset:5px}.site-wrap{max-width:1240px;margin:auto;padding:0 40px}.site-header{display:flex;justify-content:space-between;align-items:center;padding:25px 0;border-bottom:1px solid var(--ink);gap:28px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 23px ui-monospace,monospace;white-space:nowrap}.brand img{object-fit:contain;image-rendering:pixelated}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px;color:var(--muted)}.site-header nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:600}.site-header nav a{text-decoration:none;padding:8px 0}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:underline}.site-header nav .nav-console{padding:11px 18px;border:1px solid var(--ink);background:var(--white)}.breadcrumbs{display:flex;gap:12px;padding-top:24px;font-size:12px;color:var(--muted)}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:center;padding:56px 0 64px}.home-hero{padding-top:82px;padding-bottom:78px}.eyebrow{font:11px ui-monospace,monospace;letter-spacing:2px;color:var(--muted);margin:0 0 18px}h1{font-size:clamp(34px,4.6vw,62px);line-height:1.25;letter-spacing:-2px;margin:0 0 25px;font-weight:800}.home-hero h1{font-size:clamp(42px,5.1vw,68px)}.intro{color:var(--muted);font-size:17px;line-height:1.95;max-width:550px;margin:0}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:11px 22px;text-decoration:none;border:1px solid var(--ink);font-size:14px;font-weight:700;box-shadow:var(--ui-shadow-card);transition:transform .15s,box-shadow .15s}.button:hover{transform:translate(2px,2px);box-shadow:var(--ui-shadow-card)}.primary{background:var(--green)}.secondary{background:var(--white)}.hero-board{border:1px solid var(--ink);background:var(--ink);color:var(--paper);box-shadow:var(--ui-shadow-card);transform:rotate(-2deg)}.board-heading,.board-bottom{display:flex;align-items:center;gap:8px;font:10px ui-monospace,monospace;letter-spacing:1px;padding:16px 18px}.board-heading{border-bottom:1px solid #ffffff25}.board-heading span:last-child{margin-left:auto;color:var(--ui-muted-foreground)}.status-dot{height:7px;width:7px;background:var(--green)}.pixel-art{height:228px;position:relative;display:grid;place-items:center;overflow:hidden;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:20px 20px}.pixel-core{position:relative;z-index:2;width:92px;height:92px;display:grid;place-items:center;background:var(--green);color:var(--ink);font:700 40px ui-monospace,monospace;box-shadow:var(--ui-shadow-card);border:1px solid var(--ink)}.orbit{position:absolute;border:1px solid #d8f58085;width:205px;height:105px;transform:rotate(-34deg)}.orbit-two{transform:rotate(34deg);width:230px;height:140px}.pixel{position:absolute;background:var(--green);width:14px;height:14px}.p1{left:18%;top:24%}.p2{right:14%;top:20%;width:8px;height:8px}.p3{right:18%;bottom:20%}.p4{left:14%;bottom:26%;width:8px;height:8px}.board-bottom{border-top:1px solid #ffffff25;justify-content:space-between;color:var(--ui-muted-foreground)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:64px}.service-card{padding:27px;border:1px solid var(--ink);background:var(--white);display:flex;flex-direction:column;min-width:0}.service-card:nth-child(2){background:#ffffff}.service-card h2{font-size:23px;margin:2px 0 12px;line-height:1.5}.service-card p:not(.eyebrow){color:var(--muted);font-size:14px;margin:0 0 27px}.service-card>a{font-size:13px;font-weight:700;margin-top:auto;text-decoration:none;border-top:1px solid var(--line);padding-top:17px}.service-card>a span{float:right}.details-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(230px,1fr);gap:70px;padding:40px 0 52px;border-top:1px solid var(--ink);align-items:start}.content-section{margin-bottom:36px;scroll-margin-top:30px}.content-section:last-child{margin-bottom:0}.section-number{font:10px ui-monospace,monospace;letter-spacing:1.5px;color:var(--muted);margin:0 0 13px}.content-section h2{font-size:25px;line-height:1.5;margin:0 0 14px}.content-section>p:not(.section-number),.content-section li{font-size:15px;color:var(--muted)}.content-section ul{padding-left:20px;margin:18px 0}.content-section li{padding-left:3px;margin-bottom:10px}.reading-aside{position:sticky;top:25px;border:1px solid var(--ink);padding:26px;background:var(--ui-background)}.reading-aside h2{font-size:25px;line-height:1.5;margin:0 0 17px}.reading-aside>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:23px}.reading-aside .button{width:100%;gap:10px;padding:11px 14px}.aside-link{display:block;font-size:13px;margin-top:22px}pre{white-space:pre;overflow-x:auto;max-width:100%;background:var(--ink);color:#ffffff;padding:24px;font:12px/1.9 ui-monospace,monospace;border:1px solid var(--ui-border)}code{font:inherit}.faq{border-top:1px solid var(--ink);padding:46px 0;display:grid;grid-template-columns:1fr 2fr;gap:50px}.faq h2{font-size:27px;margin:0}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:600;font-size:15px;min-height:30px}.faq details p{font-size:14px;color:var(--muted);padding-right:12px}.related{padding:30px 0 50px;border-top:1px solid var(--line)}.related h2{font-size:19px;margin:0 0 20px}.related>div{display:flex;flex-wrap:wrap;gap:15px}.related a{border:1px solid var(--line);padding:13px 18px;background:var(--white);font-size:14px;text-decoration:none;display:flex;gap:20px}.closing{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:var(--paper);padding:38px 36px;margin:0 0 52px}.closing .eyebrow{color:var(--ui-muted-foreground)}.closing h2{font-size:27px;line-height:1.5;margin:0}.closing .button{color:var(--ink);white-space:nowrap;box-shadow:var(--ui-shadow-card)}footer{border-top:1px solid var(--ink);padding:28px 0 35px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;font-size:12px;color:var(--muted)}.footer-brand{font:700 19px ui-monospace,monospace;text-decoration:none;color:var(--ink)}footer p{margin:0}footer nav{display:flex;flex-wrap:wrap;gap:20px;margin-left:auto}footer small{display:block;width:100%;font-size:11px}.skip-link{position:fixed;left:16px;top:8px;transform:translateY(-200%);z-index:5;background:var(--green);padding:12px 20px;border:1px solid var(--ink)}.skip-link:focus{transform:none}
@media(max-width:850px){.site-wrap{padding:0 24px}.site-header nav{gap:18px}.hero{gap:30px;grid-template-columns:1.2fr 1fr}.hero-board{transform:none}.pixel-art{height:195px}.service-card{padding:20px}.details-layout{gap:30px;grid-template-columns:minmax(0,2fr) minmax(210px,1fr)}.faq{gap:30px}.brand{font-size:20px}.brand img{width:36px;height:36px}}
@media(max-width:620px){.site-wrap{padding:0 18px}.site-header{padding:19px 0;flex-wrap:wrap;gap:16px}.brand{font-size:22px}.brand img{width:38px;height:38px}.site-header nav{width:100%;justify-content:space-between;gap:10px;font-size:13px}.site-header nav .nav-console{padding:8px 12px;min-height:42px}.breadcrumbs{padding-top:19px;font-size:11px}.hero,.home-hero{grid-template-columns:1fr;padding:36px 0 40px;gap:35px}.hero h1{font-size:37px;letter-spacing:-1px;margin-bottom:20px}.home-hero h1{font-size:45px}.intro{font-size:15px}.hero-actions{margin-top:26px;gap:12px}.button{padding:10px 17px;gap:15px}.hero-board{box-shadow:var(--ui-shadow-card)}.pixel-art{height:165px}.pixel-core{width:70px;height:70px;font-size:31px}.orbit{height:88px;width:160px}.orbit-two{height:105px;width:195px}.board-heading,.board-bottom{font-size:9px;padding:12px 15px}.service-grid{grid-template-columns:1fr;gap:14px;margin-bottom:38px}.service-card{padding:23px}.service-card p:not(.eyebrow){margin-bottom:20px}.details-layout{grid-template-columns:1fr;gap:25px;padding:30px 0}.content-section{margin-bottom:30px}.content-section h2{font-size:23px}.content-section>p:not(.section-number),.content-section li{font-size:14px}.reading-aside{position:static;padding:23px}.reading-aside h2 br{display:none}.reading-aside .button{width:auto}.faq{grid-template-columns:1fr;gap:16px;padding:30px 0}.faq h2{font-size:24px}.faq summary{font-size:14px;padding:5px 0}.related{padding:27px 0 36px}.related>div{flex-direction:column}.related a{justify-content:space-between}.closing{padding:26px 23px;margin-bottom:34px;flex-direction:column;align-items:flex-start;gap:22px}.closing h2{font-size:23px}footer{padding-top:23px;gap:12px 18px}footer nav{margin-left:0;width:100%;gap:22px}pre{padding:18px;font-size:11px}.eyebrow{font-size:10px;letter-spacing:1.6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* The homepage uses artwork to explain practical creation scenarios. */

.public-model-capabilities { display: flex; flex-wrap: wrap; gap: 6px 14px; list-style: none; margin: 15px 0; padding: 0; }
.public-model-capabilities li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; max-width: 100%; font-size: 12px; }
.public-price-card .public-model-capabilities code { margin: 0; font-size: 11px; overflow-wrap: anywhere; }
.public-model-unclassified { color: var(--muted); font-size: 12px; margin: 15px 0; }
.public-page { background: #ffffff; }
.public-page::before { background: none; }
.public-page .site-wrap { max-width: 1340px; padding: 0 40px; }
.public-page .site-header { border-bottom: 1px solid #16272512; padding: 22px 0; }
.public-page .brand small { letter-spacing: 1.7px; }
.public-page .site-header nav .nav-console { border: 1px solid #16272524; border-radius: 9px; background: #fff; }



.creative-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ui-muted-foreground); }



.public-page .button { border-radius: 10px; box-shadow: none; min-height: 50px; padding: 12px 22px; gap: 24px; transition: background .15s, transform .15s; }
.public-page .button:hover { transform: translateY(-2px); box-shadow: none; }
.public-page .primary { color: #fff; background: var(--ink); border-color: var(--ink); }
.public-page .primary:hover { background: var(--ui-primary); }
.public-page .secondary { background: #fff; border-color: #16272525; }
.public-page .button:focus-visible, .public-page .nav-console:focus-visible { outline: 2px solid var(--ui-primary-hover); outline-offset: 2px; }
.creative-topics { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 27px; }
.creative-topics span { border: 1px solid #16272512; padding: 5px 11px; border-radius: 6px; font-size: 11px; color: var(--muted); background: #fff; }
.creative-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; min-width: 0; }
.creative-gallery figure { position: relative; margin: 0; min-width: 0; overflow: hidden; border-radius: 14px; background: var(--ui-background); }
.creative-gallery img { display: block; width: 100%; height: auto; object-fit: cover; }
.hero-work-main { grid-column: 1 / -1; }
.hero-work-main figcaption { position: absolute; inset: auto 0 0; padding: 28px 22px 17px; color: #fff; background: linear-gradient(transparent, #152321b3); }
.creative-gallery figcaption span { display: block; font: 9px ui-monospace, monospace; letter-spacing: 1.8px; margin-bottom: 4px; }
.hero-work-main figcaption strong { display: block; font-size: 14px; font-weight: 600; }
.hero-work-small figcaption { position: absolute; inset: auto 0 0; padding: 20px 15px 12px; background: linear-gradient(transparent, #182722b8); color: #fff; }
.hero-work-small figcaption strong { font-size: 12px; font-weight: 600; }
.gallery-note { grid-column: 1 / -1; margin: 0; color: var(--muted); font-size: 11px; letter-spacing: .3px; }
.home-section-heading { border-top: 1px solid #16272516; padding: 40px 0 24px; }
.home-section-heading .eyebrow { margin-bottom: 10px; font-size: 10px; }
.home-section-heading h2 { font-size: 27px; line-height: 1.5; letter-spacing: -.5px; margin: 0; }

.public-page .service-card { border: 1px solid #16272516; border-radius: 14px; background: #fff; padding: 26px; }
.public-page .service-card:nth-child(2) { background: #ffffff; }
.public-page .service-card:nth-child(3) { background: #ffffff; }


.public-page .service-card > a { border-color: #16272516; }






.public-page .faq { border-color: #16272516; padding: 38px 0; }

.public-page .faq details { border-color: #16272516; }
.public-page .related { border-color: #16272516; padding: 26px 0 38px; }
.public-page .related a { border-radius: 9px; border-color: #16272516; background: #fff; }
.public-page .closing { border-radius: 16px; margin-bottom: 36px; padding: 32px; }
.public-page .closing .primary { background: var(--green); color: var(--ink); border-color: var(--green); }
.public-page footer { border-color: #16272516; }
.public-page:not(.home-page) .hero h1 { font-size: clamp(34px, 4vw, 52px); letter-spacing: -1px; }
.public-page:not(.home-page) .details-layout { border-color: #16272516; }
.public-page .reading-aside { border: 1px solid #16272516; border-radius: 14px; background: #ffffff; }
.image-overview-work { min-width: 0; margin: 0; overflow: hidden; border: 1px solid #16272516; border-radius: 16px; background: #fff; }
.image-overview-work a { display: block; }
.image-overview-work a:focus-visible { outline-offset: -4px; }
.image-overview-work img { display: block; width: 100%; height: auto; }
.image-overview-work figcaption { padding: 14px 18px; color: var(--muted); font-size: 12px; }
@media (max-width: 1000px) {
  .public-page .site-wrap { padding: 0 28px; }





  .creative-gallery { gap: 11px; }

}
@media (max-width: 800px) {
  .public-page .site-wrap { padding: 0 20px; }
  .public-page .site-header { padding: 19px 0; }






  .creative-topics { margin-top: 22px; }
  .creative-gallery { gap: 12px; }
  .creative-gallery figure { border-radius: 11px; }
  .hero-work-main figcaption { padding: 25px 15px 12px; }
  .hero-work-main figcaption strong { font-size: 12px; }
  .hero-work-small figcaption { padding: 16px 10px 9px; }
  .creative-gallery figcaption span { font-size: 7px; letter-spacing: 1.2px; }
  .hero-work-small figcaption strong { font-size: 10px; }
  .gallery-note { font-size: 11px; }
  .home-section-heading { padding: 29px 0 20px; }
  .home-section-heading h2 { font-size: 23px; }




  .public-page .closing { padding: 26px 23px; }
}
@media (prefers-reduced-motion: reduce) {
  .public-page .button { transition: none; }
}
@media (max-width: 360px) {
  html[lang="zh-CN"] .home-service-actions .button { font-size: 12px; }
}

/* The connection diagram uses visible HTML labels and decorative SVG lines. */
.hero-with-board { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 40px; }
.connection-board { margin: 0; min-width: 0; transform: none; color: var(--ink); border: 1px solid #16272518; border-radius: 24px; background: #ffffff; box-shadow: var(--ui-shadow-card); overflow: hidden; }
.connection-board .board-heading { padding: 22px 24px 0; border: 0; font-size: 9px; letter-spacing: 1.1px; color: var(--ui-secondary-foreground); }
.connection-board .board-heading>span:last-child { color: var(--ui-muted-foreground); font-size: 8px; margin-left: auto; }
.connection-heading-brand { display: inline-flex; align-items: center; gap: 7px; }
.connection-board .status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--ui-muted-foreground); box-shadow: var(--ui-shadow-card); }
.connection-graph { display: grid; grid-template-columns: minmax(0, 1fr) 42px 132px 42px minmax(0, 1.1fr); align-items: center; padding: 24px 24px 28px; background: radial-gradient(ellipse at 50% 58%, #dcefc180, transparent 56%); }
.connection-stage { min-width: 0; }
.connection-label { margin: 0 0 16px; color: var(--ui-muted-foreground); font: 9px/1.5 ui-monospace, monospace; letter-spacing: 1.6px; }
.connection-label span { display: block; font: 600 12px/1.5 system-ui, sans-serif; letter-spacing: 0; margin-top: 5px; color: var(--ui-foreground); }
.connection-nodes { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.connection-nodes li { display: flex; align-items: center; gap: 8px; min-height: 46px; padding: 8px 10px; border: 1px solid #263f2420; border-radius: 11px; background: #fffffff2; color: var(--ui-foreground); box-shadow: var(--ui-shadow-card); font: 600 12px/1.4 system-ui, sans-serif; }
.connection-nodes img { flex: 0 0 28px; width: 28px; height: 28px; padding: 3px; object-fit: contain; border-radius: 7px; background: #ffffff; }
.connection-tool-mark { flex: 0 0 28px; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 7px; background: #ffffff; font: 700 17px ui-monospace, monospace; }
.connection-tools .connection-nodes { gap: 24px; }
.connection-wires { width: 100%; height: 244px; margin-top: 44px; overflow: visible; fill: none; stroke: #91ac7b75; stroke-width: 1.3; }
.connection-signals { stroke: var(--ui-secondary-foreground); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 7 93; animation: connection-flow 5s linear infinite; }
.connection-wires-out .connection-signals { animation-delay: -2s; }
.connection-hub { position: relative; z-index: 1; display: grid; place-items: center; height: 244px; margin-top: 44px; color: var(--ink); }
.connection-hub::before, .connection-hub::after { content: ""; position: absolute; top: 50%; width: 10px; height: 1px; background: #91ac7b75; }
.connection-hub::before { left: 0; }
.connection-hub::after { right: 0; }
.connection-hub-logo { display: grid; place-items: center; width: 112px; height: 112px; border: 1px solid var(--ui-border); border-radius: 50%; background: linear-gradient(145deg, #ffffff, var(--ui-background)); box-shadow: 0 0 0 6px #e9f1de99, 0 12px 26px #56713c14, inset 0 1px 0 #ffffff; }
.connection-hub-logo img { display: block; width: 80px; height: 80px; object-fit: contain; image-rendering: pixelated; }
.connection-hub strong { position: absolute; top: calc(50% + 72px); font: 750 18px/1.3 system-ui, sans-serif; letter-spacing: -.55px; white-space: nowrap; }
.connection-hub strong>span { font-weight: inherit; }
.connection-hub-note { position: absolute; top: calc(50% + 101px); font-size: 10px; line-height: 1.6; letter-spacing: .8px; color: var(--ui-secondary-foreground); }
.connection-caption { display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 0 24px 24px; text-align: center; }
.connection-caption strong { font-size: 16px; font-weight: 650; letter-spacing: .5px; }
.connection-caption>span { font-size: 10px; color: var(--ui-muted-foreground); }
@keyframes connection-flow { from { stroke-dashoffset: 100; } to { stroke-dashoffset: 0; } }
@media (max-width: 1100px) {
  .hero.hero-with-board { grid-template-columns: 1fr; gap: 35px; }
  .connection-board { width: 100%; max-width: 640px; }
}
@media (max-width: 520px) {
  .connection-board .board-heading { padding: 19px 20px 0; font-size: 8px; }
  .connection-board .board-heading>span:last-child { font-size: 7px; }
  .connection-graph { grid-template-columns: 1fr; padding: 24px 22px; gap: 0; }
  .connection-label { text-align: center; margin-bottom: 12px; }
  .connection-label span { display: inline; margin-left: 7px; }
  .connection-models .connection-nodes { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .connection-wires { display: none; }
  .connection-hub { display: flex; flex-direction: column; width: 150px; height: auto; margin: 32px auto; }
  .connection-hub strong { position: static; margin-top: 17px; }
  .connection-hub-note { position: static; margin-top: 5px; }
  .connection-hub::before, .connection-hub::after { left: 50%; right: auto; width: 1px; height: 32px; }
  .connection-hub::before { top: auto; bottom: 100%; }
  .connection-hub::after { top: 100%; }
  .connection-tools .connection-nodes { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .connection-tools .connection-nodes li { flex-direction: column; text-align: center; justify-content: center; min-height: 78px; padding: 10px 4px; font-size: 10px; }
  .connection-caption { padding: 0 22px 22px; }
}
@media (prefers-reduced-motion: reduce) { .connection-signals { animation: none; stroke-dasharray: none; opacity: .5; } }

/* Membership cards illustrate the service, not a live order or payment card. */
.topup-board { position: relative; isolation: isolate; min-width: 0; margin: 0; padding: 28px; border: 1px solid #16272518; border-radius: 24px; background: #ffffff; box-shadow: var(--ui-shadow-card); overflow: hidden; }
.topup-board::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 52% 48%, #d9edb999, transparent 64%); }
.topup-brand { display: flex; align-items: center; gap: 10px; }
.topup-brand img { object-fit: contain; image-rendering: pixelated; }
.topup-brand strong { font: 750 18px/1.4 system-ui, sans-serif; letter-spacing: -.6px; }
.topup-cards { position: relative; height: 280px; margin: 18px 0 24px; }
.topup-member-card { position: absolute; width: 74%; height: 190px; padding: 23px; border-radius: 19px; overflow: hidden; }
.topup-member-card::after { content: ""; position: absolute; inset: 0; border: 1px solid #ffffff24; border-radius: inherit; pointer-events: none; }
.topup-grok-card { right: 10px; top: 12px; color: #ffffff; background: linear-gradient(125deg, var(--ui-primary), #202c3c 80%); box-shadow: var(--ui-shadow-card); transform: rotate(8deg); animation: topup-grok-float 8s ease-in-out infinite; }
.topup-chatgpt-card { left: 6px; top: 83px; color: var(--ink); background: linear-gradient(125deg, #ffffff 45%, var(--ui-background)); border: 1px solid var(--ui-border); box-shadow: 0 18px 30px #263b2420, inset 0 1px 0 #fff; transform: rotate(-7deg); animation: topup-chatgpt-float 8s ease-in-out infinite; }
.topup-provider { position: relative; z-index: 1; display: flex; align-items: center; gap: 11px; }
.topup-provider img { object-fit: contain; }
.topup-provider strong { font: 650 22px/1.3 system-ui, sans-serif; letter-spacing: -.6px; }
.topup-grok-card img { filter: brightness(0) invert(1); }
.topup-card-label { position: relative; z-index: 1; display: block; margin-top: 13px; font-size: 13px; letter-spacing: 2px; }
.topup-grok-card .topup-card-label { position: absolute; top: 32px; right: 23px; margin: 0; font-size: 11px; letter-spacing: 1px; opacity: .75; }
.topup-card-emblem { position: absolute; right: -12px; bottom: -10px; width: 132px; height: 132px; opacity: .06; transform: rotate(12deg); }
.topup-grok-card .topup-card-emblem { opacity: .09; }
.topup-card-footnote { position: absolute; left: 23px; bottom: 22px; font-size: 10px; letter-spacing: .8px; opacity: .65; }
.topup-spark { position: absolute; right: 1px; bottom: 6px; width: 36px; height: 36px; fill: var(--ui-muted-foreground); stroke: var(--ui-muted-foreground); stroke-width: .6; }
.topup-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 20px 0 0; list-style: none; border-top: 1px solid #16272516; }
.topup-flow li { display: flex; flex-direction: column; align-items: center; gap: 9px; font-size: 12px; font-weight: 600; }
.topup-flow li>span { display: grid; place-items: center; width: 29px; height: 29px; border: 1px solid var(--ui-border); border-radius: 50%; background: var(--ui-background); color: var(--ui-secondary-foreground); font: 11px/1 ui-monospace, monospace; }
@keyframes topup-grok-float { 0%, 100% { transform: translateY(0) rotate(8deg); } 50% { transform: translateY(-4px) rotate(8deg); } }
@keyframes topup-chatgpt-float { 0%, 100% { transform: translateY(0) rotate(-7deg); } 50% { transform: translateY(4px) rotate(-7deg); } }
@media (max-width: 1100px) { .topup-board { width: 100%; max-width: 640px; } }
@media (max-width: 520px) {
  .topup-board { padding: 22px; border-radius: 20px; }
  .topup-brand strong { font-size: 17px; }
  .topup-cards { height: 252px; margin: 14px 0 19px; }
  .topup-member-card { width: 82%; height: 169px; padding: 20px; border-radius: 16px; }
  .topup-grok-card { top: 14px; right: 7px; }
  .topup-chatgpt-card { top: 75px; left: 3px; }
  .topup-provider { gap: 9px; }
  .topup-provider strong { font-size: 20px; }
  .topup-card-label { font-size: 12px; }
  .topup-grok-card .topup-card-label { top: 30px; right: 20px; font-size: 10px; }
  .topup-card-footnote { left: 20px; bottom: 18px; font-size: 9px; }
  .topup-card-emblem { width: 114px; height: 114px; }
  .topup-spark { right: -5px; bottom: 0; width: 28px; height: 28px; }
  .topup-flow { padding-top: 18px; gap: 5px; }
  .topup-flow li { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { .topup-member-card { animation: none; } }

/* Motion enhances visible HTML; the first artwork never waits for an entrance. */
























@media (prefers-reduced-motion: reduce) {
  .public-page .button { transition: none; }
  .public-page .button:hover { transform: none; }
}
.site-header nav{flex-wrap:wrap;min-width:0;gap:18px}html[lang=en] .hero-copy{min-width:0}html[lang=en] h1{overflow-wrap:break-word}@media(max-width:850px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:flex-start}}@media(max-width:620px){.site-header nav{justify-content:flex-start;gap:10px 18px}.site-header nav .nav-console{margin-left:auto}}

.language-control { position: relative; flex: 0 0 auto; }
.language-control .language-switch { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: 84px; min-height: 40px; margin: 0; padding: 0 9px; border: 1px solid #16272526; border-radius: 10px; background: var(--white); color: var(--ink); font: inherit; font-size: 12px; font-weight: 600; line-height: 1.2; cursor: pointer; box-shadow: none; transition: background .15s, border-color .15s; }
.language-control .language-switch:hover, .language-control .language-switch[aria-expanded="true"] { background: #ffffff; border-color: #16272540; }
.language-control svg { display: block; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.language-control .language-globe { width: 16px; height: 16px; }
.language-control .language-chevron { width: 12px; height: 12px; color: var(--muted); }
.language-control .language-menu { position: absolute; z-index: 20; top: calc(100% + 7px); right: 0; width: 148px; padding: 5px; border: 1px solid #1627251f; border-radius: 12px; background: var(--white); box-shadow: var(--ui-shadow-popover); }
.language-control .language-menu[hidden] { display: none; }
.language-control .language-option { appearance: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 44px; margin: 0; padding: 10px 12px; border: 0; border-radius: 7px; background: transparent; color: var(--ink); text-align: left; font: inherit; font-size: 13px; line-height: 1.4; cursor: pointer; }
.language-control .language-option[aria-checked="true"] { background: #ffffff; font-weight: 600; }
.language-control .language-option:hover { background: #ffffff; }
.language-control .language-option svg { width: 16px; height: 16px; visibility: hidden; }
.language-control .language-option[aria-checked="true"] svg { visibility: visible; }
.language-control .language-switch:focus-visible, .language-control .language-option:focus-visible { outline: 2px solid var(--ui-primary-hover); outline-offset: 2px; }
.language-control .language-option:focus-visible { outline-offset: -2px; }
@media (max-width: 850px) { .language-control { margin-left: auto; } }
@media (prefers-reduced-motion: reduce) { .language-control .language-switch { transition: none; } }
.breadcrumbs{flex-wrap:wrap}.breadcrumbs [aria-current="page"]{overflow-wrap:anywhere}
.content-table-scroll{max-width:100%;overflow-x:auto;margin:20px 0 24px}.content-table-scroll:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.content-table-scroll table{width:100%;min-width:600px;border-collapse:collapse;font-size:13px;line-height:1.8}.content-table-scroll caption{text-align:left;font-weight:600;margin-bottom:12px;color:var(--ink)}.content-table-scroll th,.content-table-scroll td{border:1px solid var(--line);padding:12px 14px;vertical-align:top;text-align:left;overflow-wrap:anywhere}.content-table-scroll th{background:var(--white);font-weight:600}.content-table-scroll td{color:var(--muted)}
/* Public factual pages use the existing reading layout without a decorative board. */
.hero.hero-text{grid-template-columns:minmax(0,1fr)}
.hero.hero-text .hero-copy{max-width:900px}
.content-meta{font-size:13px;color:var(--muted);margin:0 0 28px}
.content-sources{font-size:14px}

/* Product storytelling is scoped to the homepage and three service pages.
   Keep the model catalog, tutorials and console on their own presentation. */
.product-page {
  --ink: #202c3c;
  --paper: #ffffff;
  --white: #fff;
  --muted: var(--ui-primary-hover);
  --line: var(--ui-background);
  --green: var(--ui-muted);
  --product-accent: var(--ui-background);
  background: var(--paper);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  -webkit-font-smoothing: antialiased;
}
.product-page::before { display: none; }
.product-page .site-wrap { max-width: 1320px; padding: 0 48px; }
.product-page .site-header { min-height: 100px; padding: 22px 0; gap: 30px; border-bottom: 0; }
.product-page .brand { font: 760 24px/1.25 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: -.8px; gap: 10px; }
.product-page .brand small { font: 8px/1.4 ui-monospace, monospace; letter-spacing: 2px; margin-top: 6px; }
.product-page .site-header nav { gap: 21px; font-size: 13px; font-weight: 550; }
.product-page .site-header nav a { padding: 10px 0; }
.product-page .site-header nav .nav-console { padding: 11px 19px; border: 1px solid var(--ui-border); border-radius: 10px; background: var(--ui-primary); color: #fff; }
.product-page .language-control .language-switch { min-height: 42px; background: transparent; border-color: var(--line); }
.product-page .site-header nav .nav-console:hover { background: var(--ui-primary-hover); color: #fff; }
.product-page .eyebrow { font-family: inherit; font-size: 11px; font-weight: 600; line-height: 1.7; letter-spacing: 1.5px; color: var(--ui-secondary-foreground); }
.product-page .button { min-height: 50px; padding: 13px 21px; gap: 20px; border-radius: 10px; font-size: 14px; font-weight: 650; line-height: 1.5; box-shadow: none; transition: background .18s ease, transform .18s ease, box-shadow .18s ease; }
.product-page .button.primary { border: 1px solid var(--ui-border); background: var(--ui-primary); color: #fff; box-shadow: var(--ui-shadow-card); }
.product-page .button.secondary { border: 1px solid var(--ui-border); background: #fff; color: var(--ink); }
.product-page .button:hover { transform: translateY(-2px); box-shadow: var(--ui-shadow-card); }
.product-page .button.primary:hover { background: var(--ui-primary-hover); box-shadow: var(--ui-shadow-card); }
.product-page .button.secondary:hover { background: #ffffff; border-color: var(--ui-border); }
.product-page .button:active { transform: none; }
.product-page a:focus-visible, .product-page summary:focus-visible { outline: 2px solid var(--ui-primary-hover); outline-offset: 5px; }

/* The opening pairs a short promise with a portfolio of clearly labeled examples. */
.product-page .home-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 60px; padding: 62px 0 68px; }
.product-page .home-hero::before { display: none; }
.product-page .hero-copy { min-width: 0; }
.product-page .home-hero .eyebrow { margin-bottom: 23px; font-size: 11px; letter-spacing: 1.2px; }
.product-page .creative-dot { width: 6px; height: 6px; margin-right: 10px; background: var(--ui-muted-foreground); box-shadow: var(--ui-shadow-card); }
.product-page.home-page h1 { max-width: none; margin: 0 0 28px; font-size: clamp(43px, 5.25vw, 70px); font-weight: 780; line-height: 1.2; letter-spacing: -2.5px; }
.product-page.home-page h1 span { display: block; }
.product-page.home-page h1 span:last-child { color: var(--ui-foreground); }
.product-page .home-hero .intro { max-width: 440px; font-size: 16px; line-height: 1.9; color: var(--muted); }
.product-page .home-service-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 30px; }
.product-page .home-service-actions .button { justify-content: center; padding: 14px 8px; gap: 9px; background: var(--ui-primary); color: #fff; border-color: var(--ui-border); font-size: 13px; white-space: nowrap; }
.product-page .home-service-actions .button:hover { background: var(--ui-primary-hover); }
.product-page .home-service-actions .button > span { font-size: 16px; color: var(--ui-muted-foreground); }
.hero-explore { margin: 22px 0 0; font-size: 12px; }
.hero-explore a { display: inline-flex; align-items: center; gap: 9px; padding: 5px 0; font-weight: 600; text-decoration: none; }
.product-page .creative-gallery { gap: 0 16px; padding: 8px 10px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.product-page .creative-gallery figure { margin: 0; border: 0; border-radius: 12px; box-shadow: var(--ui-shadow-card); }
.product-page .creative-gallery img { height: 100%; object-fit: cover; }
.product-page .hero-work-main { aspect-ratio: 1.55; transform: rotate(2deg); }
.product-page .creative-gallery .hero-work-small { position: relative; z-index: 1; width: 84%; aspect-ratio: 1.38; margin-top: -45px; border: 5px solid var(--paper); }
.product-page .hero-work-small:nth-of-type(2) { margin-left: 12px; transform: rotate(-5deg); }
.product-page .hero-work-small:nth-of-type(3) { justify-self: end; margin-right: 10px; transform: rotate(5deg); }
.product-page .creative-gallery figcaption { background: linear-gradient(transparent, #18231dc2); }
.product-page .hero-work-main figcaption { inset: 0 0 auto; padding: 16px 18px 34px; background: linear-gradient(#18231dc2, transparent); }
.product-page .hero-work-main figcaption strong { font-size: 13px; font-weight: 550; }
.product-page .hero-work-small figcaption { padding: 23px 13px 10px; }
.product-page .hero-work-small figcaption strong { font-size: 11px; }
.product-page .creative-gallery figcaption span { font-size: 8px; letter-spacing: 1.1px; }
.product-page .gallery-note { margin: 18px 0 0; font-size: 10px; line-height: 1.7; color: var(--ui-secondary-foreground); text-align: center; }
.product-page .home-section-heading { display: grid; grid-template-columns: 1.2fr .8fr; column-gap: 45px; align-items: end; text-align: left; padding: 45px 0 12px; border-top: 1px solid var(--ui-border); }
.product-page .home-section-heading .eyebrow { grid-column: 1 / -1; color: var(--ui-secondary-foreground); margin-bottom: 15px; font: 10px/1.6 ui-monospace, monospace; letter-spacing: 2px; }
.product-page .home-section-heading h2 { margin: 0; font-size: clamp(28px, 3.1vw, 42px); line-height: 1.35; letter-spacing: -1.3px; }
.product-page .home-section-heading > p:last-child { color: var(--muted); margin: 0; font-size: 14px; }

/* Open artwork, a dark connection panel, then a light membership section. */
.home-showcases { display: grid; gap: 12px; margin: 0 0 55px; scroll-margin-top: 28px; }
.product-showcase { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: center; gap: 70px; padding: 52px 0; min-width: 0; }
.showcase-create { background: transparent; }
.showcase-connect { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 45px; padding: 50px 44px; border-radius: 24px; background: var(--ui-primary); color: #ffffff; }
.showcase-recharge { padding-top: 64px; background: transparent; border-bottom: 1px solid var(--ui-border); }
.showcase-copy, .showcase-stage { min-width: 0; }
.showcase-connect .showcase-copy { grid-column: 2; grid-row: 1; }
.showcase-connect .showcase-stage { grid-column: 1; grid-row: 1; }
.showcase-copy > .eyebrow { display: flex; align-items: center; gap: 13px; margin: 0 0 24px; font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .5px; }
.service-number { padding-right: 13px; border-right: 1px solid var(--ui-border); color: var(--ui-secondary-foreground); font: 12px/1 ui-monospace, monospace; }
.showcase-connect .showcase-copy > .eyebrow, .showcase-connect .service-number { color: var(--ui-muted-foreground); }
.showcase-connect .service-number { border-color: var(--ui-border); }
.showcase-recharge .service-number { color: #87693f; }
.showcase-copy h2 { max-width: 10em; margin: 0 0 23px; font-size: clamp(28px, 3.55vw, 46px); line-height: 1.3; font-weight: 750; letter-spacing: -1.5px; text-wrap: balance; }
.showcase-copy h2 span { display: block; }
.showcase-copy > p:not(.eyebrow) { max-width: 28em; font-size: 15px; line-height: 1.9; color: var(--ui-secondary-foreground); margin: 0 0 27px; }
.showcase-connect .showcase-copy > p:not(.eyebrow) { color: var(--ui-muted-foreground); }
.showcase-connect .showcase-copy h2 { color: #ffffff; }
.showcase-connect .button.primary { background: var(--ui-muted); color: var(--ui-foreground); border-color: var(--ui-border); }
.showcase-connect .button.primary:hover { background: var(--ui-background); }
.showcase-connect a:focus-visible { outline-color: var(--ui-muted); }
.showcase-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px 22px; }
.showcase-more { display: block; width: fit-content; margin: 0; padding: 5px 0; font-size: 12px; text-decoration: none; }
.showcase-more span { display: inline-block; margin-left: 9px; }
.showcase-more:hover { text-decoration: underline; }
.creation-demo { margin: 0; padding: 0 24px; background: var(--ui-background); border: 0; border-radius: 20px; overflow: hidden; }
.demo-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 19px 0; color: var(--ui-secondary-foreground); font: 9px/1.5 ui-monospace, monospace; letter-spacing: .6px; }
.demo-heading > span:first-child { display: inline-flex; align-items: center; gap: 7px; }
.demo-heading > span:last-child { font-family: inherit; font-size: 10px; line-height: 1.5; letter-spacing: 0; }
.demo-dot { width: 6px; height: 6px; background: #ccd6e4; border-radius: 50%; }
.demo-prompt { position: relative; margin: -32px 18px 0; padding: 15px 16px; background: #fffffff5; border: 1px solid var(--ui-border); border-radius: 10px; box-shadow: var(--ui-shadow-card); }
.demo-prompt-label { display: block; font-size: 10px; color: var(--ui-secondary-foreground); }
.demo-prompt p { font-size: 12px; line-height: 1.7; margin: 7px 0 12px; }
.demo-prompt > div { display: flex; align-items: center; gap: 6px; font-size: 9px; color: var(--ui-secondary-foreground); }
.demo-prompt > div > span { padding: 3px 8px; background: #fff; border: 1px solid var(--ui-border); border-radius: 5px; }
.demo-prompt > div > span:last-child { margin-left: auto; border: 0; background: var(--ui-muted); color: var(--ui-foreground); }
.demo-artwork { margin: 0; border-radius: 9px; overflow: hidden; }
.demo-artwork img { display: block; width: 100%; height: auto; }
.creation-demo figcaption { padding: 15px 0 19px; font-size: 9px; color: var(--ui-secondary-foreground); line-height: 1.7; text-align: center; }
.showcase-stage .connection-board { width: 100%; max-width: none; background: transparent; color: #ffffff; border: 0; border-radius: 0; box-shadow: none; }
.showcase-stage .connection-graph { padding: 23px 0; grid-template-columns: minmax(0, 1fr) 28px 105px 28px minmax(0, 1fr); background: radial-gradient(ellipse at center, #b4d39414, transparent 67%); }
.showcase-stage .connection-board .board-heading { padding: 10px 0 0; color: var(--ui-muted-foreground); }
.showcase-stage .connection-board .board-heading > span:last-child { color: var(--ui-muted-foreground); }
.showcase-stage .connection-label, .showcase-stage .connection-hub-note, .showcase-stage .connection-caption > span { color: var(--ui-muted-foreground); }
.showcase-stage .connection-label span, .showcase-stage .connection-hub { color: #ffffff; }
.showcase-stage .connection-nodes li { color: var(--ui-foreground); background: #ffffff; border-color: var(--ui-border); box-shadow: none; }
.showcase-stage .connection-hub-logo { width: 88px; height: 88px; background: #ffffff; }
.showcase-stage .connection-hub-logo img { width: 67px; height: 67px; }
.showcase-stage .connection-hub strong { top: calc(50% + 62px); font-size: 15px; }
.showcase-stage .connection-hub-note { top: calc(50% + 85px); font-size: 9px; }
.showcase-stage .connection-nodes li { font-size: 10px; padding: 8px 7px; gap: 6px; }
.showcase-stage .connection-nodes img, .showcase-stage .connection-tool-mark { width: 23px; height: 23px; flex-basis: 23px; }
.showcase-stage .connection-caption { padding: 12px 0 0; }
.showcase-stage .connection-caption strong { font-size: 15px; }
.showcase-stage .connection-caption > span { font-size: 10px; }
.showcase-stage .topup-board { width: 100%; max-width: none; padding: 20px; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.showcase-stage .topup-brand { display: none; }
.showcase-stage .topup-board::before { background: radial-gradient(ellipse at 52% 48%, #eee1bd80, transparent 66%); }
.showcase-stage .topup-grok-card .topup-card-label { position: static; margin: 12px 0 0; font-size: 11px; }

/* The service pages retain their detailed, searchable content. */
.product-page:not(.home-page) .breadcrumbs { padding-top: 12px; font-size: 11px; color: var(--ui-secondary-foreground); }
.product-page:not(.home-page) .hero-with-board { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 50px; padding: 48px 0 70px; }
.product-page:not(.home-page) .hero h1 { max-width: 11em; margin-bottom: 24px; font-size: clamp(38px, 4.1vw, 56px); font-weight: 740; line-height: 1.28; letter-spacing: -1.7px; text-wrap: balance; }
.product-page:not(.home-page) .hero .intro { max-width: 480px; font-size: 15px; line-height: 1.9; }
.product-page:not(.home-page) .hero .eyebrow { display: inline-block; padding: 6px 10px; border-radius: 6px; background: var(--product-accent); font-size: 10px; }
.product-page.api-product { --product-accent: #ffffff; }
.product-page.topup-product { --product-accent: #ffffff; }
.product-page:not(.home-page) .image-overview-work,
.product-page:not(.home-page) .connection-board,
.product-page:not(.home-page) .topup-board { border-radius: 20px; box-shadow: var(--ui-shadow-card); }
.product-page .image-overview-work { padding: 12px; background: var(--ui-background); border-color: var(--ui-border); }
.product-page .image-overview-work a { border-radius: 11px; overflow: hidden; }
.product-page .image-overview-work figcaption { padding: 13px 8px 3px; font-size: 11px; }
.product-page.api-product .connection-board { background: #ffffff; border-color: var(--ui-border); }
.product-page.topup-product .topup-board { background: #ffffff; border-color: #e9dfce; }
.product-page .service-grid { gap: 18px; margin-bottom: 65px; }
.product-page .service-card { border: 1px solid var(--ui-border); background: #fff; border-radius: 16px; padding: 28px; }
.product-page .service-card:nth-child(2) { background: var(--product-accent); border-color: transparent; }
.product-page .service-card .eyebrow { margin-bottom: 13px; font-size: 10px; letter-spacing: 1.3px; }
.product-page .service-card h2 { font-size: 22px; font-weight: 680; letter-spacing: -.5px; }
.product-page .service-card p:not(.eyebrow) { font-size: 13px; line-height: 1.9; }
.product-page .service-card > a { font-size: 12px; line-height: 1.8; border-color: var(--ui-border); padding-top: 16px; }
.product-page .details-layout { border-color: var(--ui-border); gap: 65px; padding: 48px 0 60px; }
.product-page .content-section { margin-bottom: 38px; }
.product-page .content-section h2 { font-size: 25px; font-weight: 680; line-height: 1.5; letter-spacing: -.5px; }
.product-page .section-number { display: block; width: fit-content; margin-bottom: 15px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ui-secondary-foreground); font: 10px/1.5 ui-monospace, monospace; letter-spacing: 1.4px; }
.product-page .reading-aside { padding: 29px; background: var(--product-accent); border: 0; border-radius: 16px; }
.product-page .reading-aside h2 { font-size: 25px; }
.product-page.home-page .details-layout { display: block; padding: 0 0 65px; border-top: 0; }
.product-page.home-page .article-sections { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; }
.product-page.home-page .content-section { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.product-page.home-page .content-section h2 { font-size: 27px; }
.product-page.home-page .content-section > p:not(.section-number), .product-page.home-page .content-section li { font-size: 14px; line-height: 1.9; }
.product-page.home-page .content-section ul { padding-left: 17px; }
.product-page .faq { padding: 53px 0; gap: 65px; border-top: 1px solid var(--ui-border); }
.product-page .faq .eyebrow { font: 10px/1.5 ui-monospace, monospace; letter-spacing: 1.5px; }
.product-page .faq h2 { font-size: 32px; letter-spacing: -1px; }
.product-page .faq details { border-color: var(--ui-border); padding: 20px 0; }
.product-page .faq details:first-child { padding-top: 5px; }
.product-page .faq summary { font-size: 15px; font-weight: 600; }
.product-page .faq details p { line-height: 1.9; }
.product-page .related { border-top: 1px solid var(--ui-border); padding: 30px 0 55px; }
.product-page .related a { border: 1px solid var(--ui-border); border-radius: 10px; font-size: 13px; background: #fff; }
.product-page .closing { position: relative; overflow: hidden; gap: 32px; padding: 52px; margin-bottom: 50px; border-radius: 23px; border: 0; background: var(--ui-background); color: var(--ink); box-shadow: none; }
.product-page .closing .eyebrow { color: var(--ui-secondary-foreground); margin-bottom: 13px; font: 10px/1.5 ui-monospace, monospace; letter-spacing: 1.7px; }
.product-page .closing h2 { font-size: 35px; font-weight: 720; line-height: 1.4; letter-spacing: -1px; }
.product-page .closing .primary { flex-shrink: 0; color: #fff; background: var(--ui-primary); border-color: var(--ui-border); }
.product-page footer { border-color: var(--ui-border); padding: 31px 0 38px; row-gap: 20px; }
.product-page .footer-brand { font: 750 23px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: -.7px; }
.product-page footer nav { gap: 14px 22px; }

@media (max-width: 1150px) {
  .product-page .site-wrap { padding: 0 32px; }
  .product-page .site-header { gap: 22px; }
  .product-page .site-header nav { gap: 14px; font-size: 12px; }
  .product-page .home-hero { gap: 35px; padding-top: 40px; }
  .product-page.home-page h1 { font-size: 46px; letter-spacing: -1.6px; }
  .product-page .home-service-actions { gap: 7px; }
  .product-page .home-service-actions .button { font-size: 12px; gap: 5px; }
  .product-showcase { padding: 42px 0; gap: 34px; }
  .showcase-connect { padding: 36px; }
  .showcase-copy h2 { font-size: 36px; }
  .showcase-stage .connection-graph { grid-template-columns: minmax(0, 1fr) 19px 88px 19px minmax(0, 1fr); padding-inline: 15px; }
  .showcase-stage .connection-nodes li { flex-direction: column; justify-content: center; text-align: center; min-height: 55px; font-size: 9px; padding: 7px 4px; }
  .showcase-stage .connection-models .connection-nodes { gap: 7px; }
  .showcase-stage .connection-tools .connection-nodes { gap: 25px; }
  .showcase-stage .connection-hub-logo { width: 73px; height: 73px; }
  .showcase-stage .connection-hub-logo img { width: 57px; height: 57px; }
  .showcase-stage .connection-hub strong { font-size: 13px; }
  .showcase-stage .connection-board .board-heading > span:last-child { display: none; }
  .product-page:not(.home-page) .hero-with-board { gap: 34px; }
  .product-page:not(.home-page) .hero h1 { font-size: 43px; }
  .product-page .details-layout { gap: 36px; }
}
@media (max-width: 900px) {
  .product-page .site-header { flex-wrap: wrap; gap: 18px; }
  .product-page .language-control { margin-left: auto; }
  .product-page .site-header nav { order: 3; width: 100%; justify-content: flex-start; gap: 20px; font-size: 13px; }
  .product-page .site-header nav .nav-console { margin-left: auto; }
  .product-page .home-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; }
  .product-page.home-page h1 { font-size: 38px; letter-spacing: -1.5px; }
  .product-page .home-hero .intro { font-size: 14px; }
  .product-page .home-service-actions .button > span { display: none; }
  .product-page .creative-gallery { padding: 8px; }
  .product-page .creative-gallery .hero-work-small { margin-top: -25px; border-width: 4px; }
  .product-page .hero-work-small figcaption strong { font-size: 9px; }
  .product-page .creative-gallery figcaption span { font-size: 6px; }
  .product-page .gallery-note { font-size: 9px; }
  .product-showcase, .showcase-connect { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); padding: 38px 0; gap: 28px; }
  .showcase-connect { padding: 32px 24px; }
  .showcase-connect .showcase-copy { grid-column: 1; }
  .showcase-connect .showcase-stage { grid-column: 2; }
  .showcase-copy h2 { font-size: 29px; }
  .showcase-copy > p:not(.eyebrow) { font-size: 13px; }
  .product-page:not(.home-page) .hero-with-board { grid-template-columns: 1fr; gap: 32px; padding-top: 30px; }
  .product-page:not(.home-page) .hero-copy { max-width: 650px; }
  .product-page:not(.home-page) .hero h1 { max-width: none; }
  .product-page:not(.home-page) .hero .intro { max-width: 620px; }
  .product-page:not(.home-page) .hero-with-board > figure { width: 100%; max-width: 650px; }
  .product-page .service-card { padding: 22px; }
  .product-page .service-card h2 { font-size: 20px; }
  .product-page.home-page .article-sections, .product-page .faq { gap: 35px; }
}
@media (max-width: 700px) {
  .product-page .site-wrap { padding: 0 22px; }
  .product-page .site-header { min-height: auto; padding: 20px 0 15px; gap: 14px; border-bottom: 1px solid #e9e9df; }
  .product-page .site-header nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 12px; text-align: center; }
  .product-page .site-header nav .nav-console { margin-left: 0; padding: 9px 10px; min-height: 39px; }
  .product-page .brand { font-size: 23px; }
  .product-page .brand img { width: 37px; height: 37px; }
  .product-page .brand small { font-size: 7px; }
  .product-page .home-hero { grid-template-columns: 1fr; padding: 35px 0 34px; gap: 25px; }
  .product-page .home-hero .eyebrow { margin-bottom: 20px; font-size: 10px; letter-spacing: .9px; }
  .product-page.home-page h1 { font-size: clamp(37px, 8.3vw, 54px); line-height: 1.28; letter-spacing: -1.4px; margin-bottom: 20px; }
  .product-page .home-hero .intro { max-width: 480px; font-size: 15px; line-height: 1.85; }
  .product-page .home-service-actions { gap: 8px; margin-top: 24px; }
  .product-page .home-service-actions .button { padding: 12px 5px; font-size: 12px; min-height: 48px; }
  .hero-explore { margin-top: 16px; }
  .product-page .creative-gallery { width: 100%; max-width: 520px; justify-self: center; padding: 8px; gap: 0 12px; }
  .product-page .creative-gallery .hero-work-small { width: 76%; margin-top: -38px; }
  .product-page .hero-work-main figcaption { padding: 13px 13px 27px; }
  .product-page .hero-work-main figcaption strong { font-size: 11px; }
  .product-page .hero-work-small figcaption { padding: 20px 10px 9px; }
  .product-page .hero-work-small figcaption strong { font-size: 10px; }
  .product-page .creative-gallery figcaption span { font-size: 7px; }
  .product-page .home-section-heading { grid-template-columns: 1fr; padding: 32px 0 8px; text-align: left; }
  .product-page .home-section-heading h2 { font-size: 28px; line-height: 1.45; }
  .product-page .home-section-heading > p:last-child { margin-top: 12px; font-size: 13px; }
  .home-showcases { gap: 10px; margin-bottom: 38px; }
  .product-showcase, .showcase-connect { grid-template-columns: 1fr; padding: 28px 0 32px; gap: 27px; }
  .showcase-connect { padding: 30px 22px; border-radius: 18px; }
  .showcase-recharge { padding-top: 35px; }
  .showcase-connect .showcase-copy, .showcase-connect .showcase-stage { grid-column: auto; grid-row: auto; }
  .showcase-copy > .eyebrow { margin-bottom: 20px; }
  .showcase-copy h2 { max-width: 12em; font-size: 30px; line-height: 1.4; letter-spacing: -.9px; margin-bottom: 16px; }
  .showcase-copy > p:not(.eyebrow) { font-size: 14px; margin-bottom: 20px; }
  .showcase-actions { gap: 16px; }
  .creation-demo { padding: 0 16px; }
  .demo-heading { padding: 16px 0; font-size: 8px; }
  .demo-heading > span:last-child { font-size: 9px; }
  .demo-prompt { margin: -26px 10px 0; padding: 13px; }
  .creation-demo figcaption { padding: 13px 0; }
  .showcase-stage .connection-graph { grid-template-columns: 1fr; padding: 22px 0; }
  .showcase-stage .connection-wires { display: none; }
  .showcase-stage .connection-label { margin: 0 0 13px; text-align: center; }
  .showcase-stage .connection-label span { display: inline; margin-left: 7px; }
  .showcase-stage .connection-models .connection-nodes { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
  .showcase-stage .connection-models .connection-nodes li { flex-direction: column; min-height: 62px; font-size: 9px; padding: 7px 2px; }
  .showcase-stage .connection-hub { display: grid; grid-template-columns: 58px 1fr; grid-template-rows: 1fr 1fr; column-gap: 15px; height: auto; width: fit-content; margin: 25px auto; text-align: left; }
  .showcase-stage .connection-hub-logo { grid-row: 1 / -1; width: 58px; height: 58px; }
  .showcase-stage .connection-hub-logo img { width: 43px; height: 43px; }
  .showcase-stage .connection-hub strong { position: static; align-self: end; justify-self: start; margin: 0; font-size: 16px; }
  .showcase-stage .connection-hub-note { position: static; align-self: start; justify-self: start; margin-top: 4px; font-size: 10px; }
  .showcase-stage .connection-hub::before, .showcase-stage .connection-hub::after { left: 50%; right: auto; width: 1px; height: 29px; }
  .showcase-stage .connection-hub::before { top: auto; bottom: 100%; }
  .showcase-stage .connection-hub::after { top: 100%; }
  .showcase-stage .connection-tools .connection-nodes { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .showcase-stage .connection-tools .connection-nodes li { min-height: 62px; font-size: 10px; }
  .showcase-stage .connection-caption strong { font-size: 14px; }
  .showcase-stage .connection-caption > span { font-size: 9px; }
  .showcase-stage .topup-board { padding: 10px; }
  .showcase-stage .topup-cards { height: 225px; }
  .showcase-stage .topup-member-card { width: 90%; height: 155px; padding: 16px; }
  .showcase-stage .topup-provider strong { font-size: 18px; }
  .showcase-stage .topup-grok-card .topup-card-label { font-size: 10px; }
  .showcase-stage .topup-card-footnote { left: 16px; bottom: 15px; font-size: 8px; }
  .showcase-stage .topup-flow li { font-size: 10px; }
  .product-page:not(.home-page) .breadcrumbs { margin-top: 7px; }
  .product-page:not(.home-page) .hero-with-board { padding: 29px 0 36px; }
  .product-page:not(.home-page) .hero h1 { font-size: 37px; letter-spacing: -1.3px; }
  .product-page:not(.home-page) .hero .intro { font-size: 14px; }
  .product-page .service-grid { grid-template-columns: 1fr; gap: 12px; margin-bottom: 35px; }
  .product-page .service-card { padding: 25px; }
  .product-page .service-card h2 { font-size: 22px; }
  .product-page .details-layout { grid-template-columns: 1fr; gap: 28px; padding: 32px 0; }
  .product-page .content-section h2 { font-size: 24px; }
  .product-page .content-section > p:not(.section-number), .product-page .content-section li { font-size: 14px; }
  .product-page .reading-aside { position: static; padding: 25px; }
  .product-page.home-page .details-layout { padding-bottom: 38px; }
  .product-page.home-page .article-sections { grid-template-columns: 1fr; gap: 34px; }
  .product-page.home-page .content-section h2 { font-size: 25px; }
  .product-page .faq { grid-template-columns: 1fr; gap: 26px; padding: 35px 0; }
  .product-page .faq h2 { font-size: 28px; }
  .product-page .faq details { padding: 18px 0; }
  .product-page .faq summary { font-size: 14px; }
  .product-page .related { padding-bottom: 35px; }
  .product-page .related > div { flex-direction: column; }
  .product-page .related a { justify-content: space-between; gap: 12px; }
  .product-page .closing { padding: 30px 25px; margin-bottom: 32px; flex-direction: column; align-items: flex-start; gap: 24px; border-radius: 17px; }
  .product-page .closing h2 { font-size: 28px; }
  .product-page footer { padding-top: 24px; }
  .product-page footer nav { width: 100%; margin-left: 0; gap: 17px; }
}
@media (max-width: 500px) {
  .product-page .site-header nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px 12px; }
}
@media (max-width: 370px) {
  .product-page .site-wrap { padding: 0 17px; }
  .product-page .site-header nav { gap: 3px 8px; }
  .product-page.home-page h1 { font-size: 35px; }
  .product-page .home-service-actions .button { font-size: 11px; }
  .showcase-connect { padding: 25px 17px; }
  .showcase-copy h2 { font-size: 27px; }
  .showcase-stage .topup-board { padding: 14px; }
  .showcase-stage .topup-provider strong { font-size: 16px; }
  .showcase-stage .topup-brand strong { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .product-page .button { transition: none; }
  .product-page .button:hover { transform: none; }
}

.status-page .hero{padding-bottom:30px;max-width:820px}.status-page .hero h1{font-size:clamp(36px,5vw,58px)}
.status-overview{display:flex;align-items:center;gap:13px;background:#ffffff;border:1px solid var(--ui-border);border-radius:16px;padding:22px 25px;margin-bottom:24px;color:var(--ui-foreground)}
.status-indicator,.status-badge i,.status-legend i{display:inline-block;width:10px;height:10px;flex-shrink:0;border-radius:50%;background:var(--ui-muted-foreground)}
.status-overview.down{background:#ffffff;border-color:#efcdc6;color:#923e31}.status-overview.down .status-indicator,.status-badge.down i,.status-legend .down{background:#c86452}
.status-overview.unknown{background:#ffffff;border-color:var(--ui-border);color:var(--ui-secondary-foreground)}.status-overview.unknown .status-indicator,.status-badge.unknown i,.status-legend .unknown{background:var(--ui-muted)}
.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.status-card{min-width:0;border:1px solid var(--ui-border);border-radius:18px;background:#ffffff;padding:26px}
.status-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.status-card-heading h2{font-size:23px;margin:0 0 7px}.status-card-heading code{font-size:12px;word-break:break-word}.status-card-heading p{font-size:13px;color:var(--ui-secondary-foreground);margin:8px 0 0}
.status-badge{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;font-size:12px;padding:7px 10px;border-radius:20px;background:#ffffff}.status-badge i{width:7px;height:7px}
.status-facts{display:grid;gap:11px;margin:25px 0;padding-bottom:22px;border-bottom:1px solid var(--ui-border)}.status-facts>div{display:flex;justify-content:space-between;gap:15px;font-size:12px}.status-facts dt{color:var(--ui-secondary-foreground);flex-shrink:0}.status-facts dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.status-rates{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:27px}.status-rates>div{display:grid;gap:7px}.status-rates span{font-size:12px;color:var(--ui-secondary-foreground)}.status-rates strong{font-size:29px;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums}.status-rates small{font-size:12px;color:var(--ui-secondary-foreground)}
.status-history-label{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:11px}.status-history-label small{font-size:11px;color:var(--ui-secondary-foreground)}.status-history{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:3px}.status-day{height:29px;border-radius:3px;background:var(--ui-background)}.status-day.up,.status-legend .up{background:var(--ui-muted-foreground)}.status-day.down{background:#c86452}.status-day.partial,.status-legend .partial{background:#d6ab51}.status-day:focus-visible{outline:2px solid var(--ui-primary);outline-offset:2px}
.status-notes{padding:23px 2px 10px;color:var(--ui-secondary-foreground);font-size:13px;line-height:1.9}.status-notes p{max-width:900px}.status-notes small{font-size:12px}.status-legend{display:flex;flex-wrap:wrap;gap:18px}.status-legend span{display:flex;align-items:center;gap:7px;font-size:12px}.status-legend i{width:8px;height:8px;border-radius:2px}.status-message{padding:10px 2px;color:#923e31}
@media(max-width:850px){.status-grid{grid-template-columns:1fr}.status-card{padding:22px}.status-page .hero{padding-top:25px}.status-overview{padding:19px 21px}}
@media(max-width:380px){.status-card{padding:17px}.status-card-heading{gap:8px}.status-badge{font-size:11px;padding:6px 8px}.status-card-heading h2{font-size:21px}.status-facts>div{display:block}.status-facts dd{text-align:left;margin-top:4px}.status-rates{gap:10px}.status-history{gap:2px}}

/* Shared public shell for every public page. Homepage styles live in home-scenes.css. */
.public-page {
  --ink: var(--ui-foreground);
  --muted: var(--ui-muted-foreground);
  --line: var(--ui-border);
  background: var(--ui-background);
  color: var(--ink);
  font-family: var(--ui-font);
}
.public-page::before { display: none; }
.public-page .site-wrap { max-width: 1440px; padding: 0 48px; }
.public-page .site-header { min-height: 72px; gap: 22px; margin-top: 20px; padding: 14px 20px; border: 1px solid var(--line); border-radius: 18px; background: var(--ui-surface); box-shadow: var(--ui-shadow-header); }
.public-page .brand { --brand-mark-width: 54px; --brand-mark-height: 22px; --brand-gap: 10px; font-family: var(--ui-font); font-size: 21px; font-weight: 800; line-height: 1.2; letter-spacing: -.7px; gap: var(--brand-gap); flex-shrink: 0; }
.public-page .brand img { width: var(--brand-mark-width); height: var(--brand-mark-height); flex-shrink: 0; }
.public-page .brand small { display: none; }
.public-page .site-header nav { min-width: 0; margin-left: auto; gap: 21px; font-size: 13px; }
.public-page .site-header nav a { display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; }
.public-page .site-header nav a[aria-current="page"] { color: var(--ink); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.public-page .site-header nav .nav-console { min-height: 42px; padding: 10px 15px; background: var(--ui-primary); color: var(--ui-primary-foreground); border: 1px solid var(--ui-primary); border-radius: var(--ui-radius-control); }
.public-page .site-header nav .nav-console:hover { background: var(--ui-primary-hover); color: var(--ui-primary-foreground); }
.public-page .button { min-height: 46px; padding: 11px 19px; gap: 15px; border-radius: var(--ui-radius-control); font-size: 13px; font-weight: 550; line-height: 1.6; text-decoration: none; box-shadow: none; }
.public-page .button.primary { background: var(--ui-primary); border-color: var(--ui-primary); color: var(--ui-primary-foreground); }
.public-page .button.primary:hover { background: var(--ui-primary-hover); }
.public-page .button.secondary { background: var(--ui-surface); border-color: var(--line); color: var(--ink); }
.public-page .button:hover { transform: none; box-shadow: none; }
.public-page .faq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 60px; border-top: 1px solid var(--line); padding: 38px 0 44px; }
.public-page .faq h2 { font-size: 25px; line-height: 1.5; letter-spacing: -.5px; margin: 5px 0 0; }
.public-page .faq details { border-color: var(--line); padding: 0; }
.public-page .faq summary { position: relative; padding: 18px 32px 18px 0; min-height: 56px; font-size: 14px; font-weight: 500; line-height: 1.8; list-style: none; }
.public-page .faq summary::-webkit-details-marker { display: none; }
.public-page .faq summary::before, .public-page .faq summary::after { content: ''; position: absolute; top: 30px; right: 3px; width: 12px; height: 1.5px; border-radius: 1px; background: var(--muted); }
.public-page .faq summary::after { transform: rotate(90deg); transition: transform .18s ease; }
.public-page .faq details[open] summary::after { transform: rotate(0); }
.public-page .faq details p { margin: 0 22px 20px 0; color: var(--ui-secondary-foreground); font-size: 13px; line-height: 1.9; }
.public-page footer { align-items: flex-start; gap: 20px 32px; padding: 28px 0 36px; border-color: var(--line); font-size: 12px; line-height: 1.8; }
.public-page .footer-brand { font: 750 23px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: -.7px; }
.public-page footer > p { margin: 10px 0 0; }
.public-page footer nav { font-size: 12px; gap: 8px 20px; }
.public-page footer nav a { display: inline-flex; align-items: center; min-height: 44px; }
.public-page a:focus-visible, .public-page button:focus-visible, .public-page summary:focus-visible { outline: 2px solid var(--ui-ring); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .public-page .button.secondary:hover { background: var(--ui-muted); }
  .public-page footer nav a:hover { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; }
}
@media (max-width: 1100px) {
  .public-page .site-wrap { padding: 0 30px; }
  .public-page .site-header { flex-wrap: wrap; column-gap: 18px; row-gap: 6px; }
  .public-page .site-header .language-links { order: 1; margin-left: auto; }
  .public-page .site-header nav { order: 2; width: 100%; margin-left: 0; justify-content: space-between; gap: 17px; }
}
@media (max-width: 900px) {
  .public-page .faq { gap: 35px; }
}
@media (max-width: 640px) {
  .public-page .site-wrap { padding: 0 20px; }
  .public-page .site-header { min-height: auto; margin-top: 12px; padding: 12px 14px 4px; gap: 4px 12px; }
  .public-page .brand { --brand-mark-width: 48px; --brand-mark-height: 19.2px; font-size: 19px; }
  .public-page .site-header nav { display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 18px; overflow-x: auto; font-size: 12px; }
  .public-page .site-header nav a { min-height: 44px; display: inline-flex; align-items: center; flex: 0 0 auto; padding: 8px 0; }
  .public-page .site-header nav .nav-console { display: none; }
  .public-page .faq { grid-template-columns: 1fr; gap: 15px; padding: 27px 0 32px; }
  .public-page .faq h2 { font-size: 24px; }
  .public-page .faq summary { font-size: 14px; padding-top: 16px; padding-bottom: 16px; }
  .public-page .faq summary::before, .public-page .faq summary::after { top: 28px; }
  .public-page footer { font-size: 11px; }
  .public-page footer nav { font-size: 11px; gap: 5px 18px; }
}
@media (max-width: 359px) {
  .public-page .site-wrap { padding: 0 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .public-page .button, .public-page .faq summary::after { transition: none; }
}

/* Inner pages prioritize scanning and reading; homepage presentation stays separate. */
.public-page.inner-page .site-wrap { max-width: 1240px; padding-inline: 32px; }
.public-page.inner-page .site-header { min-height: 60px; margin-top: 0; padding: 8px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; box-shadow: none; }
.public-page.inner-page .brand { font-size: 20px; gap: 9px; }
.public-page.inner-page .site-header nav { gap: 18px; }
.public-page.inner-page .site-header nav .nav-console { min-height: 36px; padding: 6px 12px; }
.public-page.inner-page .breadcrumbs { align-items: baseline; gap: 8px; margin: 0; padding-top: 16px; color: var(--muted); font-size: 11px; line-height: 1.7; }
.public-page.inner-page .breadcrumbs [aria-current="page"] { min-width: 0; white-space: normal; color: var(--ui-secondary-foreground); }
.public-page.inner-page .button { min-height: 36px; padding: 7px 13px; gap: 14px; font-size: 12px; border-radius: 7px; box-shadow: none; }

.public-page.inner-page .inner-hero { width: 100%; max-width: none; gap: 24px 40px; padding: 22px 0 26px; }
.public-page.inner-page .inner-hero--product { grid-template-columns: minmax(0, 1fr) 180px; }
.public-page.inner-page .inner-hero--text { grid-template-columns: minmax(0, 1fr); }
.public-page.inner-page .inner-hero .hero-copy { min-width: 0; max-width: 850px; }
.public-page.inner-page .inner-hero .eyebrow { display: block; margin: 0 0 8px; padding: 0; background: transparent; color: var(--muted); font: 600 10px/1.7 var(--ui-font); letter-spacing: .08em; }
.public-page.inner-page .inner-hero h1 { max-width: 28em; margin: 0 0 12px; color: var(--ink); font-size: 32px; font-weight: 700; line-height: 1.35; letter-spacing: -.03em; text-wrap: balance; overflow-wrap: anywhere; }
.public-page.inner-page .inner-hero .intro { max-width: 60em; margin: 0; color: var(--ui-secondary-foreground); font-size: 14px; line-height: 1.8; }
.public-page.inner-page .inner-hero .hero-actions { gap: 10px; margin-top: 16px; }
.public-page.inner-page .product-meta { margin: 12px 0 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.public-page.inner-page .hero .product-visual { justify-self: end; width: 100%; max-width: 180px; min-width: 0; margin: 0; }
.public-page.inner-page .hero .product-visual--portrait { max-width: 150px; }
.public-page.inner-page .product-visual picture { display: block; }
.public-page.inner-page .product-visual img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 10px; background: var(--ui-muted); }
.public-page.inner-page .product-visual figcaption { margin-top: 7px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.public-page.inner-page .content-meta { margin: 0 0 18px; color: var(--muted); font-size: 11px; line-height: 1.8; }

/* Entry points are compact columns, not another set of promotional cards. */
.public-page.inner-page .service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0 0 24px; padding-block: 16px; border-block: 1px solid var(--line); }
.public-page.inner-page.guide-directory .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.public-page.inner-page .service-card { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.public-page.inner-page .service-card .eyebrow { margin: 0 0 6px; color: var(--muted); font: 600 10px/1.7 var(--ui-font); letter-spacing: .06em; }
.public-page.inner-page .service-card h2 { margin: 0 0 7px; font-size: 17px; font-weight: 650; line-height: 1.5; letter-spacing: -.02em; overflow-wrap: anywhere; }
.public-page.inner-page .service-card p:not(.eyebrow) { margin: 0 0 10px; color: var(--ui-secondary-foreground); font-size: 13px; line-height: 1.8; }
.public-page.inner-page .service-card > a { display: inline-flex; align-self: flex-start; align-items: center; gap: 10px; min-height: 36px; margin: auto 0 0; padding: 0; border: 0; font-size: 12px; line-height: 1.7; text-decoration: none; }
.public-page.inner-page .service-card > a span { float: none; }

/* Reading sections use one document flow, without a card around each paragraph. */
.public-page.inner-page .details-layout { display: grid; grid-template-areas: "article aside"; grid-template-columns: minmax(0, 1fr) 230px; align-items: start; gap: 40px; padding: 24px 0 30px; border-top: 1px solid var(--line); scroll-margin-top: 20px; }
.public-page.inner-page .service-grid + .details-layout { padding-top: 0; border-top: 0; }
.public-page.inner-page .article-sections { grid-area: article; display: grid; min-width: 0; gap: 26px; }
.public-page.inner-page .content-section { min-width: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; scroll-margin-top: 20px; overflow-wrap: anywhere; }
.public-page.inner-page .section-number { display: block; margin: 0 0 5px; padding: 0; border: 0; background: transparent; color: var(--muted); font: 500 10px/1.6 ui-monospace, monospace; letter-spacing: .08em; }
.public-page.inner-page .content-section h2 { margin: 0 0 10px; color: var(--ink); font-size: 21px; font-weight: 650; line-height: 1.5; letter-spacing: -.02em; }
.public-page.inner-page .content-section > p:not(.section-number), .public-page.inner-page .content-section li { color: var(--ui-secondary-foreground); font-size: 14px; line-height: 1.85; }
.public-page.inner-page .content-section > p:not(.section-number) { margin: 0 0 12px; }
.public-page.inner-page .content-section > :last-child { margin-bottom: 0; }
.public-page.inner-page .content-section ul { margin: 12px 0; padding-left: 20px; }
.public-page.inner-page .content-section li { padding-left: 2px; margin: 0 0 6px; }
.public-page.inner-page .content-section li::marker { color: var(--muted); }
.public-page.inner-page .content-section pre, .public-page.inner-page .case-prompt pre { max-width: 100%; padding: 14px 16px; border: 1px solid var(--line); border-radius: 7px; background: var(--ui-muted); color: var(--ink); font: 12px/1.8 ui-monospace, monospace; overflow-x: auto; }
.public-page.inner-page .content-table-scroll { max-width: 100%; margin: 16px 0; border: 1px solid var(--line); border-radius: 7px; overflow-x: auto; }
.public-page.inner-page .content-table-scroll table { border-style: hidden; }
.public-page.inner-page .content-table-scroll caption { padding: 9px 12px; margin: 0; background: var(--ui-surface); color: var(--ui-secondary-foreground); }
.public-page.inner-page .content-table-scroll th, .public-page.inner-page .content-table-scroll td { border-color: var(--line); padding: 9px 12px; }
.public-page.inner-page .content-table-scroll th { background: var(--ui-muted); }
.public-page.inner-page .reading-aside { grid-area: aside; position: static; min-width: 0; padding: 0 0 0 20px; border: 0; border-left: 1px solid var(--line); border-radius: 0; background: transparent; }
.public-page.inner-page .page-contents h2 { margin: 0 0 10px; font-size: 13px; font-weight: 650; line-height: 1.5; }
.public-page.inner-page .page-contents ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; counter-reset: page-section; }
.public-page.inner-page .page-contents li { min-width: 0; counter-increment: page-section; }
.public-page.inner-page .page-contents a { display: flex; align-items: baseline; gap: 7px; padding: 7px 0; border-radius: 4px; color: var(--ui-secondary-foreground); font-size: 12px; line-height: 1.6; text-decoration: none; overflow-wrap: anywhere; }
.public-page.inner-page .page-contents a::before { content: counter(page-section, decimal-leading-zero); flex: 0 0 17px; color: var(--muted); font: 10px/1.6 ui-monospace, monospace; }
.public-page.inner-page .page-contents a:focus-visible { outline-offset: 2px; background: var(--ui-muted); }
.public-page.inner-page .reading-action { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.public-page.inner-page .reading-action > p:not(.eyebrow) { margin: 0 0 12px; color: var(--ui-secondary-foreground); font-size: 12px; line-height: 1.8; }
.public-page.inner-page .reading-action .eyebrow { margin-bottom: 8px; }
.public-page.inner-page .reading-action .button { gap: 10px; }
.public-page.inner-page .aside-link { width: fit-content; margin-top: 8px; padding-block: 6px; font-size: 12px; }
.public-page.inner-page .faq { gap: 30px; padding: 24px 0; }
.public-page.inner-page .faq h2 { font-size: 20px; }
.public-page.inner-page .faq .eyebrow { margin-bottom: 7px; font-size: 10px; }
.public-page.inner-page .faq summary { min-height: 44px; padding: 12px 30px 12px 0; font-size: 13px; }
.public-page.inner-page .faq summary::before, .public-page.inner-page .faq summary::after { top: 24px; }
.public-page.inner-page .related { padding: 20px 0; }
.public-page.inner-page .related h2 { margin: 0 0 10px; font-size: 18px; }
.public-page.inner-page .related > div { gap: 8px; }
.public-page.inner-page .related a { padding: 8px 11px; border-color: var(--line); border-radius: 6px; background: transparent; color: var(--ui-secondary-foreground); font-size: 12px; }
.public-page.inner-page .closing { margin-bottom: 20px; padding: 18px 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); box-shadow: none; }
.public-page.inner-page .closing h2 { margin: 0; font-size: 21px; letter-spacing: -.02em; }
.public-page.inner-page .closing .eyebrow { margin-bottom: 6px; color: var(--muted); font-size: 10px; }
.public-page.inner-page .closing .button.primary { background: var(--ui-primary); border-color: var(--ui-primary); color: var(--ui-primary-foreground); }
.public-page.inner-page footer { padding-block: 24px; }
.public-page.inner-page .pricing-error { padding: 16px; border: 1px solid var(--line); border-radius: 8px; font-size: 13px; }

/* Recorded examples keep the original image and prompt, with a smaller reading frame. */
.public-page.inner-page .image-case-guide { margin: 28px 0; }
.public-page.inner-page .case-guide-heading h2 { font-size: 23px; margin: 8px 0; }
.public-page.inner-page .case-guide-heading > p:last-child, .public-page.inner-page .image-case header > p:last-child { font-size: 14px; line-height: 1.8; }
.public-page.inner-page .case-jump-links { gap: 8px; margin: 16px 0; }
.public-page.inner-page .case-jump-links a { padding: 7px 10px; border-radius: 6px; font-size: 12px; }
.public-page.inner-page .image-case { padding: 20px 0 0; margin-top: 20px; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; }
.public-page.inner-page .image-case h3 { margin: 6px 0; font-size: 21px; }
.public-page.inner-page .image-case h4 { margin: 0 0 10px; font-size: 15px; }
.public-page.inner-page .case-result-layout { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: 24px; margin: 18px 0; }
.public-page.inner-page .case-result-layout figure { width: 100%; max-width: 360px; margin: 0; }
.public-page.inner-page .case-result { border-radius: 8px; }
.public-page.inner-page .case-settings { padding: 0; border: 0; border-radius: 0; background: transparent; }
.public-page.inner-page .case-settings dl > div { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 12px; padding: 8px 0; }
.public-page.inner-page .case-settings dt { margin: 0; }
.public-page.inner-page .case-settings dd { font-size: 13px; }
.public-page.inner-page .case-prompt, .public-page.inner-page .case-observations { margin: 18px 0; }
.public-page.inner-page .case-prompt p, .public-page.inner-page .case-observations li { font-size: 14px; line-height: 1.8; }

/* Preserve state colors while bringing status panels into the same compact scale. */
.public-page.inner-page .status-overview, .public-page.inner-page .status-card { padding: 16px; border-color: var(--line); border-radius: 9px; background: var(--ui-surface); box-shadow: none; }
.public-page.inner-page .status-overview { margin-bottom: 16px; }
.public-page.inner-page .status-grid { gap: 16px; }
.public-page.inner-page .status-card-heading h2 { font-size: 18px; }
.public-page.inner-page .status-facts { gap: 8px; margin: 16px 0; padding-bottom: 14px; }
.public-page.inner-page .status-rates { margin-bottom: 16px; }
.public-page.inner-page .status-rates strong { font-size: 23px; }
.public-page.inner-page .status-day { height: 22px; }
.public-page.inner-page .status-overview.down { border-color: var(--ui-danger); color: var(--ui-danger); background: var(--ui-danger-soft); }
.public-page.inner-page .status-overview.up .status-indicator, .public-page.inner-page .status-badge.up i, .public-page.inner-page .status-day.up, .public-page.inner-page .status-legend .up { background: var(--ui-success); }
.public-page.inner-page .status-overview.down .status-indicator, .public-page.inner-page .status-badge.down i, .public-page.inner-page .status-day.down, .public-page.inner-page .status-legend .down { background: var(--ui-danger); }
.public-page.inner-page .status-day.partial, .public-page.inner-page .status-legend .partial { background: var(--ui-warning); }
.public-page.inner-page .status-overview.unknown .status-indicator, .public-page.inner-page .status-badge.unknown i, .public-page.inner-page .status-legend .unknown { background: var(--muted); }
.public-page.inner-page .status-badge { background: var(--ui-muted); }
.public-page.inner-page .status-badge.up { color: var(--ui-success); background: var(--ui-success-soft); }
.public-page.inner-page .status-badge.down { color: var(--ui-danger); background: var(--ui-danger-soft); }
.public-page.inner-page .status-facts dd, .public-page.inner-page .status-card-heading code { overflow-wrap: anywhere; }
.public-page.inner-page .status-message { color: var(--ui-danger); }

@media (min-width: 1060px) and (min-height: 750px) { .public-page.inner-page .reading-aside { position: sticky; top: 20px; } }
@media (hover: hover) and (pointer: fine) {
  .public-page.inner-page .page-contents a:hover, .public-page.inner-page .related a:hover { background: var(--ui-muted); color: var(--ink); }
  .public-page.inner-page .service-card > a:hover { text-decoration: underline; }
  .public-page.inner-page .closing .button.primary:hover { background: var(--ui-primary-hover); }
}
@media (max-width: 1050px) {
  .public-page.inner-page .site-wrap { padding-inline: 24px; }
  .public-page.inner-page .details-layout { grid-template-columns: minmax(0, 1fr) 210px; gap: 28px; }
  .public-page.inner-page .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .public-page.inner-page .details-layout { grid-template-areas: "aside" "article"; grid-template-columns: minmax(0, 1fr); }
  .public-page.inner-page .reading-aside { position: static; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 20px; padding: 0 0 18px; border-left: 0; border-bottom: 1px solid var(--line); }
  .public-page.inner-page .reading-action { margin: 0; padding: 0 0 0 20px; border-top: 0; border-left: 1px solid var(--line); }
  .public-page.inner-page .case-result-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 700px) {
  .public-page.inner-page .site-wrap { padding-inline: 18px; }
  .public-page.inner-page .site-header { padding: 8px 0 0; }
  .public-page.inner-page .site-header nav { gap: 16px; }
  .public-page.inner-page .breadcrumbs { padding-top: 12px; }
  .public-page.inner-page .inner-hero { grid-template-columns: minmax(0, 1fr); gap: 18px; padding: 18px 0 22px; }
  .public-page.inner-page .inner-hero h1 { font-size: 27px; }
  .public-page.inner-page .hero .product-visual { display: flex; align-items: center; justify-self: stretch; gap: 14px; max-width: none; }
  .public-page.inner-page .product-visual picture { flex: 0 0 104px; }
  .public-page.inner-page .product-visual figcaption { max-width: 180px; margin: 0; }
  .public-page.inner-page .button { min-height: 40px; }
  .public-page.inner-page .service-grid, .public-page.inner-page.guide-directory .service-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .public-page.inner-page .service-card + .service-card { border-top: 1px solid var(--line); padding-top: 14px; }
  .public-page.inner-page .details-layout { padding: 20px 0 24px; gap: 22px; }
  .public-page.inner-page .content-section h2 { font-size: 20px; }
  .public-page.inner-page .reading-aside { display: block; }
  .public-page.inner-page .page-contents a { min-height: 40px; padding-block: 9px; }
  .public-page.inner-page .reading-action { margin-top: 14px; padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--line); }
  .public-page.inner-page .faq { gap: 12px; }
  .public-page.inner-page .closing { gap: 14px; padding-block: 16px; }
  .public-page.inner-page .status-card-heading { flex-wrap: wrap; }
}

/* Compact comparison rows. Exact rates and conditions remain in server HTML. */
.public-page.pricing-page .inner-hero { padding-bottom: 20px; }
.public-page.pricing-page .pricing-context { padding: 12px 16px; border: 1px solid var(--line); border-radius: 8px; background: var(--ui-surface); }
.public-page.pricing-page .pricing-context-line { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 7px 20px; }
.public-page.pricing-page .pricing-context-line > p { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0; font-size: 12px; }
.public-page.pricing-page .pricing-currency { font-size: 15px; font-weight: 650; }
.public-page.pricing-page .pricing-ratio, .public-page.pricing-page .pricing-updated { color: var(--muted); font-size: 11px; }
.public-page.pricing-page .pricing-explainer { margin-top: 3px; }
.public-page.pricing-page .pricing-explainer summary { width: fit-content; position: relative; padding: 6px 23px 4px 0; color: var(--ui-secondary-foreground); font-size: 11px; cursor: pointer; list-style: none; }
.public-page.pricing-page .pricing-explainer > div { padding-top: 8px; border-top: 1px solid var(--line); color: var(--ui-secondary-foreground); font-size: 12px; line-height: 1.85; }
.public-page.pricing-page .pricing-explainer p { margin: 6px 0; }
.public-page.pricing-page .pricing-jump { display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 20px; }
.public-page.pricing-page .pricing-jump a { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 6px 11px; border: 1px solid var(--line); border-radius: 6px; background: transparent; font-size: 12px; font-weight: 550; text-decoration: none; }
.public-page.pricing-page .pricing-jump .home-icon { width: 15px; height: 15px; flex-shrink: 0; color: var(--ui-secondary-foreground); }
.public-page.pricing-page .price-count { color: var(--muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.public-page.pricing-page .public-pricing > .price-category { margin-bottom: 24px; padding-top: 0; border: 0; }
.public-page.pricing-page .price-category-heading { display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 8px 20px; margin-bottom: 10px; }
.public-page.pricing-page .price-category-kicker { display: inline; margin: 0; color: var(--muted); font-size: 9px; font-weight: 600; letter-spacing: .08em; }
.public-page.pricing-page .price-category-heading h2 { display: inline; margin: 0 0 0 9px; font-size: 18px; line-height: 1.5; letter-spacing: -.3px; }
.public-page.pricing-page .price-category-heading div > p:last-child { margin: 3px 0 0; font-size: 11px; line-height: 1.8; color: var(--muted); }
.public-page.pricing-page .price-category-heading > a { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; font-size: 11px; text-decoration: none; }
.public-page.pricing-page .public-price-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border: 1px solid var(--line); border-radius: 8px; background: var(--ui-surface); overflow: hidden; }
.public-page.pricing-page .public-price-card { display: grid; grid-template-columns: minmax(0, 1fr) 176px; min-width: 0; padding: 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; box-shadow: none; }
.public-page.pricing-page .public-price-card:last-child { border-bottom: 0; }
.public-page.pricing-page .price-card-main { grid-column: 1; grid-row: 1; display: grid; grid-template-columns: minmax(180px, 1fr) minmax(0, 1.15fr); align-items: start; gap: 0 20px; min-width: 0; padding: 15px 18px 8px; }
.public-page.pricing-page .price-card-main > :not(.price-model-heading) { grid-column: 2; }
.public-page.pricing-page .price-model-heading { grid-column: 1; grid-row: 1; display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.public-page.pricing-page .price-brand { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 32px; border: 1px solid var(--line); border-radius: 7px; background: var(--ui-surface); font-size: 19px; font-weight: 650; }
.public-page.pricing-page .price-brand img { display: block; width: 21px; height: 21px; object-fit: contain; }
.public-page.pricing-page .price-model-heading > div { min-width: 0; }
.public-page.pricing-page .price-model-heading h3 { margin: 0 0 3px; font-size: 15px; font-weight: 650; letter-spacing: -.2px; line-height: 1.5; overflow-wrap: anywhere; }
.public-page.pricing-page .price-model-id { color: var(--muted); font: 10px/1.6 ui-monospace, monospace; overflow-wrap: anywhere; }
.public-page.pricing-page .price-spotlight, .public-page.pricing-page .price-token-spotlight { margin: 0; padding: 0; min-width: 0; }
.public-page.pricing-page .price-spotlight { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: 2px 12px; }
.public-page.pricing-page .price-spotlight .price-condition { grid-column: 2; grid-row: 1; max-width: 160px; }
.public-page.pricing-page .price-spotlight > p { grid-column: 1; grid-row: 1; }
.public-page.pricing-page .price-spotlight > small { grid-column: 1 / -1; }
.public-page.pricing-page .price-condition { display: block; margin: 0 0 4px; color: var(--ui-secondary-foreground); font-size: 11px; line-height: 1.7; overflow-wrap: anywhere; }
.public-page.pricing-page .price-spotlight > p { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; margin: 0; }
.public-page.pricing-page .price-spotlight strong { color: var(--ink); font-size: 23px; font-weight: 650; line-height: 1.35; letter-spacing: -.6px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.public-page.pricing-page .price-spotlight > p > span { color: var(--muted); font-size: 11px; }
.public-page.pricing-page .price-spotlight > small, .public-page.pricing-page .price-token-spotlight > small { color: var(--muted); font-size: 10px; line-height: 1.7; }
.public-page.pricing-page .price-unavailable > p { font-size: 18px; font-weight: 600; }
.public-page.pricing-page .price-token-spotlight > dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; max-width: 380px; margin: 5px 0 2px; }
.public-page.pricing-page .price-token-spotlight > dl > div + div { border-left: 1px solid var(--line); padding-left: 18px; }
.public-page.pricing-page .price-token-spotlight > dl > div { display: flex; align-items: baseline; flex-wrap: wrap; gap: 3px 8px; }
.public-page.pricing-page .price-token-spotlight dt { color: var(--muted); font-size: 11px; margin-bottom: 2px; }
.public-page.pricing-page .price-token-spotlight dd { margin: 0; color: var(--ink); font-size: 20px; font-weight: 650; line-height: 1.4; letter-spacing: -.4px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.public-page.pricing-page .price-card-main > .price-notices { grid-column: 1 / -1; grid-row: 2; display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px 16px; margin-top: 9px; padding-top: 8px; border-top: 1px solid var(--line); }
.public-page.pricing-page .pricing-period { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; margin: 0; color: var(--ui-secondary-foreground); font-size: 11px; font-weight: 550; line-height: 1.7; }
.public-page.pricing-page .pricing-period span { color: var(--muted); font-size: 10px; font-weight: 400; }
.public-page.pricing-page .price-billing-notice { padding: 3px 7px; margin: 0; border-radius: 4px; background: var(--ui-warning-soft); color: var(--ui-warning); font-size: 11px; line-height: 1.7; }
.public-page.pricing-page .price-card-action { grid-column: 2; grid-row: 1; align-self: center; justify-self: end; display: inline-flex; align-items: center; justify-content: space-between; gap: 9px; min-height: 36px; max-width: calc(100% - 32px); margin: 12px 16px; padding: 7px 10px; border: 1px solid var(--line); border-radius: 6px; background: var(--ui-muted); color: var(--ink); font-size: 12px; line-height: 1.6; font-weight: 550; text-decoration: none; }
.public-page.pricing-page .price-card-action > span { flex-shrink: 0; }
.public-page.pricing-page .price-details { grid-column: 1 / -1; grid-row: 2; border: 0; margin: 0 18px; min-width: 0; }
.public-page.pricing-page .price-details summary { position: relative; width: fit-content; max-width: 100%; padding: 6px 22px 9px 0; min-height: 32px; font-size: 11px; line-height: 1.7; color: var(--muted); cursor: pointer; list-style: none; }
.public-page.pricing-page .price-details summary::-webkit-details-marker, .public-page.pricing-page .pricing-explainer summary::-webkit-details-marker { display: none; }
.public-page.pricing-page .price-details summary::after, .public-page.pricing-page .pricing-explainer summary::after { content: ''; position: absolute; top: calc(50% - 5px); right: 3px; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.public-page.pricing-page details[open] > summary::after { transform: rotate(225deg); top: calc(50% - 1px); }
.public-page.pricing-page .price-details-body { padding: 12px 0 16px; border-top: 1px solid var(--line); }
.public-page.pricing-page .price-details-body .public-price-rates { max-width: 640px; margin: 0; }
.public-page.pricing-page .public-price-rates > div { align-items: baseline; gap: 12px; padding: 6px 0; border-bottom: 1px solid var(--line); }
.public-page.pricing-page .public-price-rates > div:last-child { border-bottom: 0; }
.public-page.pricing-page .public-price-rates dt { min-width: 0; font-size: 12px; overflow-wrap: anywhere; }
.public-page.pricing-page .public-price-rates dd { max-width: 60%; font-size: 13px; }
.public-page.pricing-page .public-price-rates dd small { display: inline-block; color: var(--muted); font: 10px/1.6 var(--ui-font); }
.public-page.pricing-page .public-price-rates .price-row-unavailable dd { font-family: var(--ui-font); font-size: 12px; font-weight: 400; color: var(--muted); }
.public-page.pricing-page .public-price-tier { padding-top: 10px; margin-top: 12px; border-color: var(--line); }
.public-page.pricing-page .public-price-tier:first-child { padding-top: 0; margin-top: 0; border: 0; }
.public-page.pricing-page .public-price-tier > p { margin: 0 0 4px; color: var(--ui-secondary-foreground); font-size: 11px; line-height: 1.8; }
.public-page.pricing-page .price-detail-label { margin: 12px 0 6px; color: var(--muted); font-size: 11px; }
.public-page.pricing-page .public-model-capabilities { display: flex; flex-wrap: wrap; gap: 5px; margin: 0; padding: 0; list-style: none; }
.public-page.pricing-page .public-model-capabilities li { max-width: 100%; padding: 3px 6px; border: 1px solid var(--line); border-radius: 4px; background: var(--ui-muted); color: var(--ui-secondary-foreground); font-size: 10px; line-height: 1.7; }
.public-page.pricing-page .public-model-capabilities code { font-size: 10px; overflow-wrap: anywhere; }
.public-page.pricing-page .public-model-unclassified { margin: 0; font-size: 12px; }
.public-page.pricing-page .pricing-category-note { margin: 8px 0 0; max-width: 900px; font-size: 11px; line-height: 1.8; color: var(--muted); }
.public-page.pricing-page .pricing-empty { margin: 0; padding: 16px; color: var(--muted); font-size: 13px; }
@media (hover: hover) and (pointer: fine) {
  .public-page.pricing-page .public-price-card:hover { background: var(--ui-background); }
  .public-page.pricing-page .price-card-action:hover { background: var(--ui-primary); color: var(--ui-primary-foreground); }
  .public-page.pricing-page .price-category-heading > a:hover { text-decoration: underline; }
  .public-page.pricing-page .pricing-jump a:hover { background: var(--ui-muted); }
}
@media (max-width: 860px) {
  .public-page.pricing-page .public-price-card { grid-template-columns: minmax(0, 1fr) 150px; }
  .public-page.pricing-page .price-card-main { grid-template-columns: minmax(130px, .9fr) minmax(0, 1.1fr); gap: 0 14px; }
  .public-page.pricing-page .price-card-action { margin-inline: 10px; max-width: calc(100% - 20px); }
  .public-page.pricing-page .price-spotlight { display: block; }
  .public-page.pricing-page .price-spotlight .price-condition { max-width: none; }
}
@media (max-width: 600px) {
  .public-page.pricing-page .public-price-card { grid-template-columns: minmax(0, 1fr); }
  .public-page.pricing-page .price-card-main { grid-column: 1; display: block; padding: 14px 14px 4px; }
  .public-page.pricing-page .price-model-heading { margin-bottom: 12px; }
  .public-page.pricing-page .price-model-heading h3 { font-size: 15px; }
  .public-page.pricing-page .price-spotlight { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 10px; align-items: baseline; }
  .public-page.pricing-page .price-spotlight .price-condition { grid-column: 1; margin: 0; }
  .public-page.pricing-page .price-spotlight > p { grid-column: 2; }
  .public-page.pricing-page .price-spotlight > small { grid-column: 1 / -1; }
  .public-page.pricing-page .price-spotlight strong { font-size: 21px; }
  .public-page.pricing-page .price-token-spotlight dd { font-size: 20px; }
  .public-page.pricing-page .price-details { grid-column: 1; margin-inline: 14px; }
  .public-page.pricing-page .price-details summary { min-height: 40px; padding-block: 10px; }
  .public-page.pricing-page .price-card-action { grid-column: 1; grid-row: 3; justify-self: start; min-height: 40px; margin: 0 14px 12px; }
  .public-page.pricing-page .pricing-jump a { min-height: 40px; }
  .public-page.pricing-page .pricing-explainer summary { min-height: 36px; padding-block: 8px; }
}

/* Warm, illustrated public site. Tokens, header, buttons and footer apply to every public page;
   homepage sections below are scoped to .home-page. Complete without JavaScript. */
.public-page {
 --paper:#FBF9F6; --surface:#fff; --ink:#1C1B1A; --ink-2:#57534E; --ink-3:#78716C; --line:#ECE6DF; --line-2:#DED6CD;
 --accent:#E2703A; --accent-ink:#B4501C; --accent-soft:#FDEBDD;
 --tint-image:#FFE9DC; --tint-video:#E1EEFF; --tint-api:#ECE7FF; --tint-member:#DFF4EA;
 --ink-image:#C2410C; --ink-video:#1D4ED8; --ink-api:#6D28D9; --ink-member:#047857;
 --dot-image:#FB923C; --dot-video:#3B82F6; --dot-api:#8B5CF6; --dot-member:#10B981;
 --radius-card:28px; --radius-btn:14px;
 --shadow-card:0 1px 2px rgb(28 27 26 / 4%), 0 10px 30px -12px rgb(28 27 26 / 14%);
 --shadow-lift:0 2px 6px rgb(28 27 26 / 6%), 0 24px 48px -16px rgb(28 27 26 / 24%);
 --ease-out:cubic-bezier(.16,1,.3,1); --ease-pop:cubic-bezier(.34,1.56,.64,1);
 --muted:var(--ink-3); --ui-ring:var(--accent);
 background:var(--paper); color:var(--ink);
 font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
 -webkit-font-smoothing:antialiased;
}
.public-page::before { display:none; }
.public-page *, .public-page *::before, .public-page *::after { box-sizing:border-box; }
.public-page .site-wrap { max-width:1240px; padding:0 40px; }
.public-page .hp-icon { flex:none; vertical-align:middle; }
.public-page a:focus-visible, .public-page button:focus-visible, .public-page summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; border-radius:8px; }
.public-page [hidden] { display:none !important; }
.public-page .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }

/* Header: identical on every public page */
.public-page .site-header { min-height:72px; gap:22px; margin-top:20px; padding:14px 20px; border:1px solid var(--line); border-radius:18px; background:rgb(255 255 255 / 82%); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); box-shadow:0 1px 2px rgb(28 27 26 / 4%); }
.public-page .brand { font:800 21px/1.2 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:-.7px; gap:10px; }
.public-page .site-header nav { gap:21px; font-size:14px; }
.public-page .site-header nav a { color:var(--ink-2); font-weight:600; padding:10px 0; text-decoration:none; }
.public-page .site-header nav a:hover, .public-page .site-header nav a[aria-current="page"] { color:var(--ink); }
.public-page .site-header nav a[aria-current="page"] { text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:3px; text-underline-offset:9px; }
.public-page .site-header nav .nav-console { min-height:42px; padding:10px 16px; background:var(--ink); border:1px solid var(--ink); color:#fff; border-radius:12px; text-decoration:none; }
.public-page .site-header nav .nav-console:hover { background:#000; color:#fff; }
.public-page .language-links { font-size:14px; }
.public-page .language-links a { text-decoration:none; }
.public-page .language-links a[aria-current] { color:var(--ink); font-weight:700; }

/* Buttons */
.public-page .hp-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px; }
.public-page .hp-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 24px; border:1px solid transparent; border-radius:var(--radius-btn); font-size:16px; font-weight:650; line-height:1.4; text-decoration:none; white-space:nowrap; transition:transform .18s var(--ease-out), box-shadow .18s, background-color .18s, border-color .18s; }
.public-page .hp-btn .hp-icon-arrow { transition:transform .18s var(--ease-out); }
.public-page .hp-btn-primary { background:var(--ink); color:#fff; box-shadow:0 1px 0 rgb(255 255 255 / 12%) inset, 0 8px 20px -8px rgb(28 27 26 / 50%); }
.public-page .hp-btn-secondary { background:var(--surface); color:var(--ink); border-color:var(--line-2); box-shadow:0 1px 2px rgb(28 27 26 / 5%); }
@media (hover:hover) and (pointer:fine) {
 .public-page .hp-btn:hover { transform:translateY(-2px); }
 .public-page .hp-btn-primary:hover { background:#000; box-shadow:0 12px 26px -10px rgb(28 27 26 / 55%); }
 .public-page .hp-btn-secondary:hover { border-color:var(--ink-3); }
 .public-page .hp-btn:hover .hp-icon-arrow, .home-page .hp-link:hover .hp-icon-arrow, .home-page .hp-price:hover .hp-icon-arrow { transform:translateX(3px); }
}

/* Hero */
.home-page .hp-hero { position:relative; padding:44px 0 0; text-align:center; }
.home-page .hp-pill { display:inline-flex; align-items:center; gap:10px; margin:0; padding:7px 16px 7px 12px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--ink-2); font-size:14px; font-weight:600; line-height:1.5; box-shadow:0 1px 2px rgb(28 27 26 / 4%); }
.home-page .hp-pill-dots { display:inline-flex; gap:4px; }
.home-page .hp-pill-dots i { width:8px; height:8px; border-radius:50%; background:var(--dot-image); }
.home-page .hp-pill-dots i:nth-child(2) { background:var(--dot-api); }
.home-page .hp-pill-dots i:nth-child(3) { background:var(--dot-video); }
.home-page .hp-pill-dots i:nth-child(4) { background:var(--dot-member); }
.home-page .hp-hero h1 { max-width:15.5em; margin:22px auto 0; color:var(--ink); font-size:clamp(36px,5.1vw,64px); font-weight:780; line-height:1.14; letter-spacing:-.035em; text-wrap:balance; }
.home-page .hp-hero h1 .hp-line { display:block; color:var(--ink); }
.home-page .hp-hero h1 .hp-mark { position:relative; display:inline-block; isolation:isolate; color:var(--ink); white-space:nowrap; }
.home-page:lang(en) .hp-hero h1 { max-width:19em; font-size:clamp(34px,4.6vw,58px); }
.home-page .hp-underline { position:absolute; z-index:-1; left:-3%; bottom:-.16em; width:106%; height:.3em; color:var(--accent); overflow:visible; }
.home-page .hp-underline path { stroke-dasharray:260; stroke-dashoffset:0; }
.home-page .hp-intro { max-width:34em; margin:20px auto 0; color:var(--ink-2); font-size:19px; line-height:1.7; text-wrap:pretty; }
.home-page .hp-hero .hp-actions { margin-top:28px; }
.home-page .hp-note { display:inline-flex; align-items:center; gap:7px; margin:16px 0 0; color:var(--ink-3); font-size:14px; }
.home-page .hp-note .hp-icon { color:var(--ink-member); }

/* Illustrated stage: four service cards collaged on a soft dotted canvas */
.home-page .hp-stage { position:relative; max-width:1120px; aspect-ratio:1120 / 500; margin:44px auto 0; border:1px solid var(--line); border-radius:36px; background:radial-gradient(circle, #E6DDD3 1.1px, transparent 1.3px) 0 0 / 22px 22px, linear-gradient(180deg, #fff 0%, #FFF7F0 100%); box-shadow:var(--shadow-card); }
.home-page .hp-stage-decor { position:absolute; inset:0; overflow:hidden; border-radius:inherit; pointer-events:none; }
.home-page .hp-blob { position:absolute; border-radius:50%; filter:blur(48px); opacity:.85; }
.home-page .hp-blob-1 { width:38%; height:62%; left:-6%; top:-12%; background:var(--tint-image); }
.home-page .hp-blob-2 { width:36%; height:58%; left:36%; top:44%; background:var(--tint-api); }
.home-page .hp-blob-3 { width:34%; height:60%; right:-6%; top:-8%; background:var(--tint-member); }
.home-page .hp-doodle { position:absolute; display:block; }
.home-page .hp-doodle svg { display:block; width:100%; height:100%; }
.home-page .hp-doodle-star-1 { width:26px; height:26px; left:22%; top:9%; color:var(--accent); }
.home-page .hp-doodle-star-2 { width:18px; height:18px; right:28%; top:74%; color:var(--dot-api); }
.home-page .hp-doodle-star-3 { width:14px; height:14px; left:46%; top:8%; color:var(--dot-member); }
.home-page .hp-doodle-squiggle { width:96px; height:32px; left:5%; bottom:7%; color:var(--dot-video); opacity:.7; }
.home-page .hp-doodle-loop { width:110px; height:84px; left:30%; top:56%; color:var(--ink-3); opacity:.55; }
.home-page .hp-stage-cards { position:absolute; inset:0; margin:0; padding:0; list-style:none; }
.home-page .hp-slot { position:absolute; }
.home-page .hp-slot-image { --r:-7deg; left:4.5%; top:13%; width:19.5%; }
.home-page .hp-slot-api { --r:2.5deg; left:25.5%; top:8%; width:34%; z-index:2; }
.home-page .hp-slot-video { --r:-3.5deg; left:53%; top:30%; width:18.5%; z-index:3; }
.home-page .hp-slot-membership { --r:6deg; right:5%; top:11%; width:20.5%; }
.home-page .hp-stage-card { position:relative; display:block; color:var(--ink); text-decoration:none; transform:rotate(var(--r)); transition:transform .3s var(--ease-out), box-shadow .3s; border-radius:22px; }
.home-page .hp-stage-media { position:relative; display:block; overflow:hidden; border:6px solid #fff; border-radius:22px; background:#fff; box-shadow:var(--shadow-lift); }
.home-page .hp-stage-media img { display:block; width:100%; height:auto; aspect-ratio:2 / 3; object-fit:cover; }
.home-page .hp-stage-membership .hp-stage-media img { aspect-ratio:4 / 5; }
.home-page .hp-chip { position:absolute; left:14px; top:14px; z-index:2; display:inline-flex; align-items:center; gap:6px; padding:6px 11px; border-radius:999px; background:#fff; color:var(--ink); font-size:13px; font-weight:650; line-height:1.3; box-shadow:0 4px 12px -4px rgb(28 27 26 / 25%); }
.home-page .hp-stage-image .hp-chip .hp-icon { color:var(--ink-image); }
.home-page .hp-stage-api .hp-chip .hp-icon { color:var(--ink-api); }
.home-page .hp-stage-video .hp-chip .hp-icon { color:var(--ink-video); }
.home-page .hp-stage-membership .hp-chip .hp-icon { color:var(--ink-member); }
.home-page .hp-bubble { position:absolute; z-index:3; display:inline-flex; align-items:center; gap:6px; max-width:16em; padding:9px 14px; border:1px solid var(--line); border-radius:16px; background:#fff; color:var(--ink); font-size:13px; font-weight:600; line-height:1.4; white-space:nowrap; box-shadow:var(--shadow-card); transform:rotate(calc(var(--r) * -1)); }
.home-page .hp-bubble > span { color:var(--accent); }
.home-page .hp-stage-image .hp-bubble { left:58%; bottom:12%; }
.home-page .hp-stage-video .hp-bubble { left:-14%; bottom:9%; }
.home-page .hp-stage-membership .hp-bubble { right:-6%; bottom:-6%; }
.home-page .hp-bubble-dark { border-color:transparent; background:var(--ink); color:#fff; }
.home-page .hp-play { position:absolute; left:50%; top:50%; display:grid; place-items:center; width:54px; height:54px; margin:-27px 0 0 -27px; border-radius:50%; background:rgb(255 255 255 / 92%); color:var(--ink); box-shadow:0 8px 20px -6px rgb(0 0 0 / 35%); }
.home-page .hp-play svg { margin-left:3px; }
/* API card: a light code window, not an image */
.home-page .hp-window { position:relative; display:block; overflow:hidden; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:var(--shadow-lift); text-align:left; }
.home-page .hp-window-bar { display:flex; align-items:center; gap:6px; padding:12px 16px; border-bottom:1px solid var(--line); background:#FAF8F5; }
.home-page .hp-window-bar i { width:10px; height:10px; border-radius:50%; background:#F87171; }
.home-page .hp-window-bar i:nth-child(2) { background:#FBBF24; }
.home-page .hp-window-bar i:nth-child(3) { background:#34D399; }
.home-page .hp-window-bar span { margin-left:8px; color:var(--ink-3); font:12.5px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.home-page .hp-stage-api .hp-chip { left:auto; right:16px; top:-15px; }
.home-page .hp-stage-api .hp-window-bar { padding-right:10px; }
.home-page .hp-code { display:block; padding:18px 18px 14px; color:var(--ink); font:13px/1.85 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; white-space:pre; overflow:hidden; background:transparent; }
.home-page .hp-code .tk-h { color:var(--ink-api); }
.home-page .hp-code .tk-k { color:var(--ink-video); }
.home-page .hp-code .tk-s { color:#15803D; }
.home-page .hp-window-tags { display:flex; flex-wrap:wrap; gap:8px; padding:0 18px 18px; }
.home-page .hp-window-tags span { padding:4px 10px; border-radius:999px; background:var(--tint-api); color:var(--ink-api); font-size:12.5px; font-weight:650; }
@media (hover:hover) and (pointer:fine) {
 .home-page .hp-stage-card:hover { transform:rotate(calc(var(--r) * .35)) translateY(-8px); }
 .home-page .hp-slot:has(.hp-stage-card:hover) { z-index:5; }
}
.home-page .hp-stage-note { position:absolute; right:22px; bottom:14px; margin:0; color:var(--ink-3); font-size:12px; }
.home-page .hp-models { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 18px; margin:28px auto 0; color:var(--ink-3); font-size:14px; }
.home-page .hp-models ul { display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; list-style:none; }
.home-page .hp-models li { display:grid; place-items:center; width:40px; height:40px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.home-page .hp-models img { width:22px; height:22px; object-fit:contain; filter:grayscale(1); opacity:.75; transition:filter .2s, opacity .2s; }
.home-page .hp-models li:hover img { filter:none; opacity:1; }
.home-page .hp-models a { display:inline-flex; align-items:center; gap:6px; color:var(--ink); font-weight:600; text-decoration:none; }
.home-page .hp-models a:hover { text-decoration:underline; text-underline-offset:4px; }

/* Shared section heading */
.home-page .hp-section { padding:120px 0 0; scroll-margin-top:24px; }
.home-page .hp-section-head { max-width:680px; margin:0 auto 52px; text-align:center; }
.home-page .hp-eyebrow { display:inline-flex; align-items:center; gap:8px; margin:0 0 14px; color:var(--accent-ink); font-size:14px; font-weight:700; letter-spacing:.02em; }
.home-page .hp-eyebrow::before { content:''; width:18px; height:2px; border-radius:2px; background:var(--accent); }
.home-page .hp-section h2 { margin:0; color:var(--ink); font-size:clamp(30px,3.4vw,44px); font-weight:760; line-height:1.2; letter-spacing:-.03em; text-wrap:balance; }
.home-page .hp-section-head > p:not(.hp-eyebrow) { margin:16px 0 0; color:var(--ink-2); font-size:18px; line-height:1.7; }

/* Services: 2x2 illustrated cards */
.home-page .hp-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.home-page .hp-service { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius-card); background:var(--surface); box-shadow:var(--shadow-card); transition:transform .3s var(--ease-out), box-shadow .3s; }
.home-page .hp-art { position:relative; display:grid; place-items:center; height:290px; padding:28px 32px; overflow:hidden; }
.home-page .hp-service-api .hp-art { background:var(--tint-api); }
.home-page .hp-service-image .hp-art { background:var(--tint-image); }
.home-page .hp-service-video .hp-art { background:var(--tint-video); }
.home-page .hp-service-membership .hp-art { background:var(--tint-member); }
.home-page .hp-art::after { content:''; position:absolute; inset:0; background:radial-gradient(circle, rgb(255 255 255 / 55%) 1px, transparent 1.4px) 0 0 / 18px 18px; pointer-events:none; }
.home-page .hp-art > * { position:relative; z-index:1; }
.home-page .hp-service-body { display:flex; flex:1; flex-direction:column; padding:30px 34px 32px; }
.home-page .hp-kicker { display:inline-flex; align-self:flex-start; align-items:center; gap:6px; margin:0 0 14px; padding:5px 12px; border-radius:999px; font-size:13px; font-weight:700; }
.home-page .hp-service-api .hp-kicker { background:var(--tint-api); color:var(--ink-api); }
.home-page .hp-service-image .hp-kicker { background:var(--tint-image); color:var(--ink-image); }
.home-page .hp-service-video .hp-kicker { background:var(--tint-video); color:var(--ink-video); }
.home-page .hp-service-membership .hp-kicker { background:var(--tint-member); color:var(--ink-member); }
.home-page .hp-service h3 { margin:0; font-size:26px; font-weight:760; line-height:1.3; letter-spacing:-.025em; }
.home-page .hp-service-body > p:not(.hp-kicker) { margin:10px 0 0; color:var(--ink-2); font-size:16px; line-height:1.7; }
.home-page .hp-points { display:grid; gap:9px; margin:18px 0 0; padding:0; list-style:none; }
.home-page .hp-points li { display:flex; align-items:flex-start; gap:9px; color:var(--ink-2); font-size:15px; line-height:1.6; }
.home-page .hp-points .hp-icon { margin-top:4px; }
.home-page .hp-service-api .hp-points .hp-icon { color:var(--ink-api); }
.home-page .hp-service-image .hp-points .hp-icon { color:var(--ink-image); }
.home-page .hp-service-video .hp-points .hp-icon { color:var(--ink-video); }
.home-page .hp-service-membership .hp-points .hp-icon { color:var(--ink-member); }
.home-page .hp-links { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; margin-top:auto; padding-top:26px; }
.home-page .hp-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:15px; font-weight:650; text-decoration:none; }
.home-page .hp-link .hp-icon-arrow { width:16px; height:16px; transition:transform .18s var(--ease-out); }
.home-page .hp-link-primary { padding:0 18px; border-radius:12px; background:var(--ink); color:#fff; }
.home-page .hp-link-primary:hover { background:#000; }
.home-page .hp-link-text { color:var(--ink); text-decoration:underline; text-decoration-color:var(--line-2); text-decoration-thickness:2px; text-underline-offset:6px; }
.home-page .hp-link-text:hover { text-decoration-color:var(--ink); }
@media (hover:hover) and (pointer:fine) { .home-page .hp-service:hover { transform:translateY(-4px); box-shadow:var(--shadow-lift); } }
/* Mini illustrations */
.home-page .hp-mini-window { width:min(100%,400px); overflow:hidden; border:1px solid rgb(109 40 217 / 14%); border-radius:18px; background:#fff; box-shadow:var(--shadow-lift); transform:rotate(-1.5deg); }
.home-page .hp-base-url { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; padding:18px 18px 14px; }
.home-page .hp-base-url code { color:var(--ink); font:15px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; user-select:all; overflow-wrap:anywhere; }
.home-page .hp-copy { min-height:34px; padding:0 12px; border:1px solid var(--line-2); border-radius:10px; background:#fff; color:var(--ink); font-family:inherit; font-weight:600; font-size:13px; line-height:1; cursor:pointer; }
.home-page .hp-copy:hover { border-color:var(--ink-3); }
.home-page .hp-protocols { display:grid; gap:8px; padding:0 18px 18px; }
.home-page .hp-protocols span { display:flex; justify-content:space-between; gap:12px; padding:9px 12px; border-radius:10px; background:#FAF8F5; color:var(--ink-2); font-size:13px; }
.home-page .hp-protocols b { color:var(--ink); }
.home-page .hp-mini-image { display:grid; gap:14px; width:min(100%,400px); }
.home-page .hp-prompt { display:flex; align-items:center; gap:10px; padding:8px 8px 8px 14px; border-radius:999px; background:#fff; box-shadow:var(--shadow-card); }
.home-page .hp-prompt-spark { width:18px; height:18px; color:var(--accent); }
.home-page .hp-prompt-spark svg { display:block; width:100%; height:100%; }
.home-page .hp-prompt-text { flex:1; min-width:0; overflow:hidden; color:var(--ink); font-size:14px; font-weight:600; text-align:left; text-overflow:ellipsis; white-space:nowrap; }
.home-page .hp-prompt-go { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--ink); color:#fff; }
.home-page .hp-prompt-go svg { width:16px; height:16px; }
.home-page .hp-thumbs { display:flex; justify-content:center; gap:12px; }
.home-page .hp-thumbs img { display:block; height:120px; width:auto; max-width:48%; object-fit:cover; border:4px solid #fff; border-radius:14px; box-shadow:var(--shadow-card); }
.home-page .hp-thumbs img:first-child { transform:rotate(-3deg); }
.home-page .hp-thumbs img:last-child { transform:rotate(3deg); }
.home-page .hp-size-tags, .home-page .hp-res-tags { display:flex; justify-content:center; gap:6px; }
.home-page .hp-size-tags span, .home-page .hp-res-tags span { padding:3px 10px; border-radius:999px; background:#fff; color:var(--ink-2); font-size:12.5px; font-weight:650; }
.home-page .hp-mini-video { display:grid; gap:12px; width:min(100%,380px); }
.home-page .hp-frame { position:relative; overflow:hidden; border:5px solid #fff; border-radius:18px; box-shadow:var(--shadow-lift); }
.home-page .hp-frame img { display:block; width:100%; height:auto; aspect-ratio:16 / 9; object-fit:cover; }
.home-page .hp-timeline { display:flex; align-items:center; gap:12px; }
.home-page .hp-track { position:relative; flex:1; height:6px; border-radius:6px; background:rgb(29 78 216 / 15%); }
.home-page .hp-track i { position:absolute; left:0; top:0; width:42%; height:100%; border-radius:inherit; background:var(--ink-video); }
.home-page .hp-track i::after { content:''; position:absolute; right:-7px; top:-4px; width:14px; height:14px; border-radius:50%; background:#fff; box-shadow:0 0 0 3px var(--ink-video); }
.home-page .hp-mini-member { display:flex; justify-content:center; gap:16px; }
.home-page .hp-plan { display:flex; flex-direction:column; align-items:center; gap:10px; width:140px; padding:22px 14px 18px; border-radius:20px; background:#fff; box-shadow:var(--shadow-lift); font-size:15px; font-weight:700; }
.home-page .hp-plan-chatgpt { transform:rotate(-4deg); }
.home-page .hp-plan-grok { transform:rotate(4deg) translateY(10px); }
.home-page .hp-plan img { display:block; width:36px; height:36px; }
.home-page .hp-plan .hp-icon { width:22px; height:22px; padding:4px; border-radius:50%; background:var(--tint-member); color:var(--ink-member); }

/* Steps */
.home-page .hp-step-list { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:0; padding:0; list-style:none; }
.home-page .hp-step-list::before { content:''; position:absolute; z-index:0; top:32px; left:17%; right:17%; border-top:2px dashed var(--line-2); }
.home-page .hp-step { position:relative; z-index:1; text-align:center; }
.home-page .hp-step-num { display:grid; place-items:center; width:64px; height:64px; margin:0 auto 22px; border:4px solid var(--paper); border-radius:50%; background:var(--tint-image); color:var(--ink-image); font-size:24px; font-weight:800; box-shadow:0 0 0 1px var(--line); }
.home-page .hp-step:nth-child(2) .hp-step-num { background:var(--tint-video); color:var(--ink-video); }
.home-page .hp-step:nth-child(3) .hp-step-num { background:var(--tint-member); color:var(--ink-member); }
.home-page .hp-step h3 { margin:0; font-size:21px; font-weight:740; letter-spacing:-.02em; }
.home-page .hp-step p { max-width:19em; margin:10px auto 0; color:var(--ink-2); font-size:16px; line-height:1.7; }

/* Recorded case */
.home-page .hp-case { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:64px; }
.home-page .hp-case-figure { position:relative; margin:0; transform:rotate(-1.5deg); }
.home-page .hp-case-figure::before { content:''; position:absolute; z-index:2; left:50%; top:-14px; width:120px; height:30px; margin-left:-60px; border-radius:4px; background:rgb(251 146 60 / 35%); transform:rotate(-4deg); }
.home-page .hp-case-figure a { display:block; overflow:hidden; border:8px solid #fff; border-radius:26px; box-shadow:var(--shadow-lift); }
.home-page .hp-case-figure img { display:block; width:100%; height:auto; }
.home-page .hp-case-figure figcaption { position:absolute; left:22px; bottom:22px; }
.home-page .hp-badge-live { display:inline-flex; align-items:center; gap:8px; padding:7px 13px; border-radius:999px; background:rgb(255 255 255 / 94%); color:var(--ink); font-size:13px; font-weight:700; box-shadow:var(--shadow-card); }
.home-page .hp-badge-live::before { content:''; width:8px; height:8px; border-radius:50%; background:var(--dot-member); box-shadow:0 0 0 3px var(--tint-member); }
.home-page .hp-case-copy { min-width:0; }
.home-page .hp-case-copy > p:not(.hp-eyebrow) { margin:16px 0 0; color:var(--ink-2); font-size:17px; line-height:1.75; }
.home-page .hp-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:26px 0 28px; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--line); }
.home-page .hp-facts div { padding:13px 16px; background:#fff; }
.home-page .hp-facts div:last-child:nth-child(odd) { grid-column:1 / -1; }
.home-page .hp-facts dt { color:var(--ink-3); font-size:13px; }
.home-page .hp-facts dd { margin:3px 0 0; color:var(--ink); font-size:15px; font-weight:650; overflow-wrap:anywhere; }
.home-page .hp-case-copy small { display:block; margin-top:14px; color:var(--ink-3); font-size:13px; }

/* Price glance */
.home-page .hp-price-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.home-page .hp-price { display:flex; flex-direction:column; min-width:0; min-height:180px; padding:24px; border:1px solid var(--line); border-radius:24px; background:#fff; color:var(--ink); text-decoration:none; box-shadow:var(--shadow-card); transition:transform .25s var(--ease-out), box-shadow .25s; }
@media (hover:hover) and (pointer:fine) { .home-page .hp-price:hover { transform:translateY(-4px); box-shadow:var(--shadow-lift); } }
.home-page .hp-price-label { display:inline-flex; align-items:center; gap:8px; margin-bottom:auto; color:var(--ink-2); font-size:15px; font-weight:650; }
.home-page .hp-price-label .hp-icon { width:32px; height:32px; padding:8px; border-radius:10px; }
.home-page .hp-price-api .hp-icon { background:var(--tint-api); color:var(--ink-api); }
.home-page .hp-price-image .hp-icon { background:var(--tint-image); color:var(--ink-image); }
.home-page .hp-price-video .hp-icon { background:var(--tint-video); color:var(--ink-video); }
.home-page .hp-price-membership .hp-icon { background:var(--tint-member); color:var(--ink-member); }
.home-page .hp-price-from { margin-top:22px; color:var(--ink-3); font-size:13px; }
.home-page .hp-price strong { margin-top:2px; font-size:34px; font-weight:800; line-height:1.15; letter-spacing:-.03em; font-variant-numeric:tabular-nums; }
.home-page .hp-price strong.hp-price-link { margin-top:22px; font-size:20px; letter-spacing:-.01em; }
.home-page .hp-price-unit { margin-top:4px; color:var(--ink-3); font-size:14px; }
.home-page .hp-price-note { margin:24px 0 0; color:var(--ink-3); font-size:14px; line-height:1.7; text-align:center; }
.home-page .hp-price-note a { display:inline-flex; align-items:center; gap:4px; margin-left:6px; color:var(--ink); font-weight:650; text-decoration:none; }
.home-page .hp-price-note a .hp-icon-arrow { width:15px; height:15px; }

/* FAQ */
.home-page .hp-faq-list { display:grid; gap:12px; max-width:840px; margin:0 auto; }
.home-page .hp-faq details { border:1px solid var(--line); border-radius:20px; background:#fff; transition:box-shadow .2s, border-color .2s; }
.home-page .hp-faq details[open] { border-color:var(--line-2); box-shadow:var(--shadow-card); }
.home-page .hp-faq summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; padding:18px 24px; color:var(--ink); font-size:17px; font-weight:680; line-height:1.5; cursor:pointer; list-style:none; }
.home-page .hp-faq summary::-webkit-details-marker { display:none; }
.home-page .hp-faq-icon { flex:none; width:30px; height:30px; padding:6px; border-radius:50%; background:#F5F1EC; color:var(--ink); transition:transform .25s var(--ease-out), background .2s; }
.home-page .hp-faq details[open] .hp-faq-icon { transform:rotate(45deg); background:var(--accent-soft); color:var(--accent-ink); }
.home-page .hp-faq details p { margin:0; padding:0 24px 22px; color:var(--ink-2); font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.home-page .hp-faq details a { display:inline-flex; align-items:center; gap:4px; color:var(--accent-ink); font-weight:650; text-decoration:none; }
.home-page .hp-faq details a .hp-icon-arrow { width:15px; height:15px; }

/* Closing bar, shared with inner pages */
.public-page .hp-closing { position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px 40px; margin:120px 0 72px; padding:56px 64px; overflow:hidden; border-radius:36px; background:linear-gradient(135deg, #FDEBDD 0%, #FFE2CC 55%, #FCD9C4 100%); }
.public-page .hp-closing h2 { margin:0; font-size:clamp(28px,3vw,40px); font-weight:780; line-height:1.2; letter-spacing:-.03em; }
.public-page .hp-closing p { margin:10px 0 0; color:#6B4A37; font-size:18px; }
.public-page .hp-closing .hp-btn-secondary { border-color:rgb(28 27 26 / 18%); }
.public-page .hp-closing-star { position:absolute; display:block; color:#fff; opacity:.9; }
.public-page .hp-closing-star svg { display:block; width:100%; height:100%; }
.public-page .hp-closing-star-1 { right:34%; top:18%; width:28px; height:28px; }
.public-page .hp-closing-star-2 { right:30%; bottom:16%; width:16px; height:16px; color:var(--accent); }

/* Footer, shared */
.public-page footer { border-color:var(--line); color:var(--ink-3); font-size:13px; }
.public-page .footer-brand { color:var(--ink); }
.public-page footer nav { font-size:13px; gap:4px 22px; }
.public-page footer nav a { color:var(--ink-2); text-decoration:none; }
.public-page footer nav a:hover { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.public-page footer small { font-size:12px; }

/* Scroll reveal (only after home-scenes.js marks the document ready) */
.hp-reveal-ready .home-page [data-hp-reveal] { transition:opacity .7s var(--ease-out), translate .7s var(--ease-out); }
.hp-reveal-ready .home-page [data-hp-reveal]:not(.is-in) { opacity:0; translate:0 22px; }

@media (max-width:1100px) {
 .public-page .site-wrap { padding:0 28px; }
 .home-page .hp-price-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .home-page .hp-case { gap:40px; }
}
/* Below 1000px the collage becomes a tidy grid with the same four cards */
@media (max-width:1000px) {
 .home-page .hp-stage { aspect-ratio:auto; padding:24px; border-radius:28px; }
 .home-page .hp-stage-cards { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-areas:"api api" "image video" "membership membership"; gap:18px; }
 .home-page .hp-slot { position:relative; left:auto; right:auto; top:auto; width:auto; }
 .home-page .hp-slot-image { grid-area:image; --r:-1.5deg; }
 .home-page .hp-slot-api { grid-area:api; --r:.8deg; }
 .home-page .hp-slot-video { grid-area:video; --r:1.5deg; }
 .home-page .hp-slot-membership { grid-area:membership; --r:-.8deg; }
 .home-page .hp-stage-media img { aspect-ratio:4 / 5; }
 .home-page .hp-stage-membership .hp-stage-media img { aspect-ratio:2 / 1; }
 .home-page .hp-stage-image .hp-bubble, .home-page .hp-stage-video .hp-bubble, .home-page .hp-stage-membership .hp-bubble { left:12px; right:auto; bottom:12px; max-width:calc(100% - 24px); white-space:normal; }
 .home-page .hp-doodle-loop, .home-page .hp-doodle-squiggle { display:none; }
 .home-page .hp-stage-note { position:static; margin:16px 0 0; text-align:center; }
 .home-page .hp-section { padding-top:88px; }
 .home-page .hp-service-grid { gap:18px; }
 .home-page .hp-case { grid-template-columns:1fr; }
 .home-page .hp-case-figure { max-width:680px; margin:0 auto; }
}
@media (max-width:760px) {
 .home-page .hp-service-grid { grid-template-columns:1fr; }
 .home-page .hp-step-list { grid-template-columns:1fr; gap:28px; }
 .home-page .hp-step-list::before { top:32px; bottom:32px; left:50%; right:auto; border-top:0; border-left:2px dashed var(--line-2); }
 .home-page .hp-step { padding:0 0 4px; background:var(--paper); }
 .public-page .hp-closing { padding:40px 32px; }
}
@media (max-width:640px) {
 .public-page .site-wrap { padding:0 18px; }
 .home-page .hp-hero { padding-top:40px; }
 .home-page .hp-pill { font-size:13px; }
 .home-page .hp-hero h1 { margin-top:20px; font-size:clamp(31px,8.6vw,40px); line-height:1.2; letter-spacing:-.03em; }
 .home-page .hp-intro { margin-top:16px; font-size:16px; }
 .home-page .hp-hero .hp-actions { flex-direction:column; align-items:stretch; margin-top:26px; }
 .home-page .hp-hero .hp-btn { width:100%; }
 .home-page .hp-note { font-size:13px; }
 .home-page .hp-stage { margin-top:36px; padding:16px; }
 .home-page .hp-stage-cards { gap:12px; }
 .home-page .hp-code { padding:14px; font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
 .home-page .hp-window-bar span { display:none; }
 .home-page .hp-chip { left:10px; top:10px; padding:5px 9px; font-size:12px; }
 .home-page .hp-bubble { padding:7px 10px; font-size:12px; }
 .home-page .hp-play { width:44px; height:44px; margin:-22px 0 0 -22px; }
 .home-page .hp-section { padding-top:72px; }
 .home-page .hp-section-head { margin-bottom:34px; }
 .home-page .hp-section-head > p:not(.hp-eyebrow) { font-size:16px; }
 .home-page .hp-art { height:240px; padding:22px 18px; }
 .home-page .hp-service-body { padding:24px 22px 26px; }
 .home-page .hp-service h3 { font-size:22px; }
 .home-page .hp-thumbs img { height:96px; }
 .home-page .hp-mini-video { width:min(100%,270px); gap:10px; }
 .home-page .hp-mini-window { transform:none; }
 .home-page .hp-plan { width:120px; padding:18px 10px 14px; }
 .home-page .hp-facts { grid-template-columns:1fr; }
 .home-page .hp-price-grid { gap:12px; }
 .home-page .hp-price { min-height:150px; padding:18px; border-radius:20px; }
 .home-page .hp-price strong { font-size:26px; }
 .home-page .hp-price strong.hp-price-link { font-size:17px; }
 .home-page .hp-faq summary { padding:16px 18px; font-size:16px; }
 .home-page .hp-faq details p { padding:0 18px 18px; font-size:15px; }
 .public-page .hp-closing { margin:80px 0 48px; padding:34px 24px; border-radius:28px; }
 .public-page .hp-closing .hp-actions { width:100%; flex-direction:column; align-items:stretch; }
}
@media (max-width:380px) {
 .home-page .hp-price-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:no-preference) {
 .home-page .hp-underline path { animation:hp-draw .8s .3s var(--ease-out) both; }
 .home-motion .home-page .hp-underline path { animation-delay:1.05s; }
}
@keyframes hp-draw { from { stroke-dashoffset:260; } to { stroke-dashoffset:0; } }
@media (prefers-reduced-motion:reduce) {
 .home-page *, .home-page *::before, .home-page *::after { transition:none !important; }
 .hp-reveal-ready .home-page [data-hp-reveal] { opacity:1 !important; translate:none !important; }
}

/* Opening, 1500ms total: logo pops in (0–400), four dots fly to the stage cards (700–1100),
   the cards grow from those points (1000–1500). The hero headline is never hidden. */
html:has(.home-page) { scrollbar-gutter:stable; }
html.intro-active { overflow:hidden; }
.launch-intro:not([open]) { display:none; }
.launch-intro[open] { position:fixed; inset:0; display:block; width:100%; max-width:none; height:100%; max-height:none; margin:0; padding:0; overflow:hidden; border:0; background:transparent; color:#1C1B1A; }
.launch-intro::backdrop { background:transparent; }
.intro-background { position:absolute; inset:0; background:#FBF9F6; }
.intro-center { position:absolute; inset:0; pointer-events:none; }
.public-page .intro-brand { position:absolute; top:0; left:0; display:flex; align-items:center; width:max-content; margin:0; transform-origin:0 0; will-change:transform,opacity; }
.intro-brand img { width:54px; height:22px; }
.intro-tagline { position:absolute; top:var(--tag-y,56%); left:50%; width:max-content; max-width:90vw; margin:0; color:#57534E; font:600 18px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif; text-align:center; transform:translateX(-50%); }
.intro-dots { position:absolute; top:calc(var(--tag-y,56%) + 48px); left:50%; display:flex; gap:16px; transform:translateX(-50%); }
.intro-dot { display:block; width:16px; height:16px; border-radius:50%; background:#FB923C; will-change:transform,opacity; }
.intro-dot-api { background:#8B5CF6; }
.intro-dot-video { background:#3B82F6; }
.intro-dot-membership { background:#10B981; }
.intro-active .site-header .brand { visibility:hidden; }

.launch-intro.is-running .intro-background { animation:intro-veil 1.1s linear both; }
.launch-intro.is-running .intro-brand { animation:intro-logo 1.1s cubic-bezier(.16,1,.3,1) both; }
.launch-intro.is-running .intro-tagline { animation:intro-tagline 1.1s ease-out both; }
.launch-intro.is-running .intro-dot { animation:intro-dot 1.1s cubic-bezier(.5,0,.2,1) both; }
.launch-intro.is-running .intro-dot:nth-child(2) { animation-delay:.03s; }
.launch-intro.is-running .intro-dot:nth-child(3) { animation-delay:.06s; }
.launch-intro.is-running .intro-dot:nth-child(4) { animation-delay:.09s; }

/* Stage cards wait for their dot, then grow from it. Copy and buttons stay put. */
.home-motion .home-page .hp-slot, .home-motion .home-page .hp-stage-decor, .home-motion .home-page .hp-stage-note { opacity:0; }
.home-motion.home-cards-visible .home-page .hp-slot { animation:intro-card .5s cubic-bezier(.34,1.56,.64,1) both; }
.home-motion.home-cards-visible .home-page .hp-slot-api { animation-delay:.05s; }
.home-motion.home-cards-visible .home-page .hp-slot-video { animation-delay:.1s; }
.home-motion.home-cards-visible .home-page .hp-slot-membership { animation-delay:.15s; }
.home-motion.home-cards-visible .home-page .hp-stage-decor { animation:intro-fade .6s .15s ease-out both; }
.home-motion.home-cards-visible .home-page .hp-stage-note { animation:intro-fade .4s .3s ease-out both; }
.home-motion.home-cards-visible .home-page .hp-doodle-star-1 svg, .home-motion.home-cards-visible .home-page .hp-doodle-star-2 svg { animation:intro-twinkle .7s .35s cubic-bezier(.34,1.56,.64,1) both; }

.site-header .brand.is-opening-compact { animation:home-compact .6s ease-out both; }

@keyframes intro-veil { 0%,72% { opacity:1; } 100% { opacity:0; } }
@keyframes intro-logo {
 0% { opacity:0; transform:translate(var(--start-x),var(--start-y)) scale(var(--half-scale)); }
 30% { opacity:1; transform:translate(var(--start-x),var(--start-y)) scale(calc(var(--start-scale) * 1.04)); }
 40%,62% { opacity:1; transform:translate(var(--start-x),var(--start-y)) scale(var(--start-scale)); }
 100% { opacity:1; transform:translate(var(--dock-x),var(--dock-y)) scale(1); }
}
@keyframes intro-tagline { 0%,18% { opacity:0; translate:0 8px; } 40%,62% { opacity:1; translate:0 0; } 80%,100% { opacity:0; translate:0 0; } }
@keyframes intro-dot {
 0%,22% { opacity:0; transform:scale(0); }
 36% { opacity:1; transform:scale(1.25); }
 44%,62% { opacity:1; transform:scale(1); }
 100% { opacity:0; transform:translate(var(--fly-x,0px),var(--fly-y,0px)) scale(2.4); }
}
@keyframes intro-card { from { opacity:0; transform:scale(.55); } to { opacity:1; transform:scale(1); } }
@keyframes intro-fade { from { opacity:0; } to { opacity:1; } }
@keyframes intro-twinkle { 0% { transform:scale(0) rotate(-45deg); } 100% { transform:scale(1) rotate(0); } }
@keyframes home-compact { 0% { opacity:.65; transform:scale(.97); } 55% { opacity:1; transform:scale(1.015); } 100% { opacity:1; transform:none; } }
@media (max-width:640px) { .intro-tagline { font-size:15px; } }
@media (prefers-reduced-motion:reduce) {
 .launch-intro[open] { visibility:hidden; }
 .launch-intro.is-running *, .site-header .brand.is-opening-compact { animation:none !important; }
 .home-motion .home-page .hp-slot, .home-motion .home-page .hp-stage-decor, .home-motion .home-page .hp-stage-note { opacity:1 !important; animation:none !important; }
}

/* Inner pages in the homepage's warm, illustrated style. Loaded last; scoped to .inner-page.
   Reading pages stay calm: larger type, soft cards, one accent colour per page. */
.public-page.inner-page { --tone-bg:#F5F1EC; --tone-ink:var(--ink); --tone-dot:var(--accent); }
.public-page.inner-page:has(.inner-tone-image) { --tone-bg:var(--tint-image); --tone-ink:var(--ink-image); --tone-dot:var(--dot-image); }
.public-page.inner-page:has(.inner-tone-video) { --tone-bg:var(--tint-video); --tone-ink:var(--ink-video); --tone-dot:var(--dot-video); }
.public-page.inner-page:has(.inner-tone-api) { --tone-bg:var(--tint-api); --tone-ink:var(--ink-api); --tone-dot:var(--dot-api); }
.public-page.inner-page:has(.inner-tone-member) { --tone-bg:var(--tint-member); --tone-ink:var(--ink-member); --tone-dot:var(--dot-member); }

/* Header shell matches the homepage */
.public-page.inner-page .site-wrap { max-width:1240px; padding-inline:40px; }
.public-page.inner-page .site-header { min-height:72px; margin-top:20px; padding:14px 20px; border:1px solid var(--line); border-radius:18px; background:rgb(255 255 255 / 82%); box-shadow:0 1px 2px rgb(28 27 26 / 4%); }
.public-page.inner-page .brand { font-size:21px; gap:10px; }
.public-page.inner-page .site-header nav { gap:21px; }
.public-page.inner-page .site-header nav .nav-console { min-height:42px; padding:10px 16px; }
.public-page.inner-page .breadcrumbs { gap:10px; padding-top:24px; color:var(--ink-3); font-size:14px; }
.public-page.inner-page .breadcrumbs a { color:var(--ink-2); text-decoration:none; }
.public-page.inner-page .breadcrumbs a:hover { color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.public-page.inner-page .breadcrumbs [aria-current="page"] { color:var(--ink); font-weight:600; }

/* Hero: soft tinted panel, artwork as a tilted card */
.public-page.inner-page .inner-hero { position:relative; isolation:isolate; display:grid; align-items:center; gap:32px 56px; margin:20px 0 0; padding:56px 56px; overflow:hidden; border:1px solid var(--line); border-radius:36px; background:linear-gradient(135deg, #fff 0%, #fff 40%, var(--tone-bg) 140%); box-shadow:var(--shadow-card); }
.public-page.inner-page .inner-hero--product { grid-template-columns:minmax(0,1fr) 300px; }
.public-page.inner-page .inner-hero--text { grid-template-columns:minmax(0,1fr); padding:48px 56px; }
.public-page.inner-page .inner-hero::before { content:''; position:absolute; z-index:-1; inset:0; background:radial-gradient(circle, #E6DDD3 1.1px, transparent 1.3px) 0 0 / 22px 22px; opacity:.55; mask-image:linear-gradient(90deg, transparent 30%, #000 100%); }
.public-page.inner-page .inner-hero-decor { position:absolute; z-index:-1; inset:0; pointer-events:none; }
.public-page.inner-page .inner-blob { position:absolute; right:-6%; top:-30%; width:46%; height:150%; border-radius:50%; background:var(--tone-bg); filter:blur(60px); opacity:.9; }
.public-page.inner-page .inner-star { position:absolute; right:7%; top:14%; width:22px; height:22px; color:var(--tone-dot); }
.public-page.inner-page .inner-hero--product .inner-star { right:auto; left:calc(100% - 380px); top:18%; }
.public-page.inner-page .inner-star svg { display:block; width:100%; height:100%; }
.public-page.inner-page .inner-hero .hero-copy { max-width:760px; }
.public-page.inner-page .inner-hero .eyebrow { display:inline-flex; align-items:center; gap:8px; margin:0 0 18px; padding:6px 14px; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--ink-2); font-family:inherit; font-weight:700; font-size:13px; line-height:1.5; letter-spacing:.04em; }
.public-page.inner-page .inner-eyebrow-dot { width:8px; height:8px; border-radius:50%; background:var(--tone-dot); }
.public-page.inner-page .inner-hero h1 { max-width:18em; margin:0; color:var(--ink); font-size:clamp(32px,3.8vw,50px); font-weight:780; line-height:1.18; letter-spacing:-.035em; text-wrap:balance; }
.public-page.inner-page .inner-hero .intro { max-width:40em; margin:18px 0 0; color:var(--ink-2); font-size:18px; line-height:1.75; }
.public-page.inner-page .inner-hero .hero-actions { justify-content:flex-start; gap:12px; margin-top:28px; }
.public-page.inner-page .product-meta { display:inline-flex; align-items:center; gap:7px; margin:16px 0 0; color:var(--ink-3); font-size:14px; }
.public-page.inner-page .product-meta .hp-icon { color:var(--tone-ink); }
.public-page.inner-page .hero .product-visual { justify-self:center; width:100%; max-width:300px; margin:0; transform:rotate(4deg); }
.public-page.inner-page .hero .product-visual--portrait { max-width:260px; }
.public-page.inner-page .product-visual img { display:block; width:100%; height:auto; border:8px solid #fff; border-radius:26px; background:#fff; box-shadow:var(--shadow-lift); }
.public-page.inner-page .product-visual figcaption { margin-top:14px; color:var(--ink-3); font-size:12px; line-height:1.5; text-align:center; transform:rotate(-4deg); }
.public-page.inner-page .content-meta { margin:18px 4px 0; color:var(--ink-3); font-size:13px; }
.public-page.inner-page .content-meta a { color:var(--ink-2); }

/* Entry cards under the hero */
.public-page.inner-page .service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:28px 0 0; padding:0; border:0; }
.public-page.inner-page.guide-directory .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.public-page.inner-page .service-card { display:flex; flex-direction:column; min-width:0; padding:28px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow-card); transition:transform .25s var(--ease-out), box-shadow .25s; }
.public-page.inner-page .service-card + .service-card { border-top:1px solid var(--line); padding-top:28px; }
.public-page.inner-page .service-card .eyebrow { align-self:flex-start; margin:0 0 14px; padding:4px 11px; border-radius:999px; background:var(--tone-bg); color:var(--tone-ink); font-family:inherit; font-weight:700; font-size:12px; line-height:1.5; letter-spacing:.04em; }
.public-page.inner-page .service-card h2 { margin:0 0 8px; font-size:21px; font-weight:740; line-height:1.35; letter-spacing:-.02em; }
.public-page.inner-page .service-card p:not(.eyebrow) { margin:0 0 18px; color:var(--ink-2); font-size:15px; line-height:1.7; }
.public-page.inner-page .service-card > a { display:inline-flex; align-items:center; gap:8px; margin-top:auto; color:var(--ink); font-size:15px; font-weight:650; text-decoration:none; }
.public-page.inner-page .service-card > a .hp-icon-arrow { width:16px; height:16px; transition:transform .18s var(--ease-out); }
@media (hover:hover) and (pointer:fine) {
 .public-page.inner-page .service-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lift); }
 .public-page.inner-page .service-card:hover > a .hp-icon-arrow, .public-page.inner-page .related a:hover .hp-icon-arrow { transform:translateX(3px); }
}

/* Reading layout: article in a white sheet, contents in a soft sticky card */
.public-page.inner-page .details-layout { display:grid; grid-template-areas:"article aside"; grid-template-columns:minmax(0,1fr) 270px; align-items:start; gap:32px; margin-top:28px; padding:0; border:0; }
.public-page.inner-page .service-grid + .details-layout { padding-top:0; }
.public-page.inner-page .article-sections { grid-area:article; display:grid; gap:0; min-width:0; padding:16px 48px; border:1px solid var(--line); border-radius:28px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .content-section { padding:36px 0; border:0; scroll-margin-top:24px; }
.public-page.inner-page .content-section + .content-section { border-top:1px dashed var(--line-2); }
.public-page.inner-page .section-number { display:inline-grid; place-items:center; width:34px; height:34px; margin:0 0 14px; border-radius:50%; background:var(--tone-bg); color:var(--tone-ink); font-family:inherit; font-weight:800; font-size:14px; line-height:1; letter-spacing:0; }
.public-page.inner-page .content-section h2 { margin:0 0 12px; color:var(--ink); font-size:26px; font-weight:760; line-height:1.3; letter-spacing:-.025em; }
.public-page.inner-page .content-section > p:not(.section-number), .public-page.inner-page .content-section li { color:var(--ink-2); font-size:16px; line-height:1.85; }
.public-page.inner-page .content-section > p:not(.section-number) { margin:0 0 14px; }
.public-page.inner-page .content-section ul { margin:14px 0; padding-left:0; list-style:none; }
.public-page.inner-page .content-section li { position:relative; margin:0 0 10px; padding-left:24px; }
.public-page.inner-page .content-section li::before { content:''; position:absolute; left:4px; top:.72em; width:8px; height:8px; border-radius:50%; background:var(--tone-dot); }
.public-page.inner-page .content-section .content-sources { display:flex; flex-wrap:wrap; gap:10px; }
.public-page.inner-page .content-section .content-sources li { margin:0; padding:0; }
.public-page.inner-page .content-section .content-sources li::before { display:none; }
.public-page.inner-page .content-sources a { display:inline-flex; align-items:center; min-height:40px; padding:8px 16px; border:1px solid var(--line-2); border-radius:12px; background:#fff; color:var(--ink); font-size:15px; font-weight:600; text-decoration:none; }
.public-page.inner-page .content-sources a:hover { border-color:var(--ink-3); }
.public-page.inner-page .content-section a:not(.hp-btn) { color:var(--ink); text-decoration-color:var(--accent); text-underline-offset:4px; }
.public-page.inner-page .content-section pre, .public-page.inner-page .case-prompt pre { position:relative; margin:18px 0; padding:22px 22px 20px; border:1px solid #2A2826; border-radius:18px; background:#1C1B1A; color:#F5F1EC; font:14px/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; white-space:pre; overflow-x:auto; box-shadow:var(--shadow-card); }
.public-page.inner-page .case-prompt pre { background:#FAF8F5; border-color:var(--line); color:var(--ink); white-space:pre-wrap; font-family:inherit; font-size:16px; }
.public-page.inner-page .content-table-scroll { margin:20px 0; overflow-x:auto; border:1px solid var(--line); border-radius:18px; background:#fff; }
.public-page.inner-page .content-table-scroll table { width:100%; border-collapse:collapse; font-size:15px; }
.public-page.inner-page .content-table-scroll caption { padding:14px 18px; text-align:left; color:var(--ink); font-size:15px; font-weight:700; border-bottom:1px solid var(--line); }
.public-page.inner-page .content-table-scroll th, .public-page.inner-page .content-table-scroll td { padding:13px 18px; border-bottom:1px solid var(--line); color:var(--ink-2); text-align:left; vertical-align:top; }
.public-page.inner-page .content-table-scroll th { background:#FAF8F5; color:var(--ink); font-weight:700; font-size:14px; }
.public-page.inner-page .content-table-scroll tbody tr:last-child td { border-bottom:0; }
.public-page.inner-page .content-table-scroll td:first-child { color:var(--ink); font-weight:600; }

.public-page.inner-page .reading-aside { grid-area:aside; min-width:0; padding:24px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .page-contents h2 { margin:0 0 12px; color:var(--ink); font-size:15px; font-weight:750; }
.public-page.inner-page .page-contents a { display:flex; align-items:baseline; gap:10px; min-height:40px; padding:9px 10px; border-radius:12px; color:var(--ink-2); font-size:14px; line-height:1.5; text-decoration:none; }
.public-page.inner-page .page-contents a::before { flex:0 0 18px; color:var(--tone-ink); font-family:inherit; font-weight:700; font-size:12px; line-height:1.5; }
.public-page.inner-page .reading-action { margin-top:18px; padding-top:18px; border-top:1px dashed var(--line-2); }
.public-page.inner-page .reading-action > p:not(.eyebrow) { margin:0 0 14px; color:var(--ink-2); font-size:14px; line-height:1.7; }
.public-page.inner-page .reading-action > p a { color:var(--ink); text-underline-offset:4px; }
.public-page.inner-page .reading-action .hp-btn { width:100%; min-height:48px; font-size:15px; }
.public-page.inner-page .aside-link { display:inline-flex; align-items:center; gap:6px; margin-top:12px; color:var(--ink); font-size:14px; font-weight:650; text-decoration:none; }
.public-page.inner-page .aside-link .hp-icon-arrow { width:15px; height:15px; }
@media (hover:hover) and (pointer:fine) { .public-page.inner-page .page-contents a:hover { background:var(--tone-bg); color:var(--ink); } }

/* FAQ, related, closing */
.public-page.inner-page .faq { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,2fr); gap:40px; margin-top:28px; padding:48px; border:1px solid var(--line); border-radius:28px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .faq .eyebrow { display:inline-flex; align-items:center; gap:8px; margin:0 0 10px; color:var(--accent-ink); font-family:inherit; font-weight:700; font-size:14px; line-height:1.5; letter-spacing:.02em; }
.public-page.inner-page .faq .eyebrow::before { content:''; width:18px; height:2px; border-radius:2px; background:var(--accent); }
.public-page.inner-page .faq h2 { margin:0; font-size:30px; font-weight:760; line-height:1.25; letter-spacing:-.03em; }
.public-page.inner-page .faq > div:last-child { display:grid; gap:10px; }
.public-page.inner-page .faq details { border:1px solid var(--line); border-radius:18px; background:#FDFCFA; transition:box-shadow .2s, border-color .2s, background .2s; }
.public-page.inner-page .faq details[open] { border-color:var(--line-2); background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .faq summary { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:60px; padding:16px 20px; color:var(--ink); font-size:16px; font-weight:680; line-height:1.5; cursor:pointer; list-style:none; }
.public-page.inner-page .faq summary::before, .public-page.inner-page .faq summary::after { display:none; }
.public-page.inner-page .faq summary::-webkit-details-marker { display:none; }
.public-page.inner-page .faq .hp-faq-icon { flex:none; width:30px; height:30px; padding:6px; border-radius:50%; background:#F5F1EC; color:var(--ink); transition:transform .25s var(--ease-out), background .2s; }
.public-page.inner-page .faq details[open] .hp-faq-icon { transform:rotate(45deg); background:var(--accent-soft); color:var(--accent-ink); }
.public-page.inner-page .faq details p { margin:0; padding:0 20px 18px; color:var(--ink-2); font-size:15px; line-height:1.8; }
.public-page.inner-page .related { margin-top:28px; padding:0; border:0; }
.public-page.inner-page .related h2 { margin:0 0 14px; font-size:20px; font-weight:740; letter-spacing:-.02em; }
.public-page.inner-page .related > div { display:flex; flex-wrap:wrap; gap:12px; }
.public-page.inner-page .related a { display:inline-flex; align-items:center; gap:10px; min-height:48px; padding:10px 18px; border:1px solid var(--line); border-radius:16px; background:#fff; color:var(--ink); font-size:15px; font-weight:600; text-decoration:none; box-shadow:0 1px 2px rgb(28 27 26 / 4%); transition:border-color .2s, box-shadow .2s; }
.public-page.inner-page .related a:hover { border-color:var(--line-2); box-shadow:var(--shadow-card); }
.public-page.inner-page .related a .hp-icon-arrow { width:16px; height:16px; color:var(--ink-3); transition:transform .18s var(--ease-out); }
.public-page.inner-page .hp-closing { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px 40px; margin:56px 0; padding:44px 56px; border:0; border-radius:32px; background:linear-gradient(135deg, #FDEBDD 0%, #FFE2CC 55%, #FCD9C4 100%); color:var(--ink); box-shadow:none; }
.public-page.inner-page .hp-closing h2 { margin:0; color:var(--ink); font-size:clamp(26px,2.6vw,34px); font-weight:780; letter-spacing:-.03em; }
.public-page.inner-page footer { padding-block:28px 40px; }

/* Recorded image cases */
.public-page.inner-page .image-case-guide { margin:28px 0 0; padding:48px; border:1px solid var(--line); border-radius:28px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .case-guide-heading .eyebrow { display:inline-flex; margin:0 0 10px; padding:4px 11px; border-radius:999px; background:var(--tint-image); color:var(--ink-image); font-family:inherit; font-weight:700; font-size:12px; line-height:1.5; }
.public-page.inner-page .case-guide-heading h2 { margin:0 0 10px; font-size:30px; font-weight:760; letter-spacing:-.03em; }
.public-page.inner-page .case-guide-heading > p:last-child, .public-page.inner-page .image-case header > p:last-child { color:var(--ink-2); font-size:16px; line-height:1.8; }
.public-page.inner-page .case-jump-links { display:flex; flex-wrap:wrap; gap:10px; margin:20px 0; }
.public-page.inner-page .case-jump-links a { padding:10px 16px; border:1px solid var(--line-2); border-radius:12px; background:#fff; color:var(--ink); font-size:15px; font-weight:600; text-decoration:none; }
.public-page.inner-page .image-case { margin-top:32px; padding:32px 0 0; border:0; border-top:1px dashed var(--line-2); border-radius:0; background:transparent; }
.public-page.inner-page .image-case .eyebrow { color:var(--ink-3); font-size:12px; letter-spacing:.06em; }
.public-page.inner-page .image-case h3 { margin:8px 0; font-size:24px; font-weight:760; letter-spacing:-.02em; }
.public-page.inner-page .image-case h4 { margin:0 0 12px; font-size:17px; font-weight:720; }
.public-page.inner-page .case-result-layout { grid-template-columns:minmax(0,420px) minmax(0,1fr); gap:32px; margin:24px 0; }
.public-page.inner-page .case-result-layout figure { max-width:420px; transform:rotate(-1.5deg); }
.public-page.inner-page .case-result { border:6px solid #fff; border-radius:22px; box-shadow:var(--shadow-lift); }
.public-page.inner-page .case-result-layout figcaption { margin-top:12px; color:var(--ink-3); font-size:13px; text-align:center; }
.public-page.inner-page .case-settings { padding:22px; border:1px solid var(--line); border-radius:20px; background:#FAF8F5; }
.public-page.inner-page .case-settings dl > div { display:grid; grid-template-columns:120px minmax(0,1fr); gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
.public-page.inner-page .case-settings dt { color:var(--ink-3); font-size:14px; }
.public-page.inner-page .case-settings dd { color:var(--ink); font-size:15px; font-weight:600; }
.public-page.inner-page .case-settings > p { margin:12px 0 0; color:var(--ink-3); font-size:13px; }
.public-page.inner-page .case-prompt p, .public-page.inner-page .case-observations li { color:var(--ink-2); font-size:16px; line-height:1.8; }

/* Pricing page */
.public-page.pricing-page .public-pricing { margin-top:28px; }
.public-page.pricing-page .pricing-context { padding:18px 22px; border:1px solid var(--line); border-radius:20px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.pricing-page .pricing-context-line > p { font-size:15px; }
.public-page.pricing-page .pricing-ratio, .public-page.pricing-page .pricing-updated { font-size:13px; color:var(--ink-3); }
.public-page.pricing-page .pricing-explainer summary { font-size:14px; }
.public-page.pricing-page .pricing-explainer > div { font-size:14px; color:var(--ink-2); }
.public-page.pricing-page .pricing-jump { gap:10px; margin:20px 0 28px; }
.public-page.pricing-page .pricing-jump a { min-height:46px; padding:8px 18px; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--ink); font-size:15px; font-weight:650; box-shadow:0 1px 2px rgb(28 27 26 / 4%); }
.public-page.pricing-page .pricing-jump a:nth-child(1) .home-icon { color:var(--ink-image); }
.public-page.pricing-page .pricing-jump a:nth-child(2) .home-icon { color:var(--ink-video); }
.public-page.pricing-page .pricing-jump a:nth-child(3) .home-icon { color:var(--ink-api); }
.public-page.pricing-page .price-count { padding:1px 8px; border-radius:999px; background:#F5F1EC; color:var(--ink-2); font-size:13px; }
.public-page.pricing-page .public-pricing > .price-category { margin-bottom:40px; }
.public-page.pricing-page .price-category-heading { margin-bottom:16px; }
.public-page.pricing-page .price-category-kicker { display:inline-block; padding:3px 10px; border-radius:999px; background:var(--tint-api); color:var(--ink-api); font-size:12px; font-weight:700; letter-spacing:.04em; vertical-align:middle; }
.public-page.pricing-page #image-prices .price-category-kicker { background:var(--tint-image); color:var(--ink-image); }
.public-page.pricing-page #video-prices .price-category-kicker { background:var(--tint-video); color:var(--ink-video); }
.public-page.pricing-page .price-category-heading h2 { margin-left:10px; font-size:26px; font-weight:760; letter-spacing:-.025em; vertical-align:middle; }
.public-page.pricing-page .price-category-heading div > p:last-child { margin-top:6px; font-size:14px; color:var(--ink-3); }
.public-page.pricing-page .price-category-heading > a { font-size:14px; font-weight:650; color:var(--ink); }
.public-page.pricing-page .public-price-grid { overflow:hidden; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.pricing-page .public-price-card { border-color:var(--line); }
.public-page.pricing-page .price-brand { width:40px; height:40px; flex-basis:40px; border-radius:12px; background:#FAF8F5; border-color:var(--line); }
.public-page.pricing-page .price-brand img { width:24px; height:24px; }
.public-page.pricing-page .price-model-heading h3 { font-size:17px; font-weight:720; }
.public-page.pricing-page .price-model-id { font-size:12px; color:var(--ink-3); }
.public-page.pricing-page .price-condition { font-size:13px; color:var(--ink-2); }
.public-page.pricing-page .price-spotlight strong { font-size:28px; font-weight:800; letter-spacing:-.03em; }
.public-page.pricing-page .price-spotlight > p > span, .public-page.pricing-page .price-token-spotlight dt { font-size:13px; color:var(--ink-3); }
.public-page.pricing-page .price-spotlight > small, .public-page.pricing-page .price-token-spotlight > small { font-size:12px; color:var(--ink-3); }
.public-page.pricing-page .price-token-spotlight dd { font-size:22px; font-weight:780; }
.public-page.pricing-page .pricing-period, .public-page.pricing-page .pricing-period span, .public-page.pricing-page .price-billing-notice { font-size:12px; }
.public-page.pricing-page .price-card-action { min-height:42px; padding:8px 16px; border:0; border-radius:12px; background:var(--ink); color:#fff; font-size:14px; font-weight:650; text-decoration:none; }
.public-page.pricing-page .price-card-action:hover { background:#000; color:#fff; }
.public-page.pricing-page .price-details summary { font-size:13px; color:var(--ink-2); }
.public-page.pricing-page .public-price-rates dt, .public-page.pricing-page .public-price-rates dd, .public-page.pricing-page .price-detail-label, .public-page.pricing-page .public-model-capabilities li { font-size:13px; }
.public-page.pricing-page .public-price-tier > p, .public-page.pricing-page .public-model-capabilities code, .public-page.pricing-page .public-price-rates dd small { font-size:12px; }
.public-page.pricing-page .pricing-category-note, .public-page.pricing-page .pricing-empty { font-size:14px; color:var(--ink-3); }
.public-page.pricing-page .pricing-error { padding:20px 24px; border:1px solid var(--line); border-radius:20px; background:#fff; font-size:15px; }

/* Status page */
.public-page.inner-page .status-overview, .public-page.inner-page .status-card { padding:24px; border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow-card); }
.public-page.inner-page .status-overview { margin:28px 0 20px; font-size:17px; }
.public-page.inner-page .status-grid { gap:20px; }
.public-page.inner-page .status-card-heading h2 { font-size:20px; font-weight:740; }
.public-page.inner-page .status-card-heading p, .public-page.inner-page .status-card-heading code, .public-page.inner-page .status-facts dt, .public-page.inner-page .status-rates span, .public-page.inner-page .status-rates small, .public-page.inner-page .status-history-label, .public-page.inner-page .status-history-label small { font-size:13px; }
.public-page.inner-page .status-facts dd { font-size:15px; }
.public-page.inner-page .status-rates strong { font-size:28px; font-weight:800; }
.public-page.inner-page .status-badge { padding:5px 12px; border-radius:999px; font-size:13px; font-weight:650; }
.public-page.inner-page .status-day { height:26px; border-radius:5px; }
.public-page.inner-page .status-notes { margin-top:20px; padding:20px 24px; border:1px solid var(--line); border-radius:20px; background:#fff; color:var(--ink-2); font-size:14px; }
.public-page.inner-page .status-legend { font-size:13px; }

@media (min-width:1060px) and (min-height:750px) { .public-page.inner-page .reading-aside { position:sticky; top:24px; } }
@media (max-width:1100px) {
 .public-page.inner-page .site-wrap { padding-inline:28px; }
 .public-page.inner-page .site-header { flex-wrap:wrap; column-gap:18px; row-gap:6px; }
 .public-page.inner-page .site-header nav { order:2; width:100%; margin-left:0; justify-content:space-between; gap:17px; }
 .public-page.inner-page .details-layout { grid-template-columns:minmax(0,1fr) 240px; gap:24px; }
 .public-page.inner-page .article-sections { padding:8px 36px; }
}
@media (max-width:900px) {
 .public-page.inner-page .inner-hero { padding:40px; }
 .public-page.inner-page .inner-hero--product { grid-template-columns:minmax(0,1fr) 220px; gap:28px; }
 .public-page.inner-page .details-layout { grid-template-areas:"aside" "article"; grid-template-columns:minmax(0,1fr); }
 .public-page.inner-page .reading-aside { position:static; display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:24px; }
 .public-page.inner-page .reading-action { margin:0; padding:0 0 0 24px; border-top:0; border-left:1px dashed var(--line-2); }
 .public-page.inner-page .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .public-page.inner-page .faq { grid-template-columns:1fr; gap:20px; padding:36px; }
 .public-page.inner-page .case-result-layout { grid-template-columns:1fr; }
}
@media (max-width:700px) {
 .public-page.inner-page .site-wrap { padding-inline:18px; }
 .public-page.inner-page .site-header { margin-top:12px; padding:12px 14px 4px; }
 .public-page.inner-page .site-header nav { flex-wrap:nowrap; justify-content:flex-start; gap:18px; overflow-x:auto; font-size:14px; }
 .public-page.inner-page .site-header nav .nav-console { display:none; }
 .public-page.inner-page .breadcrumbs { padding-top:16px; font-size:13px; }
 .public-page.inner-page .inner-hero, .public-page.inner-page .inner-hero--text { grid-template-columns:1fr; gap:28px; margin-top:14px; padding:30px 22px; border-radius:28px; }
 .public-page.inner-page .inner-hero h1 { font-size:clamp(28px,7.6vw,36px); line-height:1.22; }
 .public-page.inner-page .inner-hero .intro { font-size:16px; }
 .public-page.inner-page .inner-hero .hero-actions { flex-direction:column; align-items:stretch; }
 .public-page.inner-page .inner-hero .hp-btn { width:100%; }
 .public-page.inner-page .inner-hero--product .inner-star { left:auto; right:10%; top:6%; }
 .public-page.inner-page .hero .product-visual, .public-page.inner-page .hero .product-visual--portrait { display:block; max-width:220px; justify-self:center; }
 .public-page.inner-page .service-grid, .public-page.inner-page.guide-directory .service-grid { grid-template-columns:1fr; gap:14px; margin-top:18px; }
 .public-page.inner-page .service-card, .public-page.inner-page .service-card + .service-card { padding:22px; }
 .public-page.inner-page .details-layout { gap:18px; margin-top:18px; }
 .public-page.inner-page .reading-aside { display:block; padding:20px; }
 .public-page.inner-page .reading-action { margin-top:16px; padding:16px 0 0; border-left:0; border-top:1px dashed var(--line-2); }
 .public-page.inner-page .article-sections { padding:4px 20px; border-radius:24px; }
 .public-page.inner-page .content-section { padding:28px 0; }
 .public-page.inner-page .content-section h2 { font-size:22px; }
 .public-page.inner-page .content-section > p:not(.section-number), .public-page.inner-page .content-section li { font-size:15px; }
 .public-page.inner-page .content-section pre { padding:16px; font-size:13px; }
 .public-page.inner-page .faq { margin-top:18px; padding:26px 20px; border-radius:24px; }
 .public-page.inner-page .faq h2 { font-size:24px; }
 .public-page.inner-page .faq summary { padding:14px 16px; font-size:15px; }
 .public-page.inner-page .faq details p { padding:0 16px 16px; }
 .public-page.inner-page .related a { width:100%; justify-content:space-between; }
 .public-page.inner-page .image-case-guide { padding:26px 20px; border-radius:24px; }
 .public-page.inner-page .case-settings dl > div { grid-template-columns:1fr; gap:2px; }
 .public-page.inner-page .hp-closing { margin:40px 0; padding:30px 22px; border-radius:26px; }
 .public-page.inner-page .hp-closing .hp-actions { width:100%; flex-direction:column; align-items:stretch; }
 .public-page.pricing-page .price-category-heading h2 { font-size:22px; }
 .public-page.pricing-page .public-price-grid { border-radius:20px; }
 .public-page.inner-page .status-overview, .public-page.inner-page .status-card { padding:18px; }
}
@media (prefers-reduced-motion:reduce) {
 .public-page.inner-page *, .public-page.inner-page *::before, .public-page.inner-page *::after { transition:none !important; }
}

