/* 두정역 푸르지오 그랑피크 — 원본 틀 위에 우리가 더한 것만 (2026-10-20)
   원본 색(딥그린 #004e50 · 브론즈 #8c6f50 · 샌드 #c7a786)과 글꼴(PT=Pretendard, GG, jost)을 그대로 따릅니다.
   ⚠ 원본 CSS(common·main_new·sub)는 고치지 않습니다. 바꿀 것은 여기서 덮어씁니다. */

/* 원본 영문 글꼴은 Adobe Typekit(푸르지오 도메인 전용)이라 비슷한 무료 글꼴로 받칩니다 (OFL) */
@font-face{font-family:"jost";src:url("/assets/fonts/Jost.woff2") format("woff2");font-weight:300 600;font-display:swap}
@font-face{font-family:"futura-pt";src:url("/assets/fonts/Jost.woff2") format("woff2");font-weight:300 600;font-display:swap}
@font-face{font-family:"trajan-pro-3";src:url("/assets/fonts/Cinzel.woff2") format("woff2");font-weight:400 600;font-display:swap}

:root{--gp-g:#1d2f4a;--gp-g2:#16263c;--gp-b:#8a6528;--gp-b2:#6b4f22;--gp-s:#d4b47a;--gp-ink:#111;--gp-mute:#5e6466;--gp-line:#e3e0da;--gp-bg:#f6f4f0;--gp-ease:cubic-bezier(.2,.7,.2,1)}

/* ── 그림만 있던 서브 페이지 위의 짧은 글 ── */
.gp-intro{max-width:1100px;margin:0 auto 56px;padding:0 20px;text-align:center}
.gp-intro__t{font-family:PT,sans-serif;font-size:clamp(22px,2.4vw,30px);font-weight:700;letter-spacing:-.04em;color:var(--gp-g);line-height:1.4;margin-bottom:14px}
.gp-intro__p{font-family:PT,sans-serif;font-size:clamp(15px,1.3vw,17px);color:var(--gp-mute);line-height:1.85;letter-spacing:-.02em;word-break:keep-all}
.gp-intro__p b{color:var(--gp-ink)}
.gp-intro__p a,.gp-card a,.gp-steps a,.gp-note a,.gp-faq a{color:var(--gp-g);text-decoration:underline;text-underline-offset:3px}

/* ── 지역조감 VR · E모델하우스 — 한 화면 안에 들어오게 (사장님 「너무 차 있어서 한눈에 보는 게 좀」) ── */
.sub-content-box .video-container{width:min(100%,1180px,calc((100svh - 190px) * 16 / 9))!important;max-width:none!important;padding-bottom:0!important;aspect-ratio:16/9;height:auto!important;margin:0 auto!important;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(16,28,48,.16);background:#16263c}
.sub-content-box .video-container>iframe{border:0}
.sub-content-box .tabs{max-width:1180px;margin-left:auto;margin-right:auto}
.sub-content-box .btn-box{max-width:min(100%,1180px,calc((100svh - 190px) * 16 / 9));margin:0 auto}
.gp-vrbar{text-align:center;margin:16px 0 0}
.gp-vrbig{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;border-radius:99px;border:1px solid var(--gp-g);color:var(--gp-g);font-family:PT,sans-serif;font-size:15px;font-weight:600;transition:background .3s,color .3s}
.gp-vrbig:hover{background:var(--gp-g);color:#fff}
@media (max-width:1200px){
  .sub-content-box .video-container{width:min(100%,calc(64svh * 4 / 5))!important;aspect-ratio:4/5!important}
  .sub-content-box .btn-box{max-width:min(100%,calc(64svh * 4 / 5))}
}

/* ── 새 페이지 공통 ── */
.gp-page{font-family:PT,sans-serif;color:var(--gp-ink);letter-spacing:-.02em}
.gp-wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.gp-sec{margin-top:clamp(70px,9vw,120px)}
.gp-eng{font-family:jost,sans-serif;font-size:13px;font-weight:500;letter-spacing:.32em;color:var(--gp-b);margin-bottom:10px}
.gp-h2{font-family:PT,sans-serif;font-size:clamp(26px,3.2vw,40px);font-weight:300;letter-spacing:-.05em;line-height:1.3;color:var(--gp-ink);margin-bottom:18px}
.gp-h2 b{font-weight:700;color:var(--gp-g)}
.gp-p{font-size:clamp(15.5px,1.3vw,17px);color:var(--gp-mute);line-height:1.85;margin-bottom:24px;max-width:46em}
.gp-note{font-size:13.5px;color:#777;line-height:1.7;margin-top:18px}
.gp-cta{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
.gp-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 30px;border-radius:99px;font-family:PT,sans-serif;font-size:16px;font-weight:600;border:1px solid transparent;transition:background .3s,color .3s,transform .35s var(--gp-ease),box-shadow .35s var(--gp-ease);cursor:pointer}
.gp-btn::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-22deg);transition:left .8s var(--gp-ease)}
.gp-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(16,28,48,.18)}
.gp-btn:hover::after{left:130%}
.gp-btn--fill{background:var(--gp-g);color:#fff}
.gp-btn--fill:hover{background:var(--gp-g2)}
.gp-btn--line{border-color:var(--gp-g);color:var(--gp-g);background:#fff}
.gp-btn--line:hover{background:var(--gp-g);color:#fff}

/* 표 */
.gp-tbl{overflow-x:auto;border-top:2px solid var(--gp-g);-webkit-overflow-scrolling:touch}
.gp-tbl table{width:100%;min-width:720px;border-collapse:collapse;font-variant-numeric:tabular-nums}
.gp-tbl th,.gp-tbl td{padding:16px 12px;border-bottom:1px solid var(--gp-line);text-align:right;font-size:15.5px}
.gp-tbl thead th{background:var(--gp-bg);font-size:13.5px;color:var(--gp-mute);font-weight:600}
.gp-tbl th:first-child{text-align:left}
.gp-tbl tbody th{color:var(--gp-g);font-weight:700;font-size:17px}
.gp-tbl tbody tr{transition:background .2s}
.gp-tbl tbody tr:hover{background:var(--gp-bg)}
.gp-tbl caption{caption-side:bottom;text-align:left;font-size:13px;color:#777;padding-top:10px}
.gp-spec{border-top:2px solid var(--gp-g);margin:6px 0 10px}
.gp-spec__r{display:grid;grid-template-columns:7.5em 1fr;gap:16px;padding:15px 4px;border-bottom:1px solid var(--gp-line);font-size:15.5px}
.gp-spec__r span{color:var(--gp-mute)}
.gp-spec__r b{font-weight:600}
.gp-spec__r a{color:var(--gp-g)}

/* 카드 */
.gp-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gp-card{position:relative;background:#fff;border:1px solid var(--gp-line);border-radius:14px;padding:28px 24px;transition:transform .45s var(--gp-ease),box-shadow .45s var(--gp-ease),border-color .3s}
.gp-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(16,28,48,.12);border-color:var(--gp-s)}
.gp-card i{display:block;font-style:normal;font-family:jost,sans-serif;font-size:34px;font-weight:300;color:var(--gp-s);line-height:1;margin-bottom:14px}
.gp-card h3{font-size:19px;font-weight:700;margin-bottom:8px;color:var(--gp-g)}
.gp-card p{font-size:15px;color:var(--gp-mute);line-height:1.7}
.gp-steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gp-steps li{counter-increment:s;background:var(--gp-bg);border-radius:14px;padding:26px 24px}
.gp-steps li::before{content:"0" counter(s);display:block;font-family:jost,sans-serif;font-size:38px;font-weight:300;color:var(--gp-b);line-height:1;margin-bottom:12px}
.gp-steps b{display:block;font-size:18px;margin-bottom:6px}
.gp-steps span{font-size:15px;color:var(--gp-mute);line-height:1.7}

/* 지도·두 칸 */
.gp-duo{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,5vw,70px);align-items:start}
.gp-map{position:relative;aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:var(--gp-bg);border:1px solid var(--gp-line)}
.gp-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gp-maplinks{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.gp-maplinks a{padding:9px 18px;border-radius:99px;border:1px solid var(--gp-line);font-weight:600;font-size:14.5px;transition:background .25s,color .25s,border-color .25s}
.gp-maplinks a:hover{background:var(--gp-g);border-color:var(--gp-g);color:#fff}

/* 자주 묻는 질문 */
.gp-faq{border-top:2px solid var(--gp-g);max-width:980px}
.gp-faq__it{border-bottom:1px solid var(--gp-line)}
.gp-faq__it summary{list-style:none;cursor:pointer;position:relative;padding:22px 50px 22px 4px;font-size:clamp(16.5px,1.6vw,19px);font-weight:600;line-height:1.5}
.gp-faq__it summary::-webkit-details-marker{display:none}
.gp-faq__it summary::after{content:"+";position:absolute;right:8px;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:var(--gp-bg);color:var(--gp-g);font-size:20px;line-height:30px;text-align:center;transition:transform .35s var(--gp-ease)}
.gp-faq__it[open] summary::after{transform:rotate(45deg)}
.gp-faq__it p{padding:0 4px 22px;color:var(--gp-mute);line-height:1.85;animation:gpin .45s var(--gp-ease)}
@keyframes gpin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* 관심고객등록 */
.gp-reg{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(28px,5vw,80px);align-items:start}
.gp-ticks{margin:6px 0 26px}
.gp-ticks li{position:relative;padding-left:26px;margin:9px 0;color:var(--gp-mute)}
.gp-ticks li::before{content:"";position:absolute;left:3px;top:.5em;width:11px;height:6px;border-left:2px solid var(--gp-b);border-bottom:2px solid var(--gp-b);transform:rotate(-45deg)}
.gp-tel{display:inline-flex;flex-direction:column;padding:18px 26px;border-radius:14px;background:var(--gp-g);color:#fff;font-family:jost,PT,sans-serif;font-size:clamp(24px,2.6vw,30px);font-weight:500;letter-spacing:.02em}
.gp-tel small{font-family:PT,sans-serif;font-size:13px;color:var(--gp-s);letter-spacing:0}
.gp-form{display:grid;gap:16px;background:#fff;border:1px solid var(--gp-line);border-radius:16px;padding:clamp(22px,3vw,38px);box-shadow:0 24px 60px rgba(16,28,48,.1)}
.gp-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gp-field label{display:block;font-weight:600;font-size:15px;margin-bottom:7px}
.gp-field em{font-style:normal;color:var(--gp-b2)}
.gp-field input,.gp-field select,.gp-field textarea{width:100%;font:inherit;font-size:16px;color:var(--gp-ink);background:var(--gp-bg);border:1.5px solid transparent;border-radius:10px;padding:13px 15px;min-height:52px;transition:border-color .2s,background .2s}
.gp-field textarea{min-height:110px;resize:vertical}
.gp-field input:focus,.gp-field select:focus,.gp-field textarea:focus{outline:0;border-color:var(--gp-g);background:#fff}
.gp-agree{background:var(--gp-bg);border-radius:10px;padding:14px 16px;font-size:13.5px;color:var(--gp-mute);line-height:1.7}
.gp-agree a{color:var(--gp-g);text-decoration:underline}
.gp-check{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:15px;color:var(--gp-ink);font-weight:600;cursor:pointer}
.gp-check input{width:20px;height:20px;accent-color:var(--gp-g)}
.gp-form .gp-btn{width:100%;min-height:58px;font-size:17px}
.gp-form__msg{min-height:1.5em;font-weight:600;text-align:center}
.gp-form__msg.is-ok{color:#1d6a3a}
.gp-form__msg.is-bad{color:#a12c1e}

/* 소식 */
.gp-news{max-width:980px;margin:0 auto;border-top:2px solid var(--gp-g)}
.gp-news__it a{display:grid;grid-template-columns:7em 1fr;gap:4px 20px;padding:24px 6px;border-bottom:1px solid var(--gp-line);transition:background .25s,padding .35s var(--gp-ease)}
.gp-news__it a:hover{background:var(--gp-bg);padding-left:16px}
.gp-news__it time{grid-row:span 2;font-family:jost,sans-serif;color:var(--gp-b);font-size:15px}
.gp-news__it b{font-size:clamp(17px,1.7vw,20px);font-weight:700;line-height:1.45}
.gp-news__it span{font-size:15px;color:var(--gp-mute)}
.gp-post{max-width:820px}
.gp-post__date{font-family:jost,PT,sans-serif;color:var(--gp-b);font-size:14px;margin-bottom:10px}
.gp-post__t{font-size:clamp(26px,3.4vw,38px);font-weight:700;letter-spacing:-.04em;line-height:1.35;padding-bottom:26px;margin-bottom:30px;border-bottom:2px solid var(--gp-g)}
.gp-post__body h3{font-size:clamp(19px,2vw,23px);font-weight:700;margin:38px 0 12px;color:var(--gp-g)}
.gp-post__body p{margin-bottom:16px;color:#333;font-size:17px;line-height:1.95}
.gp-post__note{margin-top:36px;padding:18px 20px;border-radius:12px;background:var(--gp-bg);font-size:14px;color:var(--gp-mute)}
.gp-post__nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}

.gp-plain{max-width:820px;font-size:16px;line-height:1.85;color:#333}
.gp-plain h2{font-size:20px;font-weight:700;margin:32px 0 8px;color:var(--gp-g)}
.gp-lost{text-align:center;padding:40px 20px}
.gp-lost__n{font-family:jost,sans-serif;font-size:clamp(90px,16vw,170px);font-weight:300;color:var(--gp-s);line-height:1}

/* ══ 계약자 이벤트 ══════════════════════════════ */
/* 첫 화면 두 번째 칸 — 원본 일정판 틀(schedule-*) 그대로, 사진만 더함 */
.gp-ev .schedule-table > li{justify-content:center;line-height:1.35;word-break:keep-all}
.gp-ev .schedule-table > li b{display:block;font-family:jost,HG,sans-serif;letter-spacing:.06em}
.gp-ev__pic{display:block;width:min(520px,80vw);margin:0 auto 26px;border-radius:16px;overflow:hidden;box-shadow:0 26px 60px rgba(16,28,48,.22)}
.gp-ev__pic img{width:100%;height:auto;display:block;transition:transform 6s ease}
.visual-slide.t2 .gp-ev__pic img{transform:scale(1.06)}
.gp-ev .schedule-desc{text-align:center;max-width:30em;line-height:1.6}
.gp-ev .schedule-desc b{color:var(--gp-g)}
.gp-ev--after .schedule-tit-box{margin:0 auto}
@media (max-width:1200px){
  .gp-ev .schedule-tit-box{padding-top:40px}
  .gp-ev__pic{width:100%;margin-bottom:18px}
  .gp-ev .schedule-table > li{min-height:0}
}

/* 포스터 — 그림은 새로 만든 것, 글씨는 HTML */
.gp-poster{position:relative;overflow:hidden;background:radial-gradient(120% 70% at 50% 0%,#f7f6f2 0%,#ece8de 55%,#e2dccd 100%);border-radius:16px;padding:26px 22px 20px;text-align:center;color:var(--gp-ink);font-family:PT,sans-serif;letter-spacing:-.03em}
.gp-poster::before,.gp-poster::after{content:"";position:absolute;inset:-20% 0 auto;height:140%;pointer-events:none;background-image:
  radial-gradient(4px 9px at 12% 8%,#1d2f4a 98%,transparent),radial-gradient(5px 10px at 82% 14%,#c9a45c 98%,transparent),
  radial-gradient(4px 8px at 30% 26%,#c9a45c 98%,transparent),radial-gradient(5px 9px at 66% 32%,#1d2f4a 98%,transparent),
  radial-gradient(4px 9px at 90% 46%,#1d2f4a 98%,transparent),radial-gradient(4px 8px at 8% 52%,#c9a45c 98%,transparent);
  animation:gpconf 9s linear infinite;opacity:.7}
.gp-poster::after{animation-delay:-4.5s;transform:scaleX(-1)}
@keyframes gpconf{from{transform:translateY(-30%) rotate(0)}to{transform:translateY(30%) rotate(8deg)}}
.gp-poster>*{position:relative;z-index:1}
.gp-poster__brand{font-family:trajan-pro-3,serif;font-size:26px;letter-spacing:.24em;color:var(--gp-g);padding-left:.24em}
.gp-poster__site{font-size:14px;font-weight:600;color:#2c3442;margin-top:2px}
.gp-poster__sub{font-size:19px;font-weight:700;color:var(--gp-g);margin-top:16px}
.gp-poster__big{font-size:34px;font-weight:800;color:var(--gp-g2);line-height:1.15;letter-spacing:-.04em}
.gp-poster__big b{font-family:jost,sans-serif;font-weight:600;letter-spacing:.01em;background:linear-gradient(100deg,#16263c 20%,#b08a4a 45%,#16263c 70%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gpshine 4s linear infinite}
@keyframes gpshine{from{background-position:120% 0}to{background-position:-120% 0}}
.gp-poster__lead{font-size:14.5px;color:#333;margin-top:6px}
.gp-poster__lead b{color:var(--gp-g)}
.gp-poster__pic{display:block;margin:14px -22px 0;aspect-ratio:16/11;overflow:hidden}
.gp-poster__pic img{width:100%;height:100%;object-fit:cover;object-position:50% 58%;animation:gpzoom 12s ease-in-out infinite alternate}
@keyframes gpzoom{from{transform:scale(1)}to{transform:scale(1.07)}}
.gp-poster__card{position:relative;margin:-26px 0 0;background:#fff;border-radius:14px;padding:16px 16px 14px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;text-align:left;box-shadow:0 14px 30px rgba(16,28,48,.14)}
.gp-poster__tag{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:99px;background:var(--gp-g2);color:#fff;font-size:14px;font-weight:700}
.gp-poster__list{display:grid;gap:6px;counter-reset:none;padding:0;margin:0;list-style:none}
.gp-poster__list li{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#222}
.gp-poster__list i{flex:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:22px;border-radius:99px;background:linear-gradient(135deg,#e9a23b,#f3c56a);color:#fff;font-style:normal;font-size:11.5px;font-weight:800}
.gp-poster__note{margin:12px 0 0;padding:0;list-style:none;text-align:left}
.gp-poster__note li{position:relative;padding-left:11px;font-size:10.5px;line-height:1.5;color:#5a5f66;margin:2px 0}
.gp-poster__note li::before{content:"※";position:absolute;left:0;font-size:9px}
.gp-poplink{display:block}
/* 팝업 안 — 원본 팝업 칸(350px)에 맞춤 */
.popup-slide .swiper-slide .gp-poster--pop{width:350px;max-width:100%}
@media (max-height:760px){.gp-poster--pop .gp-poster__note{display:none}.gp-poster--pop .gp-poster__pic{aspect-ratio:16/9}}
/* 이벤트 페이지 */
.gp-ev-page{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}
.gp-ev-page__poster .gp-poster{box-shadow:0 30px 70px rgba(16,28,48,.18)}
.gp-prize{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 26px}
.gp-prize__it{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--gp-line);border-radius:12px;background:#fff;transition:transform .4s var(--gp-ease),border-color .3s,box-shadow .4s}
.gp-prize__it:hover{transform:translateY(-4px);border-color:var(--gp-s);box-shadow:0 16px 30px rgba(16,28,48,.1)}
.gp-prize__it i{flex:none;font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#e9a23b,#f3c56a);color:#fff;font-weight:800;font-size:14px}
.gp-prize__it:first-child i{background:linear-gradient(135deg,#16263c,#3a5276)}
.gp-prize__it b{font-size:17px;line-height:1.35}
.gp-ev-page .gp-cta{justify-content:flex-start}

/* ── 떠 있는 버튼 (원본엔 없음 — 전화·문자·관심고객등록) ── */
.gp-dock{position:fixed;right:22px;bottom:22px;z-index:9000;display:flex;flex-direction:column;gap:8px;font-family:PT,sans-serif}
.gp-dock__b{position:relative;display:flex;align-items:center;gap:9px;height:52px;padding:0 22px 0 16px;border-radius:99px;background:#fff;color:var(--gp-g);font-weight:700;font-size:15px;letter-spacing:-.03em;box-shadow:0 12px 30px rgba(16,28,48,.22);transition:transform .35s var(--gp-ease)}
.gp-dock__b:hover{transform:translateX(-4px)}
.gp-dock__b--tel{background:var(--gp-g);color:#fff}
.gp-dock__b--tel::before{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid var(--gp-g);animation:gpripple 2.4s ease-out infinite;pointer-events:none}
@keyframes gpripple{from{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.18,1.45)}}
.gp-dock__b--go{background:var(--gp-b);color:#fff}
.gp-dock__b--vr{background:#fff;color:var(--gp-g)}
.gp-ico{width:22px;height:22px;flex:none;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.gp-ico--tel{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 3.5 9 3l1.8 4.3-2.1 1.6a12 12 0 0 0 6.4 6.4l1.6-2.1L21 15l-.5 2.4A2.5 2.5 0 0 1 18 19.5 15.5 15.5 0 0 1 4.5 6 2.5 2.5 0 0 1 6.6 3.5Z' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'/%3E%3C/svg%3E");animation:gpring 3.4s ease-in-out infinite}
.gp-ico--vr{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3 3 8v8l9 5 9-5V8l-9-5Zm0 0v18M3 8l9 5 9-5' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E")}
.gp-ico--sms{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 5h16v11H9l-5 4V5Z' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'/%3E%3C/svg%3E")}
.gp-ico--pen{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20h4L19 9l-4-4L4 16v4Z M13.5 6.5l4 4' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'/%3E%3C/svg%3E")}
@keyframes gpring{0%,8%,100%{transform:none}2%{transform:rotate(-16deg)}4%{transform:rotate(14deg)}6%{transform:rotate(-8deg)}}
body.fixed .gp-dock{opacity:0;pointer-events:none}

/* ── 푸터 ── */
.footer-list a{color:inherit}
.gp-made{margin-top:10px;font-size:12px}
.gp-made a{color:#8a8a8a;text-decoration:none}
.gp-made a:hover{color:#555;text-decoration:underline}

@media (max-width:1200px){
  .gp-cards{grid-template-columns:repeat(2,1fr)}
  .gp-ev-page{grid-template-columns:1fr}
  .gp-ev-page__poster{max-width:420px;margin:0 auto}
}
@media (max-width:900px){
  .gp-duo,.gp-reg{grid-template-columns:1fr}
  .gp-steps{grid-template-columns:1fr}
  .gp-form__row{grid-template-columns:1fr}
  .gp-dock{left:0;right:0;bottom:0;flex-direction:row;gap:0;background:#fff;box-shadow:0 -6px 22px rgba(16,28,48,.14)}
  .gp-dock__b{display:flex;flex:1 1 0;min-width:0;height:60px;border-radius:0;padding:0 4px;justify-content:center;flex-direction:column;gap:2px;font-size:13px;box-shadow:none}
  .gp-dock__b:hover{transform:none}
  .gp-dock__b--tel::before{display:none}
  body{padding-bottom:60px}
}
@media (max-width:560px){
  .gp-cards,.gp-prize{grid-template-columns:1fr}
  .gp-spec__r{grid-template-columns:1fr;gap:2px}
  .popup-slide .swiper-slide .gp-poster--pop{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .gp-poster::before,.gp-poster::after,.gp-poster__pic img,.gp-poster__big b,.gp-ico--tel,.gp-dock__b--tel::before{animation:none}
}

/* ── 2026-10-20 「좀 다르게」 — 우리 글씨 로고는 원본보다 길어서 칸을 넓힙니다 ── */
.main-logo{width:400px!important}
@media (max-width:1200px){.main-logo{width:min(260px,58vw)!important}}
.sub-title-box .sub-title{color:#1d2f4a}

/* ══ 움직임을 원본과 다르게 (2026-10-20 사장님 「애니 효과 좀 다르게」) ══════════
   원본: 글자가 제자리에서 옅게 나타남 · 사진이 1.25 배에서 3초 줌아웃 · 넘김 1.4초 부드럽게
   우리: 글자가 흐림을 걷으며 아래에서 솟음 · 사진이 비스듬히 더 천천히 다가옴 · 넘김은 빠르게 들어가 천천히 멈춤(main_new.js 를 build 가 고침)
   ⚠ 원본 숨김/보임 규칙은 건드리지 않고 「보일 때 한 번 더」 얹기만 합니다 — 원본이 안 켜도 글자가 흐린 채 남지 않게. */

/* 첫 화면 시작 효과(하늘이 열림) 빼기 — gp.js 가 처음 0.12초만 붙입니다 */
.gp-skip .main-visual-new,.gp-skip .main-visual-new *,.gp-skip .header,.gp-skip .header *{transition:none!important;animation-delay:0s!important}
/* 대신 첫 화면 글씨가 살짝 솟아오르며 들어옵니다 */
.main-visual-new.gp-in .visual-tit-box-new{animation:gprise 1.3s cubic-bezier(.16,1,.3,1) both}
.main-visual-new.gp-in .visual-apt{animation:gpapt 2.2s cubic-bezier(.16,1,.3,1) both}
@keyframes gprise{from{opacity:0;translate:0 34px;filter:blur(8px)}to{opacity:1;translate:0 0;filter:none}}
@keyframes gpapt{from{translate:0 6%;scale:1.04}to{translate:0 0;scale:1}}

/* 섹션 제목 글자 — 흐림을 걷으며 솟아오름 */
.fp-section.active .lounge-tit .char,.fp-section.active .design-tit .char,.main-lounge.active .lounge-tit .char{display:inline-block;animation:gpchar 1.1s cubic-bezier(.16,1,.3,1) calc(var(--i,0) * .035s + .35s) both}
@keyframes gpchar{from{filter:blur(10px);translate:0 .55em;rotate:6deg}to{filter:none;translate:0 0;rotate:0deg}}

/* 사진 — 정면 줌아웃 대신 비스듬히 천천히 */
.lounge-bg > img{transform-origin:28% 62%!important;transition-duration:6s!important}
.location-bg > img{transform-origin:70% 40%;transition-duration:5s!important}
.fp-section.active .design-bg > img{animation:gpdrift 14s ease-in-out infinite alternate}
@keyframes gpdrift{from{scale:1;translate:0 0}to{scale:1.07;translate:-1.5% 0}}

/* 서브 페이지 머리 — 배경이 옆으로 흐르고, 영문 제목에 금빛 줄 */
.sub-title-bg{animation:gppan 22s ease-in-out infinite alternate!important}
@keyframes gppan{from{background-position:0% 50%;scale:1.06}to{background-position:100% 50%;scale:1}}
.sub-title{position:relative}
.sub-title::after{content:"";position:absolute;left:50%;bottom:-10px;width:56px;height:2px;margin-left:-28px;background:linear-gradient(90deg,transparent,#c9a45c,transparent);transform:scaleX(0);animation:gpline 1.4s cubic-bezier(.16,1,.3,1) 1.6s forwards}
@keyframes gpline{to{transform:scaleX(1)}}

/* 그림 페이지 — 그림이 아래에서 떠오르며 들어옴 */
.sub-content-img{animation:gpimg 1.2s cubic-bezier(.16,1,.3,1) .3s both}
@keyframes gpimg{from{opacity:0;translate:0 40px}to{opacity:1;translate:0 0}}

@media (prefers-reduced-motion:reduce){
  .main-visual-new.gp-in .visual-tit-box-new,.main-visual-new.gp-in .visual-apt,.fp-section.active .lounge-tit .char,.fp-section.active .design-tit .char,
  .fp-section.active .design-bg > img,.sub-title-bg,.sub-title::after,.sub-content-img{animation:none!important}
  .sub-title::after{transform:none}
}

/* ══ 2026-10-20 「너무 똑같다」 2차 — 제목 글꼴·나타나는 효과·새 서브 화면 ══════════ */

/* 원본 제목 글꼴 GG(바탕체 계열)를 Pretendard 로 — 같은 이름을 뒤에서 다시 정의하면 이쪽이 이깁니다 */
@font-face{font-family:GG;src:url("/assets/fonts/Pretendard-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:GG;src:url("/assets/fonts/Pretendard-Bold.woff2") format("woff2");font-weight:700;font-display:swap}

/* 나타나는 효과 — 원본(아래에서 옅게 솟음) 대신: 흐림을 걷으며 살짝 커지고, 사진은 가운데서 열림 */
[data-aos]{transition-timing-function:cubic-bezier(.16,1,.3,1)!important;transition-property:opacity,transform,filter,clip-path!important}
[data-aos=fade-up]{transform:translate3d(0,46px,0) scale(.965)!important;filter:blur(8px)}
[data-aos=fade-left]{transform:translate3d(60px,0,0)!important;filter:blur(6px)}
[data-aos].aos-animate{transform:none!important;filter:none}
.gp-hero-fig[data-aos],.gp-pair figure[data-aos],.gp-comm__it[data-aos],.gp-p6__it[data-aos],.gp-mapfig[data-aos]{clip-path:inset(10% 8% 10% 8% round 16px);filter:none}
.gp-hero-fig[data-aos].aos-animate,.gp-pair figure[data-aos].aos-animate,.gp-comm__it[data-aos].aos-animate,.gp-p6__it[data-aos].aos-animate,.gp-mapfig[data-aos].aos-animate{clip-path:inset(0 0 0 0 round 16px)}
.gp-comm__it:nth-child(3n+2),.gp-p6__it:nth-child(2n),.gp-plan4__it:nth-child(2){transition-delay:.12s!important}
.gp-comm__it:nth-child(3n),.gp-plan4__it:nth-child(3){transition-delay:.24s!important}
.gp-plan4__it:nth-child(4){transition-delay:.36s!important}

.gp-cg{position:absolute;right:12px;bottom:12px;font-size:11px;font-weight:700;letter-spacing:.06em;color:#fff;background:rgba(16,28,48,.5);padding:2px 9px;border-radius:99px}
.gp-intro--l{text-align:left;margin-left:0;padding:0;max-width:none}
.gp-cta--l{justify-content:flex-start}
.gp-cards--3{grid-template-columns:repeat(3,1fr)}
.gp-duo--top{align-items:start}
.gp-hero-fig{position:relative;border-radius:16px;overflow:hidden;margin:0 0 clamp(40px,6vw,80px)}
.gp-hero-fig img{width:100%;height:auto;display:block;transition:transform 8s ease}
.gp-hero-fig:hover img{transform:scale(1.04)}
.gp-hero-fig .gp-cap{position:absolute;left:0;right:0;bottom:0;padding:40px 24px 18px;background:linear-gradient(0deg,rgba(16,28,48,.78),transparent);color:#fff;font-size:15px}
.gp-hero-fig .gp-cap b{display:block;font-size:20px;margin-bottom:2px}
.gp-hero-fig .gp-cap .gp-cg{position:static;margin-left:8px}

.gp-nums{display:flex;gap:clamp(18px,4vw,48px);margin-top:10px}
.gp-nums div{border-top:2px solid var(--gp-b);padding-top:12px}
.gp-nums b{display:block;font-family:jost,sans-serif;font-size:clamp(34px,4vw,52px);font-weight:300;color:var(--gp-g);line-height:1}
.gp-nums span{font-size:14px;color:var(--gp-mute)}

.gp-p6{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(18px,2.4vw,32px)}
.gp-p6__it{position:relative;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--gp-line)}
.gp-p6__it img{width:100%;aspect-ratio:16/8.5;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.gp-p6__it:hover img{transform:scale(1.06)}
.gp-p6__it>div{position:relative;padding:22px 26px 26px}
.gp-p6__it i{position:absolute;right:22px;top:-34px;font-style:normal;font-family:jost,sans-serif;font-size:56px;font-weight:300;color:#fff;text-shadow:0 4px 18px rgba(0,0,0,.35)}
.gp-p6__it h3{font-size:clamp(19px,1.8vw,23px);font-weight:700;color:var(--gp-g);margin-bottom:6px}
.gp-p6__it p:not(.gp-eng){color:var(--gp-mute);font-size:15.5px}

.gp-mapfig{position:relative;margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--gp-line)}
.gp-mapfig img{width:100%;height:auto;display:block}
.gp-mapfig figcaption{position:absolute;right:12px;bottom:12px;font-size:12px;background:rgba(255,255,255,.9);padding:4px 10px;border-radius:99px}
.gp-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,3vw,40px)}
.gp-place h3{font-size:24px;font-weight:700;color:var(--gp-g);margin:4px 0 6px}
.gp-place .gp-map{aspect-ratio:16/10;margin-bottom:20px}
.gp-place small{color:var(--gp-mute)}

.gp-plan4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:30px 0 clamp(40px,6vw,70px)}
.gp-plan4__it{position:relative;padding:26px 22px;border-radius:14px;background:linear-gradient(160deg,#fff,var(--gp-bg));border:1px solid var(--gp-line);overflow:hidden}
.gp-plan4__it::after{content:"";position:absolute;left:0;bottom:0;height:3px;width:100%;background:linear-gradient(90deg,var(--gp-s),transparent);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.gp-plan4__it:hover::after{transform:scaleX(1)}
.gp-plan4__it i{font-style:normal;font-family:jost,sans-serif;font-size:15px;letter-spacing:.2em;color:var(--gp-b)}
.gp-plan4__it h3{font-size:19px;font-weight:700;color:var(--gp-g);margin:10px 0 8px}
.gp-plan4__it p{font-size:15px;color:var(--gp-mute);line-height:1.7}

.gp-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,26px)}
.gp-pair figure{position:relative;margin:0;border-radius:16px;overflow:hidden}
.gp-pair img{width:100%;aspect-ratio:16/9.2;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.gp-pair figure:hover img{transform:scale(1.06)}
.gp-pair figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 20px 14px;background:linear-gradient(0deg,rgba(16,28,48,.75),transparent);color:#fff;font-size:14.5px}
.gp-pair figcaption b{font-size:17px;margin-right:6px}
.gp-pair figcaption .gp-cg{position:static;margin-left:6px}

.gp-comm{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.6vw,20px)}
.gp-comm__it{position:relative;margin:0;border-radius:14px;overflow:hidden;background:#111}
.gp-comm__it img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;opacity:.92;transition:transform 1.6s cubic-bezier(.16,1,.3,1),opacity .4s}
.gp-comm__it:hover img{transform:scale(1.08);opacity:.7}
.gp-comm__it figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 18px 16px;background:linear-gradient(0deg,rgba(10,18,32,.85),transparent);color:#fff}
.gp-comm__it figcaption b{display:block;font-size:18px}
.gp-comm__it figcaption span{display:block;font-size:13.5px;color:rgba(255,255,255,.8);max-height:0;overflow:hidden;transition:max-height .5s ease}
.gp-comm__it:hover figcaption span{max-height:3em}
@media (hover:none){.gp-comm__it figcaption span{max-height:3em}}

.gp-tabs{display:flex!important;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 auto 34px!important;border:0!important}
.gp-tabs li{flex:0 0 auto!important;width:auto!important;min-width:96px;padding:12px 20px!important;border-radius:99px!important;border:1.5px solid var(--gp-line)!important;background:#fff!important;color:var(--gp-mute)!important;font-family:PT,sans-serif;font-size:16px!important;font-weight:600;text-align:center;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s}
.gp-tabs li:hover{transform:translateY(-2px);border-color:var(--gp-s)!important}
.gp-tabs li.current{background:var(--gp-g)!important;border-color:var(--gp-g)!important;color:#fff!important}
.gp-page .tab-area{display:none}
.gp-page .tab-area.current{display:block;animation:gpin .7s cubic-bezier(.16,1,.3,1)}

.gp-unit{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(24px,4vw,60px);align-items:center}
.gp-unit__fig{margin:0;background:#fbfaf7;border:1px solid var(--gp-line);border-radius:16px;padding:clamp(14px,2vw,30px)}
.gp-unit__fig img{width:100%;height:auto;display:block}
.gp-unit__fig figcaption{font-size:12.5px;color:#777;margin-top:10px}
.gp-unit__n{font-family:jost,PT,sans-serif;font-size:clamp(40px,4.6vw,60px);font-weight:300;color:var(--gp-g);line-height:1.05;margin:4px 0 14px}
.gp-unit__n span{font-family:PT,sans-serif;font-size:16px;font-weight:600;color:var(--gp-b);margin-left:12px}

.gp-int{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gp-int figure{position:relative;margin:0;border-radius:14px;overflow:hidden}
.gp-int img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.gp-int figure:hover img{transform:scale(1.05)}
.gp-int__big{grid-column:1/-1}
.gp-int__big img{aspect-ratio:16/8}
.gp-int figcaption{position:absolute;left:14px;bottom:12px;color:#fff;font-weight:600;font-size:14px;background:rgba(16,28,48,.55);padding:4px 12px;border-radius:99px}

.gp-ev .schedule-table > li a{color:inherit;text-decoration:underline;text-underline-offset:3px}

@media (max-width:1200px){
  .gp-plan4{grid-template-columns:repeat(2,1fr)}
  .gp-unit{grid-template-columns:1fr}
}
@media (max-width:900px){
  .gp-p6,.gp-two,.gp-pair,.gp-cards--3{grid-template-columns:1fr}
  .gp-comm{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .gp-plan4,.gp-comm,.gp-int{grid-template-columns:1fr}
  .gp-nums{gap:16px}
}
@media (prefers-reduced-motion:reduce){[data-aos]{filter:none!important;clip-path:none!important}}
