:root {
    --hc-ink: #071c17;
    --hc-deep: #03130f;
    --hc-green: #0b5947;
    --hc-mint: #66f2c5;
    --hc-lime: #c6ff36;
    --hc-red: #ef2d24;
    --hc-paper: #f3f5f0;
    --hc-line: rgba(255,255,255,.14);
}

.hc-login-page, .hc-login-page * { box-sizing: border-box; }
.hc-login-page { margin: 0; overflow: hidden; background: var(--hc-paper); color: var(--hc-ink); font-family: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", sans-serif; word-break: keep-all; }
.hc-login-page img { display: block; max-width: 100%; }
.hc-login-page em { color: var(--hc-lime); font-style: normal; }
.hc-eyebrow { margin: 0 0 18px; color: var(--hc-mint); font-size: 12px; font-weight: 800; letter-spacing: .15em; }

.hc-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 420px; align-items: center; min-height: 760px; padding: 70px max(5vw, 32px); overflow: hidden; isolation: isolate; background: var(--hc-deep); color: #fff; }
.hc-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(3,19,15,.98) 0%, rgba(3,19,15,.88) 43%, rgba(3,19,15,.3) 72%, rgba(3,19,15,.7) 100%); }
.hc-hero::after { content: ""; position: absolute; width: 540px; height: 540px; left: 35%; top: -240px; z-index: -1; border: 1px solid rgba(102,242,197,.2); border-radius: 50%; box-shadow: 0 0 120px rgba(102,242,197,.08); }
.hc-hero__visual { position: absolute; inset: 0; z-index: -2; }
.hc-hero__visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(3,19,15,.72), transparent 55%); }
.hc-hero__visual > img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.86) contrast(1.08); opacity: .62; }
.hc-brand { display: flex; align-items: center; gap: 16px; margin-bottom: 78px; }
.hc-brand img { width: 150px; filter: brightness(0) invert(1); }
.hc-brand span { padding-left: 16px; border-left: 1px solid rgba(255,255,255,.25); color: var(--hc-mint); font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.hc-hero__content { position: relative; z-index: 2; max-width: 760px; padding-right: 45px; }
.hc-hero h1 { margin: 0; font-size: clamp(46px, 5vw, 78px); line-height: 1.08; letter-spacing: -.055em; }
.hc-hero__description { margin: 30px 0; color: rgba(255,255,255,.72); font-size: 18px; line-height: 1.75; }
.hc-hero__flow { display: flex; align-items: center; gap: 12px; color: #fff; font-size: 13px; font-weight: 700; }
.hc-hero__flow i { display: block; width: 25px; height: 1px; background: var(--hc-mint); }
.hc-ai-line, .hc-ai-point { position: absolute; z-index: 1; pointer-events: none; }
.hc-ai-line { height: 1px; transform-origin: left center; background: linear-gradient(90deg, transparent, var(--hc-mint), transparent); box-shadow: 0 0 14px var(--hc-mint); }
.hc-ai-line--shoulder { right: 19%; top: 37%; width: 170px; transform: rotate(-18deg); }
.hc-ai-line--body { right: 23%; top: 43%; width: 190px; transform: rotate(72deg); }
.hc-ai-point { width: 9px; height: 9px; border: 2px solid var(--hc-mint); border-radius: 50%; box-shadow: 0 0 16px var(--hc-mint); animation: hcPulse 1.8s infinite; }
.hc-ai-point--one { right: 29%; top: 36%; }.hc-ai-point--two { right: 20%; top: 41%; animation-delay: .5s; }.hc-ai-point--three { right: 24%; top: 53%; animation-delay: 1s; }

.hc-login-card { position: relative; z-index: 4; padding: 34px; border: 1px solid rgba(255,255,255,.15); border-radius: 28px; background: rgba(5,28,23,.88); box-shadow: 0 30px 80px rgba(0,0,0,.35); backdrop-filter: blur(18px); }
.hc-login-card__heading { display: flex; gap: 13px; margin-bottom: 26px; }
.hc-login-card__heading strong { display: block; font-size: 21px; }
.hc-login-card__heading p { margin: 7px 0 0; color: rgba(255,255,255,.56); font-size: 13px; line-height: 1.55; }
.hc-status-dot { flex: 0 0 auto; width: 10px; height: 10px; margin-top: 6px; border-radius: 50%; background: var(--hc-lime); box-shadow: 0 0 15px var(--hc-lime); }
.hc-login-card label { display: block; margin: 16px 0 8px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 700; }
.hc-input { width: 100%; height: 56px; padding: 0 17px; border: 1px solid rgba(255,255,255,.15); border-radius: 13px; outline: 0; background: rgba(255,255,255,.07); color: #fff; font-size: 15px; transition: .2s ease; }
.hc-input::placeholder { color: rgba(255,255,255,.36); }.hc-input:focus { border-color: var(--hc-mint); box-shadow: 0 0 0 3px rgba(102,242,197,.12); }
.hc-login-button { width: 100%; height: 58px; margin-top: 22px; border: 0; border-radius: 14px; cursor: pointer; background: var(--hc-red); color: #fff; font-size: 16px; font-weight: 800; box-shadow: 0 14px 30px rgba(239,45,36,.26); }
.hc-account-links { display: flex; justify-content: center; align-items: center; gap: 16px; margin: 20px 0 24px; }
.hc-account-links a { color: rgba(255,255,255,.68); font-size: 13px; text-decoration: none; }.hc-account-links span { width: 1px; height: 12px; background: rgba(255,255,255,.2); }
.hc-install-container { padding-top: 22px; border-top: 1px solid var(--hc-line); }
.hc-install-button { display: flex; align-items: center; gap: 12px; width: 100%; padding: 12px 15px; border: 1px solid rgba(255,255,255,.13); border-radius: 14px; cursor: pointer; background: transparent; color: #fff; text-align: left; }
.hc-install-button img { width: 38px; height: 38px; border-radius: 9px; }.hc-install-button span { font-size: 11px; line-height: 1.45; color: rgba(255,255,255,.5); }.hc-install-button b { display: block; color: #fff; font-size: 14px; }
.hc-install-container > p { margin: 12px 0 0; color: rgba(255,255,255,.4); font-size: 11px; line-height: 1.5; text-align: center; }

.hc-section { max-width: 1240px; margin: 0 auto; padding: 120px 32px; }
.hc-section__heading { max-width: 740px; margin-bottom: 55px; }.hc-section__heading .hc-eyebrow, .hc-report-copy .hc-eyebrow, .hc-price-card .hc-eyebrow, .hc-location-card .hc-eyebrow, .hc-contact-section .hc-eyebrow { color: var(--hc-green); }
.hc-section h2 { margin: 0; font-size: clamp(38px, 4.3vw, 62px); line-height: 1.13; letter-spacing: -.05em; }.hc-section__heading > p:last-child { margin: 22px 0 0; color: #68736f; font-size: 17px; line-height: 1.8; }
.hc-coaching-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.hc-coaching-card { position: relative; min-height: 270px; padding: 30px; border-radius: 22px; background: #fff; box-shadow: 0 16px 45px rgba(10,41,33,.07); }
.hc-coaching-card--accent { background: var(--hc-green); color: #fff; }.hc-card-number { position: absolute; right: 24px; top: 24px; color: #a9b4af; font-size: 12px; font-weight: 800; }.hc-coaching-card--accent .hc-card-number { color: var(--hc-mint); }
.hc-card-icon { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 38px; border: 1px solid #d8e0dc; border-radius: 50%; color: var(--hc-green); font-size: 12px; font-weight: 900; }.hc-coaching-card--accent .hc-card-icon { border-color: rgba(255,255,255,.25); color: var(--hc-lime); }
.hc-coaching-card h3 { margin: 0 0 13px; font-size: 20px; }.hc-coaching-card p { margin: 0; color: #74807b; font-size: 14px; line-height: 1.7; }.hc-coaching-card--accent p { color: rgba(255,255,255,.65); }

.hc-report-section { display: grid; grid-template-columns: 420px minmax(0, 1fr); gap: clamp(55px, 8vw, 120px); align-items: center; max-width: none; padding-left: max(6vw, 32px); padding-right: max(6vw, 32px); background: var(--hc-deep); color: #fff; }
.hc-report-phone { position: relative; width: 100%; max-width: 390px; margin: auto; padding: 32px 22px 28px; border: 1px solid rgba(255,255,255,.16); border-radius: 42px; background: #0a241d; box-shadow: 0 35px 100px rgba(0,0,0,.4); transform: rotate(-2deg); }
.hc-phone-speaker { width: 70px; height: 5px; margin: -15px auto 28px; border-radius: 9px; background: rgba(255,255,255,.25); }
.hc-report-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 19px; }.hc-report-brand > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--hc-red); color: #fff; font-weight: 900; }.hc-report-brand b, .hc-report-brand small { display: block; }.hc-report-brand b { font-size: 12px; }.hc-report-brand small { margin-top: 3px; color: var(--hc-red); font-size: 8px; }
.hc-report-cover { position: relative; overflow: hidden; border-radius: 16px; }.hc-report-cover img { width: 100%; height: 230px; object-fit: cover; }.hc-report-cover span { position: absolute; left: 14px; bottom: 14px; padding: 7px 10px; border-radius: 20px; background: var(--hc-red); font-size: 9px; font-weight: 900; }
.hc-report-summary { padding: 24px 4px 5px; }.hc-report-summary p { margin: 0 0 8px; color: var(--hc-lime); font-size: 12px; font-weight: 800; }.hc-report-summary strong { font-size: 23px; line-height: 1.35; }.hc-report-bars { display: flex; align-items: end; gap: 7px; height: 58px; margin-top: 22px; }.hc-report-bars i { flex: 1; height: 38%; border-radius: 5px 5px 0 0; background: rgba(102,242,197,.35); }.hc-report-bars i:nth-child(2) { height: 95%; background: var(--hc-mint); }.hc-report-bars i:nth-child(3) { height: 65%; background: var(--hc-lime); }
.hc-report-copy { max-width: 670px; }.hc-report-copy h2 em { color: var(--hc-lime); }.hc-report-copy > p:not(.hc-eyebrow) { margin: 28px 0 35px; color: rgba(255,255,255,.66); font-size: 17px; line-height: 1.85; }
.hc-report-copy ul { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 36px; padding: 0; list-style: none; }.hc-report-copy li { padding: 17px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; }.hc-report-copy li b, .hc-report-copy li span { display: block; }.hc-report-copy li b { margin-bottom: 6px; color: var(--hc-mint); }.hc-report-copy li span { color: rgba(255,255,255,.55); font-size: 12px; }
.hc-outline-button { display: inline-block; padding: 16px 24px; border: 1px solid var(--hc-mint); border-radius: 99px; color: #fff; font-size: 14px; font-weight: 800; text-decoration: none; }

.hc-facility-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items: center; }.hc-facility-image { margin: 0; overflow: hidden; border-radius: 30px; }.hc-facility-image img { width: 100%; height: 560px; object-fit: cover; transition: transform .8s ease; }.hc-facility-image:hover img { transform: scale(1.035); }
.hc-facility-features { display: grid; gap: 10px; }.hc-facility-features article { display: flex; align-items: center; gap: 21px; padding: 22px 0; border-bottom: 1px solid #d8dedb; }.hc-facility-features article > span { display: grid; place-items: center; flex: 0 0 58px; height: 58px; border-radius: 50%; background: var(--hc-ink); color: var(--hc-lime); font-size: 11px; font-weight: 900; }.hc-facility-features h3 { margin: 0 0 7px; font-size: 18px; }.hc-facility-features p { margin: 0; color: #74807b; font-size: 13px; line-height: 1.6; }

.hc-how-section { max-width: none; background: #e7ebe5; }.hc-how-section > * { max-width: 1176px; margin-left: auto; margin-right: auto; }.hc-steps { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; margin-top: 0; padding: 0; list-style: none; }.hc-steps li { position: relative; min-height: 150px; padding: 24px 17px; border-radius: 17px; background: #fff; }.hc-steps li:not(:last-child)::after { content: ""; position: absolute; right: -8px; top: 50%; z-index: 2; width: 16px; height: 2px; background: var(--hc-mint); }.hc-steps b { display: block; margin-bottom: 42px; color: var(--hc-red); font-size: 12px; }.hc-steps span { font-size: 14px; font-weight: 800; }

.hc-pricing-location { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }.hc-price-card, .hc-location-card { padding: 42px; border-radius: 26px; background: #fff; box-shadow: 0 15px 50px rgba(10,41,33,.08); }.hc-price-card h2, .hc-location-card h2 { margin-bottom: 32px; font-size: 35px; }.hc-price-card > div { display: flex; justify-content: space-between; padding: 18px 0; border-bottom: 1px solid #e3e8e5; }.hc-price-card > div b { color: var(--hc-green); }.hc-price-note { margin: 22px 0 0; color: var(--hc-red); font-size: 12px; font-weight: 700; }
.hc-map-link { position: relative; display: block; overflow: hidden; margin-bottom: 22px; border-radius: 16px; }.hc-map-link img { width: 100%; height: 180px; object-fit: cover; }.hc-map-link span { position: absolute; right: 12px; bottom: 12px; padding: 9px 13px; border-radius: 50px; background: var(--hc-ink); color: #fff; font-size: 11px; }.hc-location-card > p:not(.hc-eyebrow) { margin: 0 0 8px; font-weight: 700; }.hc-location-card small { color: #7b8581; }

.hc-contact-section { display: grid; grid-template-columns: .75fr 1.25fr; gap: 50px; align-items: start; max-width: none; background: var(--hc-ink); color: #fff; }.hc-contact-section > div { padding-top: 25px; }.hc-chat-frame { overflow: hidden; border-radius: 24px; background: #fff; }.hc-page-footer { padding: 50px 32px; background: var(--hc-deep); color: rgba(255,255,255,.48); text-align: center; }.hc-page-footer img { width: 85px; margin: 0 auto 19px; filter: brightness(0) invert(1); opacity: .9; }.hc-page-footer p { margin: 5px 0; font-size: 11px; }

@keyframes hcPulse { 0%,100% { transform: scale(1); opacity: .65; } 50% { transform: scale(1.8); opacity: 1; } }

@media (max-width: 980px) {
    .hc-hero { grid-template-columns: 1fr; padding-top: 44px; }
    .hc-hero__content { padding-right: 0; }.hc-brand { margin-bottom: 55px; }.hc-login-card { width: 100%; max-width: 520px; margin-top: 50px; }
    .hc-coaching-grid { grid-template-columns: 1fr 1fr; }.hc-report-section { grid-template-columns: 350px 1fr; gap: 45px; }
    .hc-facility-grid { grid-template-columns: 1fr; }.hc-facility-image img { height: 450px; }
    .hc-steps { grid-template-columns: repeat(3, 1fr); }.hc-steps li:nth-child(3)::after { display: none; }
}

@media (max-width: 720px) {
    .hc-desktop-only { display: none; }.hc-hero { min-height: auto; padding: 30px 20px 65px; }.hc-hero::before { background: linear-gradient(0deg, rgba(3,19,15,.99) 15%, rgba(3,19,15,.72) 100%); }.hc-hero__visual > img { object-position: center top; }
    .hc-brand { margin-bottom: 105px; }.hc-brand img { width: 120px; }.hc-brand span { font-size: 9px; }.hc-hero h1 { font-size: 43px; }.hc-hero__description { font-size: 15px; }.hc-hero__flow { flex-wrap: wrap; gap: 8px; }.hc-hero__flow i { width: 13px; }
    .hc-login-card { padding: 25px 20px; border-radius: 22px; }.hc-section { padding: 80px 20px; }.hc-section h2 { font-size: 38px; }
    .hc-coaching-grid, .hc-report-section, .hc-pricing-location, .hc-contact-section { grid-template-columns: 1fr; }.hc-coaching-card { min-height: 230px; }
    .hc-report-phone { max-width: 330px; }.hc-report-copy { text-align: left; }.hc-report-copy ul { grid-template-columns: 1fr; }.hc-report-section { padding-top: 85px; padding-bottom: 85px; }
    .hc-facility-image img { height: 330px; }.hc-steps { grid-template-columns: 1fr 1fr; }.hc-steps li:nth-child(3)::after { display: block; }.hc-steps li:nth-child(2n)::after { display: none; }
    .hc-price-card, .hc-location-card { padding: 30px 23px; }.hc-contact-section { gap: 25px; }.hc-chat-frame iframe { height: 520px; }
}

@media (prefers-reduced-motion: reduce) {
    .hc-login-page *, .hc-login-page *::before, .hc-login-page *::after { animation: none !important; transition: none !important; }
}

/* HiddenCourt identity and revised page hierarchy */
:root { --hc-ink:#111114; --hc-deep:#08080a; --hc-green:#5c438f; --hc-mint:#f2382f; --hc-lime:#a987ff; --hc-red:#f2382f; --hc-paper:#f1f1f3; }
.hc-login-first { display:grid; grid-template-columns:minmax(0,1fr) 410px; gap:70px; align-items:center; min-height:680px; padding:70px max(7vw,32px); background:radial-gradient(circle at 18% 30%,rgba(111,82,168,.24),transparent 36%),#09090b; color:#fff; }
.hc-login-intro { max-width:650px; }
.hc-original-logo { width:270px; height:auto; margin-bottom:55px; object-fit:contain; }
.hc-login-intro>p:first-of-type { margin:0 0 18px; color:var(--hc-red); font-size:12px; font-weight:900; letter-spacing:.15em; }
.hc-login-intro h1 { margin:0; font-size:clamp(42px,5vw,70px); line-height:1.1; letter-spacing:-.055em; }
.hc-login-intro h1 em { color:#fff; }
.hc-login-intro__description { margin:25px 0 0; color:rgba(255,255,255,.6); font-size:17px; }
.hc-login-first .hc-login-card { width:100%; padding:30px; border-color:rgba(255,255,255,.12); border-radius:22px; background:#171719; }
.hc-login-first .hc-login-button { background:linear-gradient(135deg,#ff453b,#c6110b); }
.hc-promo-hero { position:relative; min-height:650px; padding:110px max(7vw,32px); overflow:hidden; isolation:isolate; background:#08080a; color:#fff; }
.hc-promo-hero::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(3,3,5,.98),rgba(3,3,5,.78) 52%,rgba(3,3,5,.28)); }
.hc-promo-hero__visual { position:absolute; inset:0; z-index:-2; }
.hc-promo-hero__visual>img { width:100%; height:100%; object-fit:cover; filter:saturate(.9) contrast(1.15); }
.hc-promo-hero__content { max-width:800px; }
.hc-promo-hero h2 { margin:0; color:#fff; font-size:clamp(48px,6vw,82px); line-height:1.06; letter-spacing:-.06em; }
.hc-promo-hero h2 em { color:var(--hc-red); }
.hc-promo-hero__content>p:not(.hc-eyebrow) { max-width:650px; margin:28px 0; color:rgba(255,255,255,.7); font-size:18px; line-height:1.75; }
.hc-coaching-card { min-height:210px; padding:24px; border-radius:18px; }
.hc-coaching-card--accent { background:#6f52a8; }
.hc-card-number { right:20px; top:20px; }
.hc-card-icon { width:50px; height:50px; margin-bottom:25px; color:var(--hc-red); font-size:10px; }
.hc-report-section { background:#0c0c0f; }
.hc-report-phone { background:#17141e; border-color:rgba(169,135,255,.28); }
.hc-report-cover video { display:block; width:100%; height:300px; object-fit:cover; }
.hc-report-bars i:nth-child(2) { background:var(--hc-red); }
.hc-report-bars i:nth-child(3) { background:var(--hc-lime); }
.hc-facility-image { position:relative; background:#111; }
.hc-facility-image figcaption { position:absolute; left:20px; right:20px; bottom:20px; padding:15px 18px; border-radius:12px; background:rgba(8,8,10,.84); color:#fff; font-size:13px; font-weight:700; }
.hc-sale-banner { position:relative; display:block!important; overflow:hidden; margin:28px -18px -18px; padding:28px!important; border:0!important; border-radius:18px; background:linear-gradient(125deg,#f2382f 0%,#c5120b 58%,#6f52a8 100%); color:#fff; box-shadow:0 18px 40px rgba(242,56,47,.25); }
.hc-sale-banner::after { content:"50%"; position:absolute; right:-8px; bottom:-28px; color:rgba(255,255,255,.13); font-size:92px; font-weight:900; }
.hc-sale-banner>span { display:inline-block; margin-bottom:13px; padding:5px 9px; border-radius:30px; background:#09090b; color:#fff; font-size:9px; font-weight:900; letter-spacing:.12em; }
.hc-sale-banner strong { position:relative; z-index:1; display:block; font-size:24px; line-height:1.25; }
.hc-sale-banner strong em { color:#fff; font-size:34px; }
.hc-sale-banner p { position:relative; z-index:1; margin:12px 0 0; font-size:13px; font-weight:800; }
.hc-contact-section { background:#111114; }
.hc-page-footer { background:#08080a; }
.hc-page-footer img { width:210px; height:auto; margin:0 auto 19px; object-fit:contain; filter:none; opacity:1; }

@media (max-width:980px) {
    .hc-login-first { grid-template-columns:1fr; gap:45px; }
    .hc-login-first .hc-login-card { max-width:520px; margin-top:0; }
}

@media (max-width:720px) {
    .hc-login-first { min-height:auto; padding:45px 20px 60px; }
    .hc-original-logo { width:220px; margin-bottom:45px; }
    .hc-login-intro h1 { font-size:40px; }
    .hc-login-intro__description { font-size:14px; }
    .hc-promo-hero { min-height:590px; padding:85px 20px; }
    .hc-promo-hero h2 { font-size:45px; }
    .hc-promo-hero__content>p:not(.hc-eyebrow) { font-size:15px; }
    .hc-coaching-card { min-height:185px; }
    .hc-report-cover video { height:260px; }
    .hc-page-footer img { width:185px; }
}

/* Layout containment for Gnuboard theme wrappers */
.hc-login-page { width:100%; max-width:100%; min-width:0; }
.hc-login-page section, .hc-login-page article, .hc-login-page div, .hc-login-page form { min-width:0; }
.hc-login-page h1, .hc-login-page h2, .hc-login-page h3, .hc-login-page p, .hc-login-page span, .hc-login-page a { max-width:100%; overflow-wrap:break-word; }
.hc-login-first { grid-template-columns:minmax(0,1fr) minmax(320px,410px); width:100%; max-width:100%; }
.hc-login-intro, .hc-login-card { min-width:0; }
.hc-login-card { overflow:hidden; }
.hc-input, .hc-login-button, .hc-install-button { max-width:100%; }
.hc-install-button span { min-width:0; }
.hc-promo-hero, .hc-section, .hc-report-section, .hc-how-section, .hc-contact-section, .hc-page-footer { width:100%; max-width:100%; }
.hc-coaching-grid, .hc-facility-grid, .hc-pricing-location, .hc-contact-section { min-width:0; }

@media (max-width:1200px) {
    .hc-login-first { grid-template-columns:1fr; gap:36px; min-height:auto; padding:55px clamp(22px,5vw,54px) 65px; }
    .hc-login-intro { max-width:760px; }
    .hc-login-first .hc-login-card { width:100%; max-width:620px; margin:0; }
    .hc-original-logo { width:min(250px,70vw); margin-bottom:38px; }
    .hc-login-intro h1 { font-size:clamp(38px,7vw,62px); }
    .hc-login-intro__description { line-height:1.6; }
}

@media (max-width:560px) {
    .hc-login-first { padding:36px 16px 48px; }
    .hc-original-logo { width:190px; margin-bottom:32px; }
    .hc-login-intro>p:first-of-type { font-size:10px; letter-spacing:.1em; }
    .hc-login-intro h1 { font-size:34px; line-height:1.18; }
    .hc-login-first .hc-login-card { padding:22px 16px; }
    .hc-login-card__heading strong { font-size:19px; }
    .hc-login-card__heading p { font-size:12px; }
    .hc-input { height:52px; font-size:14px; }
    .hc-login-button { height:54px; }
    .hc-account-links { gap:12px; }
    .hc-account-links a { font-size:12px; }
    .hc-install-button { padding:11px; }
    .hc-install-button img { flex:0 0 36px; width:36px; height:36px; }
    .hc-install-container>p { padding:0 6px; overflow-wrap:anywhere; }
    .hc-promo-hero h2 { font-size:38px; }
    .hc-hero__flow { font-size:11px; }
}

/* Final Gnuboard-safe login layout: never use side-by-side columns */
html body .hc-login-page .hc-login-first {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    min-height:0 !important;
    padding:64px 24px 72px !important;
    overflow:hidden !important;
}
html body .hc-login-page .hc-login-intro {
    display:block !important;
    width:100% !important;
    max-width:760px !important;
    min-width:0 !important;
    margin:0 auto 38px !important;
    text-align:center !important;
}
html body .hc-login-page .hc-original-logo {
    display:block !important;
    width:240px !important;
    max-width:72vw !important;
    height:auto !important;
    margin:0 auto 34px !important;
}
html body .hc-login-page .hc-login-intro>p:first-of-type {
    display:block !important;
    width:100% !important;
    margin:0 0 15px !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}
html body .hc-login-page .hc-login-intro h1 {
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    white-space:normal !important;
    word-break:keep-all !important;
    overflow-wrap:normal !important;
    font-size:clamp(38px,6vw,64px) !important;
    line-height:1.18 !important;
}
html body .hc-login-page .hc-login-intro__description {
    display:block !important;
    width:100% !important;
    margin:22px 0 0 !important;
    white-space:normal !important;
    word-break:keep-all !important;
}
html body .hc-login-page .hc-login-first .hc-login-card {
    display:block !important;
    width:100% !important;
    max-width:520px !important;
    min-width:0 !important;
    margin:0 auto !important;
}
html body .hc-login-page .hc-login-card form,
html body .hc-login-page .hc-login-card label,
html body .hc-login-page .hc-login-card input,
html body .hc-login-page .hc-login-card button,
html body .hc-login-page .hc-login-card .hc-install-container {
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
}

@media (max-width:560px) {
    html body .hc-login-page .hc-login-first { padding:38px 14px 52px !important; }
    html body .hc-login-page .hc-login-intro { margin-bottom:28px !important; }
    html body .hc-login-page .hc-original-logo { width:190px !important; margin-bottom:28px !important; }
    html body .hc-login-page .hc-login-intro h1 { font-size:34px !important; }
    html body .hc-login-page .hc-login-first .hc-login-card { padding:21px 16px !important; }
}