:root { --green:#005a4e; --green-2:#087568; --ivory:#fbf7ee; --paper:#ffffff; --gold:#e7b644; --orange:#e7b644; --ink:#082f2a; --muted:#405c57; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Pretendard,"Apple SD Gothic Neo","Noto Sans KR",Arial,sans-serif; word-break:keep-all; overflow-wrap:break-word; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
img { display:block; max-width:100%; }
.shell { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
.section { padding:140px 0; }
.eyebrow { margin:0 0 24px; color:#8a6417; font-size:12px; font-weight:800; letter-spacing:.2em; }
.eyebrow.light { color:#f4ca66; }
h1,h2,h3,p { margin-top:0; }
h2 { margin:0; font-size:clamp(44px,5vw,72px); line-height:1.16; letter-spacing:-.055em; font-weight:600; text-wrap:balance; }
h2 em,h1 em { color:var(--gold); font-style:normal; }
.source-note { margin:34px 0 0; color:rgba(255,255,255,.5); font-size:12px; line-height:1.7; }
.source-note.dark-text { color:#657b76; }
.mobile-only,.mobile-bar { display:none; }

.site-header { position:fixed; inset:0 0 auto; z-index:50; height:76px; padding:0 42px; display:flex; align-items:center; justify-content:space-between; color:#fff; background:rgba(0,48,42,.96); border-bottom:1px solid rgba(255,255,255,.18); backdrop-filter:blur(16px); }
.brand { display:flex; align-items:center; gap:11px; font-size:17px; font-weight:700; letter-spacing:-.06em; }
.brand small { display:block; margin-bottom:1px; font-size:7px; letter-spacing:.22em; font-weight:500; opacity:.72; }
.brand-mark { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--gold); border-radius:50%; color:var(--gold); font-family:Georgia,serif; font-size:19px; }
.site-header nav { display:flex; gap:32px; font-size:13px; font-weight:700; color:rgba(255,255,255,.9); }
.site-header nav a:hover { color:white; }
.header-actions { display:flex; align-items:center; gap:14px; font-size:13px; font-weight:700; }
.phone-link { letter-spacing:.08em; }
.header-cta { padding:14px 22px; background:var(--gold); color:#06352f; box-shadow:0 8px 24px rgba(244,189,70,.22); }

.hero { position:relative; min-height:860px; height:100svh; overflow:hidden; color:white; }
.hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.02); }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,49,43,.97) 0%,rgba(0,49,43,.82) 38%,rgba(0,49,43,.18) 72%),linear-gradient(0deg,rgba(0,42,37,.9),transparent 48%); }
.hero-content { position:relative; z-index:2; padding-top:190px; }
.hero-content h1 { margin:0; max-width:800px; font-size:clamp(68px,6.6vw,104px); line-height:1.02; letter-spacing:-.075em; font-weight:600; }
.hero-content h1 span { color:#fff; }
.hero-content h1 em { color:#f2c65e; text-shadow:0 5px 30px rgba(0,0,0,.2); }
.hero-copy { margin:34px 0 0; font-size:19px; line-height:1.75; color:rgba(255,255,255,.92); }
.hero-copy b { color:#fff; font-weight:800; }
.hero-actions { display:flex; gap:12px; margin-top:42px; }
.primary-button,.secondary-button { min-height:58px; padding:0 26px; display:inline-flex; align-items:center; justify-content:center; gap:36px; font-size:14px; font-weight:700; }
.primary-button { background:var(--gold); color:#06362f; box-shadow:0 14px 34px rgba(244,189,70,.22); }
.secondary-button { border:1px solid rgba(255,255,255,.34); background:rgba(1,29,26,.2); }
.hero-caution { max-width:620px; margin:20px 0 0; color:rgba(255,255,255,.72); font-size:11px; line-height:1.65; }
.hero-proof { position:absolute; z-index:2; left:50%; bottom:0; transform:translateX(-50%); display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.25); }
.hero-proof div { min-height:142px; padding:28px 32px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid rgba(255,255,255,.18); }
.hero-proof div:first-child { border-left:1px solid rgba(255,255,255,.18); }
.hero-proof strong { font-family:Georgia,serif; font-size:56px; line-height:1; font-weight:400; letter-spacing:-.045em; }
.hero-proof strong small { margin-left:9px; font:700 11px Arial; letter-spacing:.14em; color:var(--gold); }
.hero-proof span { margin-top:8px; color:rgba(255,255,255,.82); font-size:12px; font-weight:600; }
.hero-proof .price-proof { color:#07372f; background:var(--gold); }
.hero-proof .price-proof strong small { color:#fff1d1; }
.hero-proof .price-proof span { color:#214c44; }

.intro { display:grid; grid-template-columns:90px 1.45fr 1fr; gap:50px; align-items:end; }
.section-number { align-self:start; width:54px; padding-top:14px; border-top:1px solid #82918c; color:#6f7c78; font:16px Georgia,serif; }
.intro h2 { font-size:clamp(40px,4.4vw,66px); }
.lead-copy { margin:0 0 7px; max-width:430px; color:#344f4a; font-size:17px; font-weight:500; line-height:1.9; }

.business { background:#fff9ed; }
.business-grid { display:grid; grid-template-columns:.86fr 1.35fr; gap:90px; align-items:center; }
.sticky-copy h2 { font-size:clamp(40px,4.6vw,64px); }
.sticky-copy>p:not(.eyebrow) { margin:32px 0 44px; max-width:470px; color:#405b56; font-size:16px; font-weight:500; line-height:1.9; }
.business-list { margin:0; border-top:1px solid #c9c6ba; }
.business-list div { display:grid; grid-template-columns:110px 1fr; gap:24px; padding:18px 0; border-bottom:1px solid #d7d2c6; }
.business-list dt { color:#75827e; font-size:13px; }
.business-list dd { margin:0; font-size:15px; font-weight:700; }
.project-visual { position:relative; background:#ddd; min-height:600px; overflow:hidden; }
.project-visual img { width:100%; height:100%; min-height:600px; object-fit:cover; }
.image-note { position:absolute; right:14px; bottom:14px; padding:9px 12px; color:white; background:rgba(5,39,35,.8); font-size:10px; }

.location { position:relative; overflow:hidden; background:linear-gradient(135deg,#087568,#004d43); color:white; }
.location:before { content:"C"; position:absolute; right:-80px; top:-230px; color:rgba(255,255,255,.025); font:700 800px Georgia,serif; line-height:1; }
.location-heading,.premium-heading,.plan-heading,.signature-heading,.living-heading,.landscape-heading,.layout-heading,.why-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:80px; align-items:end; }
.location-heading p,.premium-heading p,.plan-heading p,.signature-heading p,.living-heading p,.landscape-heading p,.layout-heading p,.why-heading p { margin:0 0 8px; font-size:16px; font-weight:500; line-height:1.85; color:rgba(255,255,255,.92); }
.rail-map { position:relative; margin:110px 0 80px; display:grid; grid-template-columns:repeat(4,1fr); }
.rail-line { position:absolute; left:0; right:0; top:27px; height:1px; background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.22)); }
.rail-stop { position:relative; padding-top:64px; }
.rail-stop:before { content:""; position:absolute; top:20px; left:0; width:15px; height:15px; border-radius:50%; border:5px solid var(--green); background:#879791; box-shadow:0 0 0 1px rgba(255,255,255,.4); }
.rail-stop.active:before { background:var(--gold); box-shadow:0 0 0 1px var(--gold),0 0 24px rgba(244,189,70,.65); }
.rail-stop b { display:block; color:var(--gold); font:11px Arial; letter-spacing:.18em; }
.rail-stop strong { display:block; margin-top:13px; font-size:24px; }
.rail-stop span { display:block; margin-top:8px; color:rgba(255,255,255,.74); font-size:12px; }
.location-cards { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); }
.location-cards article { padding:42px 38px; border-right:1px solid rgba(255,255,255,.14); }
.location-cards article:last-child { border-right:0; }
.location-cards span { color:var(--gold); font-size:10px; letter-spacing:.18em; }
.location-cards h3 { margin:24px 0 13px; font-size:24px; }
.location-cards p { margin:0; color:rgba(255,255,255,.88); font-size:14px; font-weight:500; line-height:1.7; }

.living-value { background:var(--paper); }
.living-heading p,.premium-heading p,.plan-heading p,.landscape-heading p,.layout-heading p,.why-heading p { color:#405b56; }
.future-feature { margin-top:80px; display:grid; grid-template-columns:1.1fr .9fr; gap:50px; align-items:center; }
.future-feature figure { margin:0; min-height:420px; display:flex; overflow:hidden; background:#e4e1d6; }
.future-feature img { width:100%; height:100%; min-height:420px; object-fit:contain; }
.future-feature>div>span { color:#a8750c; font-size:10px; font-weight:800; letter-spacing:.18em; }
.future-feature h3 { margin:18px 0 18px; font-size:30px; line-height:1.4; color:var(--ink); }
.future-feature>div>p { margin:0 0 22px; color:#405b56; font-size:15px; font-weight:500; line-height:1.85; }
.future-feature ul { margin:0; padding:0; list-style:none; border-top:1px solid #d7d2c6; }
.future-feature li { padding:13px 0; border-bottom:1px solid #d7d2c6; color:#344f4a; font-size:13px; font-weight:600; }
.life-feature { margin-top:60px; display:grid; grid-template-columns:.9fr 1.1fr; gap:50px; align-items:center; }
.life-feature figure { margin:0; min-height:420px; display:flex; overflow:hidden; background:#e4e1d6; }
.life-feature img { width:100%; height:100%; min-height:420px; object-fit:contain; }
.life-feature>div>span { color:#a8750c; font-size:10px; font-weight:800; letter-spacing:.18em; }
.life-feature h3 { margin:18px 0 18px; font-size:30px; line-height:1.4; color:var(--ink); }
.life-feature>div>p { margin:0; color:#405b56; font-size:15px; font-weight:500; line-height:1.85; }
.life-grid { margin-top:60px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.life-grid article { background:#fbf7ee; overflow:hidden; box-shadow:0 14px 32px rgba(0,80,69,.07); }
.life-grid img { width:100%; height:230px; display:block; object-fit:cover; }
.life-grid article>div { padding:24px 22px; }
.life-grid span { color:#008873; font-size:9px; font-weight:800; letter-spacing:.17em; }
.life-grid h3 { margin:14px 0 10px; font-size:19px; line-height:1.42; color:var(--ink); }
.life-grid p { margin:0; color:#405b56; font-size:12px; font-weight:500; line-height:1.7; }

.premium { background:var(--paper); }
.gallery-grid { margin-top:80px; display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
.gallery-grid figure { position:relative; margin:0; height:390px; overflow:hidden; background:#ddd; }
.gallery-grid figure.gallery-main { grid-row:span 2; height:798px; }
.gallery-grid img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.gallery-grid figure:hover img { transform:scale(1.025); }
.gallery-grid figcaption { position:absolute; left:0; right:0; bottom:0; padding:70px 28px 25px; display:flex; gap:20px; align-items:end; color:white; background:linear-gradient(transparent,rgba(1,27,24,.82)); }
.gallery-grid figcaption b { color:var(--gold); font:12px Arial; }
.gallery-grid figcaption span { font-size:13px; letter-spacing:.08em; }
.gallery-grid figcaption small { display:block; margin-top:5px; color:rgba(255,255,255,.65); font-size:11px; letter-spacing:0; }

.landscape { background:#fbf7ee; }
.journey-line { margin:52px 0 44px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.journey-line span { padding:9px 16px; border:1px solid #cfc9b8; border-radius:20px; background:white; color:#344f4a; font-size:12px; font-weight:700; }
.journey-line i { color:#a99a6f; font-style:normal; }
.landscape-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.landscape-grid figure { position:relative; margin:0; height:300px; overflow:hidden; background:#ddd; }
.landscape-grid img { width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.landscape-grid figure:hover img { transform:scale(1.03); }
.landscape-grid figcaption { position:absolute; left:0; right:0; bottom:0; padding:44px 18px 18px; color:white; background:linear-gradient(transparent,rgba(1,27,24,.85)); }
.landscape-grid figcaption b { display:block; color:var(--gold); font-size:9px; letter-spacing:.16em; }
.landscape-grid figcaption strong { display:block; margin-top:8px; font-size:14px; font-weight:700; line-height:1.4; }

.community { background:#fbf7ee; }
.community-visual-grid { margin-top:72px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.community-visual-grid article { background:white; overflow:hidden; box-shadow:0 18px 40px rgba(0,80,69,.08); }
.community-image { height:230px; overflow:hidden; background:#ddd; }
.community-image img { width:100%; height:100%; object-fit:cover; }
.community-visual-grid>article>div:last-child { padding:30px 28px 34px; }
.community-visual-grid span { color:#a8750c; font-size:10px; font-weight:800; letter-spacing:.17em; }
.community-visual-grid h3 { margin:18px 0 14px; font-size:22px; line-height:1.4; color:var(--ink); }
.community-visual-grid h3 em { color:var(--green); font-style:normal; }
.community-visual-grid>article>div>p { margin:0 0 18px; color:#405b56; font-size:13px; font-weight:500; line-height:1.7; }
.community-visual-grid ul { margin:0; padding:0; list-style:none; border-top:1px solid #e3ddc9; }
.community-visual-grid li { padding:10px 0; border-bottom:1px solid #e3ddc9; color:#344f4a; font-size:12px; font-weight:600; }
.community-key { margin-top:16px; padding:25px 32px; display:flex; align-items:center; justify-content:space-between; color:white; background:var(--green); }
.community-key span { color:#ffd05f; font-size:11px; font-weight:800; letter-spacing:.16em; }
.community-key strong { font-size:17px; }

.floorplan { background:#f7f4ed; }
.plan-tabs { margin-top:64px; display:flex; border-bottom:1px solid #bdb9ae; }
.plan-tabs button { flex:0 0 110px; padding:18px 12px; border:0; border-bottom:3px solid transparent; background:transparent; color:#68736f; cursor:pointer; font-size:16px; font-weight:700; }
.plan-tabs button.active { color:var(--green); border-color:var(--green); }
.plan-display { display:grid; grid-template-columns:.72fr 1.28fr; min-height:650px; background:#f8f5ee; }
.plan-copy { padding:66px 60px; color:white; background:var(--green); }
.plan-copy>p { color:var(--gold); font-size:10px; letter-spacing:.2em; }
.plan-copy>strong { display:block; margin:18px 0 24px; font:400 74px Georgia,serif; }
.plan-copy h3 { max-width:300px; font-size:24px; line-height:1.45; }
.plan-copy dl { margin:38px 0; border-top:1px solid rgba(255,255,255,.2); }
.plan-copy dl div { display:flex; justify-content:space-between; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.15); }
.plan-copy dt { color:rgba(255,255,255,.55); font-size:12px; }
.plan-copy dd { margin:0; font-size:13px; font-weight:700; }
.plan-copy ul { display:flex; gap:8px; margin:0 0 42px; padding:0; list-style:none; flex-wrap:wrap; }
.plan-copy li { padding:8px 11px; border:1px solid rgba(255,255,255,.24); border-radius:20px; color:rgba(255,255,255,.75); font-size:11px; }
.plan-copy>a { display:flex; justify-content:space-between; padding:19px 0; border-top:1px solid var(--gold); color:var(--gold); font-size:13px; font-weight:700; }
.plan-image { display:grid; place-items:center; padding:40px; background:white; }
.plan-image img { max-width:86%; max-height:580px; object-fit:contain; }

.unit-layout { background:#fff; }
.layout-switch { margin-top:58px; display:flex; border-bottom:1px solid #bfd0cc; }
.layout-switch button { min-width:170px; padding:17px 24px; border:0; border-bottom:3px solid transparent; color:#58706b; background:transparent; cursor:pointer; font-size:14px; font-weight:800; }
.layout-switch button.active { color:var(--green); border-bottom-color:var(--gold); background:#fbf7ee; }
.layout-sheet { padding:22px; overflow:auto; border:1px solid #d8e1de; background:#f8f8f5; }
.layout-sheet img { width:100%; min-width:980px; background:white; }
.layout-action { padding:25px 28px; display:flex; align-items:center; justify-content:space-between; color:white; background:var(--green); }
.layout-action div { display:flex; flex-direction:column; gap:7px; }
.layout-action strong { font-size:18px; }
.layout-action div span { color:rgba(255,255,255,.82); font-size:12px; }
.layout-action>a { min-height:50px; padding:0 20px; display:flex; align-items:center; gap:34px; color:#07372f; background:var(--gold); font-size:12px; font-weight:800; }

.signature-story { color:white; background:#004d43; }
.signature-story-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; align-items:center; }
.signature-story-copy h2 { font-size:clamp(42px,4.5vw,66px); }
.signature-story-copy>p:not(.eyebrow) { margin:30px 0 38px; color:rgba(255,255,255,.88); font-size:16px; font-weight:500; line-height:1.9; }
.signature-points { border-top:1px solid rgba(255,255,255,.2); }
.signature-points div { padding:18px 0; display:grid; grid-template-columns:48px 1fr; border-bottom:1px solid rgba(255,255,255,.18); }
.signature-points b { color:var(--gold); font:16px Georgia,serif; }
.signature-points strong { font-size:14px; line-height:1.55; }
.signature-story-copy>a { margin-top:30px; min-height:56px; padding:0 22px; display:flex; align-items:center; justify-content:space-between; color:#07372f; background:var(--gold); font-size:13px; font-weight:800; }
.signature-story-visual { position:relative; min-height:670px; overflow:hidden; }
.signature-story-visual>img { width:100%; height:670px; object-fit:cover; }
.signature-story-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 45%,rgba(0,40,35,.93)); }
.signature-story-visual>div { position:absolute; z-index:1; left:34px; right:34px; bottom:34px; }
.signature-story-visual small { display:block; margin-bottom:12px; color:var(--gold); font-size:9px; font-weight:800; letter-spacing:.18em; }
.signature-story-visual strong { font-size:28px; line-height:1.45; }

.why-now { position:relative; overflow:hidden; color:var(--ink); background:#ffffff; }
.why-now:after { content:"WHY NOW"; position:absolute; right:-30px; top:80px; color:rgba(0,107,91,.035); font:800 150px Arial; letter-spacing:.06em; white-space:nowrap; }
.why-badge { position:relative; z-index:1; margin-bottom:44px; padding:20px 24px; display:flex; align-items:center; gap:24px; color:#083c35; background:var(--gold); }
.why-badge b { padding-right:24px; border-right:1px solid rgba(8,60,53,.24); font-size:12px; letter-spacing:.15em; }
.why-badge span { font-size:14px; font-weight:700; }
.why-heading { position:relative; z-index:1; }
.visit-reasons { position:relative; z-index:1; margin-top:56px; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.visit-reasons article { min-height:165px; padding:26px; display:flex; gap:20px; border:1px solid #d9e5e1; background:#f5fbf9; }
.visit-reasons article>b { color:#a8750c; font:28px Georgia,serif; }
.visit-reasons span { color:#008873; font-size:9px; font-weight:800; letter-spacing:.17em; }
.visit-reasons h3 { margin:15px 0 9px; font-size:20px; }
.visit-reasons p { margin:0; color:#405b56; font-size:12px; font-weight:500; line-height:1.65; }
.value-grid { position:relative; z-index:1; margin-top:18px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #c9ddd8; }
.value-grid article { min-height:310px; padding:32px 28px; border-right:1px solid #c9ddd8; background:#075f53; color:white; }
.value-grid article:last-child { border-right:0; }
.value-grid article.value-price { color:#082e29; background:var(--gold); }
.value-grid span { color:#ffe07a; font-size:9px; font-weight:800; letter-spacing:.18em; }
.value-grid .value-price span { color:#7b5000; }
.value-grid strong { display:block; margin-top:50px; font:400 61px Georgia,serif; letter-spacing:-.05em; }
.value-grid strong small { margin-left:7px; color:var(--gold); font:800 11px Arial; letter-spacing:.08em; }
.value-grid .value-price strong small { color:#7a4a00; }
.value-grid h3 { margin:22px 0 14px; font-size:23px; line-height:1.42; }
.why-cta { position:relative; z-index:1; margin-top:24px; min-height:64px; padding:0 28px; display:flex; align-items:center; justify-content:space-between; color:#07372f; background:var(--gold); font-size:15px; font-weight:800; }

.day-scene { padding:140px 0 0; color:var(--ink); background:#fbf7ee; }
.scene-copy { padding-bottom:72px; display:grid; grid-template-columns:1.1fr .9fr; column-gap:80px; }
.scene-copy .eyebrow { grid-column:1/-1; }
.scene-copy p:last-child { margin:8px 0 0; align-self:end; color:#405b56; font-size:16px; font-weight:500; line-height:1.85; }
.scene-gallery { display:grid; grid-template-columns:1.35fr .65fr .65fr; grid-template-rows:420px 320px; gap:3px; }
.scene-gallery figure { position:relative; margin:0; overflow:hidden; background:#163d38; }
.scene-gallery .scene-wide { grid-row:span 2; }
.scene-gallery .scene-detail { grid-column:span 2; }
.scene-gallery img { width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.scene-gallery figure:hover img { transform:scale(1.025); }
.scene-gallery figcaption { position:absolute; inset:auto 0 0; padding:90px 28px 28px; display:flex; flex-direction:column; color:white; background:linear-gradient(transparent,rgba(0,35,31,.92)); }
.scene-gallery figcaption b { color:var(--gold); font-size:9px; letter-spacing:.18em; }
.scene-gallery figcaption strong { margin-top:9px; font-size:22px; }
.scene-gallery figcaption span { margin-top:7px; color:rgba(255,255,255,.7); font-size:12px; }
.scene-note { margin-top:0; padding:20px 0 28px; color:#667b76; font-size:11px; }

.decision { position:relative; min-height:660px; display:flex; align-items:center; overflow:hidden; color:white; }
.decision>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.decision-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,47,41,.95),rgba(0,47,41,.68) 50%,rgba(0,47,41,.14)); }
.decision-content { position:relative; z-index:1; }
.decision-content h2 { max-width:850px; }
.decision-content p { margin:30px 0 36px; color:rgba(255,255,255,.78); font-size:16px; line-height:1.85; }
.decision-content>a { min-height:60px; padding:0 27px; display:inline-flex; align-items:center; gap:60px; color:#07342e; background:var(--gold); font-size:14px; font-weight:800; }

.visit { position:relative; background:var(--ivory); }
.visit-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; align-items:center; }
.visit-copy>p:not(.eyebrow) { margin:30px 0 40px; max-width:430px; color:var(--muted); font-size:16px; line-height:1.8; }
.big-phone { display:block; padding-top:20px; border-top:1px solid #bdb6a6; color:var(--green); font:42px Georgia,serif; }
.big-phone small { display:block; margin-bottom:7px; color:#7b817c; font:10px Arial; letter-spacing:.15em; }
.visit-form { padding:52px; background:white; box-shadow:0 30px 70px rgba(21,49,43,.08); }
.form-head span { color:var(--gold); font-size:10px; letter-spacing:.2em; }
.form-head h3 { margin:14px 0 10px; font-size:30px; }
.form-head p { color:#7b8581; font-size:13px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.visit-form label { display:block; margin-top:22px; color:#42524d; font-size:12px; font-weight:700; }
.visit-form label b { color:var(--orange); }
.visit-form input:not([type="checkbox"]):not([type="radio"]),.visit-form select,.visit-form textarea { width:100%; margin-top:9px; padding:0 14px; border:1px solid #d8d9d3; border-radius:0; color:#283732; background:#fbfbf9; outline:none; }
.visit-form input:not([type="checkbox"]):not([type="radio"]),.visit-form select { height:52px; }
.visit-form textarea { padding-top:14px; resize:vertical; }
.visit-form input:focus,.visit-form select:focus { border-color:var(--gold); }
.radio-group { margin-top:9px; display:flex; gap:10px; }
.radio-pill { flex:1; margin:0!important; padding:14px 12px!important; display:flex!important; align-items:center; justify-content:center; gap:8px; border:1px solid #d8d9d3; color:#42524d; font-size:13px!important; font-weight:600!important; cursor:pointer; }
.radio-pill input { accent-color:var(--green); }
.radio-pill:has(input:checked) { border-color:var(--green); background:#f0f7f4; color:var(--green); }
.privacy { font-weight:500!important; color:#78817d!important; }
.privacy input { margin-right:8px; accent-color:var(--green); }
.form-submit { width:100%; height:58px; margin-top:26px; padding:0 22px; display:flex; justify-content:space-between; align-items:center; border:0; color:white; background:var(--green); cursor:pointer; font-size:14px; font-weight:700; }
.form-submit:disabled { opacity:.65; cursor:wait; }
.form-status { margin:14px 0 0; padding:12px; font-size:12px; line-height:1.6; }
.form-status.success { color:#155e46; background:#e4f3ec; }
.form-status.error { color:#8a3b1f; background:#fbe9e2; }

footer.site-footer { padding:58px 0 70px; color:rgba(255,255,255,.7); background:#071b19; }
.footer-top { padding-bottom:30px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.14); }
.footer-top>a:last-child { color:var(--gold); font:28px Georgia,serif; }
.footer-info { padding-top:25px; font-size:11px; line-height:1.8; }
.footer-info p { margin:4px 0; }
.footer-info p.legal { margin-top:18px; color:rgba(255,255,255,.42); }

@media (max-width:1000px) {
  .site-header { padding:0 22px; }
  .site-header nav { display:none; }
  .business-grid,.visit-grid { gap:50px; }
  .location-heading,.premium-heading,.community-heading,.plan-heading,.layout-heading,.why-heading,.living-heading,.landscape-heading { grid-template-columns:1fr; gap:24px; }
  .signature-story-grid { gap:50px; }
  .value-grid { grid-template-columns:repeat(2,1fr); }
  .value-grid article:nth-child(2) { border-right:0; }
  .value-grid article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.2); }
  .future-feature,.life-feature { grid-template-columns:1fr; }
  .life-grid,.landscape-grid,.community-visual-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:720px) {
  .shell { width:min(calc(100% - 32px),560px); }
  .section { padding:86px 0; }
  .site-header { height:62px; padding:0 18px; }
  .brand { font-size:14px; }
  .brand-mark { width:30px; height:30px; }
  .header-actions .phone-link { display:none; }
  .header-cta { padding:11px 14px; font-size:11px; }
  .hero { min-height:790px; height:100svh; max-height:920px; }
  .hero-image { object-position:61% center; }
  .hero-overlay { background:linear-gradient(180deg,rgba(0,42,37,.28) 0%,rgba(0,42,37,.45) 34%,rgba(0,42,37,.92) 67%,#002d28 100%); }
  .hero-content { padding-top:112px; }
  .hero-content .eyebrow { margin-bottom:13px; }
  .hero-content h1 { max-width:100%; font-size:clamp(42px,12.4vw,58px); line-height:1.06; letter-spacing:-.07em; }
  .hero-copy { margin-top:20px; font-size:13px; line-height:1.65; }
  .hero-copy b { display:inline-block; margin-bottom:3px; font-size:14px; }
  .mobile-only { display:block; }
  .hero-actions { margin-top:22px; flex-direction:column; align-items:stretch; }
  .primary-button,.secondary-button { min-height:52px; padding:0 18px; gap:12px; }
  .secondary-button { display:none; }
  .hero-caution { margin-top:12px; font-size:9px; line-height:1.55; }
  .hero-proof { width:calc(100% - 40px); bottom:82px; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid rgba(255,255,255,.25); background:rgba(0,49,43,.62); backdrop-filter:blur(8px); }
  .hero-proof div { min-width:0; min-height:78px; padding:12px 16px; text-align:left; border-bottom:1px solid rgba(255,255,255,.2); }
  .hero-proof div:nth-child(2) { border-right:0; }
  .hero-proof div:nth-child(3),.hero-proof div:nth-child(4) { border-bottom:0; }
  .hero-proof div:first-child { border-left:0; }
  .hero-proof strong { font-size:31px; line-height:1; }
  .hero-proof strong small { display:inline; margin-left:5px; font-size:8px; }
  .hero-proof span { margin-top:7px; overflow:hidden; font-size:9px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
  .hero-proof .price-proof { background:var(--gold); }
  h2 { font-size:38px; line-height:1.2; }
  .eyebrow { margin-bottom:17px; font-size:10px; }
  .intro { grid-template-columns:1fr; gap:28px; }
  .section-number { display:none; }
  .intro h2 { font-size:36px; }
  .lead-copy { font-size:14px; line-height:1.75; }
  .business-grid { grid-template-columns:1fr; gap:46px; }
  .sticky-copy h2 { font-size:37px; }
  .sticky-copy>p:not(.eyebrow) { margin:24px 0 32px; font-size:14px; }
  .business-list div { grid-template-columns:84px 1fr; }
  .project-visual,.project-visual img { min-height:300px; }
  .project-visual img { object-fit:cover; }
  .location-heading,.premium-heading,.community-heading,.plan-heading,.living-heading,.landscape-heading { grid-template-columns:1fr; gap:22px; }
  .location-heading p,.premium-heading p,.community-heading p,.plan-heading p,.living-heading p,.landscape-heading p { font-size:14px; }
  .rail-map { margin:58px 0 50px; grid-template-columns:1fr; gap:0; padding-left:28px; }
  .rail-line { left:6px; right:auto; top:0; bottom:0; width:1px; height:auto; }
  .rail-stop { min-height:98px; padding:0 0 22px 28px; }
  .rail-stop:before { top:2px; left:-29px; }
  .rail-stop strong { margin-top:7px; font-size:21px; }
  .location-cards { grid-template-columns:1fr; }
  .location-cards article { padding:30px 12px; border-right:0; border-bottom:1px solid rgba(255,255,255,.14); }
  .future-feature,.life-feature { margin-top:44px; gap:24px; }
  .future-feature figure,.future-feature img,.life-feature figure,.life-feature img { min-height:220px; height:220px; }
  .future-feature h3,.life-feature h3 { font-size:23px; }
  .life-grid { margin-top:36px; grid-template-columns:1fr; gap:12px; }
  .landscape-grid { grid-template-columns:1fr 1fr; }
  .journey-line { margin:36px 0 30px; }
  .gallery-grid { margin-top:48px; grid-template-columns:1fr 1fr; gap:8px; }
  .gallery-grid figure,.gallery-grid figure.gallery-main { height:240px; grid-row:auto; }
  .gallery-grid figure.gallery-main { grid-column:span 2; height:420px; }
  .gallery-grid figure:last-child { grid-column:span 2; }
  .gallery-grid figcaption { padding:50px 15px 15px; }
  .gallery-grid figcaption small { display:none; }
  .community-visual-grid { margin-top:40px; grid-template-columns:1fr; gap:12px; }
  .community-key { padding:20px; align-items:flex-start; flex-direction:column; gap:8px; }
  .community-key strong { font-size:15px; }
  .plan-tabs { margin-top:40px; overflow-x:auto; }
  .plan-tabs button { flex:0 0 82px; }
  .plan-display { grid-template-columns:1fr; }
  .plan-copy { padding:42px 26px; }
  .plan-copy>strong { font-size:58px; }
  .plan-copy h3 { font-size:21px; }
  .plan-image { min-height:430px; padding:28px 12px; }
  .plan-image img { max-width:100%; max-height:410px; }
  .layout-switch { margin-top:38px; }
  .layout-switch button { flex:1; min-width:0; padding:15px 8px; font-size:12px; }
  .layout-sheet { margin:0 -16px; padding:12px; }
  .layout-sheet img { min-width:760px; }
  .layout-action { margin:0 -16px; padding:20px; align-items:flex-start; flex-direction:column; gap:18px; }
  .layout-action strong { font-size:16px; }
  .layout-action>a { width:100%; justify-content:space-between; }
  .signature-story-grid { grid-template-columns:1fr; gap:44px; }
  .signature-story-copy>p:not(.eyebrow) { font-size:14px; }
  .signature-story-visual,.signature-story-visual>img { min-height:440px; height:440px; }
  .signature-story-visual strong { font-size:21px; }
  .why-badge { margin-bottom:32px; padding:17px; align-items:flex-start; flex-direction:column; gap:8px; }
  .why-badge b { padding-right:0; padding-bottom:8px; border-right:0; border-bottom:1px solid rgba(8,60,53,.24); }
  .why-badge span { font-size:12px; line-height:1.55; }
  .visit-reasons { margin-top:34px; grid-template-columns:1fr; gap:8px; }
  .visit-reasons article { min-height:auto; padding:20px; }
  .value-grid { margin-top:44px; grid-template-columns:1fr 1fr; }
  .value-grid article { min-height:255px; padding:22px 18px; }
  .value-grid strong { margin-top:34px; font-size:39px; }
  .value-grid h3 { margin-top:17px; font-size:18px; }
  .value-grid p { font-size:11px; }
  .day-scene { padding-top:86px; }
  .scene-copy { padding-bottom:42px; grid-template-columns:1fr; gap:22px; }
  .scene-copy .eyebrow { grid-column:auto; }
  .scene-copy p:last-child { font-size:14px; }
  .scene-gallery { grid-template-columns:1fr 1fr; grid-template-rows:380px 230px 260px; }
  .scene-gallery .scene-wide { grid-column:span 2; grid-row:auto; }
  .scene-gallery .scene-detail { grid-column:span 2; }
  .scene-gallery figcaption { padding:65px 18px 18px; }
  .scene-gallery figcaption strong { font-size:17px; }
  .scene-gallery figcaption span { display:none; }
  .scene-note { padding-left:16px; padding-right:16px; font-size:9px; }
  .decision { min-height:600px; }
  .decision>img { object-position:62% center; }
  .decision-overlay { background:linear-gradient(180deg,rgba(0,47,41,.35),rgba(0,47,41,.93) 64%,#00352f); }
  .decision-content { align-self:flex-end; padding-bottom:90px; }
  .decision-content p { font-size:14px; }
  .decision-content>a { width:100%; justify-content:space-between; }
  .visit-grid { grid-template-columns:1fr; gap:48px; }
  .big-phone { font-size:34px; }
  .visit-form { margin:0 -6px; padding:34px 22px; }
  .form-row { grid-template-columns:1fr; gap:0; }
  footer.site-footer { padding-bottom:110px; }
  .footer-top { align-items:flex-end; }
  .footer-top>a:last-child { font-size:21px; }
  .mobile-bar { position:fixed; z-index:60; left:0; right:0; bottom:0; height:64px; display:grid; grid-template-columns:.8fr 1.2fr; color:white; box-shadow:0 -8px 30px rgba(0,0,0,.15); }
  .mobile-bar a { display:grid; place-items:center; background:#183b36; font-size:13px; font-weight:700; }
  .mobile-bar a:last-child { color:#092a26; background:var(--gold); }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }
