@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.css");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&display=swap");

:root{
  --sans:Pretendard,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;
  --serif:Pretendard,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;
  --display:"Cormorant Garamond",Pretendard,serif;
  --text:#f2eee7;
  --muted:#aaa59d;
  --gold:#b99a62;
  --gold2:#d4b77f;
  --line:rgba(185,154,98,.22);
}

html{-webkit-text-size-adjust:100%}
body{
  font-family:var(--sans);
  font-weight:400;
  font-size:16px;
  line-height:1.82;
  letter-spacing:-.026em;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

/* overall editorial rhythm */
.section{padding:138px 0}
.section-heading{max-width:820px;margin-bottom:58px}
.section-heading.narrow{max-width:780px}
.eyebrow{
  margin-bottom:16px;
  color:var(--gold);
  font-family:var(--display);
  font-size:10px;
  line-height:1.4;
  font-weight:500;
  letter-spacing:.2em;
}
.section-heading h2,
.split-heading h2,
.location-copy h2,
.consult-banner h2,
.contact-card h2,
.hero h2,
.quick-points b,
.reason-grid h3,
.type-info h3,
.special-grid h3,
.location-points b,
.footer-grid>div:nth-child(2) b{
  font-family:var(--sans);
  font-weight:300;
  letter-spacing:-.05em;
}
.section-heading h2,
.split-heading h2,
.location-copy h2,
.consult-banner h2,
.contact-card h2{
  font-size:clamp(46px,4.7vw,70px);
  line-height:1.15;
  margin:0 0 24px;
  text-wrap:balance;
}
.section-heading p,
.split-heading>p,
.location-copy>p,
.consult-banner p,
.contact-card p{
  color:#aaa59d;
  font-size:16px;
  line-height:1.95;
  letter-spacing:-.02em;
}

/* header: less chrome, more brand */
.site-header{border-bottom-color:rgba(255,255,255,.045)}
.header-inner{height:76px}
.freeplan-brand strong{font-size:26px;font-weight:500;letter-spacing:.095em}
.freeplan-brand span{font-size:8px;letter-spacing:.32em}
.desktop-nav{gap:31px}
.desktop-nav a{font-size:12px;font-weight:400;color:#bbb6ae;letter-spacing:-.015em}
.header-cta{
  border:0;
  border-bottom:1px solid var(--gold);
  padding:9px 1px 7px;
  border-radius:0;
  font-size:12px;
  font-weight:500;
  letter-spacing:.01em;
}

/* hero */
.hero-copy{padding-top:152px}
.breadcrumb{font-family:var(--display);font-size:10px;letter-spacing:.14em;color:#85817a}
.hero h1{
  font-family:var(--display);
  font-size:clamp(92px,10.5vw,148px);
  font-weight:400;
  line-height:.8;
  letter-spacing:-.028em;
}
.hero h2{font-size:clamp(38px,4vw,60px);line-height:1.18;margin:31px 0 23px}
.hero-lead{font-size:16px;line-height:1.9;color:#c1bcb4}
.hero-chips{gap:0;margin-top:4px}
.hero-chips span{
  border:0;
  border-left:1px solid rgba(185,154,98,.35);
  border-radius:0;
  padding:4px 16px;
  background:transparent;
  color:#c9c2b8;
  font-size:12px;
  font-weight:400;
}
.hero-chips span:first-child{padding-left:0;border-left:0}
.hero-actions{gap:24px;margin-top:34px}
.btn{
  min-height:auto;
  padding:9px 0 8px;
  border:0;
  border-bottom:1px solid rgba(185,154,98,.75);
  border-radius:0;
  background:transparent;
  font-size:13px;
  font-weight:500;
  letter-spacing:-.01em;
  color:#e7dfd2;
}
.btn-primary{background:transparent;color:#e9e2d7}
.btn-primary:hover,.btn-outline:hover{background:transparent;color:var(--gold2)}
.btn-outline{background:transparent;border-color:rgba(255,255,255,.28);color:#c9c3ba}

/* first information band */
.quick-points{
  transform:translateY(-34px);
  border:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:rgba(7,10,12,.95);
}
.quick-points article{padding:31px 28px;border-right:1px solid rgba(185,154,98,.16)}
.quick-points span{font-family:var(--display);font-size:13px;letter-spacing:.12em;color:var(--gold)}
.quick-points b{font-size:17px;font-weight:300;line-height:1.5;margin:13px 0 8px}
.quick-points p{font-size:13px;line-height:1.75;color:#908c85}

/* why */
.reason-grid{
  gap:0;
  background:transparent;
  border:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.reason-grid article{background:transparent;padding:42px 36px 44px;border-right:1px solid rgba(185,154,98,.16)}
.reason-grid article:last-child{border-right:0}
.reason-grid strong{font-family:var(--display);font-size:12px;letter-spacing:.15em;color:var(--gold);font-weight:400}
.reason-grid h3{font-size:23px;font-weight:300;line-height:1.45;margin:18px 0 12px}
.reason-grid p{font-size:15px;line-height:1.9;color:#9c978f}

/* project overview: lines instead of boxes */
.split-heading{margin-bottom:54px;align-items:end}
.split-heading>p{max-width:460px}
.overview-grid{
  grid-template-columns:repeat(2,1fr);
  border:0;
  border-top:1px solid var(--line);
}
.overview-grid dl{
  min-height:auto;
  padding:25px 4px;
  border:0;
  border-bottom:1px solid rgba(185,154,98,.18);
  display:grid;
  grid-template-columns:135px 1fr;
  align-items:start;
  gap:18px;
}
.overview-grid dl:nth-child(odd){padding-right:34px}
.overview-grid dl:nth-child(even){padding-left:34px;border-left:1px solid rgba(185,154,98,.12)}
.overview-grid dt{font-family:var(--display);font-size:10px;line-height:1.6;letter-spacing:.12em;color:#77736d}
.overview-grid dd{font-size:15px;line-height:1.75;color:#ded8ce;font-weight:400}

/* imagery */
.mosaic,.community-grid{gap:3px}
.mosaic img,.community-grid img{transition:transform .9s cubic-bezier(.22,1,.36,1),filter .5s ease}
.mosaic button:hover img,.community-grid figure:hover img{transform:scale(1.018)}
.community-images-only figcaption,.community-grid figcaption{display:none!important}
.section-cta{margin-top:28px}

/* type navigation */
.type-tabs{
  gap:38px;
  border-bottom:1px solid rgba(185,154,98,.22);
  margin-bottom:52px;
}
.type-tabs button{
  flex:0 0 auto!important;
  min-width:0!important;
  min-height:0;
  padding:0 0 18px;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:#73706a;
  font-family:var(--display);
  font-size:16px;
  font-weight:400;
  letter-spacing:.04em;
}
.type-tabs button.active{color:#e9e2d7;border-bottom-color:var(--gold)}
.type-panel{gap:54px}
.floor-card{padding:28px;background:#eeeae3}
.type-info{
  border:0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:34px 0;
}
.type-info>div:first-child{padding-bottom:27px;margin-bottom:7px;border-bottom:1px solid rgba(185,154,98,.18)}
.type-info>div:first-child span{font-family:var(--display);font-size:11px;letter-spacing:.14em;color:var(--gold)}
.type-info h3{font-size:31px;font-weight:300;line-height:1.35;margin:10px 0 8px}
.type-info p{font-size:15px;line-height:1.8;color:#9f9a92}
.type-info dl{padding:16px 0;border-bottom-color:rgba(185,154,98,.12)}
.type-info dt{font-size:13px;color:#817d76}
.type-info dd{font-size:14px;color:#e0dbd2}
.type-note{margin-top:24px;padding:14px 0;border:0;border-top:1px solid rgba(185,154,98,.2);background:transparent;color:#b7aa95;font-size:13px;line-height:1.8}
.interior-strip{gap:3px;margin-top:18px}

/* special design */
.special-grid{gap:24px}
.special-grid article{border:0;border-top:1px solid var(--line);background:transparent}
.special-grid article>div{padding:21px 2px 8px}
.special-grid span{font-family:var(--display);font-size:12px;letter-spacing:.12em;color:var(--gold)}
.special-grid h3{font-size:18px;font-weight:300}

/* location */
.location-copy{background:#0a0c0d}
.location-points{border:0;border-top:1px solid var(--line)}
.location-points article{padding:22px 2px;border:0;border-bottom:1px solid rgba(185,154,98,.16)}
.location-points article:nth-child(odd){padding-right:28px}
.location-points article:nth-child(even){padding-left:28px;border-left:1px solid rgba(185,154,98,.12)}
.location-points b{font-size:16px;font-weight:300;color:#e3d8c5}
.location-points span{font-size:13px;line-height:1.7;color:#8e8982}

/* consultation band */
.consult-banner{padding:115px 0}
.consult-banner>div>div{gap:24px;margin-top:34px}

/* direct contact + form */
.inquiry{gap:54px!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;align-items:start}
body .contact-profile-card{
  border:0!important;
  border-top:1px solid var(--line)!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .contact-profile-image{background:#eadcc8}
body .contact-profile-actions{padding:30px 0 0!important}
body .contact-profile-actions .eyebrow{margin-bottom:14px!important}
body .contact-profile-actions h2{font-size:38px!important;font-weight:300!important;margin-bottom:10px!important}
body .contact-profile-actions .contact-phone{font-family:var(--display);font-size:34px!important;font-weight:400;margin:24px 0 2px!important;color:#e0c289}
body .contact-profile-actions .contact-email{font-size:14px;margin-bottom:18px}
body .contact-profile-actions>p:last-of-type{font-size:13px!important;line-height:1.85!important;color:#908b84!important}
body .contact-profile-buttons{gap:22px!important;margin-top:23px!important}
body .contact-profile-buttons .btn{justify-content:flex-start}
.inquiry form{
  border:0;
  border-top:1px solid var(--line);
  padding:31px 0 0;
  background:transparent;
}
.inquiry label{font-family:var(--display);font-size:10px;font-weight:500;letter-spacing:.12em;color:#a99065;margin-bottom:20px}
.inquiry input,.inquiry select,.inquiry textarea{
  margin-top:8px;
  min-height:54px;
  padding:15px 0;
  border:0;
  border-bottom:1px solid rgba(185,154,98,.26);
  background:transparent;
  color:#f1ece4;
  font-family:var(--sans);
  font-size:16px;
  line-height:1.6;
}
.inquiry input:focus,.inquiry select:focus,.inquiry textarea:focus{border-bottom-color:var(--gold);box-shadow:none}
.inquiry textarea{min-height:112px}
.consent{margin-top:22px}
.consent input{background:#111!important;border:1px solid var(--line)!important}
.privacy-note{font-size:11px;line-height:1.75;color:#66625c}
.submit{
  min-height:58px;
  margin-top:10px;
  border:0;
  background:#b99a62;
  color:#090a09;
  font-size:14px;
  font-weight:600;
}
.form-status{font-size:13px}

/* footer */
.site-footer{border-top-color:rgba(185,154,98,.18)}
.footer-grid>div:nth-child(2){font-size:13px}
.footer-grid>div:nth-child(2) b{font-size:15px;font-weight:300}
.footer-grid p{font-size:11px;line-height:1.8}

.mobile-menu a,.mobile-menu button{font-size:15px;min-height:50px}

@media(max-width:900px){
  .section{padding:104px 0}
  .section-heading h2,.split-heading h2,.location-copy h2,.consult-banner h2,.contact-card h2{font-size:clamp(40px,7vw,54px)}
  .overview-grid{grid-template-columns:1fr}
  .overview-grid dl:nth-child(odd),.overview-grid dl:nth-child(even){padding:23px 0;border-left:0}
  .inquiry{grid-template-columns:1fr!important;gap:52px!important}
  body .contact-profile-card{position:static!important;top:auto!important}
  body .contact-profile-buttons{display:flex!important}
}

@media(max-width:600px){
  body{font-size:15.5px;line-height:1.82;padding-bottom:72px}
  .page-width{width:min(calc(100% - 36px),var(--max))}
  .header-inner{height:62px;width:calc(100% - 36px)}
  .freeplan-brand strong{font-size:21px}

  .hero{height:91svh;min-height:650px}
  .hero-copy{padding-top:112px}
  .breadcrumb{font-size:9px;line-height:1.5;margin-bottom:70px}
  .hero h1{font-size:64px;line-height:.88}
  .hero h2{font-size:30px;line-height:1.27;margin:23px 0 19px}
  .hero-lead{font-size:15px;line-height:1.85}
  .hero-chips{display:block;margin-bottom:25px}
  .hero-chips span{display:inline-block;font-size:11.5px;padding:3px 10px 3px 0;margin:0 8px 6px 0;border-left:0;border-right:1px solid rgba(185,154,98,.28)}
  .hero-chips span:last-child{border-right:0}
  .hero-actions{gap:22px;margin-top:27px}
  .hero-actions .btn{font-size:13px;min-height:0;padding:8px 0}

  .quick-points{
    grid-template-columns:1fr;
    transform:translateY(-22px);
  }
  .quick-points article{padding:22px 0;border-right:0!important;border-bottom:1px solid rgba(185,154,98,.14)!important;display:grid;grid-template-columns:38px 1fr;column-gap:10px}
  .quick-points article:last-child{border-bottom:0!important}
  .quick-points span{grid-row:1/3;font-size:11px;padding-top:3px}
  .quick-points b{font-size:15px;margin:0 0 4px;line-height:1.5}
  .quick-points p{font-size:12.5px;line-height:1.7}

  .section{padding:88px 0}
  .intro-section{padding-top:58px}
  .section-heading{margin-bottom:40px}
  .section-heading h2,.split-heading h2,.location-copy h2,.consult-banner h2,.contact-card h2{font-size:36px;line-height:1.22;letter-spacing:-.055em;margin-bottom:18px}
  .section-heading p,.split-heading>p,.location-copy>p,.consult-banner p,.contact-card p{font-size:15px;line-height:1.9}
  .eyebrow{font-size:9px;margin-bottom:13px}

  .reason-grid{grid-template-columns:1fr}
  .reason-grid article{padding:28px 0;border-right:0;border-bottom:1px solid rgba(185,154,98,.14)}
  .reason-grid article:last-child{border-bottom:0}
  .reason-grid strong{font-size:10px}
  .reason-grid h3{font-size:21px;margin:13px 0 8px}
  .reason-grid p{font-size:14.5px}

  .split-heading{display:block;margin-bottom:36px}
  .split-heading>p{margin-top:12px}
  .overview-grid dl{grid-template-columns:96px 1fr;padding:20px 0!important;gap:14px}
  .overview-grid dt{font-size:9.5px}
  .overview-grid dd{font-size:14px}

  .mosaic{grid-template-rows:230px 140px 140px}
  .community-grid{grid-template-rows:245px 155px 155px}

  .type-tabs{gap:28px;margin-bottom:38px;overflow:visible!important}
  .type-tabs button{flex:0 0 auto!important;min-width:0!important;font-size:14px;padding:0 0 14px}
  .floor-card{min-height:290px;padding:18px}
  .type-info{padding:27px 0}
  .type-info h3{font-size:26px}
  .type-info p{font-size:14.5px}
  .type-info dt{font-size:12px}
  .type-info dd{font-size:13.5px}
  .type-note{font-size:12.5px}
  .interior-strip{grid-template-columns:1fr 1fr;gap:3px}
  .interior-strip img{height:138px}

  .special-grid{gap:12px}
  .special-grid article{min-width:86%}
  .special-grid article>div{padding-top:17px}
  .special-grid h3{font-size:17px}

  .location-image{height:285px}
  .location-copy{padding:68px 18px}
  .location-points{grid-template-columns:1fr}
  .location-points article:nth-child(odd),.location-points article:nth-child(even){padding:17px 0;border-left:0}
  .location-points b{font-size:15px}
  .location-points span{font-size:12.5px}

  .consult-banner{padding:78px 0}
  .consult-banner>div>div{display:flex;gap:22px}

  .inquiry{gap:42px!important}
  body .contact-profile-actions{padding-top:24px!important}
  body .contact-profile-actions h2{font-size:31px!important}
  body .contact-profile-actions .contact-phone{font-size:29px!important}
  body .contact-profile-actions .contact-email{font-size:13.5px}
  body .contact-profile-actions>p:last-of-type{font-size:12.5px!important}
  body .contact-profile-buttons{display:flex!important;gap:18px!important}
  .inquiry form{padding-top:28px}
  .form-row{grid-template-columns:1fr}
  .inquiry label{font-size:9.5px}
  .inquiry input,.inquiry select,.inquiry textarea{font-size:16px;min-height:54px}
  .submit{min-height:56px;font-size:14px}

  .sticky-actions{height:68px;background:rgba(8,10,11,.96);backdrop-filter:blur(14px)}
  .sticky-actions a,.sticky-actions button{font-size:11px}
  .sticky-actions span{font-size:16px}
  .sticky-actions b{font-weight:400}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
