/* Independent destination design: cr-v1-layout-17-teal-editorial. */
:root{--coral:#0c7777;--coral-dark:#0c7777;--accent:#4ed0c1;--pink:#eefafa;--navy:#16343a;--ink:#16343a;--muted:color-mix(in srgb,#16343a 62%,transparent);--line:color-mix(in srgb,#0c7777 18%,#d8dee7);--bg:#eefafa;--white:#ffffff;--yellow:#4ed0c1;--shadow:0 18px 45px color-mix(in srgb,#0c7777 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{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid #cae7e3;backdrop-filter:blur(14px)}.header-row{min-height:88px}.top-search{border:1px solid #5fb7ad;border-radius:999px}.notice{background:#0f766e;color:#fff;padding:5px}.notice-inner{border:0;box-shadow:none;background:transparent;color:#fff}
.hero-panel{min-height:560px;border-radius:36px 8px 36px 8px;background:linear-gradient(112deg,#e9fbf8 0 58%,#fff6da 58%);padding:62px;grid-template-columns:1fr 420px;overflow:hidden}.hero-copy{max-width:620px}.hero-copy h1{font-family:Georgia,'Noto Serif KR',serif;font-size:50px;letter-spacing:-.04em}.hero-art{width:420px;height:420px;border:0;border-radius:4px 80px 4px 80px;background:#c8eee8}.hero-art img{width:100%;height:100%;object-fit:cover;border-radius:4px 80px 4px 80px}.finder{margin-top:-34px;position:relative;border:0;border-left:8px solid #0f766e;border-radius:12px;box-shadow:0 20px 45px rgba(15,118,110,.13)}.section-heading{border-bottom:2px solid #0f766e;padding-bottom:10px}.shop-grid{grid-template-columns:repeat(4,1fr);gap:16px}.shop-card{border-radius:4px 26px 4px 26px}.card-photo{aspect-ratio:4/3;border-radius:4px 24px 0 0}.feature,.panel,.text-card{border-radius:6px;border-color:#cae7e3;box-shadow:none}.footer{background:#172554}
@media(max-width:900px){.hero-panel{grid-template-columns:1fr 280px;padding:44px 30px}.hero-art{width:280px;height:340px}.shop-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hero-panel{grid-template-columns:1fr;padding:30px 18px;border-radius:22px 4px 22px 4px}.hero-copy h1{font-size:34px}.hero-art{width:100%;height:300px}.finder{margin-top:14px}.shop-grid{gap:10px}}

.page-head{margin:24px 0;padding:54px 48px;border-radius:36px 4px 36px 4px;background:linear-gradient(112deg,#e9fbf8 0 64%,#fff1c7 64%)}.title-line h1{font-family:Georgia,'Noto Serif KR',serif;font-size:47px}.detail-gallery{grid-template-columns:1.7fr 1fr 1fr;grid-template-rows:210px 150px;gap:12px}.detail-gallery img{height:100%;aspect-ratio:auto;border-radius:4px 38px 4px 38px}.detail-gallery img:first-child{grid-row:1/3}.detail-gallery img:nth-child(4){grid-column:2/4}.detail-layout{grid-template-columns:290px minmax(0,1fr)}.detail-layout>div{order:2}.profile-summary{order:1;background:#0f766e;border-radius:4px 28px 4px 28px}.panel{border-radius:4px 24px 4px 24px;border-color:#bce3dd;box-shadow:none}
@media(max-width:900px){.detail-layout{grid-template-columns:1fr}.detail-layout>div,.profile-summary{order:initial}}@media(max-width:560px){.page-head{padding:30px 18px}.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}}

/* 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:f89d328c9770148c;--platform-image-radius:27px;--platform-card-gap:16px}
.card-photo,.detail-gallery img,.hero-art img{border-radius:var(--platform-image-radius)}
.shop-grid{gap:var(--platform-card-gap)}
