/* Existing transactional React pages, dressed in the verified multipage system. */
/* Match the integration bridge: normal document navigation, original in-page motion. */
@view-transition { navigation:none; }
.sane-app.studio-site {
  --font-display:'Bricolage Grotesque','Segoe UI',sans-serif;
  --font-body:'Onest','Segoe UI',sans-serif;
  --font-signature:'Instrument Serif',Georgia,serif;
  --font-label:ui-monospace,'Cascadia Code',monospace;
  --bg:#07050a; --bg1:#100c15; --bg2:#18131f; --surface:#100c15; --surface-raised:#18131f;
  --paper:#f5eff7; --text:#e9e1ed; --muted:#aaa0b2; --muted-strong:#c3bac9;
  --border:rgba(71,57,82,.58); --border-strong:rgba(117,89,133,.72);
  --g:var(--sec,#ce6df6); --g2:#ef58a5; --gp:linear-gradient(115deg,#ce6df6,#ef58a5);
  --color-base-100:#07050a; --color-base-200:#100c15; --color-base-300:#18131f; --color-base-content:#e9e1ed;
  --color-primary:#ce6df6; --color-primary-content:#0a0400; --color-neutral:#18131f; --color-neutral-content:#e9e1ed;
  --r-lg:40px; --r-md:24px; --r-sm:12px; --ease-out:cubic-bezier(.16,1,.3,1);
  background:var(--bg); color:var(--text); font-family:var(--font-body); padding-top:0;
}
.sane-app.studio-site::before { display:block; opacity:.018; }
.sane-app .header { z-index:300; }
.sane-app .nav { margin:0; }
.sane-app .nav.is-pointing .nav-item.is-target .nav-roll span { color:var(--on-sec); }
.sane-app .logo-mark { background-image:url('/assets/img/logo-256.webp'); background-color:transparent; background-size:cover; }
.sane-app .reference-cart-toggle { display:flex; align-items:center; justify-content:center; position:relative; width:44px; height:44px; flex:none; border:1px solid var(--glass-border); border-radius:100px; color:var(--paper); background:rgba(255,255,255,.025); }
.sane-app .reference-cart-toggle > span { position:absolute; right:-4px; top:-4px; min-width:19px; padding:2px 4px; background:var(--sec); color:var(--on-sec); font-size:10px; border-radius:100px; }
.sane-app .mobile-menu[inert] { pointer-events:none; }
.sane-app :is(h1,h2,h3,h4) { font-family:var(--font-display); font-weight:760; letter-spacing:-.035em; }
.sane-app :is(.pkg-btn,.outline-btn) { border-radius:100px; min-height:48px; }
.sane-app .reference-link { display:inline-flex; align-items:center; justify-content:space-between; gap:16px; min-height:52px; max-width:100%; text-decoration:none; }
.sane-app .sane-btn.reference-link { height:auto; background:var(--paper); color:var(--bg); border:0; border-radius:100px; padding:6px 6px 6px 24px; font-size:15px; font-weight:500; box-shadow:none; }
.sane-app .reference-link i { display:flex; align-items:center; justify-content:center; width:40px; height:40px; flex:none; border-radius:100px; background:var(--sec); color:var(--on-sec); }
.sane-app .btn-ghost.reference-link { padding:12px 20px; border:1px solid var(--border-strong); border-radius:12px; }
.sane-app .service-detail-container { max-width:1360px; }
.sane-app .service-detail-hero { text-align:center; max-width:980px; margin:48px auto 64px; }
.sane-app .service-detail-hero h1 { font-weight:760; font-size:clamp(48px,6.5vw,88px); letter-spacing:-.055em; }
.sane-app .service-detail-hero h1 span { color:var(--sec) !important; }
.sane-app .service-detail-hero > p:last-of-type { margin-inline:auto; }
.sane-app .service-buy-guide { justify-content:center; }
.sane-app .service-pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.sane-app .pricing-card { border-radius:24px; padding:32px; background:linear-gradient(140deg,rgba(var(--sec-rgb),.06),var(--surface) 60%); box-shadow:inset 0 1px 1px #ffffff12; }
.sane-app .pricing-card.is-featured { background:linear-gradient(140deg,rgba(var(--sec-rgb),.12),var(--surface) 70%); }
.sane-app .pricing-recommended { border-radius:23px 23px 0 0; }
.sane-app .pkg-name { font-size:28px; font-weight:760; min-height:64px; }
.sane-app .pkg-price { font-family:var(--font-display); font-weight:650; }
.sane-app .pricing-description,.sane-app .pricing-features li { font-size:14px; }
.sane-app .pricing-action-note { font-size:12px; }
.sane-app .service-standard-grid article { padding:24px; border-radius:24px; background:var(--surface); }
.sane-app .service-section-heading h2 { font-weight:760; }
.sane-app .portfolio-page__header { text-align:center; margin-inline:auto; }
.sane-app .portfolio-page__header h1 { font-weight:760; font-size:clamp(56px,7.5vw,104px); letter-spacing:-.055em; }
.sane-app .portfolio-page__header p { margin-inline:auto; }
.sane-app .portfolio-page__filters { justify-content:center; flex-wrap:wrap; border:0; gap:12px; padding:8px; }
.sane-app .portfolio-page__filter { border:1px solid var(--border); border-radius:100px; padding:12px 24px; min-height:48px; }
.sane-app .portfolio-page__filter[aria-pressed=true] { background:var(--g); color:var(--on-sec); box-shadow:none; }
.sane-app .portfolio-page__card-media { border-radius:24px; border:1px solid var(--border); }
.sane-app .portfolio-page__card-title { font-weight:700; }
.sane-app .portfolio-dialog__panel { border-radius:24px; }
.sane-app .portfolio-page__cta { text-align:center; padding:40px; border:1px solid var(--border); border-radius:24px; background:radial-gradient(at top right,rgba(var(--sec-rgb),.1),var(--surface)); }
.sane-app .portfolio-page__cta p { margin-inline:auto; }
.sane-app .form-input { border-radius:12px; background:var(--surface); }
.sane-app .studio-auth__art { border-radius:40px; border:1px solid var(--border); }
.sane-app .studio-auth h1 { font-weight:760; }
.sane-app .studio-legal { max-width:1360px; }
.sane-app .studio-legal h1 { font-weight:760; }
.sane-app .studio-legal__layout { grid-template-columns:1fr 2fr; }
.sane-app .studio-legal__intro { font-size:18px; }
.sane-app .studio-legal article section > div { font-size:15px; }
.sane-app .studio-result > div { border-radius:24px !important; background:linear-gradient(145deg,rgba(var(--sec-rgb),.08),var(--surface)) !important; }
.sane-app .studio-cart { z-index:420 !important; }
.sane-app .cookie-banner { z-index:500; border-radius:24px; background:var(--surface); box-shadow:0 12px 48px #0006; }
.sane-app .cookie-banner__actions button { border-radius:100px; }
.sane-app .site-footer { background:transparent; padding-top:80px; }
.sane-app .footer-shell { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(0,1.8fr); gap:16px; width:min(1140px,calc(100% - 64px)); margin:0 auto; }
.sane-app .footer-grid { display:grid; grid-template-columns:1fr 1fr 1.5fr; }
.sane-app .footer-watermark { margin:0 auto; max-width:1400px; }
.sane-app .footer-watermark svg { display:block; width:100%; height:auto; }
.sane-app .footer-watermark text { font-family:var(--font-display); font-weight:800; fill:rgba(245,239,247,.06); }
.sane-app .reference-cart-page { padding-block:150px 80px; max-width:1000px; min-height:65svh; }
.sane-app .reference-cart-page h1 { font-size:clamp(48px,6vw,80px); margin:24px 0; }
.sane-app .reference-cart-page > p { color:var(--muted); max-width:60ch; margin-bottom:24px; }
.sane-app .reference-cart-page ul { display:grid; gap:16px; margin-block:32px; }
.sane-app .reference-cart-page li { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; background:var(--surface); border:1px solid var(--border); border-radius:24px; }
.sane-app .reference-cart-page__links { display:flex; flex-wrap:wrap; gap:16px; margin-top:40px; }
@media(max-width:1100px) { .sane-app .nav { display:none; } .sane-app .menu-btn { display:block; } }
@media(max-width:760px) {
  .sane-app .header { padding:16px 20px; }
  .sane-app .header-end { gap:8px; }
  .sane-app .contact-btn { display:none; }
  .sane-app .logo { font-size:20px; }
  .sane-app .header.is-condensed { max-width:calc(100% - 24px); }
  .sane-app .service-detail-hero h1 { font-size:50px; }
  .sane-app .service-pricing-grid { grid-template-columns:1fr; }
  .sane-app .pricing-card { padding:28px; }
  .sane-app .pkg-name { min-height:0; }
  .sane-app .portfolio-page__filter { font-size:12px; padding:10px 14px; }
  .sane-app .portfolio-page__cta { padding:28px; }
  .sane-app .studio-legal__layout { grid-template-columns:1fr; }
  .sane-app .footer-shell { grid-template-columns:1fr; width:calc(100% - 32px); gap:70px; }
  .sane-app .footer-grid { grid-template-columns:1fr 1fr; }
  .sane-app .footer-col:last-child { grid-column:1 / -1; }
  .sane-app .footer-legal { flex-direction:column; align-items:flex-start; }
  .sane-app .footer-video-card { min-height:320px; }
  .sane-app .cookie-banner { bottom:12px; }
}
@media(prefers-reduced-motion:reduce) { .sane-app *,.sane-app *::before,.sane-app *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
