/* Public interior pages: extensions of the approved homepage, not a second theme. */
.home-public.site-page .site-wrap { width: 100%; }
.site-page .site-links a[aria-current="page"] { color: #3bc8e9; }
.site-page main { overflow: clip; }
.site-page .page-hero { max-width: 1480px; margin: auto; padding: 85px clamp(20px,3.5vw,52px) 78px; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: center; gap: clamp(24px,3vw,52px); position: relative; }
.site-page .page-hero::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(ellipse at 75% 48%,#0647653d,transparent 54%); }
.site-page .page-hero > * { position: relative; z-index: 1; }
.site-page .page-hero h1 { font-size: clamp(52px,5.8vw,88px); font-weight: 900; letter-spacing: -.065em; line-height: .96; text-transform: uppercase; margin: 0 0 28px; }
.site-page .page-hero h1 span, .site-page .conversion-section h2 span { color: #3bc8e9; }
.site-page .page-hero .lead { max-width: 555px; color: #bac9d7; font-size: clamp(16px,1.3vw,19px); line-height: 1.65; margin: 0 0 28px; }
.site-page .page-hero .actions { display: flex; gap: 11px; flex-wrap: wrap; align-items: center; }
.site-page .page-hero .hero-visual { min-width: 0; display: block; }
.site-page .hero-composition { height: 500px; width: 100%; }
.site-page .hero-visual .sample-disclosure { position: static; text-align: right; margin: 14px 0 0; }
.site-page .section-block { padding: 88px 0; border-top: 1px solid #8ba0be18; }
.site-page .section-block.alt { background: #0a1322; }
.site-page .section-head { max-width: 760px; margin-bottom: 34px; }
.site-page .section-head h2,.site-page .split-copy h2 { font-size: clamp(34px,3.8vw,58px); font-weight: 800; line-height: 1.04; letter-spacing: -.05em; margin: 0 0 17px; }
.site-page .section-head p:not(.eyebrow),.site-page .split-copy > p:not(.eyebrow) { font-size: 16px; line-height: 1.7; color: #a8b9ca; margin: 0; max-width: 670px; }
.site-page .feature-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.site-page .product-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; background: linear-gradient(155deg,#14263b,#0c1726); border: 1px solid #263c50; border-radius: 12px; transition: transform .2s ease,border-color .2s ease; }
.site-page .product-card:hover { transform: translateY(-3px); border-color: #3a8fac; }
.site-page .product-card .card-body { padding: clamp(22px,2.7vw,38px) clamp(22px,2.7vw,38px) 20px; }
.site-page .card-index { display: block; margin-bottom: 16px; font-size: 11px; font-weight: 800; letter-spacing: .18em; color: #3bc8e9; text-transform: uppercase; }
.site-page .product-card h3 { font-size: clamp(27px,2.7vw,39px); font-weight: 800; letter-spacing: -.045em; margin: 0 0 12px; }
.site-page .product-card p { max-width: 500px; line-height: 1.65; font-size: 14px; color: #a8b9ca; margin: 0 0 17px; }
.site-page .check-list { list-style: none; padding: 0; margin: 0 0 21px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px 16px; }
.site-page .check-list li { color: #c5d5df; font-size: 12px; line-height: 1.5; padding-left: 19px; position: relative; }
.site-page .check-list li::before { content: "✓"; position: absolute; left: 0; color: #3bc8e9; font-weight: 800; }
.site-page .card-cta,.site-page .text-link { color: #53d0eb; font-weight: 800; font-size: 12px; display: inline-flex; min-height: 44px; align-items: center; }
.site-page .card-cta:hover,.site-page .text-link:hover { color: #b7f3ff; }
.site-page .product-card .card-image { display: flex; align-items: flex-start; justify-content: center; height: 280px; padding: 20px 20px 0; overflow: hidden; border-top: 1px solid #263c50; background: radial-gradient(ellipse at 50% 100%,#1b829c30,transparent 65%),#0a1422; }
.site-page .product-card .card-image img { display: block; height: auto; width: min(65%,330px); border: 1px solid #395b70; border-radius: 12px 12px 0 0; box-shadow: 0 18px 38px #000a; }
.site-page .product-card .card-image img + img { width: min(40%,220px); margin: 41px 0 0 -25px; transform: rotate(3deg); }
.site-page .tool-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.site-page .tool-grid .product-card h3 { font-size: clamp(24px,2.2vw,32px); }
.site-page .tool-grid .check-list { grid-template-columns: 1fr; gap: 7px; }
.site-page .tool-grid .card-image { height: 230px; }
.site-page .tool-grid .card-image img { width: min(67%,230px); }
.site-page .connected-grid,.site-page .editorial-split { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: center; gap: clamp(35px,6vw,90px); }
.site-page .connected-visual { display: flex; align-items: center; justify-content: center; gap: 15px; padding: 24px; background: radial-gradient(ellipse at center,#08688329,transparent 65%); }
.site-page .connected-visual img { width: 47%; display: block; height: auto; border: 1px solid #38576c; border-radius: 13px; box-shadow: 0 25px 55px #0009; }
.site-page .connected-visual img:first-child { transform: rotate(-3deg); }
.site-page .connected-visual img:last-child { transform: translateY(25px) rotate(3deg); }
.site-page .visual-caption { font-size: 10px; color: #8396aa; margin: 17px 0 0; text-align: center; }
.site-page .editorial-split { grid-template-columns: 1fr 1fr; }
.site-page .category-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.site-page .category-grid a,.site-page .category-grid span { display: flex; align-items: center; min-height: 61px; padding: 14px 18px; border: 1px solid #263c50; border-radius: 9px; background: #111d2e; color: #e4f2f7; font-size: 12px; font-weight: 800; text-transform: uppercase; transition: transform .2s ease,border-color .2s ease; }
.site-page .category-grid a:hover { transform: translateY(-2px); border-color: #3bc8e9; }
.site-page .category-grid svg { flex: 0 0 20px; width: 20px; height: 20px; stroke: #3bc8e9; stroke-width: 1.7; fill: none; margin-right: 14px; }
.site-page .principles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin-top: 35px; }
.site-page .principles article { padding: 25px 25px 22px; border-top: 1px solid #3bc8e9; background: #111d2e; }
.site-page .principles strong { display: block; color: #3bc8e9; font-size: 11px; letter-spacing: .14em; margin-bottom: 20px; }
.site-page .principles h3 { font-size: 22px; margin: 0 0 8px; }
.site-page .principles p { font-size: 13px; line-height: 1.65; margin: 0; }
.site-page .about-info { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.site-page .info-panel { padding: 32px; background: #111d2e; border: 1px solid #263c50; border-radius: 10px; }
.site-page .info-panel h2 { font-size: clamp(29px,3vw,42px); letter-spacing: -.045em; margin: 0 0 15px; }
.site-page .info-panel p { font-size: 14px; line-height: 1.7; margin: 0 0 18px; }
.site-page .platforms { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.site-page .platform { padding: 28px; border: 1px solid #263c50; border-radius: 10px; background: #111d2e; }
.site-page .platform strong { color: #f0f7fb; display: block; font: 800 24px Outfit,sans-serif; margin-bottom: 10px; }
.site-page .platform p { margin: 0 0 16px; font-size: 14px; }
.site-page .who-strip { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 35px 0 0; }
.site-page .who-strip h2 { margin: 0 0 8px; font-size: 33px; }
.site-page .who-strip p { margin: 0; max-width: 690px; font-size: 14px; }
.site-page .conversion-section h2 { margin: 0 auto 18px; }
.site-page .conversion-section .lead { margin-inline: auto; }
.site-page .contact-hero { padding-top: 82px; padding-bottom: 55px; max-width: 1312px; }
.site-page .contact-hero::before { background: radial-gradient(ellipse at 75% 60%,#0647652d,transparent 54%); }
.site-page .contact-hero h1 { margin-bottom: 16px; }
.site-page .contact-hero .lead { margin-bottom: 0; }
.site-page .contact-shell { display: grid; grid-template-columns: minmax(0,1.85fr) minmax(280px,1fr); gap: 20px; align-items: start; }
.site-page .form-panel,.site-page .sidebar-panel { padding: clamp(23px,3vw,42px); border: 1px solid #263c50; border-radius: 12px; background: #111d2e; }
.site-page .form-panel h2,.site-page .sidebar-panel h2 { font-size: 31px; letter-spacing: -.04em; margin: 0 0 11px; }
.site-page .form-panel > p,.site-page .sidebar-panel p { font-size: 14px; margin: 0 0 24px; line-height: 1.7; }
.site-page .field-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.site-page .field { margin-bottom: 20px; }
.site-page .field label { display: block; font-weight: 700; font-size: 12px; color: #e4f2f7; margin-bottom: 8px; }
.site-page .field input,.site-page .field select,.site-page .field textarea { width: 100%; min-height: 47px; border-radius: 7px; border: 1px solid #3b5267; background: #0b1726; color: #f0f7fb; padding: 12px 14px; font: 14px 'Plus Jakarta Sans',sans-serif; outline: none; }
.site-page .field textarea { min-height: 165px; resize: vertical; line-height: 1.6; }
.site-page .field input:focus,.site-page .field select:focus,.site-page .field textarea:focus { border-color: #3bc8e9; box-shadow: 0 0 0 2px #3bc8e925; }
.site-page .field [aria-invalid="true"] { border-color: #ee8b91; }
.site-page .field-error { display: block; min-height: 18px; font-size: 11px; color: #ffb6bb; margin-top: 5px; }
.site-page .form-note { font-size: 11px; color: #8ea5b7; margin: 0 0 20px; }
.site-page .form-note a { color: #53d0eb; text-decoration: underline; }
.site-page .form-status { font-size: 13px; line-height: 1.6; margin: 15px 0 0; min-height: 21px; }
.site-page .form-status[data-state="success"] { color: #86dec9; }
.site-page .form-status[data-state="error"] { color: #ffb6bb; }
.site-page button.button { font-family: 'Plus Jakarta Sans',sans-serif; font-weight: 800; cursor: pointer; }
.site-page button.button:disabled { opacity: .7; cursor: wait; }
.site-page .honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-page .sidebar-panel { background: #0d1929; }
.site-page .sidebar-panel .side-item { border-top: 1px solid #263c50; padding: 19px 0; }
.site-page .sidebar-panel .side-item strong { display: block; color: #f0f7fb; font-size: 13px; margin-bottom: 5px; }
.site-page .sidebar-panel .side-item p { font-size: 12px; margin: 0; }
.site-page .topics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.site-page .topic { width: 100%; text-align: left; padding: 22px; min-height: 115px; border: 1px solid #263c50; border-radius: 9px; background: #111d2e; color: #f0f7fb; font: 700 16px Outfit,sans-serif; cursor: pointer; transition: transform .2s ease,border-color .2s ease; }
.site-page .topic:hover,.site-page .topic:focus-visible { transform: translateY(-2px); border-color: #3bc8e9; }
.site-page .topic span { display: block; color: #3bc8e9; font: 800 11px 'Plus Jakarta Sans',sans-serif; letter-spacing: .14em; margin-bottom: 18px; }
.site-page .contact-ending { text-align: center; padding: 67px 0; background: radial-gradient(ellipse at 50% 110%,#067ca43b,transparent 60%),#08121f; border-top: 1px solid #263c50; }
.site-page .contact-ending h2 { font-size: clamp(36px,4.5vw,60px); text-transform: uppercase; letter-spacing: -.05em; margin: 0; }
.site-page .contact-ending p:last-child { margin: 15px 0 0; }
.site-page .contact-ending a { color: #53d0eb; }
.site-page #message { scroll-margin-top: 85px; }
:is(.site-page,.home-public) .site-foot nav { align-content: start; }
:is(.site-page,.home-public) .site-foot .footer-links { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 20px; }
:is(.site-page,.home-public) .site-foot .footer-links div { display: flex; flex-direction: column; align-items: start; gap: 8px; }
:is(.site-page,.home-public) .site-foot .footer-links b { color: #e4f2f7; font-size: 10px; letter-spacing: .14em; margin-bottom: 5px; text-transform: uppercase; }
:is(.site-page,.home-public) .site-foot .footer-links a { font-size: 11px; line-height: 1.5; }
:is(.site-page,.home-public) .site-foot .site-wrap { grid-template-columns: minmax(150px,1fr) minmax(0,3fr); }
:is(.site-page,.home-public) .site-foot .disclosure { grid-column: 1/-1; }
@media (max-width: 1050px) {
  .site-page .page-hero { padding-top: 65px; padding-bottom: 62px; }
  .site-page .hero-composition { height: 390px; }
  .site-page .product-card .card-image { height: 230px; }
  .site-page .tool-grid .check-list { font-size: 11px; }
}
@media (max-width: 760px) {
  :is(.site-page,.home-public) .site-links a,
  :is(.site-page,.home-public) .site-actions a,
  :is(.site-page,.home-public) .site-foot .footer-links a,
  :is(.site-page,.home-public) .button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
  .site-page .page-hero { grid-template-columns: 1fr; padding: 52px 20px 55px; gap: 24px; }
  .site-page .page-hero h1 { font-size: clamp(47px,11vw,72px); }
  .site-page .page-hero .hero-visual { width: 100%; }
  .site-page .hero-composition { height: 390px; }
  .site-page .section-block { padding: 60px 0; }
  .site-page .feature-pair,.site-page .tool-grid,.site-page .editorial-split,.site-page .connected-grid,.site-page .about-info,.site-page .platforms,.site-page .contact-shell { grid-template-columns: 1fr; }
  .site-page .tool-grid { gap: 12px; }
  .site-page .tool-grid .check-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-page .connected-grid .split-copy { order: 0; }
  .site-page .connected-grid .connected-figure { order: 1; }
  .site-page .principles { grid-template-columns: 1fr; gap: 10px; }
  .site-page .principles article { padding: 20px; }
  .site-page .principles strong { margin-bottom: 8px; }
  .site-page .who-strip { display: block; }
  .site-page .who-strip .button { margin-top: 20px; }
  .site-page .contact-hero { padding-bottom: 32px; }
  :is(.site-page,.home-public) .site-foot .site-wrap { grid-template-columns: 1fr; }
  :is(.site-page,.home-public) .site-foot .footer-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 480px) {
  .site-page .page-hero h1 { font-size: clamp(45px,12vw,58px); }
  .site-page .hero-composition { height: 335px; }
  .site-page .page-hero .actions .button { padding: 11px 13px; font-size: 12px; }
  .site-page .check-list,.site-page .tool-grid .check-list { grid-template-columns: 1fr; }
  .site-page .product-card .card-image { height: 240px; }
  .site-page .category-grid { gap: 8px; }
  .site-page .category-grid a { padding: 12px; min-height: 55px; }
  .site-page .category-grid svg { margin-right: 8px; }
  .site-page .field-row,.site-page .topics { grid-template-columns: 1fr; }
  .site-page .topic { min-height: 85px; }
  .site-page .topic span { margin-bottom: 8px; }
  .site-page .form-panel,.site-page .sidebar-panel { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-page .product-card,.site-page .category-grid a,.site-page .topic { transition: none; }
}