:root {
    --m-bg: #f6f7f5;
    --m-surface: #ffffff;
    --m-ink: #18212c;
    --m-navy: #1b2531;
    --m-navy-2: #111820;
    --m-gold: #d3b47f;
    --m-line: rgba(24,33,44,.13);
    --m-muted: #616b76;
    --m-radius: 14px;
    --reen-gold-gradient: #d3b47f;
    --reen-gold-gradient-subtle: rgba(211,180,127,.1);
}

body { background: var(--m-bg); color: var(--m-ink); font-family: "Noto Sans KR","Apple SD Gothic Neo",sans-serif; }
.reen-container { width: min(calc(100% - 56px),1280px); }

/* Dark, minimal navigation */
.site-header { background: rgba(17,24,32,.9); border-color: rgba(255,255,255,.11); backdrop-filter: blur(18px); }
.header-container { min-height: 76px; }
.site-branding img { height: 43px; filter: brightness(0) invert(1); }
.nav-menu a { color: rgba(255,255,255,.82); font-size: 13px; font-weight: 500; }
.nav-menu a::after { background: var(--m-gold); }
.header-cta { min-height: 40px; border-color: rgba(255,255,255,.42); color: #fff; font-weight: 600; }
.header-cta:hover, .header-cta:focus-visible { border-color: var(--m-gold); background: var(--m-gold); color: var(--m-navy-2); }
.menu-toggle span:not(.screen-reader-text) { background: #fff; }

/* Full-bleed, image-led hero */
.hero { min-height: 0; padding: 124px 0 0; isolation: isolate; background: var(--m-navy-2) url("../images/reen-hero-brand.webp") 64% center/cover no-repeat; color: #fff; }
.hero::before { display: block; inset: 0; z-index: -1; height: auto; background: linear-gradient(90deg,rgba(9,14,20,.94) 0%,rgba(9,14,20,.84) 44%,rgba(9,14,20,.28) 76%,rgba(9,14,20,.18) 100%); }
.hero::after { display: block; content: ""; position: absolute; inset: auto 0 0; height: 180px; z-index: -1; background: linear-gradient(transparent,rgba(9,14,20,.58)); }
.hero .reen-container { position: relative; z-index: 1; }
.hero-layout { min-height: 650px; display: block; }
.hero-copy { max-width: 830px; padding: 82px 0 72px; }
.hero-kicker { margin-bottom: 22px; color: var(--m-gold); font-family: var(--reen-latin); font-size: 14px; font-weight: 600; letter-spacing: .2em; }
.hero h1 { max-width: 820px; color: #fff; font-family: "Noto Sans KR",sans-serif; font-size: clamp(46px,4.25vw,65px); font-weight: 600; letter-spacing: -.045em; line-height: 1.18; text-wrap: balance; }
.hero h1 em { color: var(--m-gold); font-style: normal; }
.hero-subtitle { max-width: 650px; margin-top: 29px; color: rgba(255,255,255,.72); font-family: "Noto Sans KR",sans-serif; font-size: 17px; font-weight: 400; line-height: 1.7; }
.hero-actions { margin-top: 38px; gap: 26px; }
.hero-primary { min-height: 54px; padding: 0 25px; border-radius: 3px; background: #fff; color: var(--m-navy-2); font-size: 13px; font-weight: 700; }
.hero-primary::after { color: var(--m-navy-2); }
.hero-primary:hover, .hero-primary:focus-visible { background: var(--m-gold); }
.hero-secondary { color: rgba(255,255,255,.82); font-size: 13px; font-weight: 500; }
.hero-secondary span { color: var(--m-gold); }
.hero-mark { display: none; }
.hero-lower { grid-template-columns: 1.25fr .75fr; gap: 0; margin: 0; border-top: 1px solid rgba(255,255,255,.16); background: rgba(10,15,21,.62); backdrop-filter: blur(12px); }
.hero-body { padding: 28px 32px; color: rgba(255,255,255,.6); font-size: 12px; line-height: 1.85; }
.hero-proof { border-left: 1px solid rgba(255,255,255,.13); }
.hero-proof div, .hero-proof div:first-child { padding: 23px 18px; }
.hero-proof strong { color: #fff; font-family: "Noto Sans KR",sans-serif; font-size: 24px; font-weight: 600; letter-spacing: -.03em; }
.hero-proof span { margin-top: 5px; color: rgba(255,255,255,.46); }

/* Sans-first editorial system */
.section { padding: 108px 0; }
.section-header { grid-template-columns: 70px minmax(0,1fr); column-gap: 28px; max-width: 1080px; }
.section-number { color: var(--m-muted); font-family: "Noto Sans KR",sans-serif; font-size: 12px; font-weight: 600; letter-spacing: .08em; }
.section-number::after { width: 32px; margin-top: 14px; }
.section-kicker { margin-bottom: 14px; color: #9a7645; font-size: 12px; letter-spacing: .18em; }
.section h2, .cta-section h2 { max-width: 940px; color: var(--m-ink); font-family: "Noto Sans KR",sans-serif; font-size: clamp(38px,3.6vw,52px); font-weight: 600; letter-spacing: -.045em; line-height: 1.25; text-wrap: balance; }
.section-lead { max-width: 800px; margin-top: 22px; color: var(--m-muted); font-size: 15px; line-height: 1.78; }

/* Comparison: crisp data, minimal decoration */
.comparison-section { background: var(--m-bg); }
.comparison-grid { margin: 54px 0 0 98px; gap: 22px; border: 0; }
.comparison-card { padding: 42px 42px 34px; border: 1px solid var(--m-line); border-radius: var(--m-radius); }
.comparison-card.muted { background: var(--m-surface); color: var(--m-ink); }
.comparison-card.reen { margin: 0; background: var(--m-navy); border-color: var(--m-navy); border-radius: var(--m-radius); box-shadow: none; }
.comparison-label { color: #8a939d; font-size: 11px; }
.comparison-card.reen .comparison-label { color: var(--m-gold); }
.comparison-card h3 { font-family: "Noto Sans KR",sans-serif; font-size: 24px; font-weight: 600; letter-spacing: -.035em; }
.comparison-list { margin-top: 28px; }
.comparison-list li { padding: 19px 0; border-color: var(--m-line); }
.comparison-list li::before { display: none; }
.comparison-list strong { font-size: 14px; font-weight: 600; }
.comparison-list span { color: #707b86; font-size: 12px; }
.comparison-card.reen .comparison-list span { color: rgba(255,255,255,.53); }

/* Cost: reads like a modern quote, not a paper receipt */
.cost-section { background: var(--m-surface); }
.warning-line { margin: 32px 0 0 98px; color: #b05242; font-size: 12px; }
.warning-line::before { border-radius: 50%; }
.cost-receipt { max-width: 1040px; margin: 38px 0 0 98px; overflow: hidden; background: var(--m-bg); border: 1px solid var(--m-line); border-radius: var(--m-radius); box-shadow: none; }
.cost-row { padding: 32px 36px; }
.cost-row.reen { padding: 32px 36px; background: var(--m-navy); }
.cost-row h3 { font-family: "Noto Sans KR",sans-serif; font-size: 19px; font-weight: 600; }
.cost-row p { font-size: 12px; }
.cost-total { font-family: "Noto Sans KR",sans-serif; font-size: 21px; font-weight: 600; letter-spacing: -.03em; }
.cost-row.reen .cost-total { color: var(--m-gold); }

/* Space: large, real-media-ready carousel */
.space-section { background: var(--m-navy-2); }
.space-section::before { display: none; }
.space-section .section-number { color: rgba(255,255,255,.48); }
.space-section .section-kicker { color: var(--m-gold); }
.space-section h2 { color: #fff; }
.space-section .section-lead { color: rgba(255,255,255,.6); }
.gallery { margin: 48px 0 0 98px; }
.gallery-track { grid-auto-columns: minmax(76%,1fr); gap: 16px; }
.gallery-slide, .gallery-placeholder { min-height: 500px; border-radius: var(--m-radius); }
.gallery-slide img { height: 500px; min-height: 500px; }
.gallery-placeholder { background: linear-gradient(145deg,#253242,#151e28); }
.gallery-placeholder::before { inset: 18px; border-radius: 8px; }
.gallery-placeholder::after { right: 32px; top: 18px; font-size: 72px; }
.gallery-caption { padding: 90px 34px 28px; font-family: "Noto Sans KR",sans-serif; font-size: 17px; font-weight: 500; }
.gallery-button { border-radius: 50%; }

/* Proof */
.proof-section { background: var(--m-bg); }
.proof-layout { gap: 72px; }
.proof-layout .section-header { grid-template-columns: 70px minmax(0,1fr); }
.proof-points { margin-left: 98px; }
.proof-points strong { color: var(--m-ink); font-family: "Noto Sans KR",sans-serif; font-size: 15px; font-weight: 600; }
.proof-layout > div:first-child > .section-lead:last-child { margin-left: 98px; }
.excel-proof { min-height: 510px; border-radius: var(--m-radius); background: var(--m-navy); box-shadow: none; }
.excel-proof::before { border-radius: 8px; }
.excel-overlay strong { font-family: "Noto Sans KR",sans-serif; font-size: 23px; font-weight: 600; }

/* Inquiry: product-like, cleaner and younger */
.cta-section { padding: 108px 0 96px; background: #eff1f2; }
.cta-intro { gap: 72px; }
.cta-intro > div:first-child { grid-template-columns: 70px minmax(0,1fr); column-gap: 28px; }
.cta-copy p { color: var(--m-muted); font-size: 14px; line-height: 1.75; }
.inquiry-wrap { margin-top: 58px; overflow: hidden; border-radius: var(--m-radius); background: var(--m-navy); box-shadow: none; }
.inquiry-pitch { padding: 48px; }
.inquiry-pitch h3 { font-family: "Noto Sans KR",sans-serif; font-size: 26px; font-weight: 600; letter-spacing: -.035em; line-height: 1.42; }
.inquiry-form { padding: 48px; }
.field label, .purpose-label { font-size: 10px; }
.purpose-option span { border-radius: 7px; }
.submit-button { border-radius: 7px; background: var(--m-gold); font-size: 13px; }

.floating-cta { border-radius: 7px; background: rgba(17,24,32,.95); color: #fff; border-color: rgba(255,255,255,.13); box-shadow: 0 14px 40px rgba(0,0,0,.2); }
.floating-cta::after { color: var(--m-gold); }
.floating-cta:hover, .floating-cta:focus-visible { background: var(--m-gold); color: var(--m-navy-2); }
.site-footer { background: #0d141c; }

@media (max-width: 1080px) {
    .main-navigation { background: var(--m-navy-2); }
    .nav-menu li { border-color: rgba(255,255,255,.12); }
    .nav-menu a { color: #fff; }
    .hero { background-position: 68% center; }
    .hero-layout { display: block; }
    .hero-copy { max-width: 720px; }
    .hero h1 { font-size: 50px; }
    .hero-lower { grid-template-columns: 1fr; }
    .hero-proof { border-left: 0; }
}

@media (max-width: 720px) {
    .reen-container { width: min(calc(100% - 32px),1280px); }
    .header-container { min-height: 68px; }
    .site-branding img { height: 38px; }
    .main-navigation { inset: 68px 0 0; }
    .admin-bar .main-navigation { top: 114px; }
    .hero { min-height: 0; padding-top: 104px; background-position: 67% center; }
    .hero::before { background: linear-gradient(90deg,rgba(9,14,20,.95),rgba(9,14,20,.78)); }
    .hero-copy { padding: 48px 0 52px; }
    .hero-kicker { margin-bottom: 17px; font-size: 11px; }
    .hero h1 { color: #fff; font-size: 37px; line-height: 1.24; }
    .hero h1 br { display: none; }
    .hero-subtitle { color: rgba(255,255,255,.7); font-size: 15px; }
    .hero-actions { gap: 14px; }
    .hero-primary { width: 100%; }
    .hero-secondary { color: rgba(255,255,255,.82); }
    .hero-lower { width: calc(100% + 32px); margin-left: -16px; }
    .hero-body { padding: 24px 20px; }
    .hero-proof { grid-template-columns: repeat(3,1fr); }
    .hero-proof div, .hero-proof div:first-child { padding: 18px 10px; }
    .hero-proof strong { font-size: 22px; }
    .section { padding: 78px 0; }
    .section-header, .proof-layout .section-header { display: block; }
    .section h2, .cta-section h2 { font-size: 32px; line-height: 1.3; }
    .section-lead { font-size: 14px; }
    .comparison-grid { margin: 34px 0 0; gap: 12px; }
    .comparison-card { padding: 30px 25px 24px; border-radius: 10px; }
    .comparison-card h3 { font-size: 21px; }
    .warning-line, .cost-receipt { margin-left: 0; }
    .cost-receipt { border-radius: 10px; }
    .cost-row, .cost-row.reen { padding: 27px 22px; }
    .gallery { margin: 34px 0 0; }
    .gallery-track { grid-auto-columns: 92%; }
    .gallery-slide, .gallery-placeholder { min-height: 400px; border-radius: 10px; }
    .gallery-slide img { height: 400px; min-height: 400px; }
    .proof-points, .proof-layout > div:first-child > .section-lead:last-child { margin-left: 0; }
    .excel-proof { border-radius: 10px; }
    .cta-section { padding: 78px 0 70px; }
    .cta-intro > div:first-child { display: block; }
    .inquiry-wrap { border-radius: 10px; }
    .inquiry-pitch, .inquiry-form { padding: 32px 24px; }
    .inquiry-pitch h3 { font-size: 24px; }
    .floating-cta { left: 12px; right: 12px; bottom: 12px; background: var(--m-gold); color: var(--m-navy-2); }
}

/* V3 live template mapping — clean, contemporary work-space direction */
h1, h2, h3, h4, h5, h6,
.hero-title, .section-title, .point-title, .contrast-title,
.banner-heading, .ledger-title, .slide-title, .why-title,
.proof-header h3, .form-title {
    font-family: "Noto Sans KR", "Apple SD Gothic Neo", sans-serif;
}

.site-header,
.header-cta,
.btn-gold-hero,
.btn-glass-hero,
.hero-metrics-bar,
.point-card,
.contrast-card,
.difference-banner,
.cost-trap-box,
.cost-ledger-card,
.space-slide,
.proof-box,
.vip-form-box,
.floating-cta-btn {
    border-radius: 10px;
}

.site-header { border-radius: 0; }
.header-cta { background: transparent; border: 1px solid rgba(255,255,255,.32); box-shadow: none; }
.header-cta:hover { background: #fff; border-color: #fff; box-shadow: none; transform: none; }

.hero-section {
    min-height: 880px;
    justify-content: flex-start;
    padding: 162px 0 56px;
    background: #0a1017;
}
.hero-bg-img { filter: brightness(.7) saturate(.82) contrast(1.06); animation: none; transform: scale(1.015); }
.hero-overlay {
    background:
        linear-gradient(90deg, rgba(7,12,18,.96) 0%, rgba(7,12,18,.88) 46%, rgba(7,12,18,.35) 76%, rgba(7,12,18,.25) 100%),
        linear-gradient(180deg, rgba(7,12,18,.38) 0%, transparent 52%, rgba(7,12,18,.94) 100%);
}
.hero-container {
    align-items: flex-start;
    max-width: 1280px;
    text-align: left;
}
.hero-badge-wrap { margin-bottom: 28px; }
.hero-badge {
    gap: 12px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
}
.badge-dot { width: 7px; height: 7px; animation: none; box-shadow: 0 0 0 5px rgba(211,180,127,.12); }
.badge-text { color: rgba(255,255,255,.72); font-size: 12px; font-weight: 600; letter-spacing: .08em; }
.hero-title {
    max-width: 870px;
    margin-bottom: 25px;
    font-size: clamp(45px,4.2vw,64px);
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -.052em;
    text-shadow: none;
}
.hero-title .gold-gradient { background: none; color: var(--m-gold); -webkit-text-fill-color: currentColor; }
.hero-sublead {
    max-width: 690px;
    margin-bottom: 36px;
    color: rgba(255,255,255,.68);
    font-size: 16px;
    line-height: 1.76;
    text-shadow: none;
}
.hero-cta-group { justify-content: flex-start; margin-bottom: 54px; gap: 12px; }
.btn-gold-hero, .btn-glass-hero { min-height: 54px; padding: 0 24px; }
.btn-gold-hero { background: #fff; color: #101720; box-shadow: none; }
.btn-gold-hero:hover { background: var(--m-gold); box-shadow: none; transform: translateY(-2px); }
.btn-glass-hero { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.2); backdrop-filter: blur(10px); }
.hero-metrics-bar {
    max-width: 980px;
    padding: 22px 28px;
    background: rgba(12,18,26,.64);
    border-color: rgba(255,255,255,.14);
    box-shadow: none;
    backdrop-filter: blur(18px);
}
.hero-metric-item { padding: 0 18px; text-align: left; }
.hero-metric-item:first-child { padding-left: 0; }
.hero-metric-item .metric-num { color: #fff; font-size: 29px; font-weight: 600; letter-spacing: -.04em; }
.hero-metric-item .metric-label { color: rgba(255,255,255,.84); font-size: 13px; }
.hero-metric-item .metric-desc { color: rgba(255,255,255,.44); font-size: 11px; }
.metric-divider { background: rgba(255,255,255,.14); }

.section-story, .section-cost, .section-proof { background: #f4f5f2; border-color: rgba(20,31,42,.1); }
.section-story, .section-difference, .section-cost, .section-space, .section-proof, .section-inquiry { padding: 110px 0; }
.section-header { max-width: 900px; margin-bottom: 48px; }
.section-header.text-center { text-align: left; }
.section-title {
    color: var(--m-ink);
    font-size: clamp(34px,3.3vw,50px);
    font-weight: 600;
    line-height: 1.26;
    letter-spacing: -.045em;
}
.section-title .gold-gradient { background: none; color: #9a7645; -webkit-text-fill-color: currentColor; }
.section-sublead { max-width: 760px; margin-inline: 0; color: var(--m-muted); font-size: 15px; }

.point-card { background: #fff; border-color: rgba(20,31,42,.11); box-shadow: none; }
.point-card:hover { transform: translateY(-4px); border-color: rgba(154,118,69,.42); box-shadow: 0 18px 45px rgba(17,24,32,.08); }
.point-img-wrap { height: 260px; }
.point-badge { top: 14px; left: 14px; border-radius: 6px; background: rgba(17,24,32,.88); color: #fff; box-shadow: none; }
.point-title { color: var(--m-ink); font-size: 20px; font-weight: 600; letter-spacing: -.025em; }
.point-desc { color: var(--m-muted); }

.section-difference, .section-space, .section-inquiry { background: #111820; }
.section-difference .section-title,
.section-space .section-title,
.section-inquiry .section-title { color: #fff; }
.section-difference .section-sublead,
.section-space .section-sublead,
.section-inquiry .section-sublead { color: rgba(255,255,255,.58); }
.contrast-card { box-shadow: none; }
.contrast-card:hover { transform: none; }
.contrast-title, .banner-heading, .ledger-title, .slide-title, .why-title, .form-title { letter-spacing: -.03em; }
.card-status-badge, .ledger-stamp, .proof-pill, .form-badge { border-radius: 6px; }
.difference-banner { text-align: left; background: #1a2430; }

.cost-ledger-card { background: #fff; border-color: rgba(20,31,42,.13); box-shadow: none; }
.section-cost .section-title, .section-proof .section-title { color: var(--m-ink); }
.section-cost .section-sublead, .section-proof .section-sublead { color: var(--m-muted); }
.cost-trap-box { background: #fff; }

.space-slide { overflow: hidden; }
.slide-content-box { backdrop-filter: blur(12px); }
.proof-box { box-shadow: none; }
.vip-form-box { box-shadow: none; }
.floating-cta-btn { box-shadow: 0 12px 34px rgba(0,0,0,.22); }

@media (max-width: 1080px) {
    .hero-section { min-height: 820px; padding-top: 148px; }
    .hero-title { max-width: 760px; font-size: 52px; }
    .hero-metrics-bar { max-width: 900px; }
}

@media (max-width: 720px) {
    .reen-container { width: min(calc(100% - 32px), 1280px); }
    .hero-section { min-height: auto; padding: 126px 0 42px; }
    .hero-overlay { background: linear-gradient(90deg, rgba(7,12,18,.95), rgba(7,12,18,.7)), linear-gradient(180deg, transparent 48%, rgba(7,12,18,.96)); }
    .hero-title { font-size: 36px; line-height: 1.2; }
    .hero-title br { display: none; }
    .hero-sublead { font-size: 14px; }
    .hero-sublead br { display: none; }
    .hero-cta-group { align-items: stretch; width: 100%; margin-bottom: 38px; }
    .hero-metrics-bar { grid-template-columns: 1fr auto 1fr auto 1fr; gap: 0; padding: 14px 8px; }
    .hero-metric-item, .hero-metric-item:first-child { padding: 4px 7px; text-align: center; }
    .hero-metric-item .metric-num { font-size: 23px; }
    .hero-metric-item .metric-num small { font-size: 12px; }
    .hero-metric-item .metric-label { font-size: 10px; line-height: 1.35; }
    .hero-metric-item .metric-desc { display: none; }
    .metric-divider { width: 1px; height: 42px; }
    .section-story, .section-difference, .section-cost, .section-space, .section-proof, .section-inquiry { padding: 76px 0; }
    .section-header { margin-bottom: 34px; }
    .section-title { font-size: 31px; line-height: 1.3; }
    .section-title br { display: none; }
    .story-points-grid { gap: 14px; }
    .point-img-wrap { height: 220px; }
    .comparison-container { gap: 14px; }
    .difference-banner { padding: 28px 24px; }
}

/* V3.1 — facility editorial and spatial motion */
.site-header.is-scrolled {
    background: rgba(10,16,23,.96);
    border-color: rgba(255,255,255,.08);
    box-shadow: 0 12px 36px rgba(0,0,0,.14);
}

.section-story,
.section-difference,
.section-cost,
.section-space,
.section-proof,
.section-inquiry { scroll-margin-top: 96px; }

.btn-gold-hero:focus-visible,
.btn-glass-hero:focus-visible,
.slider-btn:focus-visible,
.floating-cta-btn:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
}

.hero-bg-img {
    top: -5%;
    height: 110%;
    transform: translate3d(0,var(--hero-shift,0),0) scale(1.04);
    will-change: transform;
}

.facility-showcase {
    display: grid;
    grid-template-columns: minmax(0,1.12fr) minmax(360px,.88fr);
    min-height: 650px;
    margin: 0 0 34px;
    overflow: hidden;
    background: #111a24;
    border: 1px solid rgba(17,24,32,.12);
    border-radius: 14px;
}

.facility-primary-media {
    position: relative;
    min-height: 650px;
    overflow: hidden;
    background: #101720;
}

.facility-primary-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,rgba(8,13,19,.02) 38%,rgba(8,13,19,.88) 100%);
    pointer-events: none;
}

.facility-primary-media img,
.facility-media-pair img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .9s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}

.facility-primary-media:hover img { transform: scale(1.035); }

.facility-primary-media figcaption {
    position: absolute;
    z-index: 2;
    right: 42px;
    bottom: 40px;
    left: 42px;
    color: #fff;
}

.facility-primary-media figcaption span,
.facility-panel-head > span {
    display: block;
    margin-bottom: 12px;
    color: var(--m-gold);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .19em;
}

.facility-primary-media figcaption strong {
    display: block;
    max-width: 600px;
    font-size: clamp(27px,2.5vw,38px);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.04em;
}

.facility-investment-panel {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 38px;
    color: #fff;
}

.facility-panel-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,.13);
}

.facility-panel-head > span { margin: 0; }
.facility-panel-head p { color: rgba(255,255,255,.52); font-size: 11px; }

.facility-scope-list { flex: 1; }

.facility-scope-item {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 14px;
    align-items: start;
    padding: 20px 0;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.scope-index {
    color: var(--m-gold);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
}

.facility-scope-item strong {
    display: block;
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: 600;
}

.facility-scope-item p { color: rgba(255,255,255,.48); font-size: 11px; line-height: 1.55; }

.facility-media-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 24px;
}

.facility-media-pair figure {
    position: relative;
    height: 112px;
    overflow: hidden;
    background: #0d141c;
}

.facility-media-pair figure:hover img { transform: scale(1.07); filter: brightness(.82); }

.facility-media-pair figcaption {
    position: absolute;
    inset: auto 12px 10px;
    color: rgba(255,255,255,.82);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
    text-shadow: 0 2px 8px rgba(0,0,0,.8);
}

.facility-showcase + .cost-trap-box { margin-top: 0; }

/* Immersive, image-first gallery */
.space-slider-wrapper {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    column-gap: 26px;
}

.space-slider { grid-column: 1 / -1; gap: 18px; padding: 4px 0 12px; }

.space-slide {
    flex: 0 0 min(76%, 900px);
    display: grid;
    grid-template-columns: minmax(0,1.55fr) minmax(250px,.45fr);
    min-height: 520px;
    opacity: .58;
    transform: scale(.985);
    transform-origin: left center;
    border-color: rgba(255,255,255,.1);
    background: #17212d;
    transition: opacity .45s ease, transform .55s cubic-bezier(.2,.7,.2,1), border-color .3s ease;
}

.space-slide:hover { transform: scale(.99); }
.space-slide.is-active { opacity: 1; transform: scale(1); border-color: rgba(211,180,127,.38); }
.slide-img-box { height: 100%; min-height: 520px; }
.slide-img-box img { transition-duration: 1s; }
.space-slide.is-active .slide-img-box img { transform: scale(1.025); }
.space-slide:hover .slide-img-box img { transform: scale(1.045); }

.slide-content-box {
    justify-content: flex-end;
    padding: 38px 32px;
    border-left: 1px solid rgba(255,255,255,.08);
}

.slide-title { margin-bottom: 14px; font-size: 23px; line-height: 1.4; }
.slide-desc { margin-top: 0; font-size: 13px; }
.slide-num-pill { border-radius: 6px; }

.slider-controls {
    grid-column: 2;
    grid-row: 2;
    justify-content: flex-end;
    margin-top: 20px;
}

.slider-dots { display: none; }
.slider-btn { border-color: rgba(255,255,255,.18); background: transparent; }

.slider-status {
    grid-column: 1;
    grid-row: 2;
    display: grid;
    grid-template-columns: auto minmax(120px,340px) auto;
    gap: 18px;
    align-items: center;
    margin-top: 20px;
}

.slider-counter { color: rgba(255,255,255,.38); font-size: 11px; letter-spacing: .08em; }
.slider-counter strong { color: #fff; font-size: 18px; font-weight: 600; }
.slider-progress { position: relative; height: 1px; overflow: hidden; background: rgba(255,255,255,.16); }
.slider-progress i { display: block; width: 100%; height: 100%; background: var(--m-gold); transform: scaleX(.1667); transform-origin: left; transition: transform .45s ease; }
.slider-hint { color: rgba(255,255,255,.35); font-size: 9px; letter-spacing: .15em; }

@media (prefers-reduced-motion: no-preference) {
    .motion-ready .reveal-item {
        opacity: 0;
        transform: translate3d(0,34px,0);
        transition: opacity .72s ease var(--reveal-delay,0ms), transform .82s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms);
    }

    .motion-ready .reveal-item.is-revealed { opacity: 1; transform: translate3d(0,0,0); }

    .motion-ready .facility-primary-media.reveal-item {
        clip-path: inset(0 12% 0 0);
        transition: opacity .8s ease, transform .9s cubic-bezier(.2,.7,.2,1), clip-path 1.1s cubic-bezier(.2,.7,.2,1);
    }

    .motion-ready .facility-primary-media.reveal-item.is-revealed { clip-path: inset(0 0 0 0); }

    .motion-ready .hero-badge-wrap,
    .motion-ready .hero-title,
    .motion-ready .hero-sublead,
    .motion-ready .hero-cta-group,
    .motion-ready .hero-metrics-bar {
        opacity: 0;
        animation: heroRise .82s cubic-bezier(.2,.7,.2,1) forwards;
    }

    .motion-ready .hero-title { animation-delay: .08s; }
    .motion-ready .hero-sublead { animation-delay: .16s; }
    .motion-ready .hero-cta-group { animation-delay: .24s; }
    .motion-ready .hero-metrics-bar { animation-delay: .34s; }

    @keyframes heroRise {
        from { opacity: 0; transform: translate3d(0,24px,0); }
        to { opacity: 1; transform: translate3d(0,0,0); }
    }
}

@media (max-width: 980px) {
    .facility-showcase { grid-template-columns: 1fr; }
    .facility-primary-media { min-height: 560px; }
    .facility-investment-panel { padding: 34px; }
    .facility-media-pair figure { height: 150px; }
    .space-slide { flex-basis: 88%; grid-template-columns: 1.35fr .65fr; }
}

@media (max-width: 720px) {
    .hero-bg-img { top: 0; height: 100%; transform: scale(1.04); }
    .facility-showcase { min-height: 0; margin-bottom: 22px; border-radius: 10px; }
    .facility-primary-media { min-height: 400px; }
    .facility-primary-media figcaption { right: 24px; bottom: 176px; left: 24px; }
    .facility-primary-media figcaption strong { font-size: 26px; }
    .facility-investment-panel { padding: 26px 22px; }
    .facility-panel-head { display: block; }
    .facility-panel-head > span { margin-bottom: 8px; }
    .facility-scope-item { grid-template-columns: 32px 1fr; padding: 17px 0; }
    .facility-media-pair { margin-top: 20px; }
    .facility-media-pair figure { height: 108px; }
    .space-slider { gap: 12px; }
    .space-slide { flex: 0 0 92%; display: flex; min-height: 0; }
    .slide-img-box { height: 360px; min-height: 360px; }
    .slide-content-box { min-height: 190px; padding: 26px 22px; border-top: 1px solid rgba(255,255,255,.08); border-left: 0; }
    .slide-title { font-size: 20px; }
    .slider-status { grid-template-columns: auto 1fr; gap: 12px; }
    .slider-hint { display: none; }
    .slider-controls { gap: 8px; }
    .section-story,
    .section-difference,
    .section-cost,
    .section-space,
    .section-proof,
    .section-inquiry { scroll-margin-top: 84px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .hero-bg-img, .space-slide, .slide-img-box img, .facility-primary-media img { transition: none !important; animation: none !important; }
}

/* V3.2 — fixed-copy hero visual slider */
.hero-bg-slide {
    position: absolute;
    top: -5%;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 110%;
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0,var(--hero-shift,0),0) scale(1.035);
    transition: opacity 1.1s ease, transform 7s cubic-bezier(.2,.65,.25,1);
}

.hero-bg-slide.is-active {
    z-index: 1;
    opacity: 1;
    transform: translate3d(0,var(--hero-shift,0),0) scale(1.085);
}

.hero-overlay { z-index: 2; }

.hero-visual-controls {
    position: absolute;
    right: max(28px,calc((100% - 1280px) / 2));
    bottom: 58px;
    z-index: 7;
    display: grid;
    grid-template-columns: auto 112px auto;
    gap: 13px;
    align-items: center;
    color: #fff;
}

.hero-visual-count { color: rgba(255,255,255,.42); font-size: 10px; letter-spacing: .08em; }
.hero-visual-count strong { color: #fff; font-size: 15px; font-weight: 600; }
.hero-visual-progress { display: block; height: 1px; overflow: hidden; background: rgba(255,255,255,.22); }
.hero-visual-progress i { display: block; width: 100%; height: 100%; background: var(--m-gold); transform: scaleX(.3333); transform-origin: left; transition: transform .7s ease; }
.hero-visual-dots { display: flex; gap: 7px; }
.hero-visual-dot { width: 7px; height: 7px; padding: 0; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; background: transparent; cursor: pointer; transition: background .25s ease, border-color .25s ease, transform .25s ease; }
.hero-visual-dot:hover, .hero-visual-dot:focus-visible { border-color: #fff; transform: scale(1.18); outline: none; }
.hero-visual-dot.is-active { border-color: var(--m-gold); background: var(--m-gold); }

/* Financial comparison: dense, legible, decision-first */
.cost-trap-box {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr) auto;
    gap: 20px;
    align-items: center;
    padding: 25px 30px;
    background: #17212d;
    border: 0;
    color: #fff;
}

.trap-icon {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(229,143,130,.55);
    border-radius: 50%;
    color: #ef9a8d;
    font-size: 13px;
    font-weight: 700;
}

.trap-content strong { color: #fff; font-size: 15px; font-weight: 600; }
.trap-content p { max-width: 720px; color: rgba(255,255,255,.54); font-size: 12px; }

.trap-stat {
    min-width: 230px;
    padding-left: 28px;
    border-left: 1px solid rgba(255,255,255,.14);
    text-align: right;
}

.trap-stat span { display: block; margin-bottom: 4px; color: rgba(255,255,255,.46); font-size: 10px; letter-spacing: .08em; }
.trap-stat strong { color: #f1a195; font-size: 24px; font-weight: 600; letter-spacing: -.035em; }
.trap-stat small { margin-left: 3px; font-size: 12px; font-weight: 500; }

.cost-ledger-card {
    padding: 0;
    overflow: hidden;
    border-color: rgba(20,31,42,.12);
}

.ledger-header {
    margin: 0;
    padding: 30px 34px;
    border-bottom: 1px solid rgba(20,31,42,.11);
}

.ledger-title h3 { color: var(--m-ink); font-family: "Noto Sans KR", "Apple SD Gothic Neo", sans-serif; font-size: 25px; font-weight: 600; letter-spacing: -.035em; }
.ledger-stamp { border-radius: 6px; background: #f4eee3; border-color: #d8c4a4; color: #765b32; }
.ledger-table-wrap { margin: 0; overflow: visible; }
.ledger-table { table-layout: fixed; }
.ledger-table th:first-child, .ledger-table td:first-child { width: 25%; }
.ledger-table th:nth-child(2), .ledger-table td:nth-child(2) { width: 34%; }
.ledger-table th:nth-child(3), .ledger-table td:nth-child(3) { width: 41%; }
.ledger-table th, .ledger-table td { padding: 22px 25px; border-color: rgba(20,31,42,.1); }
.ledger-table th { background: #17212d; color: rgba(255,255,255,.58); font-size: 12px; }
.ledger-table th.highlight-col { background: #9b7845; color: #fff; border: 0; }
.ledger-table td { color: var(--m-ink); font-size: 14px; }
.ledger-table td strong { font-weight: 600; }
.ledger-table tbody tr { transition: background .2s ease; }
.ledger-table tbody tr:hover { background: #faf9f6; }
.ledger-table .highlight-col { background: #f1eadf; border-inline: 0; border-left: 1px solid #decdb3; }
.cost-red { color: #c9574e; font-weight: 600; }
.cost-gold { color: #705329; font-weight: 700; }
.ledger-footer { padding: 25px 34px 30px; background: #fff; }
.ledger-footer-note { max-width: 680px; color: #707983; line-height: 1.6; }
.btn-gold-sm { min-height: 44px; padding: 0 20px; border-radius: 7px; background: #17212d; color: #fff; }
.btn-gold-sm:hover { background: #9b7845; }

@media (max-width: 720px) {
    .hero-visual-controls {
        top: 104px;
        right: 16px;
        bottom: auto;
        grid-template-columns: auto 62px auto;
        gap: 9px;
    }
    .hero-bg-slide { top: 0; height: 100%; }
    .hero-bg-slide.is-active { transform: scale(1.065); }
    .cost-trap-box { grid-template-columns: 30px 1fr; gap: 15px; padding: 23px 20px; }
    .trap-stat { grid-column: 1 / -1; min-width: 0; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.13); border-left: 0; text-align: left; }
    .trap-stat strong { font-size: 22px; }
    .cost-ledger-card { border-radius: 10px; }
    .ledger-header { align-items: flex-start; padding: 24px 20px; }
    .ledger-title h3 { font-size: 21px; }
    .ledger-stamp { padding: 6px 9px; font-size: 10px; }
    .ledger-table-wrap { padding: 14px; background: #eef0ed; }
    .ledger-table, .ledger-table tbody { display: block; }
    .ledger-table thead { display: none; }
    .ledger-table tbody tr {
        display: grid;
        margin-bottom: 12px;
        overflow: hidden;
        background: #fff;
        border: 1px solid rgba(20,31,42,.1);
        border-radius: 8px;
    }
    .ledger-table tbody tr:last-child { margin-bottom: 0; }
    .ledger-table th:first-child, .ledger-table td:first-child,
    .ledger-table th:nth-child(2), .ledger-table td:nth-child(2),
    .ledger-table th:nth-child(3), .ledger-table td:nth-child(3) { width: auto; }
    .ledger-table td {
        display: grid;
        grid-template-columns: 82px minmax(0,1fr);
        gap: 10px;
        align-items: start;
        padding: 13px 14px;
        border: 0;
        border-bottom: 1px solid rgba(20,31,42,.08);
        font-size: 12px;
        line-height: 1.55;
    }
    .ledger-table td::before { content: attr(data-label); color: #87909a; font-size: 10px; font-weight: 600; letter-spacing: .04em; }
    .ledger-table td:first-child { display: block; padding: 15px 14px; background: #17212d; color: #fff; }
    .ledger-table td:first-child::before { display: none; }
    .ledger-table td.highlight-col { border: 0; background: #f1eadf; }
    .ledger-footer { display: grid; gap: 18px; padding: 22px 20px 24px; text-align: left; }
    .btn-gold-sm { width: 100%; justify-content: center; }
}

/* V3.2.2 — form control alignment and solid accent color */
.field.field-purpose .purpose-options .purpose-option {
    display: grid;
    grid-template-columns: 20px minmax(0,1fr);
    gap: 11px;
    align-items: center;
}

.purpose-option .radio-box {
    width: 20px;
    height: 20px;
    margin: 0;
    border-radius: 50%;
}

.purpose-option .radio-text {
    border-radius: 0;
    line-height: 1.35;
}

.purpose-option input:focus-visible + .radio-box,
.privacy-label input:focus-visible + .checkbox-box {
    outline: 2px solid #fff;
    outline-offset: 3px;
}

.field.field-privacy .privacy-label {
    display: grid;
    grid-template-columns: 20px minmax(0,1fr);
    gap: 11px;
    align-items: center;
}

.privacy-label .checkbox-box {
    width: 20px;
    height: 20px;
    margin: 0;
    border-radius: 4px;
}

.privacy-text {
    line-height: 1.35;
    white-space: nowrap;
}

.btn-submit-gold,
.floating-cta-btn,
.header-cta,
.btn-gold-hero,
.point-badge,
.btn-gold-sm {
    background-image: none;
}

.btn-submit-gold {
    border-radius: 8px;
    background: #d3b47f;
    box-shadow: 0 12px 28px rgba(0,0,0,.24);
}

.btn-submit-gold:hover,
.btn-submit-gold:focus-visible {
    background: #bd955a;
    box-shadow: 0 14px 32px rgba(0,0,0,.28);
}

.floating-cta-btn {
    background: #d3b47f;
    border-color: rgba(211,180,127,.65);
}

.floating-cta-btn:hover,
.floating-cta-btn:focus-visible {
    background: #bd955a;
    box-shadow: 0 14px 34px rgba(0,0,0,.28);
}

.card-gold-shield {
    background: #131a28;
    background-image: none;
}

.iot-app-showcase {
    background: #111a24;
    background-image: none;
}

@media (max-width: 720px) {
    .privacy-text { white-space: normal; }
}

/* V3.3 — editorial reading rhythm for long-form copy */
.section-sublead {
    display: grid;
    gap: 9px;
    max-width: 780px;
}

.section-sublead .copy-context,
.section-sublead .copy-focus {
    display: block;
}

.section-sublead .copy-context {
    color: var(--m-muted);
    font-size: 14px;
    line-height: 1.72;
}

.section-sublead .copy-focus {
    position: relative;
    padding-left: 17px;
    color: var(--m-ink);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.65;
}

.section-sublead .copy-focus::before {
    content: "";
    position: absolute;
    top: .43em;
    bottom: .36em;
    left: 0;
    width: 2px;
    background: #9b7845;
}

.section-difference .copy-context,
.section-space .copy-context,
.section-inquiry .copy-context { color: rgba(255,255,255,.5); }

.section-difference .copy-focus,
.section-space .copy-focus,
.section-inquiry .copy-focus { color: rgba(255,255,255,.88); }

.point-desc {
    display: grid;
    gap: 14px;
    margin-top: auto;
}

.point-desc span {
    color: var(--m-muted);
    line-height: 1.65;
}

.point-desc strong {
    display: block;
    padding-top: 13px;
    border-top: 1px solid rgba(20,31,42,.1);
    color: var(--m-ink);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.55;
}

.why-sell-block {
    max-width: 1280px;
    margin-bottom: 72px;
    text-align: left;
}

.why-sell-inner {
    display: grid;
    grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
    gap: 84px;
    padding: 66px 0;
    border-top: 1px solid rgba(255,255,255,.14);
    border-bottom: 1px solid rgba(255,255,255,.14);
}

.why-heading {
    position: sticky;
    top: 118px;
    align-self: start;
}

.why-tag { margin-bottom: 19px; }

.why-title {
    margin: 0;
    font-size: clamp(34px,3.3vw,49px);
    font-weight: 600;
    line-height: 1.28;
    letter-spacing: -.045em;
}

.why-copy { align-self: center; }

.why-lead {
    margin: 0 0 34px;
    padding-left: 20px;
    border-left: 2px solid #9b7845;
    color: rgba(255,255,255,.88);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.65;
}

.why-body { display: grid; }

.why-step {
    display: grid;
    grid-template-columns: 40px minmax(0,1fr);
    gap: 18px;
    padding: 27px 0;
    border-top: 1px solid rgba(255,255,255,.11);
}

.why-step:last-child { border-bottom: 1px solid rgba(255,255,255,.11); }
.why-step-index { color: #d3b47f; font-size: 11px; font-weight: 600; letter-spacing: .1em; }
.why-step p { margin: 0; }
.why-step p strong { display: block; margin-bottom: 9px; color: #fff; font-size: 16px; font-weight: 600; line-height: 1.55; }
.why-step p span { display: block; color: rgba(255,255,255,.5); font-size: 13px; line-height: 1.75; }

.form-desc {
    display: grid;
    gap: 5px;
    line-height: 1.55;
}

.form-desc strong { color: #d3b47f; font-size: 13px; font-weight: 600; }
.form-desc span { color: var(--reen-text-muted); font-size: 12px; }

@media (max-width: 980px) {
    .why-sell-inner { grid-template-columns: 1fr; gap: 44px; }
    .why-heading { position: static; }
}

@media (max-width: 720px) {
    .section-sublead { gap: 8px; }
    .section-sublead .copy-context { font-size: 13px; }
    .section-sublead .copy-focus { padding-left: 14px; font-size: 14px; }
    .point-desc { gap: 12px; }
    .why-sell-block { margin-bottom: 48px; }
    .why-sell-inner { gap: 34px; padding: 44px 0; }
    .why-title { font-size: 32px; }
    .why-title br { display: none; }
    .why-lead { margin-bottom: 24px; padding-left: 15px; font-size: 15px; }
    .why-step { grid-template-columns: 30px minmax(0,1fr); gap: 12px; padding: 22px 0; }
    .why-step p strong { font-size: 14px; }
    .why-step p span { font-size: 12px; }
}

/* V3.3.2 — readable type floor across supporting copy */
body { font-size: 17px; }

.nav-menu a,
.header-cta,
.hero-primary,
.hero-secondary,
.submit-button,
.floating-cta,
.floating-cta-btn { font-size: 15px; }

.hero-kicker,
.section-kicker,
.section-number,
.comparison-label,
.gallery-index,
.badge-text,
.facility-primary-media figcaption span,
.facility-panel-head > span,
.scope-index,
.facility-media-pair figcaption,
.slider-hint { font-size: 14px; }

.hero-body,
.hero-proof span,
.hero-metric-item .metric-label,
.hero-metric-item .metric-desc,
.hero-visual-count,
.section-sublead .copy-context,
.comparison-list span,
.warning-line,
.cost-row p,
.cost-note,
.facility-panel-head p,
.facility-scope-item p,
.slide-desc,
.slider-counter,
.trap-content p,
.trap-stat span,
.ledger-table th,
.ledger-stamp,
.why-step-index,
.why-step p span,
.form-desc strong,
.form-desc span,
.field label,
.purpose-label,
.form-status,
.site-footer p,
.hero-metric-item .metric-num small,
.trap-stat small,
.ledger-table td { font-size: 15px; }

.section-lead,
.section-sublead,
.section-sublead .copy-focus,
.point-desc span,
.point-desc strong,
.proof-points span,
.cta-copy p,
.inquiry-pitch p,
.purpose-option span,
.privacy-row,
.privacy-text,
.why-step p strong,
.comparison-list strong,
.facility-scope-item strong,
.trap-content strong { font-size: 16px; }

.facility-scope-index,
.facility-placeholder-label,
.ledger-table td::before { font-size: 13px; }

.hero-metric-item .metric-desc,
.facility-panel-head p,
.facility-scope-item p,
.trap-content p,
.why-step p span,
.form-desc span { line-height: 1.7; }

@media (max-width: 720px) {
    body { font-size: 16px; }
    .hero-kicker,
    .section-kicker,
    .section-number,
    .comparison-label,
    .gallery-index,
    .badge-text { font-size: 14px; }

    .hero-subtitle,
    .hero-sublead,
    .hero-body,
    .hero-proof span,
    .hero-metric-item .metric-label,
    .hero-metric-item .metric-desc,
    .section-lead,
    .section-sublead .copy-context,
    .section-sublead .copy-focus,
    .comparison-list span,
    .cost-row p,
    .cost-note,
    .facility-panel-head p,
    .facility-scope-item p,
    .slide-desc,
    .trap-content p,
    .ledger-table th,
    .ledger-table td::before,
    .why-step-index,
    .why-step p span,
    .form-desc strong,
    .form-desc span,
    .field label,
    .purpose-label,
    .form-status,
    .site-footer p { font-size: 15px; }

    .point-desc span,
    .point-desc strong,
    .proof-points span,
    .cta-copy p,
    .inquiry-pitch p,
    .purpose-option span,
    .privacy-row,
    .privacy-text,
    .why-lead,
    .why-step p strong { font-size: 16px; }
}

/* V3.4.1 — branded editorial polish */
:root {
    --reen-section-light: #f6f5f1;
    --reen-section-paper: #fbfaf7;
    --reen-section-dark: #0e161f;
    --reen-hairline: rgba(17,24,32,.13);
}

.site-header { background: rgba(10,16,23,.9); }
.header-container { min-height: 82px; }
.site-branding img { width: auto; height: 50px; }
.nav-menu { gap: 33px; }
.nav-menu a { position: relative; padding: 29px 0 27px; color: rgba(255,255,255,.74); }
.nav-menu a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 20px;
    left: 0;
    height: 1px;
    background: #d3b47f;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
}
.nav-menu a:hover::after,
.nav-menu a:focus-visible::after,
.nav-menu a.is-active::after { transform: scaleX(1); }
.nav-menu a.is-active { color: #fff; }
.header-cta { min-height: 44px; padding-inline: 20px; border-color: rgba(211,180,127,.62); color: #f2dfbb; }

.hero-section { min-height: 920px; padding-top: 172px; }
.hero-title { max-width: 840px; }
.hero-sublead { color: rgba(255,255,255,.76); }
.hero-metrics-bar {
    position: relative;
    border-radius: 3px;
    border-color: rgba(255,255,255,.16);
    background: rgba(8,13,20,.7);
}
.hero-metrics-bar::before {
    content: "";
    position: absolute;
    top: -1px;
    bottom: -1px;
    left: -1px;
    width: 3px;
    background: #d3b47f;
}

.section-story,
.section-cost,
.section-proof { background: var(--reen-section-light); }
.section-difference,
.section-space,
.section-inquiry { background: var(--reen-section-dark); }
.section-story,
.section-difference,
.section-cost,
.section-space,
.section-proof,
.section-inquiry { padding-block: 124px; }

.section-header {
    position: relative;
    max-width: 1040px;
    padding-top: 27px;
    margin-bottom: 58px;
}
.section-header::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: min(100%, 640px);
    height: 1px;
    background: var(--reen-hairline);
}
.section-difference .section-header::before,
.section-space .section-header::before,
.section-inquiry .section-header::before { background: rgba(255,255,255,.16); }
.section-kicker { margin-bottom: 18px; }
.section-title { max-width: 990px; }

/* The first value becomes the visual anchor; the other two read as supporting proof. */
.story-points-grid {
    display: grid;
    grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr);
    grid-template-rows: repeat(2,minmax(270px,auto));
    gap: 18px;
}
.point-card { min-width: 0; overflow: hidden; border-radius: 5px; }
.point-card:first-child { grid-row: 1 / 3; }
.point-card:first-child .point-img-wrap { height: 430px; }
.point-card:nth-child(n+2) {
    display: grid;
    grid-template-columns: minmax(230px,.88fr) minmax(0,1.12fr);
}
.point-card:nth-child(n+2) .point-img-wrap { height: 100%; min-height: 290px; }
.point-card:nth-child(n+2) .point-body { padding: 32px 30px; }
.point-card:nth-child(n+2) .point-title { font-size: 19px; }
.point-card:nth-child(n+2) .point-desc { gap: 11px; }
.point-img-wrap img { transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .4s ease; }
.point-card:hover .point-img-wrap img { transform: scale(1.035); filter: saturate(1.05); }

.contrast-card,
.cost-ledger-card,
.proof-box { border-radius: 5px; }
.contrast-card { border-top-width: 2px; }
.card-warning { border-top-color: rgba(224,102,91,.62); }
.card-gold-shield { border-top-color: #d3b47f; }

.space-slider-wrapper { overflow: visible; }
.space-slide {
    grid-template-columns: minmax(0,1.42fr) minmax(300px,.58fr);
    opacity: .4;
    border-radius: 5px;
}
.space-slide.is-active {
    opacity: 1;
    border-color: rgba(211,180,127,.55);
    box-shadow: 0 24px 70px rgba(0,0,0,.26);
}
.space-slide.is-active .slide-img-box img { filter: brightness(1.08) saturate(1.04); }
.slide-content-box { padding: 44px 38px; background: #16212d; }
.slide-category { color: #d3b47f; }
.slide-desc { color: rgba(255,255,255,.68); }

.proof-grid { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: 22px; }
.proof-box {
    border-color: rgba(20,31,42,.13);
    background: #121d2b;
}
.proof-box:hover { border-color: rgba(211,180,127,.42); }
.iot-app-showcase,
.excel-preview-frame { border-radius: 4px; }

.why-sell-block { margin-bottom: 88px; }
.why-sell-inner { padding-block: 74px; }

.vip-form-box {
    display: grid;
    grid-template-columns: minmax(300px,.82fr) minmax(0,1.18fr);
    max-width: 1180px;
    padding: 0;
    overflow: hidden;
    border-radius: 5px;
    background: #152033;
}
.form-header {
    grid-row: 1 / 3;
    margin: 0;
    padding: 58px 46px;
    border-right: 1px solid rgba(255,255,255,.1);
    background: #0d151f;
    text-align: left;
}
.form-badge { margin-bottom: 24px; padding: 7px 11px; }
.form-title { margin-bottom: 16px; font-size: 30px; line-height: 1.38; }
.form-desc { gap: 8px; }
.form-desc strong { font-size: 16px; }
.form-desc span { color: rgba(255,255,255,.6); }
.form-intro-points {
    display: grid;
    gap: 0;
    margin: 38px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255,255,255,.12);
}
.form-intro-points li {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr);
    gap: 12px;
    align-items: center;
    padding: 17px 0;
    border-bottom: 1px solid rgba(255,255,255,.1);
    color: rgba(255,255,255,.78);
    font-size: 15px;
    line-height: 1.5;
}
.form-intro-points li span { color: #d3b47f; font-size: 13px; font-weight: 600; }
.vip-inquiry-form { padding: 58px 48px 26px; }
.form-security-seal {
    grid-column: 2;
    margin: 0 48px;
    padding: 24px 0 34px;
    justify-content: space-between;
}
.sec-item { font-size: 13px; }

.floating-cta-wrap {
    opacity: 0;
    pointer-events: none;
    transform: translate3d(0,16px,0);
    transition: opacity .25s ease, transform .3s ease;
}
.floating-cta-wrap.is-visible { opacity: 1; pointer-events: auto; transform: translate3d(0,0,0); }
.floating-cta-btn { min-height: 52px; padding: 0 20px; border-radius: 4px; }

.footer-container {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 34px;
    align-items: end;
    padding-block: 48px;
}
.footer-brand { display: grid; gap: 14px; }
.footer-brand p { color: rgba(255,255,255,.5); font-size: 14px; }
.footer-logo { width: auto; height: 42px; }
.footer-nav { display: flex; gap: 26px; }
.footer-nav a { color: rgba(255,255,255,.68); font-size: 14px; transition: color .2s ease; }
.footer-nav a:hover,
.footer-nav a:focus-visible { color: #d3b47f; }
.footer-copyright {
    grid-column: 1 / -1;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,.1);
    color: rgba(255,255,255,.36);
}

@media (max-width: 1080px) {
    .header-container { min-height: 76px; }
    .nav-menu { gap: 22px; }
    .story-points-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
    .point-card:first-child { grid-row: auto; }
    .point-card:first-child .point-img-wrap { height: 300px; }
    .point-card:nth-child(n+2) { display: flex; }
    .point-card:nth-child(n+2) .point-img-wrap { height: 300px; min-height: 0; }
    .point-card:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; }
    .point-card:last-child .point-img-wrap { height: 100%; min-height: 300px; }
    .vip-form-box { grid-template-columns: minmax(280px,.78fr) minmax(0,1.22fr); }
    .form-header { padding-inline: 36px; }
    .vip-inquiry-form { padding-inline: 36px; }
    .form-security-seal { margin-inline: 36px; }
}

@media (max-width: 720px) {
    .header-container { min-height: 68px; }
    .site-branding img { height: 43px; }
    .hero-section { min-height: auto; padding-top: 126px; }
    .hero-metrics-bar { border-radius: 3px; }
    .section-story,
    .section-difference,
    .section-cost,
    .section-space,
    .section-proof,
    .section-inquiry { padding-block: 84px; }
    .section-header { padding-top: 22px; margin-bottom: 38px; }
    .story-points-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
    .point-card,
    .point-card:first-child,
    .point-card:nth-child(n+2),
    .point-card:last-child { grid-column: auto; display: flex; }
    .point-card:first-child .point-img-wrap,
    .point-card:nth-child(n+2) .point-img-wrap,
    .point-card:last-child .point-img-wrap { height: 235px; min-height: 0; }
    .space-slide { grid-template-columns: 1fr; opacity: .48; }
    .slide-content-box { padding: 28px 23px; }
    .proof-grid { grid-template-columns: 1fr; }
    .why-sell-block { margin-bottom: 54px; }
    .why-sell-inner { padding-block: 48px; }
    .vip-form-box { display: block; border-radius: 5px; }
    .form-header { padding: 38px 24px 34px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
    .form-title { font-size: 26px; }
    .form-intro-points { margin-top: 28px; }
    .vip-inquiry-form { padding: 34px 24px 20px; }
    .form-security-seal { margin: 0 24px; padding: 22px 0 30px; }
    .floating-cta-wrap { right: 14px; bottom: 14px; left: auto; }
    .floating-cta-btn { width: auto; min-height: 50px; padding-inline: 17px; }
    .footer-container { grid-template-columns: 1fr; gap: 26px; align-items: start; padding-block: 38px 96px; }
    .footer-nav { flex-wrap: wrap; gap: 18px 24px; }
    .footer-copyright { grid-column: auto; }
}

/* V3.5 — workbook copy integration and partnership inquiry */
.hero-title { max-width: 900px; }
.hero-sublead { max-width: 720px; font-size: 18px; }
.hero-metric-item .metric-label { font-size: 15px; }
.hero-metric-item .metric-desc { font-size: 14px; }

.section-title { text-wrap: balance; }
.comparison-container { align-items: stretch; }
.contrast-list p { font-size: 15px; line-height: 1.7; }
.banner-text { font-size: 16px; line-height: 1.7; }
.facility-scope-item p { color: rgba(255,255,255,.62); }
.ledger-footer-note { font-size: 15px; }

.field textarea {
    width: 100%;
    min-height: 124px;
    padding: 16px 18px;
    resize: vertical;
    background: rgba(10,14,22,.6);
    border: 1px solid var(--reen-border-dark);
    border-radius: 7px;
    color: #fff;
    font: inherit;
    font-size: 16px;
    line-height: 1.65;
    transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.field textarea::placeholder { color: var(--reen-text-subtle); }
.field textarea:focus {
    outline: none;
    border-color: #d3b47f;
    box-shadow: 0 0 0 3px rgba(211,180,127,.16);
    background: rgba(10,14,22,.9);
}
.field-message { display: grid; }
.field.field-privacy {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 12px 18px;
    align-items: center;
}
.field.field-privacy .privacy-label { margin: 0; }
.privacy-details { position: relative; }
.privacy-details summary {
    color: #d3b47f;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    list-style: none;
    white-space: nowrap;
}
.privacy-details summary::-webkit-details-marker { display: none; }
.privacy-details summary::after { content: " +"; }
.privacy-details[open] summary::after { content: " −"; }
.privacy-details-body {
    grid-column: 1 / -1;
    margin-top: 14px;
    padding: 22px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(8,13,20,.5);
    color: rgba(255,255,255,.7);
    font-size: 14px;
    line-height: 1.75;
}
.privacy-details-body h4 { margin: 18px 0 5px; color: #fff; font-size: 15px; }
.privacy-details-body h4:first-of-type { margin-top: 20px; }
.privacy-details-body p { margin: 0; }
.privacy-details[open] { grid-column: 1 / -1; }
.privacy-details[open] .privacy-details-body { display: block; }

.footer-brand p { max-width: 600px; }

@media (max-width: 720px) {
    .hero-sublead { font-size: 16px; }
    .hero-metric-item .metric-label { font-size: 14px; }
    .field.field-privacy { grid-template-columns: minmax(0,1fr); gap: 10px; align-items: start; }
    .field.field-privacy .privacy-label { white-space: nowrap; }
    .privacy-details summary { padding: 0 0 0 31px; font-size: 15px; }
    .privacy-details-body { padding: 18px 16px; font-size: 15px; }
}

/* V3.5.1 — practical reading size and single-line mobile consent */
.point-sub,
.slide-category,
.form-badge { font-size: 12px; }
.card-status-badge > span:last-child,
.mock-cell,
.seal-tag,
.sec-item { font-size: 14px; }
.iot-item p { font-size: 15px; line-height: 1.7; }
.privacy-details-body { font-size: 15px; }
.privacy-details-body h4 { font-size: 16px; }
.vip-inquiry-form .field input:not([type="checkbox"]) { font-size: 16px; }

@media (max-width: 720px) {
    .privacy-text { font-size: 15px; }
}

/* V3.6 — supplied photography and simplified Korean-only space gallery */
.hero-bg-slide { object-position: center 52%; }
.hero-bg-slide:nth-child(2) { object-position: center 55%; }
.hero-bg-slide:nth-child(3) { object-position: center 48%; }

.point-img-wrap img,
.facility-primary-media img,
.facility-media-pair img,
.slide-img-box img { object-fit: cover; }

.facility-media-pair figure { background: #101923; }
.facility-media-pair img { opacity: .88; }

.slide-content-minimal {
    justify-content: center;
    padding: 42px 38px;
}
.section-space .slider-status { grid-template-columns: auto minmax(120px,340px); }
.slide-content-minimal .slide-title {
    margin: 0;
    font-size: 28px;
    line-height: 1.3;
    text-wrap: balance;
}

.iot-mockup-img {
    width: 100%;
    max-width: 780px;
    height: auto;
    max-height: none;
    object-fit: contain;
}

.footer-business-info {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 20px;
    max-width: 920px;
    margin: 2px 0 0;
    color: rgba(255,255,255,.56);
    font-size: 14px;
    font-style: normal;
    line-height: 1.65;
}
.footer-business-info span { white-space: normal; }
.footer-business-info strong {
    margin-right: 5px;
    color: rgba(255,255,255,.82);
    font-weight: 600;
}

@media (max-width: 720px) {
    .hero-bg-slide { object-position: 57% center; }
    .hero-bg-slide:nth-child(2) { object-position: 53% center; }
    .hero-bg-slide:nth-child(3) { object-position: 46% center; }
    .slide-content-minimal { min-height: 104px; padding: 24px 22px; }
    .slide-content-minimal .slide-title { font-size: 22px; }
    .footer-business-info { display: grid; gap: 4px; font-size: 14px; }
}

/* V3.7 — Sheet3 revisions: clearer franchise hero, landscape gallery and restored consultation choice */
.hero-metrics-bar { max-width: 900px; }
.hero-metric-item { justify-content: center; min-height: 122px; }
.hero-metric-item .metric-label { margin-top: 7px; }

.space-slide {
    grid-template-columns: minmax(0,1.58fr) minmax(230px,.42fr);
    min-height: 460px;
    transition-duration: .28s, .32s, .24s;
}
.slide-img-box { min-height: 460px; }
.slide-img-box img { transition-duration: .48s; }
.slide-content-minimal { padding: 34px 30px; }

.section-proof > .reen-container > .section-header { margin-bottom: 54px; }
.proof-iot-box .proof-header h3 { max-width: 570px; }
.iot-app-showcase {
    display: grid;
    place-items: center;
    overflow: hidden;
    padding: 24px;
}
.iot-mockup-img {
    width: min(100%, 520px);
    aspect-ratio: 1;
    object-fit: cover;
    object-position: 42% center;
    border-radius: 10px;
}

.field-purpose { margin-bottom: 28px; }
.field-purpose .purpose-label { font-size: 15px; }
.field-purpose .purpose-options { gap: 12px; }
.field-purpose .purpose-option {
    min-height: 70px;
    padding: 18px 17px;
    border-color: rgba(255,255,255,.2);
    background: rgba(8,13,20,.34);
}
.field-purpose .purpose-option:has(input:checked) {
    border-color: #d3b47f;
    background: rgba(211,180,127,.12);
}
.field-purpose .radio-text { font-size: 16px; font-weight: 600; }

@media (max-width: 720px) {
    .hero-metric-item { min-height: 104px; }
    .space-slide { flex-basis: 94%; min-height: 0; }
    .slide-img-box {
        width: 100%;
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 3;
    }
    .slide-content-minimal { min-height: 92px; padding: 22px; }
    .section-proof > .reen-container > .section-header { margin-bottom: 38px; }
    .iot-app-showcase { padding: 16px; }
    .iot-mockup-img { width: 100%; }
    .field-purpose .purpose-options { grid-template-columns: 1fr; }
}

/* V3.8 — Sheet4 refinements: metric typography, balanced crops and first-20 partnership story */
.hero-metric-item .metric-num {
    font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.hero-metric-item .metric-label {
    display: block;
    font-weight: 500;
}

.facility-media-pair img,
.iot-mockup-img {
    object-position: 50% 50%;
}

.why-step-expansion p span + span {
    margin-top: 10px;
}

.partnership-limit-card {
    position: relative;
    display: grid;
    grid-template-columns: 108px minmax(0,1fr) auto;
    gap: 34px;
    align-items: center;
    max-width: 1180px;
    margin: -28px auto 44px;
    padding: 34px 38px;
    overflow: hidden;
    color: #fff;
    background: #121b26;
    border: 1px solid rgba(211,180,127,.34);
    border-left: 3px solid #d3b47f;
}

.partnership-limit-index {
    color: #d3b47f;
    font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 58px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.06em;
    text-align: center;
}

.partnership-limit-index::after {
    content: "호점";
    display: block;
    margin-top: 8px;
    color: rgba(255,255,255,.56);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .08em;
}

.partnership-limit-kicker {
    display: block;
    margin-bottom: 8px;
    color: #d3b47f;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .14em;
}

.partnership-limit-copy h3 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 25px;
    font-weight: 650;
    line-height: 1.38;
    letter-spacing: -.035em;
}

.partnership-limit-copy p {
    max-width: 690px;
    margin: 0;
    color: rgba(255,255,255,.65);
    font-size: 15px;
    line-height: 1.75;
}

.partnership-limit-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 50px;
    padding: 0 20px;
    color: #111821;
    background: #d3b47f;
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
    transition: background .2s ease, transform .2s ease;
}

.partnership-limit-link:hover {
    color: #111821;
    background: #e2c999;
    transform: translateY(-2px);
}

.partnership-limit-link:focus-visible {
    outline: 3px solid rgba(255,255,255,.85);
    outline-offset: 3px;
}

@media (max-width: 980px) {
    .partnership-limit-card {
        grid-template-columns: 84px minmax(0,1fr);
        margin-top: -8px;
    }

    .partnership-limit-link {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 720px) {
    .partnership-limit-card {
        grid-template-columns: 1fr;
        gap: 20px;
        margin: 0 auto 34px;
        padding: 28px 22px;
    }

    .partnership-limit-index {
        display: flex;
        align-items: baseline;
        gap: 8px;
        font-size: 44px;
        text-align: left;
    }

    .partnership-limit-index::after {
        display: inline;
        margin: 0;
    }

    .partnership-limit-copy h3 { font-size: 23px; }
    .partnership-limit-copy p { font-size: 15px; }
    .partnership-limit-link { grid-column: auto; justify-content: center; width: 100%; white-space: normal; text-align: center; }
}
