/* Independent destination design: cr-v1-layout-15-lavender-cloud. */
:root{--coral:#7243d9;--coral-dark:#7243d9;--accent:#b69cff;--pink:#f8f6ff;--navy:#2b2251;--ink:#2b2251;--muted:color-mix(in srgb,#2b2251 62%,transparent);--line:color-mix(in srgb,#7243d9 18%,#d8dee7);--bg:#f8f6ff;--white:#ffffff;--yellow:#b69cff;--shadow:0 18px 45px color-mix(in srgb,#7243d9 15%,transparent)}
body{background:var(--bg);color:var(--ink)}
.hero-copy{position:relative}.hero-copy .search-thumb{left:0;right:auto;top:0;width:1px;height:1px!important;opacity:.001;border:0}
.title-line .partner-name{display:flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - 100px);margin:0 0 7px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--muted);font-size:12px;line-height:1.35}
.title-line .partner-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:13px}.title-line .page-description{color:var(--muted);margin:0}
.step h3{display:block;margin:0 0 6px;font-size:16px;line-height:1.4}.profile-summary .profile-call{display:grid;place-items:center;width:100%;min-height:48px;border-radius:inherit;background:var(--yellow);color:#111827;font-weight:900}
.top-search input,.finder input,.finder select{color:var(--ink);background:var(--white)}.fixed-call:focus-visible,.profile-call:focus-visible,.shop-card:focus-visible,.text-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:560px){.title-line .partner-name{max-width:calc(100% - 70px);font-size:11px}.title-line .partner-name strong{font-size:12px}}

.top{background:rgba(255,255,255,.94);position:sticky;top:0;z-index:30}.notice{display:none}.hero-panel{width:100vw;margin-left:calc(50% - 50vw);min-height:620px;border-radius:0;background:radial-gradient(circle at 80% 25%,rgba(255,190,229,.75),transparent 32%),radial-gradient(circle at 15% 80%,rgba(190,175,255,.75),transparent 35%),linear-gradient(135deg,#fff8ff,#eee8ff);padding:90px max(10vw,48px);grid-template-columns:1fr 430px}.hero-copy h1{font-size:52px}.hero-copy p{max-width:600px}.hero-art{width:420px;height:420px;border-radius:26px;border:0;background:rgba(255,255,255,.55);box-shadow:0 25px 70px rgba(99,58,158,.16)}.hero-art img{width:100%;height:100%;object-fit:cover;border-radius:26px;filter:none}.finder{margin-top:-38px;position:relative;border:0;border-radius:999px}.shop-grid{grid-template-columns:repeat(3,1fr);gap:22px}.shop-card,.feature,.panel,.text-card{border-radius:22px;box-shadow:0 15px 40px rgba(72,44,105,.08)}.card-photo{aspect-ratio:4/3}.footer{background:#2a2140}
@media(max-width:900px){.hero-panel{width:auto;margin-left:0;grid-template-columns:1fr 300px;padding:50px 30px}.hero-art{width:290px;height:320px}.finder{border-radius:18px}}
@media(max-width:560px){.hero-panel{grid-template-columns:1fr;padding:34px 18px}.hero-copy h1{font-size:34px}.hero-art{width:100%;height:300px}.finder{margin-top:14px}}

.page-head{margin:26px 0;padding:58px 48px;border-radius:42px;background:radial-gradient(circle at 88% 10%,#ffd7ef,transparent 30%),radial-gradient(circle at 8% 90%,#d6ccff,transparent 35%),#fff9ff}.title-line h1{font-size:48px;color:#563977}.detail-gallery{grid-template-columns:1.4fr repeat(3,1fr);gap:18px}.detail-gallery img{height:300px;aspect-ratio:auto;border-radius:30px;box-shadow:0 22px 45px rgba(81,54,111,.12)}.detail-gallery img:nth-child(even){transform:translateY(24px)}.detail-layout{grid-template-columns:minmax(0,1fr) 300px;margin-top:38px}.profile-summary{background:linear-gradient(145deg,#67518b,#3b2c57);border-radius:28px}.panel{border-radius:26px;border:0;box-shadow:0 16px 38px rgba(81,54,111,.08)}
@media(max-width:560px){.page-head{padding:34px 18px;border-radius:26px}.title-line h1{font-size:32px}.detail-gallery{grid-template-columns:1fr}.detail-gallery img:first-child{display:block;height:300px;transform:none}.detail-gallery img:nth-child(n+2){display:none}}

/* Cross-family production mobile guard: preserve each visual family while
   preventing later family layers from overriding the base responsive header. */
.faq-item button:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
@media(max-width:900px){
html,body{max-width:100%;overflow-x:clip}
.header-row{width:100%!important;min-height:auto!important;grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr)!important;gap:10px!important;padding:10px!important}
.brand{min-width:0!important}.brand img{width:min(180px,100%)!important;max-height:72px!important;object-fit:contain!important;object-position:left center!important}
.top-search{width:100%!important;min-width:0!important;max-width:100%!important}.top-search input{width:100%!important;min-width:0!important}
.nav{grid-column:1/-1!important;width:100%!important;max-width:100%!important;display:flex!important;overflow-x:auto!important;justify-content:flex-start!important;gap:16px!important;padding:8px 0 10px!important;white-space:nowrap!important;overscroll-behavior-inline:contain}
.nav a{flex:0 0 auto!important}
.hero-panel,.finder,.page-head,.title-line,.detail-layout,.search-shell{max-width:100%!important;min-width:0!important}
}
@media(max-width:560px){
.header-row{grid-template-columns:minmax(100px,.78fr) minmax(0,1.22fr)!important;padding:9px 10px!important}
.brand img{max-height:56px!important}.top-search{height:40px!important}.nav{gap:14px!important;font-size:12px!important}
}


/* Per-platform approved-pool presentation tokens. */
:root{--pool-layout-token:cd2a404b791a0234;--platform-image-radius:27px;--platform-card-gap:19px}
.card-photo,.detail-gallery img,.hero-art img{border-radius:var(--platform-image-radius)}
.shop-grid{gap:var(--platform-card-gap)}

/* Source-family correction: jellymsg's cream editorial canvas, forest-green
   oval motif, and restrained ochre cards. This is intentionally structural,
   not a palette-only swap of the previous cloud layout. */
:root{--coral:#164b3d;--coral-dark:#10382e;--accent:#c69b3c;--pink:#f8f2df;--navy:#123b31;--ink:#24332d;--muted:#6e746d;--line:#ded1ad;--bg:#fbf7ea;--white:#fffdf7;--yellow:#d8b35a;--shadow:0 14px 32px rgba(35,62,49,.1)}
body{background:linear-gradient(180deg,#fbf7ea 0,#f5eedc 100%);color:var(--ink)}
.top{position:relative;background:rgba(255,253,247,.97);border-bottom:1px solid var(--line)}
.header-row{min-height:92px}.nav a{color:#2e4d42}.notice{display:none}
.hero-panel{width:min(1180px,calc(100% - 36px));margin:34px auto 0;min-height:500px;padding:64px 58px;grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);border:1px solid var(--line);border-radius:8px;background:linear-gradient(115deg,#fffdf7 0 58%,#eee2bd 58%);box-shadow:none}
.hero-copy h1{max-width:700px;font-family:Georgia,'Noto Serif KR',serif;font-size:48px;line-height:1.16;color:#163f34}
.hero-copy p{max-width:620px;color:#5f675f}.hero-art{width:100%;height:300px;border:0;border-radius:52% 48% 48% 52%/44% 56% 44% 56%;background:#174b3d;box-shadow:0 24px 48px rgba(20,75,61,.2);overflow:hidden}
.hero-art img{width:100%;height:100%;border-radius:inherit;object-fit:cover;filter:saturate(.78) sepia(.08)}
.finder{margin:28px auto 0;border:1px solid #d7bd7b;border-radius:6px;background:#f1dfad;box-shadow:none}
.finder button{background:#164b3d}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.shop-card,.feature,.panel,.text-card{border:1px solid var(--line);border-radius:6px;background:#fffdf7;box-shadow:none}.card-photo{aspect-ratio:16/9;border-radius:3px}.footer{background:#123b31;color:#f9f4e7}
.page-head{margin:26px 0;padding:62px 52px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(115deg,#fffdf7 0 61%,#e8dcba 61%)}
.title-line h1{font-family:Georgia,'Noto Serif KR',serif;font-size:46px;color:#174b3d}.title-line .partner-name{border-radius:3px;border-color:#cdb878;background:#f4e7bd}.detail-gallery{grid-template-columns:1.45fr .9fr;grid-template-rows:230px 190px;gap:14px}.detail-gallery img{height:100%;aspect-ratio:auto;border-radius:4px;box-shadow:none;transform:none!important}.detail-gallery img:first-child{grid-row:1/3}.detail-gallery img:nth-child(3){grid-row:2}.detail-gallery img:nth-child(4){display:none}.detail-layout{grid-template-columns:minmax(0,1fr) 300px}.profile-summary{background:#174b3d;border:1px solid #0e392e;border-radius:6px}.profile-summary .profile-call{background:#d8b35a}.panel{border-radius:6px;border-color:var(--line);box-shadow:none}.panel h2{font-family:Georgia,'Noto Serif KR',serif;color:#174b3d}
@media(max-width:900px){.hero-panel{width:auto;margin:24px 18px 0;grid-template-columns:1fr 290px;padding:44px 30px}.hero-art{width:100%;height:280px}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.hero-panel{grid-template-columns:1fr;margin:18px 10px 0;padding:30px 18px}.hero-copy h1{font-size:34px}.hero-art{height:270px;border-radius:46% 54% 48% 52%/42% 45% 55% 58%}.finder{margin:18px 10px 0;border-radius:6px}.shop-grid{grid-template-columns:1fr}.page-head{padding:34px 20px;border-radius:6px}.title-line h1{font-size:31px}.detail-gallery{grid-template-columns:1fr;grid-template-rows:300px}.detail-gallery img:first-child{display:block}.detail-gallery img:nth-child(n+2){display:none}}

/* TNT mobile detail cascade guard v1 (2026-09-29): this final cascade layer deliberately follows every source-family
   override. It preserves the desktop design while preventing a two-column
   profile from compressing Korean copy into one-character vertical strips. */
@media(max-width:900px){
  .detail-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  .detail-layout>*{width:100%!important;max-width:100%!important;min-width:0!important}
  .profile-summary{position:static!important;top:auto!important}
}
@media(max-width:560px){
  .fact-list div{grid-template-columns:minmax(78px,92px) minmax(0,1fr)!important;gap:12px!important}
  .course-table{table-layout:auto!important}
  .course-table th,.course-table td{word-break:keep-all!important;overflow-wrap:normal!important}
}
