/*
 * unazuku theme — front-page page styles
 * Source of truth: index.html (静的HTMLの<style>から抽出)
 * このファイルは scripts/sync-theme-css.py で index.html から再生成されます。
 * 直接編集せず、静的HTMLを修正してから本スクリプトを実行してください。
 */
      :root {
        --bg: #fcfbff;
        --surface: rgba(255, 255, 255, 0.78);
        --surface-strong: #f4eefb;
        --accent: #d9cbef;
        --accent-deep: #9f8bbb;
        --line: #e5ddef;
        --text: #262433;
        --muted: #666274;
        --navy: #2f3553;
        --shadow: 0 18px 50px rgba(68, 53, 97, 0.1);
      }

      * {
        box-sizing: border-box;
      }

      html {
        scroll-behavior: smooth;
      }

      body {
        position: relative;
        overflow-x: hidden;
        margin: 0;
        font-family: "Hiragino Sans", "Yu Gothic", sans-serif;
        color: var(--text);
        background:
          radial-gradient(circle at top left, rgba(217, 203, 239, 0.55), transparent 30%),
          radial-gradient(circle at 85% 20%, rgba(233, 227, 245, 0.9), transparent 28%),
          linear-gradient(180deg, #fff 0%, var(--bg) 100%);
      }

      .motion-field {
        pointer-events: none;
        position: fixed;
        inset: 0;
        z-index: -1;
        opacity: 0.55;
        transform: translate3d(var(--field-x, 0), var(--field-y, 0), 0);
        background:
          linear-gradient(120deg, transparent 8%, rgba(217, 203, 239, 0.2) 8.5%, transparent 9.5%),
          linear-gradient(62deg, transparent 64%, rgba(229, 221, 239, 0.32) 64.5%, transparent 66%),
          radial-gradient(circle at var(--field-focus-x, 78%) var(--field-focus-y, 18%), rgba(244, 238, 251, 0.8), transparent 26%);
        transition: opacity 300ms ease;
      }

      a {
        color: inherit;
        text-decoration: none;
      }

      .wrap {
        width: min(1160px, calc(100% - 40px));
        margin: 0 auto;
      }

      header {
        position: sticky;
        top: 0;
        z-index: 10;
        backdrop-filter: blur(12px);
        background: rgba(252, 251, 255, 0.8);
        border-bottom: 1px solid rgba(229, 221, 239, 0.75);
      }

      .nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 80px;
      }

      .brand {
        font-size: 1.25rem;
        font-weight: 700;
        letter-spacing: 0.08em;
      }

      .brand span {
        color: var(--accent-deep);
      }

      .menu {
        display: flex;
        align-items: center;
        gap: 28px;
        color: var(--muted);
        font-size: 0.96rem;
      }

      .menu-contact {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 9px 14px;
        border-radius: 8px;
        border: 1px solid #b8a6d9;
        background: #f3ecff;
        color: #7f68a8;
        font-weight: 700;
      }

      .lang {
        cursor: pointer;
        padding: 10px 14px;
        border: 1px solid var(--line);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.9);
        color: var(--navy);
        font-weight: 600;
      }

      .lang.active {
        background: var(--navy);
        color: #fff;
        border-color: var(--navy);
      }

      .hero {
        padding: 72px 0 48px;
      }

      .hero-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0;
        align-items: center;
      }

      .eyebrow {
        display: inline-block;
        margin-bottom: 18px;
        padding: 8px 12px;
        border-radius: 999px;
        background: rgba(217, 203, 239, 0.32);
        color: var(--accent-deep);
        font-size: 0.82rem;
        font-weight: 700;
        letter-spacing: 0.08em;
      }

      h1 {
        margin: 0;
        font-size: clamp(2.2rem, 5vw, 4.8rem);
        line-height: 1.15;
        letter-spacing: -0.03em;
        word-break: keep-all;
        line-break: strict;
        overflow-wrap: normal;
      }

      .lead {
        margin: 22px 0 0;
        max-width: 640px;
        color: var(--muted);
        font-size: 1.08rem;
        line-height: 1.9;
      }

      .hero-copy {
        padding-right: 8px;
      }

      .btn {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        padding: 14px 22px;
        border-radius: 999px;
        font-weight: 700;
        isolation: isolate;
        transform: translate3d(0, 0, 0);
        transition: transform 520ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 620ms ease, background-color 420ms ease;
      }

      .btn:hover {
        transform: translate3d(0, -2px, 0);
      }

      .btn:active {
        transform: translate3d(0, 0, 0);
      }

      .btn-ripple {
        position: absolute;
        border-radius: 999px;
        pointer-events: none;
        background: rgba(255, 255, 255, 0.44);
        mix-blend-mode: screen;
        transform: scale(0);
        animation: btn-ripple 780ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
      }

      .btn-primary {
        background: var(--navy);
        color: #fff;
        box-shadow: var(--shadow);
      }

      .btn-secondary {
        border: 1px solid var(--line);
        background: rgba(255, 255, 255, 0.85);
        color: var(--navy);
      }

      .hero-card {
        position: relative;
        min-height: 560px;
        border: 1px solid rgba(229, 221, 239, 0.8);
        border-radius: 28px;
        overflow: hidden;
        background:
          linear-gradient(160deg, rgba(255, 255, 255, 0.95), rgba(244, 238, 251, 0.92)),
          linear-gradient(120deg, rgba(217, 203, 239, 0.6), rgba(255, 255, 255, 0));
        box-shadow: var(--shadow);
        transform: translate3d(var(--motion-x, 0), var(--motion-y, 0), 0) rotate(var(--motion-rotate, 0deg));
        will-change: transform;
      }

      .hero-visual {
        position: absolute;
        inset: 0;
        background-image:
          linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.3)),
          linear-gradient(135deg, rgba(216, 199, 240, 0.2), rgba(255, 255, 255, 0)),
          url("https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&fm=jpg&q=80&w=1600");
        background-size: cover;
        background-position: center;
        transform: scale(1.035) translate3d(var(--hero-x, 0), var(--hero-y, 0), 0);
        transform-origin: center;
        will-change: transform;
      }

      .hero-visual::after {
        content: "";
        position: absolute;
        inset: 0;
        background:
          radial-gradient(circle at 82% 24%, rgba(216, 199, 240, 0.34), transparent 25%),
          linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.2));
      }

      .hero-card::before,
      .hero-card::after {
        content: "";
        position: absolute;
        border-radius: 999px;
        filter: blur(4px);
      }

      .hero-card::before {
        width: 360px;
        height: 360px;
        right: -70px;
        top: -40px;
        background: radial-gradient(circle, rgba(165, 145, 198, 0.35), rgba(255, 255, 255, 0));
      }

      .hero-card::after {
        width: 260px;
        height: 260px;
        left: 16px;
        bottom: -40px;
        background: radial-gradient(circle, rgba(217, 203, 239, 0.65), rgba(255, 255, 255, 0));
      }

      .hero-panel {
        position: absolute;
        left: 28px;
        right: 28px;
        bottom: 28px;
        max-width: 360px;
        padding: 0 0 0 18px;
        border-left: 3px solid rgba(255, 255, 255, 0.75);
        border-radius: 0;
        background: transparent;
        border: 0;
        backdrop-filter: blur(12px);
        text-shadow: 0 2px 18px rgba(38, 36, 51, 0.42);
      }

      .hero-panel h2 {
        margin: 0 0 8px;
        color: #fff;
        font-size: 1rem;
        letter-spacing: 0.08em;
      }

      .hero-panel p {
        margin: 0;
        color: rgba(255, 255, 255, 0.9);
        line-height: 1.65;
        font-size: 0.92rem;
      }

      section {
        padding: 34px 0;
        scroll-margin-top: 96px;
      }

      .section-head {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: end;
        gap: 24px;
        margin-bottom: 24px;
      }

      .section-head.line-reveal::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -13px;
        width: min(180px, 42%);
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(90deg, var(--accent-deep), rgba(217, 203, 239, 0));
        opacity: 0.82;
        transform: scaleX(0);
        transform-origin: left;
        transition: transform 980ms cubic-bezier(0.16, 1, 0.3, 1) var(--stagger-delay, 0ms);
      }

      .section-head.line-reveal.is-visible::after {
        transform: scaleX(1);
      }

      .section-head h2 {
        margin: 0;
        font-size: 1.8rem;
      }

      .section-head p {
        margin: 0;
        max-width: 560px;
        color: var(--muted);
        line-height: 1.8;
      }

      .services-head {
        display: block;
      }

      .services-head p {
        margin-top: 12px;
        max-width: none;
      }

      .cards {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 22px;
        align-items: stretch;
      }

      .card {
        overflow: hidden;
        padding: 28px;
        border: 1px solid var(--line);
        border-radius: 24px;
        background: var(--surface);
        box-shadow: var(--shadow);
        will-change: transform;
        height: 100%;
        display: flex;
        flex-direction: column;
      }

      .card-link {
        display: flex;
      }

      .card,
      .channel-card,
      .social-panel,
      .closing-photo {
        transition: border-color 700ms ease, box-shadow 700ms ease;
      }

      .card.is-focused,
      .channel-card.is-focused,
      .social-panel.is-focused,
      .closing-photo.is-focused {
        border-color: rgba(159, 139, 187, 0.46);
        box-shadow: 0 24px 70px rgba(68, 53, 97, 0.16);
      }

      .card-visual {
        height: 150px;
        margin: -28px -28px 22px;
        border-bottom: 1px solid rgba(229, 221, 239, 0.9);
        background-size: cover;
        background-position: center;
        transform: scale(var(--photo-scale, 1.025)) translate3d(var(--photo-x, 0), var(--photo-y, 0), 0);
        transform-origin: center;
        will-change: transform;
      }

      .card-visual-it {
        background-image:
          linear-gradient(140deg, rgba(47, 53, 83, 0.26), rgba(47, 53, 83, 0.05)),
          linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(216, 199, 240, 0.15)),
          url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&fm=jpg&q=80&w=1200&v=2");
        background-position: center 42%;
      }

      .card-visual-realestate {
        background-image:
          linear-gradient(160deg, rgba(255, 255, 255, 0.08), rgba(168, 142, 207, 0.14)),
          url("https://images.unsplash.com/photo-1560518883-ce09059eeffa?auto=format&fit=crop&fm=jpg&q=80&w=1200");
        background-position: center 32%;
      }

      .card-visual-ec {
        background-image:
          linear-gradient(140deg, rgba(47, 53, 83, 0.22), rgba(47, 53, 83, 0.06)),
          linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(216, 199, 240, 0.14)),
          url("https://images.unsplash.com/photo-1542744173-8e7e53415bb0?auto=format&fit=crop&fm=jpg&q=80&w=1200");
        background-position: center 30%;
      }

      .card small {
        color: var(--accent-deep);
        font-weight: 700;
        letter-spacing: 0.06em;
      }

      .card h3 {
        margin: 14px 0 12px;
        font-size: 1.35rem;
      }

      .service-title-row {
        display: flex;
        align-items: center;
        gap: 10px;
        margin: 14px 0 12px;
      }

      .service-title-row h3 {
        margin: 0;
      }

      .service-status {
        display: inline-flex;
        align-items: center;
        margin-top: 0;
        padding: 7px 12px;
        border-radius: 999px;
        border: 1px solid rgba(173, 132, 226, 0.52);
        background: rgba(226, 204, 255, 0.34);
        color: #6d46a8;
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        animation: service-status-float 2.8s ease-in-out infinite;
      }

      .service-status.is-placeholder {
        visibility: hidden;
        animation: none;
      }

      .card p {
        margin: 0;
        color: var(--muted);
        line-height: 1.9;
      }

      .value-row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
      }

      .media-stack {
        display: grid;
        gap: 18px;
      }

      .blog-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
      }

      .channel-card {
        position: relative;
        display: flex;
        min-height: 260px;
        flex-direction: column;
        justify-content: space-between;
        overflow: hidden;
        padding: 24px;
        border: 1px solid var(--line);
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.86);
        box-shadow: var(--shadow);
      }

      .channel-card::before {
        content: "";
        position: absolute;
        inset: 0;
        opacity: 0.18;
        background-size: cover;
        background-position: center;
        transform: scale(var(--photo-scale, 1.035)) translate3d(var(--photo-x, 0), var(--photo-y, 0), 0);
        transform-origin: center;
        will-change: transform;
      }

      .channel-card > * {
        position: relative;
        z-index: 1;
      }

      .channel-minpaku::before {
        background-image:
          linear-gradient(180deg, rgba(255,255,255,0.24), rgba(255,255,255,0.08)),
          url("https://images.unsplash.com/photo-1512918728675-ed5a9ecdebfd?auto=format&fit=crop&fm=jpg&q=80&w=1200");
      }

      .channel-it::before {
        background-image:
          linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0.06)),
          url("https://images.unsplash.com/photo-1516321318423-f06f85e504b3?auto=format&fit=crop&fm=jpg&q=80&w=1200");
      }

      .channel-instagram::before {
        background-image:
          linear-gradient(180deg, rgba(255,255,255,0.2), rgba(255,255,255,0.06)),
          url("https://images.unsplash.com/photo-1484154218962-a197022b5858?auto=format&fit=crop&fm=jpg&q=80&w=1200");
      }

      .channel-meta {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
      }

      .channel-label {
        color: var(--accent-deep);
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 0.08em;
      }

      .channel-status {
        padding: 7px 10px;
        border: 1px solid rgba(159, 139, 187, 0.3);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.78);
        color: var(--navy);
        font-size: 0.76rem;
        font-weight: 700;
      }

      .channel-card h3 {
        margin: 34px 0 10px;
        font-size: 1.25rem;
      }

      .channel-card p {
        margin: 0;
        color: var(--muted);
        line-height: 1.85;
      }

      .channel-link {
        display: inline-flex;
        align-items: center;
        width: fit-content;
        margin-top: 22px;
        color: var(--navy);
        font-weight: 700;
      }

      .channel-link-disabled {
        cursor: default;
        opacity: 0.72;
        transition: opacity 520ms ease, transform 720ms cubic-bezier(0.16, 1, 0.3, 1);
      }

      .channel-link-disabled::after {
        content: "";
        width: 18px;
        height: 1px;
        margin-left: 10px;
        border-radius: 999px;
        background: currentColor;
        opacity: 0.45;
        transform: scaleX(0);
        transform-origin: left;
        transition: transform 720ms cubic-bezier(0.16, 1, 0.3, 1);
      }

      .channel-card:hover .channel-link-disabled,
      .social-panel:hover .channel-link-disabled {
        opacity: 0.96;
        transform: translate3d(4px, 0, 0);
      }

      .channel-card:hover .channel-link-disabled::after,
      .social-panel:hover .channel-link-disabled::after {
        transform: scaleX(1);
      }

      .social-panel {
        display: grid;
        grid-template-columns: 0.75fr 1.25fr;
        gap: 18px;
        align-items: stretch;
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.86);
        box-shadow: var(--shadow);
      }

      .social-panel-visual {
        min-height: 250px;
        background-image:
          linear-gradient(180deg, rgba(255,255,255,0.08), rgba(47,53,83,0.18)),
          url("https://images.unsplash.com/photo-1484154218962-a197022b5858?auto=format&fit=crop&fm=jpg&q=80&w=1200");
        background-size: cover;
        background-position: center 45%;
        transform: scale(var(--photo-scale, 1.035)) translate3d(var(--photo-x, 0), var(--photo-y, 0), 0);
        transform-origin: center;
        will-change: transform;
      }

      .social-panel-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 30px;
      }

      .social-panel-content h4 {
        margin: 18px 0 10px;
        font-size: 1.5rem;
      }

      .social-panel-content p {
        margin: 0;
        max-width: 620px;
        color: var(--muted);
        line-height: 1.85;
      }

      .subnav {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin: 18px 0 0;
      }

      .subnav a {
        padding: 10px 14px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.82);
        border: 1px solid rgba(229, 221, 239, 0.95);
        color: var(--navy);
        font-size: 0.92rem;
        font-weight: 700;
        box-shadow: 0 8px 24px rgba(68, 53, 97, 0.08);
      }

      .value {
        padding: 24px;
        border-radius: 22px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(244, 238, 251, 0.92));
        border: 1px solid var(--line);
      }

      .value strong {
        display: block;
        margin-bottom: 10px;
        font-size: 1.1rem;
      }

      .value p {
        margin: 0;
        color: var(--muted);
        line-height: 1.8;
      }

      .overview {
        display: grid;
        grid-template-columns: 0.95fr 1.05fr;
        gap: 22px;
      }

      .overview-sub {
        padding: 28px;
        border-radius: 24px;
        border: 1px solid var(--line);
        box-shadow: var(--shadow);
      }

      .overview-sub {
        background: rgba(255, 255, 255, 0.88);
      }

      .kicker {
        color: var(--accent-deep);
        font-size: 0.82rem;
        font-weight: 700;
        letter-spacing: 0.08em;
      }

      .overview-sub h3 {
        margin: 12px 0;
        font-size: 1.35rem;
      }

      .overview-sub p,
      .company-list li {
        color: var(--muted);
        line-height: 1.9;
      }

      .company-list {
        margin: 0;
        padding-left: 18px;
      }

      .company-facts {
        margin-top: 22px;
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.88);
        box-shadow: var(--shadow);
      }

      .fact-row {
        display: grid;
        grid-template-columns: 180px 1fr;
        gap: 18px;
        padding: 18px 24px;
        border-top: 1px solid rgba(229, 221, 239, 0.82);
      }

      .fact-row:first-child {
        border-top: 0;
      }

      .fact-label {
        color: var(--accent-deep);
        font-size: 0.86rem;
        font-weight: 700;
        letter-spacing: 0.08em;
      }

      .fact-value {
        color: var(--muted);
        line-height: 1.75;
      }

      .closing {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
        align-items: stretch;
      }

      .closing-brand {
        padding: 34px;
        border-radius: 28px;
        border: 1px solid var(--line);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(244, 238, 251, 0.96));
        box-shadow: var(--shadow);
      }

      .closing-brand h2 {
        margin: 14px 0 12px;
        font-size: 2rem;
      }

      .closing-brand p {
        margin: 0;
        color: var(--muted);
        line-height: 1.9;
      }

      .closing-photo {
        position: relative;
        overflow: hidden;
        min-height: 320px;
        border-radius: 28px;
        border: 1px solid var(--line);
        box-shadow: var(--shadow);
      }

      .closing-photo::before {
        content: "";
        position: absolute;
        inset: 0;
        background:
          linear-gradient(180deg, rgba(255,255,255,0.1), rgba(38,36,51,0.26)),
          linear-gradient(135deg, rgba(216,199,240,0.2), rgba(255,255,255,0)),
          url("https://images.unsplash.com/photo-1460317442991-0ec209397118?auto=format&fit=crop&fm=jpg&q=80&w=1600");
        background-size: cover;
        background-position: center 42%;
        transform: scale(var(--photo-scale, 1.035)) translate3d(var(--photo-x, 0), var(--photo-y, 0), 0);
        transform-origin: center;
        will-change: transform;
      }

      .cta {
        margin: 26px 0 90px;
        padding: 34px;
        border: 1px solid var(--line);
        border-radius: 28px;
        background:
          radial-gradient(circle at left top, rgba(217, 203, 239, 0.42), rgba(255, 255, 255, 0) 36%),
          rgba(255, 255, 255, 0.82);
        box-shadow: var(--shadow);
      }

      .cta h3 {
        margin: 0 0 12px;
        font-size: 1.8rem;
      }

      .cta p {
        margin: 0;
        max-width: 720px;
        color: var(--muted);
        line-height: 1.9;
      }


      .fade-in {
        opacity: 0;
        transform: translate3d(var(--motion-x, 0), calc(16px + var(--motion-y, 0px)), 0) rotate(var(--motion-rotate, 0deg));
        transition: opacity 500ms ease, transform 500ms ease, border-color 700ms ease, box-shadow 700ms ease;
      }

      .fade-in.is-visible {
        opacity: 1;
        transform: translate3d(var(--motion-x, 0), var(--motion-y, 0), 0) rotate(var(--motion-rotate, 0deg));
      }

      .motion-stagger {
        opacity: 0;
        transform: translate3d(-12px, 0, 0);
        transition: opacity 560ms ease var(--stagger-delay, 0ms), transform 720ms cubic-bezier(0.16, 1, 0.3, 1) var(--stagger-delay, 0ms), background-color 420ms ease;
      }

      .motion-stagger.is-visible {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }

      .motion-stagger.is-visible:hover {
        background-color: rgba(244, 238, 251, 0.48);
      }

      @keyframes btn-ripple {
        0% {
          opacity: 0.72;
          transform: scale(0);
        }
        100% {
          opacity: 0;
          transform: scale(1);
        }
      }

      @keyframes service-status-float {
        0%,
        100% {
          transform: translate3d(0, 0, 0);
          opacity: 0.92;
        }
        50% {
          transform: translate3d(0, -2px, 0);
          opacity: 1;
        }
      }
      
      .parallax {
        will-change: transform;
      }

      .menu a.is-current {
        color: var(--navy);
        font-weight: 700;
      }
      .bg-orb {position: fixed; inset: auto auto 12% -120px; width: 320px; height: 320px; border-radius: 50%; filter: blur(30px); opacity:.35; z-index:-1; background: radial-gradient(circle, rgba(159,139,187,.8), rgba(255,255,255,0)); transform: translate3d(0,0,0);}
      .bg-orb-2 {position: fixed; inset: 14% -120px auto auto; width: 260px; height: 260px; border-radius: 50%; filter: blur(28px); opacity:.28; z-index:-1; background: radial-gradient(circle, rgba(217,203,239,.9), rgba(255,255,255,0)); transform: translate3d(0,0,0);}

      footer {
        border-top: 1px solid rgba(229, 221, 239, 0.85);
        padding: 24px 0 40px;
        color: var(--muted);
        font-size: 0.92rem;
      }

      @media (max-width: 920px) {
        .hero-grid,
        .cards,
        .value-row,
        .blog-grid,
        .social-panel,
        .overview,
        .closing {
          grid-template-columns: 1fr;
        }

        .menu {
          display: none;
        }

        .hero {
          padding-top: 56px;
        }

        .hero-card {
          min-height: 360px;
        }

        .form-grid {
          grid-template-columns: 1fr;
        }

        .section-head {
          align-items: start;
          flex-direction: column;
        }

        .fact-row {
          grid-template-columns: 1fr;
          gap: 8px;
        }
      }

      @media (prefers-reduced-motion: reduce) {
        html {
          scroll-behavior: auto;
        }

        .fade-in,
        .fade-in.is-visible,
        .line-reveal::after,
        .motion-stagger,
        .motion-stagger.is-visible,
        .btn,
        .btn:hover,
        .btn:active,
        .btn-ripple,
        .channel-card:hover .channel-link-disabled,
        .social-panel:hover .channel-link-disabled,
        .hero-card,
        .hero-visual,
        .card-visual,
        .channel-card::before,
        .social-panel-visual,
        .closing-photo::before,
        .motion-field {
          transform: none;
          transition: none;
        }
      }
    
.skip-link{position:absolute;left:-9999px;top:6px;padding:8px 16px;background:var(--navy,#2f3553);color:#fff;border-radius:999px;font-weight:700;z-index:9999;text-decoration:none}
.skip-link:focus{left:16px}
