/* frdefence.com · AI concept v1 · 2026-10-12.
 * Visual layer only. Existing form, permission and JS contracts are retained. */
:root {
  --ink:#173b40; --forest:#073e47; --forest-deep:#062c32;
  --leaf:#697366; --gold:#ae8950; --gold-soft:#ecdfc7;
  --paper:#f4ecdc; --white:#fffaf0; --muted:#716e63;
  --line:#d7c8ad; --red:#9c3d32; --radius:3px;
  --shadow:0 5px 20px #45351d0b;
}
html { scroll-padding-top:30px; }
body {
  background:radial-gradient(ellipse at 12% 13%,#fff9eb90,transparent 42%),
    radial-gradient(ellipse at 88% 70%,#c5a26614,transparent 38%),var(--paper);
  font-size:14px; color:var(--ink); line-height:1.8;
}
h1,h2,h3,.brand strong { font-family:"Batang","Noto Serif KR","Georgia",serif; font-weight:700; }
h1,h2,h3 { letter-spacing:-.04em; }
a:hover { color:#92703f; }
::selection { background:#d4be8e; color:#123940; }
.container { width:min(1240px,calc(100% - 88px)); }
.eyebrow { color:#8b7654; font-size:10px; letter-spacing:.19em; }
.eyebrow.light { color:#dcca9b; }
.button {
  min-height:44px; border:1px solid #b99a65; border-radius:3px;
  background:linear-gradient(#fff9ed,#f0e1c6); color:var(--ink);
  box-shadow:inset 0 0 0 2px #fff9ed70,0 2px 3px #39291612;
  padding:10px 21px; font-size:13px; letter-spacing:-.02em;
}
.button:hover { background:linear-gradient(#fffdf7,#e5d2b0); color:#143b40; border-color:#8f6f3f; }
.button-dark,.button-gold {
  background:linear-gradient(160deg,#17535b,#073943); color:#fff2d8;
  border-color:#b89c65; box-shadow:inset 0 0 0 2px #25565a,0 2px 4px #102a3025;
}
.button-dark:hover,.button-gold:hover { background:linear-gradient(160deg,#24646b,#0a4650); color:#fff7e8; }
.button-small { min-height:35px; padding:6px 13px; font-size:12px; }
.button-soft { background:linear-gradient(#fff9ed,#eee3d0); }
.button-outline-light { color:#fff5e2; background:#09343c85; border-color:#cbb887; }
.button-outline-light:hover { color:#fff; background:#15515b; }
.button-danger { background:#f7e7dd; color:#8b342b; border-color:#c3917d; }
.button:disabled { opacity:.48; }
.icon-button { border-radius:2px; }
.icon-button:hover { background:#e4d7bd75; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {
  outline:3px solid #197181; outline-offset:3px;
}
.site-header { height:88px; background:#f7efdf; border-top:3px double #b49b70; border-bottom:3px double #b49b70; }
.header-inner { width:calc(100% - 76px); max-width:1440px; gap:26px; }
.brand { gap:11px; color:#203a38; }
.brand strong { font-size:24px; letter-spacing:-.08em; }
.brand small { font-size:8px; letter-spacing:.31em; color:#5c594c; }
.brand-mark { width:34px; height:45px; border:0; border-radius:0; color:#314340; }
.brand-mark .icon { width:32px; height:32px; }
.primary-nav { gap:27px; }
.primary-nav>a { color:#474d43; font-size:12px; }
.primary-nav>a[aria-current]:after { bottom:20px; height:1px; background:#9b7a45; }
.header-actions { gap:13px; }
.header-logout { margin:0; }
.hero { height:640px; border-bottom:4px double #b79961; }
.hero-image { object-position:center 49%; }
.hero-shade {
  background:linear-gradient(90deg,#07353bf5 0%,#07353bdf 21%,#07353b85 44%,transparent 76%),
    linear-gradient(0deg,#102b288c,transparent 32%);
}
.hero-content { padding:0 0 32px; justify-content:center; z-index:2; }
.hero-content h1 { max-width:690px; font-size:clamp(40px,4.35vw,64px); line-height:1.27; margin:24px 0 20px; color:#fff2d8; text-shadow:0 2px 8px #06293055; }
.hero-content p { max-width:520px; font-size:15px; color:#eee7d4; }
.hero-content .hero-subtitle { font-size:21px; font-family:"Batang",serif; color:#fff4dc; margin-bottom:14px; }
.hero-actions { gap:14px; margin-top:30px; flex-wrap:wrap; }
.hero-actions .button { min-height:47px; padding:11px 24px; }
.hero-text-link { border:1px solid #bd9c64; border-radius:3px; padding:11px 21px; background:#f5ead5; color:#173b40; font-weight:700; }
.hero-text-link:hover { background:#fff7e8; color:#173b40; }
.hero-knight { position:absolute; z-index:1; right:5%; bottom:-35px; width:min(36vw,465px); height:88%; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 12px 15px #001c2490); pointer-events:none; }
.hero-coordinate { bottom:24px; left:0; right:auto; text-align:left; color:#d6ccb4; font-size:9px; }
.development-label { border:1px solid #b8985c; padding:4px 17px; display:inline-flex; font-size:12px; color:#e5cea0; background:#07353b85; letter-spacing:.16em; }
.quick-links { margin-top:0; border:0; border-bottom:1px solid #cbb996; border-radius:0; background:none; box-shadow:none; }
.quick-links>a { padding:24px 25px; }
.quick-links>a:hover { background:#e7dac250; }
.quick-links>a+a:before { background:#cdbb98; }
.quick-icon { color:#8d7144; }
.quick-links small { color:#877961; }
.quick-links strong { font-size:15px; }
.section { padding-top:60px; padding-bottom:60px; }
.section-heading { padding-bottom:18px; border-bottom:1px solid #cdbb98; margin-bottom:25px; }
.section-heading h2 { font-size:28px; }
.section-heading h2:before { content:"◇"; font-family:serif; color:#9a7840; font-size:20px; margin-right:12px; }
.news-grid { gap:32px; grid-template-columns:1fr 1.45fr; }
.feature-notice { background:linear-gradient(130deg,#e9dcc4,#f7efdf); padding:27px; border:1px solid #cdbb98; border-radius:2px; }
.feature-notice p { color:#716b5b; }
.feature-notice h3 { font-size:24px; }
.feature-watermark { color:#685736; }
.notice-row { border-color:#d9cbb2; padding:19px 2px; }
.notice-label { display:inline-flex; width:fit-content; color:#fff5e1; background:#496c64; border-radius:2px; padding:2px 7px; margin-right:12px; margin-bottom:7px; font-size:10px; }
.row-date { color:#7b7669; }
.character-feature { background:#113f43; border-top:3px double #b69a67; border-bottom:3px double #b69a67; }
.character-feature-inner { min-height:430px; }
.character-copy h2 { font-size:40px; color:#fcf0d7; }
.character-copy p { color:#dfdecb; }
.character-copy .tag-row { margin:23px 0; }
.tag-row span { border-color:#c3af7870; color:#ebdfc2; border-radius:2px; }
.character-art img { filter:drop-shadow(0 10px 15px #00161b50); }
.art-ring { border-color:#b99b5835; box-shadow:0 0 0 18px #b99b5808,0 0 0 19px #b99b581c; }
.character-caption { color:#d1b780; }
.panel,.recent-panel { background:#fbf5e9; border:1px solid #cfbfa0; border-radius:3px; box-shadow:var(--shadow); }
.panel-heading { border-color:#dbceb6; }
.community-row { border-color:#ddd0b7; }
.community-row:hover,.notice-row:hover { background:#e8dbc137; }
.bestiary-card { border:1px solid #c4ad83; border-radius:3px; }
.bestiary-card>div { background:linear-gradient(0deg,#faf1dff0,#faf1dfca,transparent); }
.mail-banner { background:#eaddc4; border:1px solid #c8b38a; border-radius:3px; margin-bottom:64px; box-shadow:inset 0 0 0 4px #f5ecd8; }
.mail-banner-icon { background:none; color:#97743d; border:1px solid #b99b65; border-radius:2px; }
.mail-banner p { color:#706755; }
.site-footer { background:#eee2cb; border-top:4px double #ac9263; color:#5a5c4f; }
.footer-main { padding-top:35px; padding-bottom:30px; }
.footer-bottom { border-color:#d2c1a0; color:#7a7566; }
.sub-banner { background:linear-gradient(105deg,#103f45,#244d49); border-bottom:3px double #b49660; padding:31px 0; }
.sub-banner .eyebrow { color:#c8b58b; }
.sub-banner h1 { color:#fff2dc; font-size:30px; margin:8px 0; }
.sub-banner p { color:#d8ddcd; font-size:13px; }
.sub-layout { gap:36px; padding-top:42px; padding-bottom:72px; }
.sidebar { width:210px; flex-basis:210px; }
.sidebar-heading { border-bottom:3px double #bea77c; padding-bottom:20px; }
.sidebar-heading h2 { font-size:24px; }
.sidebar nav { border-bottom:1px solid #d1be98; }
.sidebar nav a { border-bottom:1px solid #e1d3ba; border-radius:0; color:#5e665a; padding:13px 12px; }
.sidebar nav a[aria-current] { background:#17464b; color:#fff0d3; border-color:#17464b; box-shadow:inset 3px 0 #b4985e; }
.sidebar nav a:hover { background:#e7dac2; color:#1a4345; }
.sidebar nav a[aria-current]:hover { background:#24555a; color:#fff0d3; }
.sidebar-callout { background:#e9ddc6; border:1px solid #c6b28b; border-radius:2px; color:#344d47; margin-top:24px; }
.sidebar-callout>span { color:#6d715e; }
.page-content { min-width:0; }
.page-heading { border-bottom:3px double #c6ae81; padding-bottom:23px; margin-bottom:28px; }
.page-heading h2 { font-size:30px; }
.page-heading p { color:#786e5b; }
.tabs { border-color:#c6b38f; gap:0; background:#eee2cb; }
.tabs a { border:0; border-right:1px solid #cdbb98; border-radius:0; color:#756b58; padding:11px 18px; }
.tabs a[aria-current],.tabs a.active { background:#17464b; color:#fff0d3; }
.search-form { border-color:#c6b38e; border-radius:2px; background:#fff8ed; }
.search-form button { background:#17464b; color:#fff5df; border-radius:0; }
.post-list-head { background:#eadeca; color:#6c6454; border-top:2px solid #ad976c; border-bottom:1px solid #d1bc95; }
.post-row { background:transparent; border-color:#dfd0b4; }
.post-row:hover { background:#e9ddc585; }
.post-list { border-radius:0; border:0; }
.post-row-title strong { color:#24463f; }
.reply-count { background:#e8dcc4; color:#8b7041; border-radius:2px; }
.pagination a,.pagination span { border-radius:2px; border-color:#c9b58e; background:#fbf4e5; }
.pagination [aria-current] { color:#fff6df; background:#17484d; border-color:#17484d; }
.badge { border-radius:2px; }
.badge-green { background:#e1e8d9; color:#376452; }
.badge-neutral { background:#e9e0ce; color:#6c6c5d; }
.badge-gold { background:#eee0bd; color:#86632a; }
.article { background:#fcf6e9; border:1px solid #cdb994; border-radius:3px; }
.article-heading { border-bottom:1px solid #d8c7a4; }
.article-heading h2 { font-size:28px; }
.article-meta,.article-footer { border-color:#d9c9aa; color:#7e7360; }
.article-content { color:#414e43; font-size:15px; line-height:2; }
.reply { border-color:#dbcaab; }
.replies,.form-footer { border-color:#d0bb92; }
.avatar,.small-avatar { background:#e5d6b7; color:#536654; border:1px solid #c4ae81; border-radius:3px; }
.faq-item { border:1px solid #d1bd96; border-radius:2px; background:#fbf4e7; margin-bottom:10px; }
.faq-item summary { color:#2c4d43; }
.faq-item[open] { background:#fff9ed; border-color:#a08b60; }
.faq-plus { color:#937340; }
.gallery-card { background:#fff7e9; border:1px solid #ccb48b; border-radius:3px; }
.gallery-placeholder { background:#e8dcc3; color:#aa966e; }
.auth-card,.pairing-card,.settings-panel { background:#fcf5e6; border:1px solid #c4aa7e; border-radius:3px; box-shadow:0 8px 28px #4233190a; }
.auth-card { border-top:3px solid #b59962; }
.auth-card h2 { font-size:30px; }
.auth-emblem { background:#123f45; color:#d9c38d; border:1px solid #b59b64; border-radius:3px; }
.google-signin { border:1px solid #b8a178; border-radius:3px; color:#264441; background:#fffaf0; }
.google-signin:hover { background:#eee2ca; color:#264441; }
input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select {
  border-color:#c7b28c; background:#fffaf0; color:#234442; border-radius:2px;
}
input::placeholder,textarea::placeholder { color:#8b806b; }
input:disabled,textarea:disabled,select:disabled { background:#e9e0cf; color:#807866; }
input[type=checkbox],input[type=radio] { accent-color:#164b50; }
.field label { color:#445444; }
.field-hint { color:#7c725e; }
.pair-code-input { letter-spacing:.12em; background:#fffaf0; }
.note-box { background:#e9e2cd; border-left:3px solid #9b8758; color:#52604e; border-radius:2px; }
.alert { border:1px solid #a8b49a; background:#e7ecda; color:#395841; border-radius:2px; }
.alert-error { background:#f3e2d4; border-color:#c39a84; color:#823d31; }
.empty-state { color:#7e735d; }
.empty-state .icon { color:#ab956a; }
.upload-zone { border-color:#bca67c; background:#eee3cd; border-radius:2px; }
.mail-row { background:#fff6e6; border-color:#d8c6a5; }
.mail-row.unread { background:#eee6d0; border-left:3px solid #9e8050; }
.mail-row-icon { background:#e4d6b9; color:#3d6658; border-radius:3px; }
.link-steps { border-color:#d2c09d; }
.error-panel { background:#f8efdd; border:1px solid #c9b38b; border-radius:3px; }
.story-prologue { border:1px solid #b39c6e; border-radius:3px; }
.story-prologue>div { background:linear-gradient(90deg,#09383cf5,#103b3bca,transparent); }
.story-quote { color:#42594e; border-color:#bfa16e; font-family:"Batang",serif; font-size:24px; }
.chapter { border-color:#d4c09a; }
.chapter-number { color:#ad915d; font-family:Georgia,serif; font-size:42px; }
.chapter h3 { color:#224740; }
.lore-callout { background:#e9ddc3; border:1px solid #c4ab7d; border-radius:2px; }
.story-next { background:#15464b; color:#fff1d6; border:1px solid #b49860; border-radius:3px; }
.story-next:hover { background:#22585c; color:#fff8e7; }
.knight-profile { background:#f4e9d3; border:1px solid #c3a978; border-radius:3px; }
.knight-profile-art { background:radial-gradient(ellipse,#fff7e4,#e4d5b5); }
.knight-profile-art img { filter:drop-shadow(0 8px 10px #54402120); }
.knight-profile-art>span { font-family:"Batang",serif; color:#67583c; }
.knight-profile-copy h3 { font-size:31px; color:#154349; }
.character-facts>div { border-color:#d4c19c; }
.knight-profile-copy,.knight-profile-copy p { color:#635e4f; }
.knight-profile-copy>.eyebrow { color:#8a7044; }
.character-facts dt { color:#82704f; }
.character-facts dd,.knight-profile-copy .text-link { color:#294e45; }
.knight-profile-art img { mix-blend-mode:normal; }
.skill-card p,.skill-card small { color:#6b6454; }
.footer-links { flex-wrap:wrap; row-gap:12px; }
.home-overview-grid { display:grid; grid-template-columns:1fr 1.04fr; gap:36px; padding-top:52px; padding-bottom:52px; }
.home-overview-grid .section { padding:0; }
.home-overview-grid .section-heading h2 { font-size:25px; }
.home-defender { border-left:1px solid #cdbb98; padding-left:36px; min-width:0; }
.home-defender-body { display:grid; grid-template-columns:1fr 45%; gap:10px; position:relative; min-height:310px; }
.home-defender-copy { padding-top:15px; position:relative; z-index:1; }
.home-defender-copy h3 { font-size:30px; line-height:1.45; margin-bottom:18px; }
.home-defender-copy p { color:#746b57; font-size:13px; }
.home-defender-copy .tag-row { gap:6px; margin:20px 0; }
.home-defender-copy .tag-row span { color:#354b42; border-color:#c2aa7c; background:#f9efd9; }
.home-defender-art { display:flex; align-items:flex-end; justify-content:center; }
.home-defender-art img { max-height:330px; object-fit:contain; filter:drop-shadow(0 8px 10px #70532525); }
.home-defender-note { color:#71634b; font-family:"Batang",serif; font-size:16px; line-height:1.8; border-top:1px solid #d6c5a3; padding-top:17px; margin:15px 0 13px; }
.personality-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:25px 0 36px; }
.personality-card { padding:21px; border:1px solid #cab48b; background:#faf1df; }
.personality-card h3 { font-size:18px; margin-bottom:8px; }
.personality-card p { font-size:13px; color:#786b56; }
.personality-card .icon { color:#987640; margin-bottom:12px; }
.skill-card { background:#fbf3e2; border:1px solid #cbb48b; border-radius:3px; box-shadow:none; }
.skill-icon { background:#133f46; color:#e4cf9d; border:1px solid #b49b65; border-radius:3px; }
.skill-cost { border-color:#d9c8a5; color:#6e6b53; }
.skill-index { color:#baa37a; font-family:Georgia,serif; }
.is-admin .sub-banner { background:#14373c; }
.stat-card { background:#fcf5e6; border:1px solid #c4ae82; border-radius:3px; box-shadow:none; }
.stat-card .icon { color:#8d774b; }
.stat-card strong { color:#15454a; font-family:Georgia,serif; }
.admin-quick { background:#f9efdc; border:1px solid #c4ad82; border-radius:3px; }
.admin-quick:hover { background:#eee0c2; color:#1a4447; }
.admin-quick p,.operator-links>a,.auth-card>p { color:#5e665a; }
.chapter p,.lore-callout p { color:#655f4d; }
.post-row time,.post-author { color:#746a56; }
.post-list { background:#fcf5e6; }
.admin-table th { background:#e6dac0; color:#615c4b; border-color:#c8b38a; }
.admin-table td { border-color:#ded0b3; }
.admin-table tr:hover td { background:#ede3ce55; }
.table-scroll { border-color:#c9b38a; border-radius:2px; }
.campaign-record { background:#f8efdc; border:1px solid #ccb38a; border-radius:2px; }
.campaign-record-head,.campaign-history,.campaign-metrics { border-color:#d6c39e; }
.campaign-retention { background:#e9e4cd; border-color:#c3bd95; }
.campaign-options { background:#f1e6cf; border-color:#d3bd92; border-radius:2px; }
.mail-rewards { border-color:#cbb188; border-radius:2px; }
.mail-rewards button { border-radius:2px; }
.group-grid { gap:20px; }
[hidden] { display:none!important; }
@media(min-width:1440px) { body { border:4px double #a58b5f; } }
@media(max-width:1150px) {
  .header-inner { gap:18px; width:calc(100% - 40px); }
  .primary-nav { gap:17px; }
  .brand strong { font-size:21px; }
  .header-actions { gap:8px; }
  .hero-knight { right:1%; width:37%; }
  .hero h1 { font-size:49px; }
  .hero-content p { max-width:460px; }
  .sub-layout { gap:25px; }
  .sidebar { width:185px; flex-basis:185px; }
}
@media(max-width:900px) {
  .home-overview-grid { gap:22px; }
  .home-defender { padding-left:22px; }
  .home-defender-body { grid-template-columns:1fr 39%; }
  .home-defender-copy h3 { font-size:25px; }
  .home-overview-grid .section-heading h2 { font-size:21px; }
  .container { width:calc(100% - 44px); }
  .header-inner { gap:15px; }
  .brand strong { font-size:20px; }
  .hero { height:595px; }
  .hero h1 { font-size:45px; max-width:580px; }
  .hero-knight { right:-7%; width:46%; opacity:.93; height:74%; }
  .hero-shade { background:linear-gradient(90deg,#07353bfa,#07353bb0 60%,#07353b30); }
  .hero-content p { font-size:14px; max-width:420px; }
  .quick-links>a { padding:18px 15px; gap:12px; }
  .quick-links strong { font-size:13px; }
  .quick-links small { font-size:7px; }
  .sidebar { width:auto; flex-basis:auto; }
  .sub-layout { padding-top:28px; }
  .sidebar-heading { padding-bottom:13px; }
  .sidebar nav { gap:0; border:1px solid #c4b18a; }
  .sidebar nav a { padding:10px 13px; font-size:12px; }
  .personality-grid { gap:10px; }
  .personality-card { padding:16px; }
}
@media(max-width:680px) {
  .home-overview-grid { grid-template-columns:1fr; padding-top:35px; padding-bottom:35px; gap:35px; }
  .home-defender { border-left:0; padding-left:0; }
  .home-defender-body { grid-template-columns:1fr 42%; min-height:280px; }
  .home-defender-art img { max-height:300px; }
  body { font-size:13px; }
  .container { width:calc(100% - 32px); }
  .site-header { height:73px; }
  .header-inner { width:calc(100% - 28px); gap:11px; }
  .brand strong { font-size:20px; }
  .brand small { font-size:7px; letter-spacing:.25em; }
  .brand-mark { width:28px; }
  .brand-mark .icon { width:27px; height:27px; }
  .mobile-toggle { margin-left:auto; }
  .primary-nav.is-open { background:#faf1df; border-bottom:2px solid #b69b6c; padding:8px 16px 16px; }
  .primary-nav>a { min-height:43px; border-bottom:1px solid #d9c8a8; }
  .primary-nav>a[aria-current]:after { display:none; }
  .hero { height:660px; }
  .hero-content { justify-content:flex-start; padding-top:40px; }
  .hero h1 { font-size:39px; line-height:1.3; margin:19px 0 15px; }
  .hero-content .hero-subtitle { font-size:17px; margin-bottom:12px; }
  .hero-content p { max-width:340px; font-size:13px; text-shadow:0 1px 4px #082c34; }
  .hero-image { object-position:64% center; }
  .hero-shade { background:linear-gradient(180deg,#08363bf2,#08363bbc 47%,#08363b35 84%),linear-gradient(90deg,#09394065,transparent); }
  .hero-knight { width:210px; height:260px; right:2%; bottom:-15px; opacity:1; }
  .hero-actions { gap:9px; margin-top:21px; }
  .hero-actions .button,.hero-text-link { padding:10px 15px; min-height:44px; font-size:12px; gap:8px; }
  .hero-coordinate { bottom:24px; max-width:170px; font-size:8px; }
  .hero-coordinate span:first-child { font-size:10px; }
  .quick-links { grid-template-columns:1fr; }
  .quick-links>a { padding:16px 6px; border-bottom:1px solid #d3c09b; }
  .quick-links>a+a:before { display:none; }
  .quick-links>a:last-child { border-bottom:0; }
  .quick-links strong { font-size:15px; }
  .quick-links small { font-size:8px; }
  .section { padding-top:38px; padding-bottom:38px; }
  .section-heading { gap:10px; padding-bottom:14px; margin-bottom:19px; }
  .section-heading h2 { font-size:23px; }
  .section-heading h2:before { font-size:16px; margin-right:7px; }
  .section-heading .text-link { font-size:11px; gap:6px; }
  .news-grid { grid-template-columns:1fr; gap:20px; }
  .feature-notice { padding:23px; }
  .character-feature-inner { padding-top:34px; }
  .character-copy h2 { font-size:32px; }
  .character-art { min-height:310px; }
  .character-art img { max-height:350px; }
  .mail-banner { margin-bottom:40px; padding:25px; }
  .mail-banner h2 { font-size:24px; }
  .sub-banner { padding:23px 0; }
  .sub-banner h1 { font-size:25px; }
  .sub-banner p { font-size:12px; }
  .sub-layout { padding-bottom:44px; gap:24px; }
  .page-heading h2 { font-size:26px; }
  .page-heading { padding-bottom:19px; margin-bottom:23px; }
  .sidebar nav a { min-height:44px; }
  .tabs { overflow-x:auto; flex-wrap:nowrap; }
  .tabs a { flex-shrink:0; padding:11px 15px; }
  .personality-grid { grid-template-columns:1fr; }
  .personality-card { padding:20px; }
  .personality-card .icon { float:left; margin:2px 14px 30px 0; }
  .article-heading h2 { font-size:24px; }
  .story-quote { font-size:20px; }
  .knight-profile-copy h3 { font-size:27px; }
  .auth-card h2 { font-size:26px; }
  .footer-main { padding-top:29px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }
