/*!
 * Home redesign S212 — proto-j 이식, 섹션: hero/spotlight/courses/tours/fleet/partners/reviews/how/cta-band
 * 시각 원본 = .tmp/main-page-prototypes/proto-j.html <style> 블록.
 * 클래스 = 계약서 §1 규칙(.X→.t2w-hp-X, 상태클래스 .in/.d1-4 유지).
 * 색·radius·shadow·easing·폰트 = 계약서 §2 토큰 var()만 (raw hex 0, 우선순위 강제 0).
 * 아이콘 시안 .mi → 전역 .material-symbols-outlined (섹션 스코프 하위에서만).
 * 전 셀렉터 .t2w-hp- 접두 또는 .t2w-hp 하위 스코프 (전역 요소 셀렉터 없음).
 */

/* ============ BASE / SCOPE RESET (시안 body·img·a·button·* → .t2w-hp 스코프) ============ */
.t2w-hp *{margin:0;padding:0;box-sizing:border-box}
.t2w-hp{
  font-family:var(--t2w-font-primary);color:var(--t2w-hp-ink);background:var(--t2w-hp-paper);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5;
}
.t2w-hp h1,.t2w-hp h2,.t2w-hp h3,.t2w-hp-htitle,.t2w-hp-sec-title,.t2w-hp-course-name,
.t2w-hp-p-name,.t2w-hp-g-name,.t2w-hp-rv-quote{word-break:keep-all}
.t2w-hp img{display:block;max-width:100%}
.t2w-hp a{text-decoration:none;color:inherit}
.t2w-hp svg{display:block}
.t2w-hp button{font-family:inherit;cursor:pointer}
.t2w-hp ::selection{background:var(--color-primary);color:var(--color-secondary-dark)}

/* Parent TaskHive wraps front-page content in .container. The redesigned home
   owns its own inner width via .t2w-hp-wrap, so release only this page canvas. */
body.home .site-content{margin-top:0 !important;padding-top:0 !important}
body.home .site-content>.container{max-width:none;width:100%;margin-left:0;margin-right:0;padding-left:0;padding-right:0}
body.home .site-content>.container>.t2w-hp{width:100%}

.t2w-hp-wrap{max-width:1280px;margin:0 auto;padding:0 clamp(18px,5vw,56px)}

/* ============ SCROLL PROGRESS (진행바 z-index 1001 — 계약서 §0) ============ */
.t2w-hp-prog{position:fixed;top:0;left:0;height:3px;width:0;z-index:1001;
  background:linear-gradient(90deg,var(--color-primary-dark),var(--color-primary));box-shadow:0 0 14px rgba(255,183,0,.5)}

/* ============ HERO — 사진 풀블리드, 컴팩트(≤36vh), 하단이 페이지로 녹아듦 ============ */
.t2w-hp-hero{position:relative;display:flex;align-items:center;
  min-height:clamp(430px,48vh,520px);padding:84px 0 34px}
/* S270 A안 (마스터 승인 — S264 버튼 제거 결정 번복): 히어로 3스텝 칩 + 주 CTA */
.t2w-hp-hsteps{display:flex;gap:9px;margin-top:20px;flex-wrap:wrap}
.t2w-hp-hsteps a{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.13);
  border:1.5px solid rgba(255,255,255,.38);border-radius:999px;padding:8px 15px;
  color:var(--color-white);font-size:13px;font-weight:800;text-decoration:none;backdrop-filter:blur(3px)}
.t2w-hp-hsteps a:hover{background:rgba(255,255,255,.24)}
.t2w-hp-hsteps a b{background:var(--color-primary);color:var(--color-secondary);border-radius:50%;
  width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900}
.t2w-hp-hcta{display:inline-flex;align-items:center;gap:9px;margin-top:20px;
  background:linear-gradient(135deg,var(--t2w-gg-lite,#FFC93C),var(--t2w-gg-deep,#F5A800));
  color:var(--color-secondary);font-size:15.5px;font-weight:900;border-radius:14px;padding:14px 26px;
  text-decoration:none;box-shadow:0 10px 24px -8px rgba(255,183,0,.6);min-height:48px}
.t2w-hp-hcta svg{width:17px;height:17px}
.t2w-hp-hcta small{font-weight:700;font-size:11.5px;opacity:.72}
.t2w-hp-hcta:hover{transform:translateY(-1px);box-shadow:0 14px 28px -8px rgba(255,183,0,.7)}
.t2w-hp-hero-clip{position:absolute;inset:0;overflow:hidden;z-index:0}
.t2w-hp-hero-bg{position:absolute;inset:-10% 0 -10% 0;will-change:transform}
.t2w-hp-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 62%;
  filter:brightness(.86) saturate(1.04)}
.t2w-hp-hero::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(9,19,34,.6) 0%,rgba(9,19,34,.28) 30%,rgba(9,19,34,.18) 52%,transparent 70%)}
.t2w-hp-hero::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,transparent 58%,rgba(255,253,248,.42) 84%,var(--t2w-hp-paper) 100%)}
.t2w-hp-hero-in{position:relative;z-index:3;width:100%}
/* S264: 히어로 캐로셀 — 페이드 슬라이드 + 점 + 화살표 (config hero_slides, 광고 슬롯) */
.t2w-hp-hslide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;pointer-events:none;transition:opacity .7s var(--t2w-hp-ease)}
/* S266: active 슬라이드 = static → hero-clip(inset:0)의 기준이 섹션이 되어 사진이 헤더 뒤까지
   섹션 전체를 덮는다(헤더-히어로 일체형의 실체 — 이전엔 relative라 사진이 텍스트 높이 140px 띠였음) */
.t2w-hp-hslide.is-active{position:static;width:100%;opacity:1;pointer-events:auto}
.t2w-hp-hslide-cta{display:inline-flex;align-items:center;gap:8px;margin-top:clamp(14px,2vh,20px);font-weight:900;font-size:14px;
  border-radius:999px;padding:12px 22px;min-height:44px;color:var(--color-secondary-dark,#152A47);
  background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  box-shadow:0 10px 24px rgba(255,150,0,.35);transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-hslide-cta:hover{transform:translateY(-2px)}
.t2w-hp-hslide-cta svg{width:16px;height:16px}
.t2w-hp-hnav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);
  background:rgba(10,16,26,.32);color:var(--color-white);display:grid;place-items:center;
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s;padding:0}
.t2w-hp-hnav:hover{background:rgba(10,16,26,.58)}
.t2w-hp-hnav--prev{left:18px}
.t2w-hp-hnav--next{right:18px}
.t2w-hp-hnav .material-symbols-outlined{font-size:24px}
.t2w-hp-hdots{position:absolute;left:50%;transform:translateX(-50%);bottom:12px;z-index:5;display:flex;gap:2px}
.t2w-hp-hdot{width:22px;height:22px;display:grid;place-items:center;background:none;border:0;padding:0;cursor:pointer}
.t2w-hp-hdot::before{content:"";width:8px;height:8px;border-radius:999px;background:rgba(21,42,71,.28);transition:width .25s,background .25s}
.t2w-hp-hdot.is-active::before{width:20px;background:var(--color-primary,#FFB700)}
/* 아이브로우 — 라인 + 자간 넓은 샴페인 골드 */
.t2w-hp-eyebrow{display:flex;align-items:center;gap:16px;margin-bottom:clamp(14px,2.6vh,26px);
  font-size:clamp(11px,1.3vw,13px);letter-spacing:.32em;text-transform:uppercase;
  font-weight:600;color:var(--t2w-gg-lite)}
.t2w-hp-eyebrow .t2w-hp-ln{height:1px;width:clamp(40px,7vw,90px);background:var(--t2w-gg)}
/* 타이틀 — 첫 단어는 아웃라인 대신 단단한 샴페인 골드로 처리 */
.t2w-hp-htitle{font-family:var(--t2w-font-primary);font-weight:900;letter-spacing:-.018em;line-height:.94;color:var(--color-white);
  font-size:clamp(36px,5vw,64px)}
.t2w-hp-htitle .t2w-hp-l1{display:inline-block;color:var(--t2w-gg-lite);-webkit-text-stroke:0;font-size:.74em;letter-spacing:-.006em;
  text-shadow:0 2px 18px rgba(0,0,0,.34);transform:translateY(-2px)}
.t2w-hp-htitle .t2w-hp-l2{color:var(--color-white)}
.t2w-hp-htitle .t2w-hp-accent{color:var(--t2w-gg-lite)}
.t2w-hp-hsub{display:none}

/* hero CTA — S264 제거 (마스터 지시: 투어·티켓 보기 / 내 여행 만들기 버튼 폐지).
   .t2w-hp-h-cta / .t2w-hp-btn / -gold / -white 규칙 삭제 — 히어로 전용이었음 (cta-band는 .t2w-hp-btn-champ 별도). */

/* S236: first-viewport header/CTA polish.
   home-redesign.css loads before header.css, so the high-specificity scoped rules
   below are intentionally limited to the redesigned home header. */
body.home header.t2w-app-header#site-header:not(.is-scrolled){background:linear-gradient(180deg,rgba(8,15,26,.34),rgba(8,15,26,.08)) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;box-shadow:none !important;
  -webkit-backdrop-filter:blur(8px) !important;backdrop-filter:blur(8px) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-hp-logo{color:var(--color-white) !important;
  text-shadow:0 2px 12px rgba(0,0,0,.42) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-hp-logo b{color:var(--t2w-gg-lite) !important;
  text-shadow:0 2px 12px rgba(0,0,0,.42) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-region-selector__trigger{background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.30) !important;color:var(--color-white) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 24px rgba(0,0,0,.14) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-region-selector__trigger:hover{background:rgba(255,255,255,.24) !important;
  border-color:rgba(255,255,255,.42) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-region-selector__flag,
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-region-selector__arrow{color:var(--color-white) !important;
  filter:drop-shadow(0 1px 3px rgba(0,0,0,.32))}
body.home header.t2w-app-header#site-header .t2w-auth-buttons .t2w-btn--primary{color:var(--color-secondary-dark) !important;
  text-shadow:none !important;font-weight:800 !important;border-color:rgba(255,183,0,.42) !important;
  box-shadow:0 10px 24px rgba(255,183,0,.20) !important}
body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-auth-buttons .t2w-btn--ghost{background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.16) !important}

/* ============ SPOTLIGHT — 도시·테마 탐색 (목적지 서클 + 테마 칩, 가운데 정렬) ============ */
.t2w-hp-explore{position:relative;z-index:4;margin-top:clamp(-42px,-4vh,-26px);padding:0 0 clamp(18px,3vh,34px)}
.t2w-hp-ex-head{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:20px;
  font-weight:900;font-size:13px;letter-spacing:.02em;color:var(--t2w-gg-deep)}
.t2w-hp-ex-head .material-symbols-outlined{font-size:17px}

/* ============ S263 여정 스테퍼 (spotlight 개조) + 섹션 번호 칩 ============ */
/* 히어로 하단 CTA와 겹치지 않게 양수 여백(옛 서클의 음수 겹침 해제 — 히어로 개편 시 재검토). seg-when 핀 돌출 16px 포함. */
.t2w-hp-explore{margin-top:clamp(24px,3.4vh,38px)}
/* S264: 스테퍼 배너 캐로셀 — grid 스택 페이드(높이 점프 없음), 1번=스테퍼 고정·이후=광고 슬라이드 */
.t2w-hp-jcar{position:relative}
.t2w-hp-jslides{display:grid}
.t2w-hp-jslide{grid-area:1/1;min-width:0;opacity:0;pointer-events:none;transition:opacity .6s var(--t2w-hp-ease)}
.t2w-hp-jslide.is-active{opacity:1;pointer-events:auto}
.t2w-hp-jad{display:flex;align-items:center;gap:18px;height:100%;border-radius:22px;padding:24px 26px;color:var(--color-white);
  background:linear-gradient(120deg,#1B3155,var(--color-secondary-dark,#152A47));box-shadow:var(--t2w-hp-sh-md);overflow:hidden;position:relative}
.t2w-hp-jad::after{content:"";position:absolute;inset:0;border-radius:22px;border:1px solid rgba(255,217,102,.28);pointer-events:none}
.t2w-hp-jad-ic{flex:none;width:54px;height:54px;border-radius:16px;display:grid;place-items:center;color:var(--color-secondary-dark,#152A47);
  background:linear-gradient(135deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));box-shadow:0 8px 16px rgba(0,0,0,.3)}
.t2w-hp-jad-ic .material-symbols-outlined{font-size:28px}
.t2w-hp-jad-tx{min-width:0}
.t2w-hp-jad-tx i{font-style:normal;font-size:11px;letter-spacing:.16em;font-weight:900;color:var(--color-primary-lighter,#FFD966)}
.t2w-hp-jad-tx strong{display:block;font-size:19px;font-weight:900;letter-spacing:-.01em;margin-top:4px}
.t2w-hp-jad-tx>span{display:block;font-size:13px;color:rgba(255,255,255,.66);font-weight:600;margin-top:3px}
.t2w-hp-jad-cta{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:6px;font-style:normal;font-weight:900;font-size:13px;
  border-radius:11px;padding:12px 18px;min-height:44px;background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jad-cta .material-symbols-outlined{font-size:16px}
.t2w-hp-jdots{display:flex;justify-content:center;gap:2px;margin-top:6px}

/* S265 배너 v2 — 안내판 3장(①스테퍼 ②예산 미니 선반 ③상품 미니 일정표). 높이 = 3장 동일 고정(마스터 지시):
   grid 스택(grid-area:1/1)이 컨테이너 높이를 가장 큰 슬라이드로 고정 + 각 슬라이드 100% 채움 → 회전 시 높이 불변. */
.t2w-hp-jslide>.t2w-hp-jband,.t2w-hp-jslide>.t2w-hp-jbn{height:100%}
/* S266: 이어가기 배너 — t2w_has_draft 로그인 방문자에게 스테퍼 대신 (상세는 JS가 드래프트에서 채움) */
.t2w-hp-jre{display:block;border-radius:22px;padding:16px 18px 15px;position:relative;color:var(--color-white);
  background:linear-gradient(135deg,var(--color-secondary-dark,#152A47),#20406B);
  border:1.5px solid rgba(255,217,102,.45);box-shadow:0 10px 26px rgba(20,30,50,.16)}
.t2w-hp-jre-hd{display:flex;align-items:center;gap:12px}
.t2w-hp-jre-title{flex:1;min-width:0;font-size:17px;font-weight:900;line-height:1.35;color:var(--color-white);word-break:keep-all}
.t2w-hp-jre-title em{font-style:normal;color:var(--color-primary-lighter,#FFD966)}
.t2w-hp-jre-cta{flex:none;display:inline-flex;align-items:center;gap:5px;font-style:normal;font-weight:900;font-size:13px;
  border-radius:999px;padding:10px 16px;min-height:40px;color:var(--color-secondary-dark,#152A47);
  background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  box-shadow:0 8px 18px rgba(255,150,0,.35);transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-jre:hover .t2w-hp-jre-cta{transform:translateY(-2px)}
.t2w-hp-jre-cta .material-symbols-outlined{font-size:16px}
.t2w-hp-jre-sub{display:flex;align-items:center;gap:8px;margin-top:10px}
.t2w-hp-jre-icons{display:flex}
.t2w-hp-jre-icons i{width:26px;height:26px;border-radius:8px;border:2px solid var(--color-secondary-dark,#152A47);
  background:#3A5578;display:grid;place-items:center;color:var(--color-primary-lighter,#FFD966);font-size:13px;margin-left:-7px;font-style:normal}
.t2w-hp-jre-icons i:first-child{margin-left:0}
.t2w-hp-jre-meta{font-size:11.5px;font-weight:700;color:#C9D6E8}
.t2w-hp-jcar.is-hidden{display:none}
/* S266: 스텝 아랫줄 "예:" 순환 페이드 */
.t2w-hp-jsub{transition:opacity .24s ease}
.t2w-hp-jsub.is-swap{opacity:0}
/* ── S266: 유명인이 다녀간 곳 레일 (celeb-spots.php, 마스터 승인 시안) ── */
.t2w-hp-celeb-sec{padding-top:clamp(20px,3vh,34px)}
.t2w-hp-celeb-star{color:var(--color-primary,#FFB700);font-size:.92em;margin-right:4px;font-variation-settings:'FILL' 1;vertical-align:-2px}
.t2w-hp-celeb-rail{display:grid;grid-auto-flow:column;grid-auto-columns:186px;gap:12px;overflow-x:auto;
  padding:12px 4px 14px;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}
.t2w-hp-celeb-rail::-webkit-scrollbar{display:none}
.t2w-hp-cel{display:block;border-radius:16px;overflow:hidden;background:var(--color-white);border:1px solid var(--t2w-hp-line,#F1E7D2);
  box-shadow:var(--t2w-hp-sh-sm,0 6px 16px rgba(20,30,50,.08));scroll-snap-align:start;
  transition:transform .25s var(--t2w-hp-ease),box-shadow .25s var(--t2w-hp-ease)}
.t2w-hp-cel:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(20,30,50,.16)}
.t2w-hp-cel-ph{position:relative;display:block;height:128px}
.t2w-hp-cel-ph img{width:100%;height:100%;object-fit:cover;display:block}
.t2w-hp-cel-star{position:absolute;top:8px;right:8px;width:23px;height:23px;border-radius:50%;font-style:normal;
  background:linear-gradient(135deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  border:1.5px solid #fff;display:grid;place-items:center;color:#fff;font-size:13px;box-shadow:0 2px 6px rgba(0,0,0,.25);
  font-variation-settings:'FILL' 1}
.t2w-hp-cel-who{position:absolute;left:0;right:0;bottom:0;padding:18px 9px 7px;font-size:10.5px;font-weight:900;
  color:var(--color-primary-lighter,#FFD966);background:linear-gradient(transparent,rgba(10,16,26,.86));
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-cel-bd{display:block;padding:9px 11px 11px}
.t2w-hp-cel-nm{display:block;font-size:13px;font-weight:800;color:var(--color-secondary,#152A47);line-height:1.25;
  word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-cel-ct{display:block;font-size:10px;font-weight:700;color:var(--t2w-hp-ink-soft,#9A8A6A);margin-top:3px;letter-spacing:.05em}
/* ── S267: 유명인 섹션 격상 — 신뢰 카피 + 대형 피처 카드 + 레일 사연 줄 (시안 승인) ── */
.t2w-hp-celeb-trust{display:inline-flex;align-items:center;gap:5px;margin-top:10px;padding:5px 12px;border-radius:999px;
  font-size:12px;font-weight:700;color:var(--t2w-hp-ink,#241E1A);
  background:rgba(255,183,0,.13);border:1px solid rgba(255,183,0,.35)}
.t2w-hp-celeb-trust b{color:var(--color-secondary,#152A47)}
.t2w-hp-celf{display:block;position:relative;border-radius:18px;overflow:hidden;margin-top:16px;
  box-shadow:var(--t2w-hp-sh-md,0 10px 28px rgba(20,30,50,.14));
  transition:transform .25s var(--t2w-hp-ease),box-shadow .25s var(--t2w-hp-ease)}
.t2w-hp-celf:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(20,30,50,.2)}
.t2w-hp-celf img{width:100%;height:300px;object-fit:cover;display:block}
.t2w-hp-celf-grad{position:absolute;inset:0;background:linear-gradient(transparent 18%,rgba(10,16,26,.52) 52%,rgba(10,16,26,.94))}
.t2w-hp-celf-cnt{position:absolute;top:14px;left:14px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:800;
  color:var(--color-secondary-dark,#152A47);
  background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  box-shadow:0 2px 8px rgba(0,0,0,.25)}
.t2w-hp-celf-bd{position:absolute;left:18px;right:18px;bottom:16px;color:var(--color-white,#fff)}
.t2w-hp-celf-pl{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--color-primary-lighter,#FFD966)}
.t2w-hp-celf-ttl{display:block;font-size:20px;font-weight:800;line-height:1.35;margin:6px 0 0;word-break:keep-all;
  text-shadow:0 1px 6px rgba(0,0,0,.4);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.t2w-hp-celf-also{display:block;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.85);line-height:1.5;margin-top:7px;
  word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-celf-go{display:inline-flex;align-items:center;gap:5px;margin-top:11px;padding:8px 15px;border-radius:999px;
  font-size:12.5px;font-weight:700;color:var(--color-white,#fff);
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(2px)}
.t2w-hp-celf-go .material-symbols-outlined{font-size:15px}
.t2w-hp-cel-story{display:block;font-size:11.5px;font-weight:600;color:var(--t2w-hp-ink-soft,#6B6157);line-height:1.45;margin-top:4px;
  word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}
/* 코스 레일 유명인 배지 (badge_type=celeb) */
.t2w-hp-b-celeb{background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jbn{display:flex;align-items:center;gap:20px;border-radius:22px;padding:20px 26px;position:relative;color:var(--t2w-hp-ink,#1B2B44);
  background:linear-gradient(var(--color-white),var(--color-white)) padding-box,
  linear-gradient(150deg,rgba(255,217,102,.9),rgba(255,183,0,.3) 45%,rgba(255,255,255,.95)) border-box;
  border:2px solid transparent;box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-jbn-tx{flex:0 0 300px;min-width:0}
.t2w-hp-jbn-tx i{font-style:normal;font-size:11px;letter-spacing:.16em;font-weight:900;color:var(--t2w-amber-ink,#8A5A00)}
.t2w-hp-jbn-tx strong{display:block;font-size:19px;font-weight:900;letter-spacing:-.02em;line-height:1.3;margin-top:6px;color:var(--color-secondary);word-break:keep-all}
.t2w-hp-jbn-tx strong em{font-style:normal;color:var(--color-primary-dark)}
.t2w-hp-jbn-tx>span{display:block;font-size:12.5px;font-weight:600;margin-top:5px;color:var(--t2w-hp-ink-soft)}
.t2w-hp-jbn-cta{flex:none;margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-style:normal;font-weight:900;font-size:13px;
  border-radius:11px;padding:12px 18px;min-height:44px;
  background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  color:var(--color-secondary-dark,#152A47);box-shadow:0 7px 16px rgba(255,150,0,.3);transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-jbn:hover .t2w-hp-jbn-cta{transform:translateY(-2px)}
.t2w-hp-jbn-cta .material-symbols-outlined{font-size:16px}
/* ② 미니 예산 선반 (배너 안 3장 + 업그레이드 화살표) */
.t2w-hp-jbn-shelf{flex:1;display:flex;align-items:center;justify-content:center;min-width:0}
.t2w-hp-jbn-mt{width:158px;border-radius:14px;background:var(--color-white);border:1px solid var(--t2w-hp-paper-3,#FFEFD6);box-shadow:var(--t2w-hp-sh-sm);overflow:hidden}
.t2w-hp-jbn-mt.is-mid{border-color:rgba(255,183,0,.6);transform:translateY(-4px);box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-jbn-ph{position:relative;display:block;height:56px}
.t2w-hp-jbn-ph img{width:100%;height:100%;object-fit:cover;display:block}
.t2w-hp-jbn-ph b{position:absolute;left:7px;top:6px;font-size:9.5px;font-weight:900;background:rgba(21,42,71,.85);color:var(--color-white);border-radius:6px;padding:2px 7px;white-space:nowrap}
.t2w-hp-jbn-ph b.is-gold{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jbn-bd{display:block;padding:8px 10px 9px;text-align:center}
.t2w-hp-jbn-nm{display:block;font-size:12px;font-weight:900;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-jbn-pr{display:block;font-size:10.5px;font-weight:800;color:var(--t2w-amber-ink,#8A5A00);margin-top:1px}
.t2w-hp-jbn-in{display:block;font-size:10px;font-weight:700;color:var(--t2w-hp-ink-soft);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-jbn-up{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 -5px;z-index:2}
.t2w-hp-jbn-upc{width:26px;height:26px;border-radius:50%;background:var(--color-white);border:2px solid var(--color-primary,#FFB700);
  display:grid;place-items:center;color:var(--color-primary-dark);box-shadow:var(--t2w-hp-sh-sm)}
.t2w-hp-jbn-upc .material-symbols-outlined{font-size:15px}
.t2w-hp-jbn-up small{font-size:8.5px;font-weight:900;color:var(--t2w-amber-ink,#8A5A00);background:var(--color-white);
  border:1px solid var(--t2w-hp-paper-3,#FFEFD6);border-radius:999px;padding:1px 6px;white-space:nowrap}
/* ③ 미니 일정표 (기본 코스 줄 + 내가 담은 상품 줄 + 차량 줄) */
.t2w-hp-jbn-plan{flex:1;min-width:0;max-width:520px;position:relative;display:block;padding-left:14px}
.t2w-hp-jbn-plan::before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:2px;background:var(--t2w-hp-paper-3,#FFEFD6);border-radius:999px}
.t2w-hp-jbn-row{position:relative;display:flex;align-items:center;gap:9px;padding:6px 10px;border-radius:10px;margin:4px 0}
.t2w-hp-jbn-row::before{content:"";position:absolute;left:-13px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;
  background:#D9CFB8;border:2px solid var(--color-white)}
.t2w-hp-jbn-tm{flex:none;font-size:10.5px;font-weight:800;color:var(--t2w-hp-ink-soft);width:34px}
.t2w-hp-jbn-row img{flex:none;width:26px;height:26px;border-radius:7px;object-fit:cover}
.t2w-hp-jbn-rnm{flex:1;min-width:0;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-jbn-pill{flex:none;font-size:9.5px;font-weight:900;border-radius:999px;padding:2px 8px;background:#F1EDE2;color:var(--t2w-hp-ink-soft)}
.t2w-hp-jbn-row.is-base{background:var(--t2w-hp-paper,#FBF8F1)}
.t2w-hp-jbn-row.is-add{background:var(--t2w-hp-paper-2,#FFF6E6);border:1.2px dashed rgba(255,183,0,.6)}
.t2w-hp-jbn-row.is-add::before{background:var(--color-primary,#FFB700)}
.t2w-hp-jbn-row.is-add .t2w-hp-jbn-pill{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jbn-row.is-car{background:linear-gradient(120deg,#1B3155,var(--color-secondary-dark,#152A47));color:var(--color-white)}
.t2w-hp-jbn-row.is-car::before{background:var(--color-secondary-dark,#152A47)}
.t2w-hp-jbn-row.is-car .t2w-hp-jbn-tm{color:#9FB0CB}
.t2w-hp-jbn-row.is-car .t2w-hp-jbn-pill{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jbn-badge{position:absolute;right:-6px;top:-9px;font-size:9px;font-weight:900;background:var(--color-white);color:var(--t2w-amber-ink,#8A5A00);
  border:1.5px solid var(--color-primary,#FFB700);border-radius:999px;padding:2px 7px;box-shadow:0 3px 8px rgba(255,150,0,.25);transform:rotate(3deg);z-index:2}

/* S264 v2: 여정 라인 스테퍼 — 골드 그라데이션 밴드 안에 점선 노선 + 번호 핀 + 카드 3장 (.t2w-hp-j*) */
.t2w-hp-jband{position:relative;border-radius:22px;padding:18px 22px 20px;
  background:linear-gradient(var(--color-white),var(--color-white)) padding-box,
  linear-gradient(150deg,rgba(255,217,102,.9),rgba(255,183,0,.3) 45%,rgba(255,255,255,.95)) border-box;
  border:2px solid transparent;box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-jhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.t2w-hp-jtitle{font-size:18px;font-weight:900;letter-spacing:-.02em;color:var(--color-secondary);line-height:1.3}
.t2w-hp-jtitle em{font-style:normal;color:var(--color-primary-dark)}
.t2w-hp-jcta{display:inline-flex;align-items:center;gap:6px;font-weight:900;font-size:13px;border-radius:11px;padding:11px 17px;min-height:44px;
  background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  color:var(--color-secondary-dark,#152A47);box-shadow:0 7px 16px rgba(255,150,0,.3);transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-jcta:hover{transform:translateY(-2px)}
.t2w-hp-jcta .material-symbols-outlined{font-size:16px}
/* S270 A안: 슬림 밴드 — 노선 3카드 은퇴, 제목+미니 칩 2+CTA 1줄 (jroute 계열 규칙은 롤백 대비 유지) */
.t2w-hp-jband--slim{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.t2w-hp-jband--slim .t2w-hp-jtitle{flex:none}
.t2w-hp-jminis{display:flex;gap:10px;flex:1;justify-content:center;flex-wrap:wrap}
.t2w-hp-jmini{display:flex;align-items:center;gap:9px;background:var(--t2w-hp-paper-2,#FFF6E6);
  border:1px solid var(--t2w-hp-line);border-radius:12px;padding:8px 13px;text-decoration:none;color:inherit}
.t2w-hp-jmini:hover{border-color:var(--color-primary)}
.t2w-hp-jmini-ic{width:32px;height:32px;border-radius:9px;background:var(--color-tag-gold-bg,#FFF3D6);
  color:var(--color-tag-gold-text,#8A5A00);display:inline-flex;align-items:center;justify-content:center;flex:none}
.t2w-hp-jmini-tx b{display:block;font-size:13px;font-weight:900;color:var(--color-secondary)}
.t2w-hp-jmini-tx small{display:block;font-size:11.5px;font-weight:700;color:var(--t2w-hp-mut);margin-top:1px}
.t2w-hp-jroute{position:relative;margin-top:28px}
.t2w-hp-jline{position:absolute;top:-13px;left:9%;right:9%;height:0;border-top:2.5px dashed rgba(255,183,0,.55)}
.t2w-hp-jline .material-symbols-outlined{position:absolute;right:-8px;top:-12px;color:var(--color-primary-dark);font-size:19px}
.t2w-hp-jcells{display:flex;gap:14px}
.t2w-hp-jcell{flex:1;min-width:0;position:relative;border-radius:15px;padding:13px 14px 12px;display:flex;gap:11px;align-items:center;min-height:70px;
  color:inherit;transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-jcell:hover{transform:translateY(-2px)}
.t2w-hp-jpin{position:absolute;top:-24px;left:50%;transform:translateX(-50%);width:23px;height:23px;border-radius:50%;
  background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47);display:grid;place-items:center;
  font-weight:900;font-size:11.5px;border:3px solid var(--color-white);box-shadow:0 3px 9px rgba(255,150,0,.35)}
.t2w-hp-jph{flex:none;display:flex;align-items:center}
.t2w-hp-jph img{width:40px;height:40px;border-radius:11px;object-fit:cover;border:2px solid var(--color-white);box-shadow:0 2px 8px rgba(20,30,50,.16)}
.t2w-hp-jph img+img{margin-left:-22px}
.t2w-hp-jtx{min-width:0;display:block}
.t2w-hp-jtx strong{display:block;font-size:13.5px;font-weight:900;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-jsub{display:block;font-size:11px;font-weight:700;color:var(--t2w-hp-ink-soft);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.t2w-hp-jtiers{display:flex;gap:4px;margin-top:5px}
.t2w-hp-jtiers i{font-style:normal;font-size:9.5px;font-weight:900;border-radius:999px;padding:2px 7px;background:var(--t2w-hp-paper-3,#FFEFD6);color:var(--t2w-hp-ink-soft)}
.t2w-hp-jtiers i.is-free{background:var(--t2w-hp-paper-2,#FFF6E6);color:var(--t2w-amber-ink,#8A5A00);border:1px solid var(--t2w-hp-paper-3,#FFEFD6)}
.t2w-hp-jpill{margin-left:auto;flex:none;font-style:normal;font-size:10.5px;font-weight:900;border-radius:999px;padding:4px 9px;white-space:nowrap}
.t2w-hp-jcell--free{background:var(--t2w-hp-paper,#FBF8F1)}
.t2w-hp-jcell--free .t2w-hp-jpill{background:var(--t2w-hp-paper-2,#FFF6E6);color:var(--t2w-amber-ink,#8A5A00);border:1px solid var(--t2w-hp-paper-3,#FFEFD6)}
.t2w-hp-jcell--add{background:var(--t2w-hp-paper-2,#FFF6E6);border:1.5px dashed rgba(255,183,0,.6)}
.t2w-hp-jcell--add .t2w-hp-jpill{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jcell--car{background:linear-gradient(120deg,#1B3155,var(--color-secondary-dark,#152A47));color:var(--color-white)}
.t2w-hp-jcell--car .t2w-hp-jsub{color:rgba(255,255,255,.62)}
.t2w-hp-jcell--car .t2w-hp-jpill{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-jchip{position:absolute;font-size:9.5px;font-weight:900;background:var(--color-white);color:var(--t2w-amber-ink,#8A5A00);
  border:1.5px solid var(--color-primary,#FFB700);border-radius:999px;padding:2px 7px;box-shadow:0 3px 8px rgba(255,150,0,.25);z-index:2;white-space:nowrap}
.t2w-hp-jchip--a{top:-9px;left:44px;transform:rotate(-4deg)}
.t2w-hp-jchip--b{bottom:-9px;left:66px;transform:rotate(3deg)}
.t2w-hp-secstep{display:inline-flex;align-items:center;gap:7px;font-weight:900;font-size:13.5px;color:var(--t2w-amber-ink,#8A5A00);
  background:var(--t2w-hp-paper-2,#FFF6E6);border:1.5px solid var(--t2w-hp-paper-3,#FFEFD6);border-radius:999px;padding:4px 14px 4px 4px;margin-bottom:12px}
.t2w-hp-secstep b{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;
  background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47);font-size:12.5px}
/* S264 B2: 예산 템플릿 선반 (courses 상단 3티어 + 업그레이드 화살표) */
.t2w-hp-shelf{display:flex;align-items:stretch;gap:0;margin-bottom:clamp(20px,3vh,30px)}
.t2w-hp-bt{flex:1;min-width:0;background:var(--color-white);border:1px solid var(--t2w-hp-paper-3,#FFEFD6);border-radius:20px;overflow:hidden;
  box-shadow:var(--t2w-hp-sh-sm);display:flex;flex-direction:column;position:relative;transition:transform .25s var(--t2w-hp-ease),box-shadow .25s}
.t2w-hp-bt:hover{transform:translateY(-4px);box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-bt--mid{border-color:rgba(255,183,0,.55);box-shadow:var(--t2w-hp-sh-md);transform:scale(1.03);z-index:2}
.t2w-hp-bt--mid:hover{transform:scale(1.03) translateY(-4px)}
.t2w-hp-bt-rib{position:absolute;top:12px;left:12px;font-size:11px;font-weight:900;border-radius:8px;padding:4px 10px;z-index:2;
  background:rgba(21,42,71,.85);color:var(--color-white);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.t2w-hp-bt-rib.is-gold{background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47)}
.t2w-hp-bt-ph{position:relative;aspect-ratio:16/7.2;overflow:hidden}
.t2w-hp-bt-ph img{width:100%;height:100%;object-fit:cover;display:block}
.t2w-hp-bt-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,16,26,.55))}
.t2w-hp-bt-pv{position:absolute;left:12px;bottom:10px;z-index:2;display:flex;align-items:center}
.t2w-hp-bt-pv img{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid var(--color-white);box-shadow:0 2px 7px rgba(0,0,0,.35)}
.t2w-hp-bt-pv img+img{margin-left:-11px}
.t2w-hp-bt-pv i{font-style:normal;margin-left:7px;font-size:10.5px;font-weight:900;color:var(--color-white);text-shadow:0 1px 4px rgba(0,0,0,.5)}
.t2w-hp-bt-pv img:first-child+i{margin-left:0}
.t2w-hp-bt-bd{padding:15px 17px 16px;display:flex;flex-direction:column;flex:1}
.t2w-hp-bt-tt{font-size:17px;font-weight:900;letter-spacing:-.02em;color:var(--color-secondary)}
.t2w-hp-bt-pr{font-size:12px;font-weight:800;color:var(--t2w-amber-ink,#8A5A00);margin-top:3px}
.t2w-hp-bt-pr b{font-size:15px;font-weight:900;color:var(--color-secondary-dark,#152A47)}
.t2w-hp-bt-mixbar{display:flex;height:7px;border-radius:999px;overflow:hidden;background:var(--t2w-hp-paper-2,#FFF6E6);margin-top:11px}
.t2w-hp-bt-mixbar .is-free{background:var(--t2w-hp-paper-3,#FFEFD6)}
.t2w-hp-bt-mixbar .is-paid{background:linear-gradient(90deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700))}
.t2w-hp-bt-mixlb{display:flex;justify-content:space-between;gap:8px;font-size:10.5px;font-weight:800;color:var(--t2w-hp-ink-soft);margin-top:5px}
.t2w-hp-bt-mixlb .is-paid{color:var(--t2w-amber-ink,#8A5A00)}
.t2w-hp-bt-in{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--t2w-hp-ink-soft);margin-top:10px}
.t2w-hp-bt-in .material-symbols-outlined{font-size:15px;color:var(--color-primary-dark)}
.t2w-hp-bt-in.is-up{color:var(--color-secondary);font-weight:800}
.t2w-hp-bt-in.is-up .material-symbols-outlined{color:var(--color-primary);font-variation-settings:'FILL' 1}
.t2w-hp-bt-go{margin-top:auto;padding-top:13px}
.t2w-hp-bt-go a{display:flex;justify-content:center;align-items:center;gap:6px;border-radius:11px;padding:11px 0;min-height:44px;font-size:13px;font-weight:900;
  transition:transform .2s var(--t2w-hp-ease)}
.t2w-hp-bt-go a:hover{transform:translateY(-2px)}
.t2w-hp-bt-go a.is-soft{background:var(--t2w-hp-paper-2,#FFF6E6);color:var(--t2w-amber-ink,#8A5A00)}
.t2w-hp-bt-go a.is-gold{background:linear-gradient(120deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));
  color:var(--color-secondary-dark,#152A47);box-shadow:0 6px 14px rgba(255,150,0,.28)}
.t2w-hp-bt-go a.is-dark{background:var(--color-secondary-dark,#152A47);color:var(--color-white)}
.t2w-hp-bt-up{flex:none;align-self:center;display:flex;flex-direction:column;align-items:center;gap:3px;margin:0 -7px;z-index:3}
.t2w-hp-bt-upc{width:34px;height:34px;border-radius:50%;background:var(--color-white);border:2px solid var(--color-primary,#FFB700);
  display:grid;place-items:center;color:var(--color-primary-dark);box-shadow:var(--t2w-hp-sh-sm)}
.t2w-hp-bt-upc .material-symbols-outlined{font-size:19px}
.t2w-hp-bt-up small{font-size:9.5px;font-weight:900;color:var(--t2w-amber-ink,#8A5A00);background:var(--color-white);border-radius:999px;
  padding:2px 7px;border:1px solid var(--t2w-hp-paper-3,#FFEFD6);white-space:nowrap}

/* S263 B3 → S270: 인기 여행 장소 — 독립 섹션 (옛 tplaces-head/-more 규칙은 마크업 은퇴로 삭제) */
.t2w-hp-tplaces-sec{padding-top:10px}
.t2w-hp-sec-title--sm{font-size:clamp(20px,2.2vw,26px)}
.t2w-hp-sec-title--sm .material-symbols-outlined{font-size:22px;color:var(--color-primary-dark);vertical-align:-3px}
.t2w-hp-tplaces{margin-top:4px}
.t2w-hp-tplace-celeb{position:absolute;top:8px;right:8px;z-index:2;font-weight:800;font-size:10.5px;letter-spacing:.1px;
  color:var(--t2w-gg-lite,#E7C878);background:rgba(12,17,28,.72);border-radius:999px;padding:3px 8px}
.t2w-hp-tplaces-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}
.t2w-hp-tplace{border-radius:16px;overflow:hidden;position:relative;height:150px;display:block;color:var(--color-white);box-shadow:var(--t2w-hp-sh-sm)}
.t2w-hp-tplace img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--t2w-hp-ease)}
.t2w-hp-tplace:hover img{transform:scale(1.08)}
.t2w-hp-tplace span{position:absolute;left:0;right:0;bottom:0;padding:24px 11px 10px;font-weight:800;font-size:13.5px;
  color:var(--color-white,#fff);
  background:linear-gradient(transparent,rgba(10,16,26,.8))}
.t2w-hp-cities{display:grid;grid-auto-flow:column;justify-content:center;gap:clamp(14px,2.4vw,30px);
  overflow-x:auto;-webkit-overflow-scrolling:touch;padding:6px 4px 14px;scrollbar-width:none;scroll-snap-type:x proximity}
.t2w-hp-cities::-webkit-scrollbar{display:none}
.t2w-hp-city{display:block;text-align:center;width:clamp(78px,8vw,96px);scroll-snap-align:start;flex:none}
.t2w-hp-city .t2w-hp-ph{display:block;width:clamp(66px,7vw,86px);height:clamp(66px,7vw,86px);margin:0 auto;border-radius:50%;overflow:hidden;
  border:3px solid var(--color-white);box-shadow:var(--t2w-hp-sh-sm);transition:transform .3s var(--t2w-hp-ease),box-shadow .3s,border-color .3s}
.t2w-hp-city .t2w-hp-ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--t2w-hp-ease)}
.t2w-hp-city:hover .t2w-hp-ph{transform:translateY(-4px);border-color:var(--color-primary);box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-city:hover .t2w-hp-ph img{transform:scale(1.12)}
.t2w-hp-city b{display:block;margin-top:10px;font-size:13.5px;font-weight:800;color:var(--color-secondary)}
.t2w-hp-city small{display:block;font-size:11px;font-weight:700;color:var(--t2w-hp-ink-soft);margin-top:1px;letter-spacing:.04em}
/* (S263 B2: 옛 서비스 서클 CSS 제거 → S264 B3: 서클(.t2w-hp-svc-ic--photo)도 와이드 사진 카드로 대체) */
.t2w-hp-themes{display:flex;gap:9px;margin-top:16px;flex-wrap:wrap;justify-content:center}
.t2w-hp-chip{display:inline-flex;align-items:center;gap:7px;background:var(--color-white);border:1px solid var(--t2w-hp-line);
  border-radius:var(--t2w-hp-r-pill);padding:11px 17px;font-weight:700;font-size:13px;color:var(--color-secondary);min-height:44px;
  box-shadow:var(--t2w-hp-sh-sm);transition:transform .2s,border-color .2s,color .2s}
.t2w-hp-chip:hover{transform:translateY(-2px);border-color:var(--color-primary);color:var(--color-primary-dark)}
.t2w-hp-chip .material-symbols-outlined{font-size:17px;color:var(--color-primary-dark)}
.t2w-hp-chip.is-active{background:linear-gradient(135deg,var(--color-primary-lighter,#FFD966),var(--color-primary,#FFB700));border-color:transparent;color:var(--color-secondary-dark,#152A47)}
.t2w-hp-chip.is-active .material-symbols-outlined{color:var(--color-secondary-dark,#152A47)}
.t2w-hp-course-filter{justify-content:flex-start;margin:0 0 clamp(16px,2.4vh,24px)}
button.t2w-hp-chip{cursor:pointer;font-family:inherit}
.t2w-hp-course.is-hidden{display:none}

/* ============ SECTION SHELL ============ */
.t2w-hp-sec{padding:clamp(34px,5vh,58px) 0;scroll-margin-top:88px}
.t2w-hp-courses-sec{padding-top:clamp(26px,4vh,44px)}
.t2w-hp-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:clamp(16px,2.4vh,26px);flex-wrap:wrap}
.t2w-hp-eyebrow-2{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary-dark);margin-bottom:12px}
.t2w-hp-eyebrow-2 .material-symbols-outlined{font-size:18px}
.t2w-hp-sec-title{font-family:var(--t2w-font-display);font-weight:900;letter-spacing:-.03em;line-height:1.05;color:var(--color-secondary);font-size:clamp(24px,3.4vw,38px)}
.t2w-hp-sec-title em{font-style:normal;color:var(--t2w-gg-deep);
  background-image:linear-gradient(100deg,var(--color-primary-dark,var(--t2w-gg-deep)),var(--color-primary));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.t2w-hp-sec-desc{margin-top:14px;font-size:15.5px;font-weight:600;color:var(--t2w-hp-ink-soft);max-width:480px}
.t2w-hp-course-head{align-items:flex-end;margin-bottom:clamp(16px,2.4vh,24px)}
.t2w-hp-course-nav{align-self:flex-end}
.t2w-hp-sec-see{display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:14px;color:var(--color-secondary);white-space:nowrap;transition:gap .25s,color .2s;min-height:44px}
.t2w-hp-sec-see:hover{gap:12px;color:var(--color-primary-dark)}
.t2w-hp-sec-see svg{width:16px;height:16px}

/* ============ BY-GUIDE ATTRIBUTION ============ */
.t2w-hp-by{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700}
.t2w-hp-by-av{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;
  font-size:11px;font-weight:900;color:var(--color-secondary-dark);
  background:linear-gradient(140deg,var(--color-primary-lighter),var(--color-primary-dark));
  box-shadow:0 3px 8px rgba(255,150,0,.35);border:1.5px solid var(--color-white)}
.t2w-hp-by .t2w-hp-by-star{color:var(--color-primary-dark);font-weight:900}

/* ============ BADGES (b-korean 제외 — 금지어 '한국어') ============ */
.t2w-hp-badge{display:inline-flex;align-items:center;gap:5px;font-weight:900;font-size:11.5px;
  padding:6px 12px;border-radius:var(--t2w-hp-r-pill);color:var(--color-white);letter-spacing:.01em;box-shadow:0 5px 14px rgba(0,0,0,.18)}
.t2w-hp-b-hot{background:linear-gradient(100deg,var(--color-accent-coral),var(--t2w-hp-coral))}
.t2w-hp-b-best{background:linear-gradient(100deg,var(--color-primary-dark),var(--color-primary));color:var(--color-secondary-dark)}
.t2w-hp-b-new{background:linear-gradient(100deg,var(--t2w-hp-violet),var(--color-info))}
.t2w-hp-b-private{background:linear-gradient(100deg,var(--color-secondary),var(--color-secondary-light))}
.t2w-hp-badge.t2w-hp-b-type{background:var(--color-secondary)}
.t2w-hp-rate-chip{display:inline-flex;align-items:center;gap:4px;background:rgba(10,18,30,.5);
  backdrop-filter:blur(6px);color:var(--color-white);font-weight:800;font-size:13px;padding:6px 11px;border-radius:var(--t2w-hp-r-pill)}
.t2w-hp-rate-chip .t2w-hp-star{color:var(--color-primary-lighter)}

/* ============ COURSE RAIL ============ */
.t2w-hp-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,328px);gap:20px;
  overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;padding:6px 4px 22px;scroll-snap-type:x mandatory;scrollbar-width:none}
.t2w-hp-rail::-webkit-scrollbar{display:none}
.t2w-hp-course{scroll-snap-align:start;position:relative;border-radius:var(--t2w-hp-r-lg);overflow:hidden;
  min-height:380px;box-shadow:var(--t2w-hp-sh-md);display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--t2w-gg-ink);transition:transform .34s var(--t2w-hp-ease),box-shadow .34s}
.t2w-hp-course:hover{transform:translateY(-7px);box-shadow:var(--t2w-hp-sh-lg)}
.t2w-hp-course img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--t2w-hp-ease),filter .5s}
.t2w-hp-course:hover img{transform:scale(1.07)}
.t2w-hp-course::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,30,.08) 24%,rgba(10,18,30,.55) 60%,rgba(10,18,30,.92) 100%)}
.t2w-hp-course-top{position:absolute;top:16px;left:16px;right:16px;z-index:3;display:flex;justify-content:space-between;align-items:flex-start}
.t2w-hp-course-b{position:relative;z-index:2;padding:20px;color:var(--color-white)}
.t2w-hp-course-city{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary-lighter)}
.t2w-hp-course-name{font-size:clamp(21px,2.3vw,26px);font-weight:900;letter-spacing:-.02em;line-height:1.08;margin-top:6px}
.t2w-hp-course .t2w-hp-by{color:rgba(255,255,255,.92);margin-top:12px}
.t2w-hp-course-cta{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.t2w-hp-course-days{font-size:12px;font-weight:700;color:rgba(255,255,255,.85);
  background:rgba(255,255,255,.15);backdrop-filter:blur(4px);padding:7px 12px;border-radius:var(--t2w-hp-r-pill)}
.t2w-hp-course-start{display:inline-flex;align-items:center;gap:7px;font-weight:900;font-size:13.5px;min-height:44px;
  background:linear-gradient(100deg,var(--color-primary),var(--color-primary-dark));color:var(--color-secondary-dark);
  padding:10px 16px;border-radius:var(--t2w-hp-r-pill);box-shadow:0 8px 18px rgba(255,150,0,.4);transition:gap .25s,transform .2s}
.t2w-hp-course:hover .t2w-hp-course-start{gap:11px}
.t2w-hp-course-start svg{width:15px;height:15px}
.t2w-hp-rail-hint{display:none;align-items:center;gap:8px;color:var(--t2w-hp-ink-soft);font-size:12.5px;font-weight:700;margin-top:6px}
.t2w-hp-rail-hint .material-symbols-outlined{font-size:18px;color:var(--color-primary-dark)}
.t2w-hp-rail-track{display:none}

/* ============ TOURS — 목적지별 가로 탐색 레일 (탭 없음) ============ */
.t2w-hp-tours-sec{background:linear-gradient(180deg,var(--t2w-hp-paper) 0%,var(--t2w-hp-paper-2) 100%)}
.t2w-hp-tgroup+.t2w-hp-tgroup{margin-top:clamp(26px,4vh,38px)}
/* S266 B: 도시 탭 바 — 모바일 전용 UI (≤768 media에서 flex 전환) */
/* S270 (마스터 A+C안): 도시 탭을 전 뷰포트로 승격 — 데스크톱 도시 7레일 세로 나열(3,401px) 해소 */
.t2w-hp-tcity-tabs{display:flex;margin:0 0 16px}
.t2w-hp-tours-sec.is-tabbed .t2w-hp-tgroup[data-t2w-tcity]{display:none}
.t2w-hp-tours-sec.is-tabbed .t2w-hp-tgroup.is-cityon{display:block;margin-top:0}
.t2w-hp-chip-n{font-weight:800;font-size:11.5px;color:var(--t2w-amber-ink,#8A5A00);background:var(--color-tag-gold-bg,#FFF3D6);border-radius:999px;padding:2px 7px;margin-left:2px}
.t2w-hp-chip.is-active .t2w-hp-chip-n{background:rgba(255,255,255,.35);color:inherit}
.t2w-hp-tgroup-h{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.t2w-hp-tgroup-h .t2w-hp-tl{display:flex;align-items:center;gap:11px}
.t2w-hp-tgroup-h .t2w-hp-ti{width:38px;height:38px;flex:none;border-radius:12px;display:grid;place-items:center;color:var(--color-secondary-dark);
  background:linear-gradient(135deg,var(--color-primary-lighter),var(--color-primary));box-shadow:var(--t2w-hp-sh-sm)}
.t2w-hp-tgroup-h .t2w-hp-ti .material-symbols-outlined{font-size:21px}
.t2w-hp-tgroup-h h3{font-size:clamp(17px,2vw,21px);font-weight:900;color:var(--color-secondary);letter-spacing:-.01em}
.t2w-hp-tmeta{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.t2w-hp-tgroup-h .t2w-hp-tc{font-size:12px;font-weight:800;color:var(--t2w-hp-ink-soft);white-space:nowrap}
.t2w-hp-pnav{display:inline-flex;align-items:center;gap:6px;flex:none}
.t2w-hp-pnav-btn{width:34px;height:34px;border:1px solid rgba(10,18,30,.12);border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.92);color:var(--color-secondary);box-shadow:var(--t2w-hp-sh-sm);
  transition:transform .18s,border-color .18s,background .18s,color .18s,opacity .18s}
.t2w-hp-pnav-btn:hover{transform:translateY(-1px);border-color:rgba(255,183,0,.72);color:var(--color-primary-dark,var(--t2w-gg-deep))}
.t2w-hp-pnav-btn:disabled{opacity:.36;cursor:default;transform:none}
.t2w-hp-pnav-btn .material-symbols-outlined{font-size:21px}
.t2w-hp-pgrid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(244px,286px);gap:clamp(14px,2vw,22px);
  overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
  padding:4px 4px 18px;margin:0 -4px;scrollbar-width:thin;scrollbar-color:rgba(10,18,30,.22) transparent}
.t2w-hp-pgrid::-webkit-scrollbar{height:8px}
.t2w-hp-pgrid::-webkit-scrollbar-track{background:transparent}
.t2w-hp-pgrid::-webkit-scrollbar-thumb{background:rgba(10,18,30,.2);border-radius:999px}
.t2w-hp-pcard{display:block;min-width:0;scroll-snap-align:start;border-radius:var(--t2w-hp-r-md);transition:transform .3s var(--t2w-hp-ease)}
.t2w-hp-pcard:hover{transform:translateY(-5px)}
.t2w-hp-pcard.hide{display:none}
/* S264: .t2w-hp-morecard(레일 끝 "○○ 전체 보기" 타일) 제거 — 슬라이드가 전 상품을 담음(마스터 지시). */
.t2w-hp-ptrack{display:none}
.t2w-hp-pimg{position:relative;aspect-ratio:4/3;border-radius:var(--t2w-hp-r-md);overflow:hidden;box-shadow:var(--t2w-hp-sh-sm);background:var(--t2w-gg-ink)}
.t2w-hp-pimg img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--t2w-hp-ease)}
.t2w-hp-pcard:hover .t2w-hp-pimg img{transform:scale(1.07)}
.t2w-hp-pimg .t2w-hp-badge{position:absolute;top:12px;left:12px;z-index:2}
.t2w-hp-pbody{padding:13px 4px 0}
.t2w-hp-p-name{font-size:15.5px;font-weight:900;letter-spacing:-.01em;line-height:1.28;color:var(--t2w-hp-ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.t2w-hp-pbody .t2w-hp-by{color:var(--t2w-hp-ink-soft);margin-top:8px}
.t2w-hp-p-rate{margin-top:8px;font-size:13px;font-weight:800;color:var(--color-primary-dark)}
.t2w-hp-p-rate small{font-weight:700;color:var(--t2w-hp-ink-soft);margin-left:6px;font-size:12px}
.t2w-hp-p-price{margin-top:9px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.t2w-hp-p-price b{font-size:18px;font-weight:900;color:var(--color-secondary);letter-spacing:-.01em}
.t2w-hp-p-price b small{font-size:12px;font-weight:800;color:var(--t2w-hp-ink-soft)}
.t2w-hp-p-price .t2w-hp-krw{font-size:12px;font-weight:700;color:var(--t2w-hp-ink-soft)}
.t2w-hp-viewall{margin-top:clamp(20px,3vh,30px);display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--color-white);border:1.5px solid rgba(255,183,0,.4);border-radius:var(--t2w-hp-r-lg);
  padding:20px 26px;box-shadow:var(--t2w-hp-sh-sm);transition:transform .25s,box-shadow .25s,border-color .25s}
.t2w-hp-viewall:hover{transform:translateY(-3px);box-shadow:var(--t2w-hp-sh-md);border-color:var(--color-primary)}
.t2w-hp-viewall .t2w-hp-vl{display:flex;align-items:center;gap:14px;min-width:0}
.t2w-hp-viewall .t2w-hp-vi{width:44px;height:44px;flex:none;border-radius:14px;display:grid;place-items:center;color:var(--color-secondary-dark);
  background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark))}
.t2w-hp-viewall .t2w-hp-vi .material-symbols-outlined{font-size:24px}
.t2w-hp-viewall b{font-size:clamp(15px,1.8vw,18px);font-weight:900;color:var(--color-secondary)}
.t2w-hp-viewall p{font-size:12.5px;font-weight:700;color:var(--t2w-hp-ink-soft);margin-top:2px}
.t2w-hp-viewall .t2w-hp-va-go{display:inline-flex;align-items:center;gap:7px;font-weight:900;font-size:14px;color:var(--color-primary-dark);white-space:nowrap}
.t2w-hp-viewall .t2w-hp-va-go svg{width:16px;height:16px}

/* ============ FLEET — 공항픽업·택시·밴/버스 대절·이사 (차량 서비스) ============ */
.t2w-hp-fleet-sec{background:var(--t2w-hp-paper)}
.t2w-hp-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
/* S264 B3: 마켓플레이스 스펙시트 카드 — 와이드 사진 + 스펙 칩 + 가격/견적. (옛 62px 실사진 서클 규칙 제거) */
.t2w-hp-svc{position:relative;background:var(--color-white);border:1px solid var(--t2w-hp-line);border-radius:var(--t2w-hp-r-lg);
  box-shadow:var(--t2w-hp-sh-sm);display:flex;flex-direction:column;scroll-margin-top:96px;overflow:hidden;
  transition:transform .3s var(--t2w-hp-ease),box-shadow .3s,border-color .3s}
.t2w-hp-svc:hover{transform:translateY(-5px);box-shadow:var(--t2w-hp-sh-md);border-color:rgba(255,183,0,.5)}
.t2w-hp-svc:target{border-color:var(--color-primary);box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-svc.is-hidden{display:none}
.t2w-hp-svc-ph{position:relative;aspect-ratio:16/8.5;overflow:hidden;background:var(--t2w-hp-paper-2,#FFF6E6)}
.t2w-hp-svc-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s var(--t2w-hp-ease)}
.t2w-hp-svc:hover .t2w-hp-svc-ph img{transform:scale(1.06)}
.t2w-hp-svc-ph-fb{position:absolute;inset:0;display:grid;place-items:center;color:var(--t2w-amber-ink,#8A5A00)}
.t2w-hp-svc-ph-fb .material-symbols-outlined{font-size:44px}
.t2w-hp-svc-tag{position:absolute;left:12px;top:12px;background:rgba(21,42,71,.85);color:var(--color-white);font-size:11px;font-weight:800;
  border-radius:8px;padding:4px 10px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.t2w-hp-svc-pop{position:absolute;right:12px;top:12px;background:var(--color-primary,#FFB700);color:var(--color-secondary-dark,#152A47);
  font-size:11px;font-weight:900;border-radius:8px;padding:4px 9px;display:inline-flex;align-items:center;gap:3px}
.t2w-hp-svc-pop .material-symbols-outlined{font-size:13px}
.t2w-hp-svc-bd{padding:15px 17px 17px;display:flex;flex-direction:column;flex:1}
.t2w-hp-svc h3{font-size:16.5px;font-weight:900;color:var(--color-secondary);letter-spacing:-.02em}
.t2w-hp-svc-specs{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}
.t2w-hp-svc-specs span{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:700;color:var(--t2w-hp-ink-soft);
  background:var(--t2w-hp-paper,#FBF8F1);border:1px solid var(--t2w-hp-paper-3,#FFEFD6);border-radius:8px;padding:4px 9px}
.t2w-hp-svc-specs .material-symbols-outlined{font-size:14px;color:var(--color-primary-dark)}
.t2w-hp-svc-foot{margin-top:auto;padding-top:13px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;
  border-top:1px solid var(--t2w-hp-paper-3,#FFEFD6)}
.t2w-hp-svc-specs+.t2w-hp-svc-foot{margin-top:13px}
/* S264 B3: 신뢰 스트립 */
.t2w-hp-ftrust{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-bottom:14px;padding:12px 18px;
  background:var(--color-white);border:1px solid var(--t2w-hp-paper-3,#FFEFD6);border-radius:14px;box-shadow:var(--t2w-hp-sh-sm)}
.t2w-hp-ftrust span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;color:var(--color-secondary)}
.t2w-hp-ftrust .material-symbols-outlined{font-size:17px;color:var(--color-primary-dark)}
/* S270 B안: 탭 필터 마크업 은퇴(주력 3+행 리스트가 대체) — 클래스 규칙은 롤백 대비 유지 */
.t2w-hp-fleet-filter{margin:0 0 16px;justify-content:flex-start}
/* S270 B안: 사진 웜 스크림 — 스톡 사진 잡색(노랑 택시·파란 버스)을 브랜드 웜톤으로 통일 */
.t2w-hp-svc-ph::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(160deg,rgba(255,183,0,.13),rgba(29,26,12,.18) 72%);mix-blend-mode:multiply}
.t2w-hp-svc-ph .t2w-hp-svc-tag,.t2w-hp-svc-ph .t2w-hp-svc-pop{z-index:2}
/* S270 B안: 특수 수요 서비스 행 리스트 (버스·골프·유학생·이사·웨딩) */
.t2w-hp-svc-rows{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.t2w-hp-svc-row{display:flex;align-items:center;gap:12px;background:var(--color-white);border:1px solid var(--t2w-hp-line);
  border-radius:12px;padding:11px 14px}
.t2w-hp-svc-row-ic{width:38px;height:38px;border-radius:10px;background:var(--color-tag-gold-bg,#FFF3D6);
  color:var(--color-tag-gold-text,#8A5A00);display:inline-flex;align-items:center;justify-content:center;flex:none}
.t2w-hp-svc-row-tx{min-width:0}
.t2w-hp-svc-row-tx b{display:block;font-size:14px;font-weight:800;color:var(--color-secondary)}
.t2w-hp-svc-row-tx small{display:block;font-size:12px;font-weight:600;color:var(--t2w-hp-mut);margin-top:1px}
.t2w-hp-svc-row-cta{margin-left:auto;flex:none;white-space:nowrap}
.t2w-hp-svc-price{font-size:15.5px;font-weight:900;color:var(--color-secondary)}
.t2w-hp-svc-price small{font-size:11px;font-weight:700;color:var(--t2w-hp-ink-soft);display:block;margin-top:2px}
/* svc-go(예약 링크) + svc-cta(견적 버튼 — 계약서 §5) 동일 스타일 */
.t2w-hp-svc-go,.t2w-hp-svc-cta{display:inline-flex;align-items:center;gap:6px;font-weight:900;font-size:13px;color:var(--color-primary-dark);
  min-height:44px;padding:8px 2px;white-space:nowrap;background:none;border:0;transition:gap .25s}
.t2w-hp-svc-go:hover,.t2w-hp-svc-cta:hover{gap:10px}
.t2w-hp-svc-go svg,.t2w-hp-svc-cta svg{width:15px;height:15px}
.t2w-hp-fleet-note{margin-top:16px;font-size:12.5px;font-weight:700;color:var(--t2w-hp-ink-soft)}

/* ============ PARTNERS (도시별 여행사·가이드 프로필) ============ */
.t2w-hp-guides-sec{background:linear-gradient(180deg,var(--t2w-hp-paper) 0%,var(--t2w-hp-paper-2) 100%)}
.t2w-hp-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
/* S270 A안 (마스터 승인): 다크 풀블리드 카드 → 웜 라이트 카드(사진 밴드+후기 인용 통합).
   옛 다크 규칙 원문 = git aeba8a67 이전. .t2w-hp-g-trips 계열은 마크업 은퇴로 삭제. */
.t2w-hp-guide{position:relative;border-radius:var(--t2w-hp-r-lg);overflow:hidden;
  display:flex;flex-direction:column;padding:0;background:var(--color-white);border:1px solid var(--t2w-hp-line);
  box-shadow:var(--t2w-hp-sh-md);transition:transform .4s var(--t2w-hp-ease),box-shadow .4s}
.t2w-hp-guide img{width:100%;height:150px;object-fit:cover;display:block;transition:transform .8s var(--t2w-hp-ease)}
.t2w-hp-guide:hover{transform:translateY(-5px);box-shadow:var(--t2w-hp-sh-lg)}
.t2w-hp-guide:hover img{transform:scale(1.05)}
.t2w-hp-g-top{position:absolute;top:12px;left:14px;right:14px;z-index:3;display:flex;justify-content:space-between;align-items:flex-start}
.t2w-hp-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex:none;
  font-weight:900;font-size:15px;color:var(--color-secondary-dark);
  background:linear-gradient(140deg,var(--color-primary-lighter),var(--color-primary-dark));
  box-shadow:0 8px 20px rgba(255,150,0,.42);border:2.5px solid rgba(255,255,255,.9)}
.t2w-hp-rate-chip{background:rgba(12,17,28,.78);color:var(--t2w-gg-lite,#F5D98B);border-radius:999px;padding:4px 10px;font-size:11.5px;font-weight:800}
.t2w-hp-g-b{position:relative;z-index:2;color:inherit;padding:14px 16px 16px;display:flex;flex-direction:column;flex:1}
.t2w-hp-g-region{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--color-tag-gold-text,#8A5A00)}
.t2w-hp-g-name{font-size:17.5px;font-weight:900;letter-spacing:-.01em;margin-top:4px;line-height:1.2;color:var(--color-secondary)}
.t2w-hp-g-spec{margin-top:5px;color:var(--t2w-hp-mut);font-size:13px;line-height:1.45;font-weight:600}
.t2w-hp-g-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.t2w-hp-g-quote{margin:12px 0 0;background:var(--t2w-hp-paper-2,#FFF6E6);border-left:3px solid var(--color-primary);
  border-radius:0 10px 10px 0;padding:10px 12px}
.t2w-hp-g-quote p{margin:0;font-size:12.5px;font-weight:700;line-height:1.5;color:var(--color-secondary)}
.t2w-hp-g-quote footer{font-size:11px;color:var(--t2w-hp-mut);font-weight:600;margin-top:4px}
.t2w-hp-g-chat{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:auto;padding:11px;min-height:44px;
  background:var(--color-tag-gold-bg,#FFF3D6);color:var(--color-tag-gold-text,#8A5A00);font:inherit;font-size:13px;font-weight:900;
  border:0;border-radius:10px;cursor:pointer;width:100%}
.t2w-hp-g-chat:hover{filter:brightness(.97)}
.t2w-hp-g-quote+.t2w-hp-g-chat{margin-top:13px}

/* ============ REVIEW STRIP ============ */
.t2w-hp-reviews-sec{background:linear-gradient(180deg,var(--t2w-hp-paper-2),var(--t2w-hp-paper))}
.t2w-hp-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.t2w-hp-review{background:var(--color-white);border:1px solid var(--t2w-hp-line);border-radius:var(--t2w-hp-r-lg);padding:26px;
  box-shadow:var(--t2w-hp-sh-sm);transition:transform .3s var(--t2w-hp-ease),box-shadow .3s,border-color .3s}
.t2w-hp-review:hover{transform:translateY(-5px);box-shadow:var(--t2w-hp-sh-md);border-color:rgba(255,183,0,.5)}
.t2w-hp-rv-stars{color:var(--color-primary-dark);font-size:15px;letter-spacing:2px}
.t2w-hp-rv-quote{margin-top:14px;font-size:18px;font-weight:800;color:var(--color-secondary);letter-spacing:-.01em;line-height:1.4}
.t2w-hp-rv-meta{margin-top:18px;padding-top:16px;border-top:1px solid var(--t2w-hp-line-2);display:flex;align-items:center;gap:10px}
.t2w-hp-rv-pair{display:flex;align-items:center}
.t2w-hp-rv-pair .t2w-hp-by-av{margin-right:-8px;border-color:var(--color-white)}
.t2w-hp-rv-pair .t2w-hp-by-av.t{background:linear-gradient(140deg,rgba(30,58,95,.4),var(--color-secondary));color:var(--color-white)}
.t2w-hp-rv-txt{font-size:12.5px;font-weight:700;color:var(--t2w-hp-ink-soft);line-height:1.3}
.t2w-hp-rv-txt b{color:var(--color-secondary)}

/* ============ HOW — 세 걸음이면, 끝 (스플릿, 라이트) ============ */
.t2w-hp-how-sec{background:var(--t2w-hp-paper)}
.t2w-hp-split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,80px);align-items:center}
.t2w-hp-split-photo{position:relative;height:clamp(300px,40vw,500px);border-radius:var(--t2w-hp-r-lg);overflow:hidden;box-shadow:var(--t2w-hp-sh-md)}
.t2w-hp-split-photo img{width:100%;height:100%;object-fit:cover}
.t2w-hp-split-photo .t2w-hp-tag{position:absolute;left:20px;bottom:18px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--color-white);text-shadow:0 1px 12px rgba(9,19,34,.65);font-weight:600}
.t2w-hp-how-title{font-family:var(--t2w-font-display);font-weight:900;letter-spacing:-.02em;line-height:1;color:var(--color-secondary);font-size:clamp(30px,5vw,58px)}
.t2w-hp-how-title em{font-style:normal;color:transparent;-webkit-text-stroke:1.3px var(--t2w-gg)}
.t2w-hp-steps{margin-top:30px;display:flex;flex-direction:column}
.t2w-hp-step{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:20px 0;border-top:1px solid var(--t2w-hp-line);align-items:start}
.t2w-hp-step .t2w-hp-sn{font-size:13px;color:var(--t2w-gg-deep);font-weight:800;letter-spacing:.1em;padding-top:3px}
.t2w-hp-step b{font-size:clamp(17px,2vw,21px);font-weight:900;color:var(--color-secondary)}
.t2w-hp-step p{margin-top:6px;color:var(--t2w-hp-ink-soft);font-size:13.5px;line-height:1.65;font-weight:600}

/* ============ FINAL CTA BAND — '지금, 당신의 호주를 짜다' ============ */
.t2w-hp-cta-band{position:relative;padding:clamp(80px,14vh,170px) clamp(20px,5vw,64px);text-align:center;overflow:hidden;background:var(--t2w-gg-ink)}
.t2w-hp-cta-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.32) saturate(.8)}
.t2w-hp-cta-band::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 120% at 50% 50%,transparent,var(--t2w-gg-ink))}
.t2w-hp-cta-inner{position:relative;z-index:2}
/* S270 A안: 아웃라인(겹침 가독성 문제) → 채운 글자 + 골드 강조, 크기·행간 정돈 */
.t2w-hp-cta-band h2{font-family:var(--t2w-font-display);font-size:clamp(34px,5.6vw,72px);font-weight:900;line-height:1.12;letter-spacing:-.02em;color:var(--t2w-gg-paper)}
.t2w-hp-cta-band h2 em{font-style:normal;color:var(--color-primary)}
.t2w-hp-cta-sub{margin-top:14px;font-size:15px;font-weight:600;color:rgba(255,255,255,.82)}
.t2w-hp-cta-row{display:flex;gap:12px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:28px}
.t2w-hp-cta-row .t2w-hp-btn-champ{margin-top:0}
.t2w-hp-cta-ghost{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.4);
  color:var(--color-white);font-size:14px;font-weight:800;border-radius:100px;padding:15px 24px;min-height:48px;text-decoration:none}
.t2w-hp-cta-ghost:hover{background:rgba(255,255,255,.2)}
.t2w-hp-btn-champ{display:inline-flex;align-items:center;gap:10px;margin-top:38px;font-size:13.5px;letter-spacing:.06em;
  padding:16px 26px;border:0;border-radius:100px;background:var(--t2w-gg);color:var(--t2w-gg-ink);font-weight:700;transition:.45s var(--t2w-hp-ease)}
.t2w-hp-btn-champ:hover{background:var(--t2w-gg-lite);transform:translateY(-2px)}
.t2w-hp-btn-champ .t2w-hp-ar{width:15px;height:15px;transition:transform .45s var(--t2w-hp-ease)}
.t2w-hp-btn-champ:hover .t2w-hp-ar{transform:translateX(5px)}
.t2w-hp-cta-alt{margin-top:28px;font-size:13.5px;font-weight:600;color:var(--t2w-gg-dim)}
.t2w-hp-cta-alt a{color:var(--t2w-gg-lite);text-decoration:underline;text-underline-offset:3px}

/* ============ REVEAL (스크롤 등장) ============ */
.t2w-hp-reveal{opacity:1;transform:none;transition:opacity .8s var(--t2w-hp-ease),transform .9s var(--t2w-hp-ease)}
.t2w-hp-reveal:not(.in){transform:translateY(18px)}
.t2w-hp-reveal.in{opacity:1;transform:none}
.t2w-hp-reveal.d1{transition-delay:.08s}
.t2w-hp-reveal.d2{transition-delay:.16s}
.t2w-hp-reveal.d3{transition-delay:.24s}
.t2w-hp-reveal.d4{transition-delay:.32s}

/* ============ RESPONSIVE (계약서 §0: 1024 / 768, 폰은 480) ============ */
@media(max-width:1024px){
  .t2w-hp-svc-grid{grid-template-columns:repeat(2,1fr)}
  .t2w-hp-guide-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  body.home header.t2w-app-header#site-header:not(.is-scrolled){background:linear-gradient(180deg,rgba(8,15,26,.44),rgba(8,15,26,.10)) !important}
  body.home header.t2w-app-header#site-header .t2w-hp-logo{font-size:clamp(.92rem,4vw,1.05rem) !important;letter-spacing:.16em !important}
  body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-header__mobile-search,
  body.home header.t2w-app-header#site-header:not(.is-scrolled) .t2w-header__mobile-toggle{color:var(--color-white) !important;
    background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.24) !important;text-shadow:none !important}
  .t2w-hp-hero{min-height:clamp(470px,58vh,560px);padding:86px 0 32px}
  /* S270 A안: 모바일 스텝 칩 = 가로 스크롤, CTA 풀폭 */
  .t2w-hp-hsteps{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-top:16px;padding-bottom:4px}
  .t2w-hp-hsteps::-webkit-scrollbar{display:none}
  .t2w-hp-hsteps a{white-space:nowrap;flex:none;padding:8px 13px;font-size:12.5px}
  .t2w-hp-hcta{display:flex;justify-content:center;margin-top:16px;font-size:15px}
  .t2w-hp-jband--slim{gap:10px}
  .t2w-hp-jminis{justify-content:flex-start}
  .t2w-hp-jmini{flex:1 1 100%;min-width:0}
  .t2w-hp-jband--slim .t2w-hp-jcta{width:100%;justify-content:center}
  .t2w-hp-htitle{font-size:clamp(38px,11.2vw,50px);line-height:.98}
  .t2w-hp-htitle .t2w-hp-l1{font-size:.72em;-webkit-text-stroke:0}
  /* S266: 모바일 첫 화면 가치 문구 — 헤드라인 아래 한 줄 부제 노출 */
  .t2w-hp-hsub{display:block;margin-top:10px;font-size:13.5px;font-weight:600;line-height:1.5;
    color:rgba(255,255,255,.94);text-shadow:0 1px 10px rgba(0,0,0,.4);word-break:keep-all}
  .t2w-hp-explore{margin-top:-24px;padding-bottom:24px}
  /* S266: 모바일 섹션 수직 리듬 — 데스크톱용 큰 패딩(34~58px)이 모바일에선 빈 띠로 보임 */
  .t2w-hp-sec{padding:26px 0}
  /* S266 B 투어 도시 탭 — S270에서 기본층(전 뷰포트)으로 승격, 모바일 여백만 유지 */
  .t2w-hp-tcity-tabs{margin:0 0 14px}
  .t2w-hp-ex-head{justify-content:flex-start;font-size:12.5px;line-height:1.45;letter-spacing:0}
  .t2w-hp-courses-sec{padding-top:24px}
  .t2w-hp-course-head{align-items:flex-start;margin-bottom:14px}
  .t2w-hp-course-nav{display:none}
  .t2w-hp-rail{grid-auto-columns:minmax(310px,360px);gap:14px;padding:4px 4px 14px}
  .t2w-hp-rail-track{display:block;width:78px;height:4px;margin:0 auto 4px;border-radius:999px;background:rgba(10,18,30,.12);overflow:hidden}
  .t2w-hp-rail-track span{display:block;width:24%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-primary),var(--t2w-gg-deep));
    transform:translateX(0);transition:width .18s,transform .18s}
  .t2w-hp-cities{justify-content:flex-start}
  .t2w-hp-themes{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px;scrollbar-width:none;justify-content:flex-start}
  .t2w-hp-themes::-webkit-scrollbar{display:none}
  .t2w-hp-chip{white-space:nowrap;flex:none}
  .t2w-hp-hnav{display:none}
  .t2w-hp-hdots{bottom:8px}
  .t2w-hp-hslide-cta{padding:11px 18px;font-size:13px}
  /* S266: 배너 압축 (마스터 승인 시안 — 391px→~180px). 스텝 2개(일정→상품 추가, 차량 칸 숨김),
     사진 숨김·제목+CTA 한 줄. 옛 jbn-shelf* 규칙은 예산 배너 제거로 정리. */
  .t2w-hp-jband{padding:13px 14px 12px}
  .t2w-hp-jdots{margin-top:3px}
  .t2w-hp-jhead{display:flex;align-items:center;gap:10px}
  .t2w-hp-jtitle{font-size:14.5px;flex:1;min-width:0}
  .t2w-hp-jcta{width:auto;flex:none;justify-content:center;padding:8px 13px;font-size:12px;min-height:38px}
  .t2w-hp-jroute{margin-top:10px}
  .t2w-hp-jline{display:none}
  .t2w-hp-jcells{flex-direction:row;gap:8px}
  .t2w-hp-jpin{position:static;transform:none;flex:none;border-width:2px;width:20px;height:20px;font-size:11px}
  .t2w-hp-jcell{flex:1;min-width:0;padding:8px 9px;min-height:50px;gap:7px}
  .t2w-hp-jcell--car{display:none}
  .t2w-hp-jph{display:none}
  .t2w-hp-jpill{display:none}
  .t2w-hp-jtx strong{font-size:11.5px;line-height:1.2;word-break:keep-all}
  .t2w-hp-jsub{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .t2w-hp-jchip--a,.t2w-hp-jchip--b{display:none}
  /* S266: 유명인 레일 모바일 (S267: 사연 줄 공간 152→168px) */
  .t2w-hp-celeb-rail{grid-auto-columns:168px;gap:10px}
  .t2w-hp-cel-ph{height:108px}
  .t2w-hp-cel-nm{font-size:12.5px}
  /* S267: 유명인 피처 카드 모바일 */
  .t2w-hp-celf img{height:238px}
  .t2w-hp-celf-bd{left:14px;right:14px;bottom:13px}
  .t2w-hp-celf-ttl{font-size:16.5px}
  .t2w-hp-celf-also{font-size:11.5px}
  .t2w-hp-celf-go{margin-top:9px;padding:7px 13px;font-size:12px}
  .t2w-hp-celeb-trust{font-size:11px}
  /* S266: 이어가기 배너 모바일 */
  .t2w-hp-jre{padding:13px 14px 12px;border-radius:18px}
  .t2w-hp-jre-title{font-size:14.5px}
  .t2w-hp-jre-cta{padding:8px 13px;font-size:12px;min-height:38px}
  .t2w-hp-jre-sub{margin-top:8px}
  .t2w-hp-jre-meta{font-size:10.5px}
  .t2w-hp-jad{flex-direction:column;text-align:center;gap:10px;padding:22px 16px}
  .t2w-hp-jad-cta{margin:6px 0 0}
  .t2w-hp-jbn{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 10px;padding:13px 14px 12px;text-align:left}
  .t2w-hp-jbn-tx{flex:none;width:100%;grid-column:1;grid-row:1}
  .t2w-hp-jbn-tx i{display:none}
  .t2w-hp-jbn-tx strong{font-size:14.5px;margin-top:0}
  .t2w-hp-jbn-tx>span{display:none}
  .t2w-hp-jbn-cta{grid-column:2;grid-row:1;margin:0;padding:8px 12px;font-size:12px}
  .t2w-hp-jbn-plan{grid-column:1 / -1;grid-row:2;width:100%;max-width:none;display:flex;gap:6px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-left:0}
  .t2w-hp-jbn-plan::-webkit-scrollbar{display:none}
  .t2w-hp-jbn-plan::before{display:none}
  .t2w-hp-jbn-row{flex:none;margin:0;padding:6px 11px;border-radius:999px}
  .t2w-hp-jbn-row::before{display:none}
  .t2w-hp-jbn-row img{display:none}
  .t2w-hp-jbn-rnm{font-size:11px;white-space:nowrap}
  .t2w-hp-jbn-tm{font-size:10px}
  .t2w-hp-jbn-badge{position:static;font-size:9px;padding:2px 5px}
  .t2w-hp-jbn-pill{font-size:10px;white-space:nowrap}
  .t2w-hp-shelf{flex-direction:column;gap:12px}
  .t2w-hp-bt--mid{transform:none}
  .t2w-hp-bt--mid:hover{transform:translateY(-4px)}
  .t2w-hp-bt-up{flex-direction:row;margin:-4px auto;gap:6px}
  .t2w-hp-bt-ph{aspect-ratio:16/6}
  .t2w-hp-tplaces-grid{grid-template-columns:repeat(3,1fr);gap:9px}
  /* S266: 장소 이름 겹침 수정 — 2줄 클램프 + 진한 하단 스크림 + keep-all (긴 이름이 사진 중앙까지 침범하던 결함) */
  .t2w-hp-tplace{height:118px}
  .t2w-hp-tplace span{font-size:11.5px;line-height:1.25;padding:20px 8px 8px;word-break:keep-all;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    color:var(--color-white,#fff);text-shadow:0 1px 6px rgba(0,0,0,.6);
    background:linear-gradient(transparent,rgba(10,16,26,.68) 28%,rgba(10,16,26,.96))}
  .t2w-hp-svc-grid{grid-template-columns:repeat(2,1fr)}
  .t2w-hp-guide-grid{grid-template-columns:repeat(2,1fr)}
  .t2w-hp-reviews{grid-template-columns:1fr}
  .t2w-hp-split{grid-template-columns:1fr}
}
@media(max-width:480px){
  .t2w-hp-htitle{font-size:clamp(38px,11.2vw,50px)}
  .t2w-hp-tgroup-h{align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:12px}
  .t2w-hp-tmeta{width:100%;justify-content:flex-start;gap:10px}
  .t2w-hp-tgroup-h .t2w-hp-tc{white-space:normal;text-align:left;line-height:1.35;max-width:100%}
  .t2w-hp-pnav{display:none}
  .t2w-hp-pnav-btn{width:36px;height:36px}
  .t2w-hp-rail{grid-auto-columns:calc(100vw - 74px);gap:12px}
  .t2w-hp-course{min-height:350px}
  .t2w-hp-course-b{padding:18px}
  /* S266 B: 다이어트 — 투어 카드 1장 통유리(316px)→1.5장 피크(62vw) = 카드·이미지 높이 ~30%↓ + 옆에 더 있음이 보임 */
  .t2w-hp-pgrid{grid-auto-columns:62vw;gap:11px;padding:4px 4px 14px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .t2w-hp-pgrid::-webkit-scrollbar{display:none}
  .t2w-hp-ptrack{display:block;width:72px;height:4px;margin:0 auto 4px;border-radius:999px;background:rgba(10,18,30,.12);overflow:hidden}
  .t2w-hp-ptrack span{display:block;width:22%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-primary),var(--t2w-gg-deep));
    transform:translateX(0);transition:width .18s,transform .18s}
  .t2w-hp-p-name{font-size:13px}
  .t2w-hp-p-price b{font-size:15px}
  /* S266 B: 차량 카드 1열 거대(카드당 ~1화면)→2열 컴팩트 = 섹션 높이 절반 이하 */
  .t2w-hp-svc-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .t2w-hp-svc-bd{padding:11px 11px 12px}
  .t2w-hp-svc h3{font-size:13.5px}
  .t2w-hp-svc-specs{gap:4px;margin-top:7px}
  .t2w-hp-svc-specs span{font-size:10px;padding:3px 7px;gap:3px}
  .t2w-hp-svc-specs .material-symbols-outlined{font-size:12px}
  .t2w-hp-svc-foot{flex-direction:column;align-items:stretch;gap:7px;padding-top:10px}
  .t2w-hp-svc-price{font-size:13.5px}
  .t2w-hp-svc-price small{display:block;margin:2px 0 0}
  .t2w-hp-svc-cta{justify-content:center;min-height:44px}
  /* S270 B안: 특수 서비스 행 리스트 = 모바일 1열 */
  .t2w-hp-svc-rows{grid-template-columns:1fr}
  .t2w-hp-svc-row-cta{min-height:44px;padding:0 14px}
  .t2w-hp-svc-tag,.t2w-hp-svc-pop{font-size:10px;padding:3px 7px;left:8px;top:8px}
  .t2w-hp-svc-pop{left:auto;right:8px}
  .t2w-hp-guide-grid{grid-template-columns:1fr}
}

/* ============ REDUCED MOTION (계약서 §6 — reveal/파랄랙스 해제, 우선순위 강제 없이 파일 말미 캐스케이드로 승) ============ */
@media(prefers-reduced-motion:reduce){
  .t2w-hp *{animation:none;transition:none}
  .t2w-hp-reveal{opacity:1;transform:none}
}


/* ---- Survey / Guide modals (moved from legacy homepage.css — markup lives in template-parts/home/modals.php; class names untouched: header global buttons trigger them) ---- */


/* Suggestion Chips — single row, scroll on overflow */


/* Chips — colored left accent + hover elevation */


/* Per-chip color accents */


/* Hero side photo — right side, desktop only */

/* Header utility buttons — Guide + Survey (moved from hero) */

/* Guide Modal */
.t2w-guide-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    background: rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    backdrop-filter: blur(2px);
}


.t2w-guide-overlay--open {
    opacity: 1;
    visibility: visible;
}


.t2w-guide-modal {
    background: #fff;
    border-radius: 20px;
    padding: 28px 24px;
    width: 90%;
    max-width: 480px;
    max-height: 85vh;
    overflow-y: auto;
    position: relative;
    transform: translateY(20px);
    transition: transform 0.3s;
    box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}


.t2w-guide-overlay--open .t2w-guide-modal {
    transform: translateY(0);
}


.t2w-guide-modal__close {
    position: absolute;
    top: 12px;
    right: 12px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    color: #9CA3AF;
}


.t2w-guide-modal__close:hover { color: #374151; }


.t2w-guide-modal__title {
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 4px;
    color: var(--hp-text-primary);
}


.t2w-guide-modal__desc {
    font-size: 13px;
    color: #6B7280;
    margin: 0 0 20px;
}


.t2w-guide-steps {
    display: flex;
    flex-direction: column;
    gap: 16px;
}


.t2w-guide-step {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    position: relative;
}


.t2w-guide-step__num {
    position: absolute;
    top: -4px;
    left: -4px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--hp-primary);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}


.t2w-guide-step__icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--step-color, var(--color-primary)) 12%, transparent);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}


.t2w-guide-step__icon .material-symbols-outlined {
    font-size: 22px;
    color: var(--step-color, var(--color-primary));
}


.t2w-guide-step__body h4 {
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 2px;
    color: var(--hp-text-primary);
}


.t2w-guide-step__body p {
    font-size: 12px;
    color: #6B7280;
    margin: 0;
    line-height: 1.5;
}


.t2w-guide-modal__cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(180deg, #FFC233 0%, var(--hp-primary) 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    margin-top: 20px;
    transition: transform 0.15s, box-shadow 0.2s;
}


.t2w-guide-modal__cta:hover {
    transform: scale(1.02);
    box-shadow: 0 4px 16px rgba(var(--hp-primary-rgb), 0.3);
    color: #fff;
    text-decoration: none;
}


.t2w-guide-modal__cta .material-symbols-outlined { font-size: 20px; }

    .t2w-guide-modal {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        border-radius: 20px 20px 0 0;
        max-height: 90vh;
        padding: 24px 20px;
    }


/* Survey Modal */
.t2w-survey-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    background: rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    backdrop-filter: blur(2px);
}


.t2w-survey-overlay--open {
    opacity: 1;
    visibility: visible;
}


.t2w-survey-modal {
    background: #fff;
    border-radius: 20px;
    padding: 28px 24px;
    width: 90%;
    max-width: 440px;
    max-height: 85vh;
    overflow-y: auto;
    position: relative;
    transform: translateY(20px);
    transition: transform 0.3s;
    box-shadow: 0 20px 60px rgba(0,0,0,0.2);
}


.t2w-survey-overlay--open .t2w-survey-modal {
    transform: translateY(0);
}


.t2w-survey-modal__close {
    position: absolute;
    top: 12px;
    right: 12px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    color: #9CA3AF;
    transition: color 0.2s;
}


.t2w-survey-modal__close:hover { color: #374151; }


.t2w-survey-modal__title {
    font-size: 20px;
    font-weight: 800;
    margin: 0 0 4px;
    color: var(--hp-text-primary);
}


.t2w-survey-modal__desc {
    font-size: 13px;
    color: #6B7280;
    margin: 0 0 20px;
}


.t2w-survey-field { margin-bottom: 16px; }


.t2w-survey-label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--hp-text-primary);
    margin-bottom: 8px;
}


.t2w-survey-options {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}


.t2w-survey-radio,
.t2w-survey-check {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: var(--hp-text-secondary);
    padding: 6px 12px;
    border-radius: 99px;
    border: 1px solid #E5E7EB;
    cursor: pointer;
    transition: all 0.15s;
    background: #FAFAFA;
}


.t2w-survey-radio:has(input:checked),
.t2w-survey-check:has(input:checked) {
    background: #FFF8E1;
    border-color: var(--hp-primary);
    color: var(--hp-text-primary);
    font-weight: 600;
}


.t2w-survey-radio input,
.t2w-survey-check input {
    display: none;
}


/* Stars */
.t2w-survey-stars {
    display: flex;
    gap: 4px;
}


.t2w-survey-textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #E5E7EB;
    border-radius: 10px;
    font-size: 13px;
    font-family: var(--hp-font-body);
    resize: vertical;
    min-height: 60px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}


.t2w-survey-textarea:focus { border-color: var(--hp-primary); }


.t2w-survey-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #E5E7EB;
    border-radius: 10px;
    font-size: 13px;
    font-family: var(--hp-font-body);
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
}


.t2w-survey-input:focus { border-color: var(--hp-primary); }


.t2w-survey-submit {
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 12px;
    background: linear-gradient(180deg, #FFC233 0%, var(--hp-primary) 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.2s;
    margin-top: 8px;
}


.t2w-survey-submit:hover {
    transform: scale(1.02);
    box-shadow: 0 4px 16px rgba(var(--hp-primary-rgb), 0.3);
}


.t2w-survey-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}


.t2w-survey-success {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 20px;
    text-align: center;
}

    .t2w-survey-modal {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        border-radius: 20px 20px 0 0;
        max-height: 90vh;
        padding: 24px 20px;
    }
