@charset "UTF-8";

.rc{
  --ink:#19333f;--text:#253942;--muted:#6b7c84;--line:#dce5e9;
  --bg:#f4f7f8;--accent:#2586a7;--accent2:#0d6885;--gold:#d79520;
  color:var(--text);background:#fff
}
.rc *{box-sizing:border-box}
.rc-container{width:min(1180px,calc(100% - 40px));margin:auto}
.rc-container--narrow{max-width:900px}
.rc-section{padding:82px 0;scroll-margin-top:70px}
.rc-eyebrow{margin:0 0 8px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.16em}
.rc-heading{text-align:center;max-width:760px;margin:0 auto 36px}
.rc-heading h2{margin:0;color:var(--ink);font-size:clamp(28px,3.5vw,42px);line-height:1.35}
.rc-heading>p:last-child{margin:12px 0 0;color:var(--muted);font-size:14px;line-height:1.8}
.rc-stars{color:var(--gold);white-space:nowrap;letter-spacing:.01em}

/* hero */
.rc-hero{padding:76px 0 62px;text-align:center;color:#fff;background:linear-gradient(135deg,#153440,#257f9d)}
.rc-hero .rc-eyebrow{color:#9ee4fa}
.rc-hero h2{margin:0;font-size:clamp(38px,5vw,62px);line-height:1.2}
.rc-hero__sub{margin:20px 0 0;font-size:16px;line-height:1.9}

/* compare */
.rc-compare{background:#fff}
.rc-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.rc-tabs button{min-width:88px;padding:10px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--text);font-weight:700;cursor:pointer}
.rc-tabs button:hover,.rc-tabs button.is-active{border-color:var(--accent);background:var(--accent);color:#fff}

.rc-table-wrap{width:100%;overflow:hidden;border:1px solid var(--line);border-radius:12px;box-shadow:0 6px 24px rgba(22,54,67,.06)}
.rc-table{width:100%;table-layout:fixed;border-collapse:collapse;background:#fff}
.rc-table col.c-resort{width:12%}
.rc-table col.c-score{width:9.5%}
.rc-table col.c-feature{width:40.5%}
.rc-table th,.rc-table td{padding:16px 10px;border-bottom:1px solid #e6edef;vertical-align:middle}
.rc-table thead th{background:var(--ink);color:#fff;font-size:12px;text-align:center}
.rc-table tbody th{text-align:left;padding-left:18px}
.rc-table tbody th a{color:var(--ink);font-size:13px;font-weight:800}
.rc-table tbody td{text-align:center;font-size:12px}
.rc-table tbody tr:last-child th,.rc-table tbody tr:last-child td{border-bottom:0}
.rc-table [data-col].is-highlight{background:#fff5dc}
.rc-table thead [data-col].is-highlight{background:#b87808}
.rc-table__feature{text-align:left!important}
.rc-table__feature span{display:inline-block;margin:2px 3px;padding:4px 7px;border-radius:999px;background:#eef5f7;color:#45616c;font-size:10px}
.rc-note{margin:13px 0 0;color:#77878e;font-size:11px;line-height:1.7}
.rc-spcompare{display:none}

/* lineup */
.rc-lineup{background:var(--bg)}
.rc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.rc-card{scroll-margin-top:70px;padding:27px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 20px rgba(20,55,70,.05)}
.rc-card__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.rc-card__head small{color:var(--accent);font-size:10px;font-weight:800}
.rc-card__head h3{margin:4px 0 0;color:var(--ink);font-size:23px}
.rc-card__head>span{flex:none;padding:5px 8px;border-radius:999px;background:#e9f5f8;color:var(--accent2);font-size:10px;font-weight:800}
.rc-card__catch{margin:14px 0;color:#415962;font-weight:700}
.rc-card__tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:16px}
.rc-card__tags span{padding:5px 8px;border-radius:5px;background:#f1f5f6;color:#61737b;font-size:10px}
.rc-card__recommend{min-height:68px;margin:0 0 17px;padding:13px 14px;border-left:3px solid var(--accent);background:#f7fafb;font-size:12px;line-height:1.7}
.rc-card__recommend strong{display:block;color:var(--accent2);font-size:10px}
.rc-card__mini{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:18px}
.rc-card__mini div{padding:8px 3px;border-radius:6px;background:#fafcfc;text-align:center}
.rc-card__mini span{display:block;color:var(--muted);font-size:9px}
.rc-card__mini b{display:block;margin-top:3px;color:var(--gold);font-size:9px;letter-spacing:-1px}
.rc-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rc-btn{display:flex;min-height:50px;padding:10px 14px;border:1px solid var(--accent);border-radius:7px;align-items:center;justify-content:center;background:var(--accent);color:#fff!important;font-size:13px;font-weight:800;text-align:center;text-decoration:none!important;cursor:pointer}
.rc-btn:hover{background:var(--accent2);border-color:var(--accent2)}
.rc-btn--outline{background:#fff;color:var(--accent2)!important}
.rc-btn--outline:hover{background:#eef7f9;color:var(--accent2)!important}

/* finder */
.rc-finder{background:var(--ink);color:#fff}
.rc-heading--light h2{color:#fff}
.rc-heading--light .rc-eyebrow{color:#8edbf2}
.rc-heading--light>p:last-child{color:rgba(255,255,255,.75)}
.rc-questions{display:grid;gap:15px}
.rc-question{overflow:hidden;border-radius:13px;background:#fff;color:var(--text)}
.rc-question__head{display:flex;gap:10px;align-items:center;padding:20px 24px 0}
.rc-question__head span{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.08em}
.rc-question__head h3{margin:0;color:var(--ink);font-size:17px}
.rc-question__answers{display:grid;gap:8px;padding:17px 24px 24px}
.rc-question__answers--4{grid-template-columns:repeat(4,1fr)}
.rc-question__answers--3{grid-template-columns:repeat(3,1fr)}
.rc-question__answers button{min-height:50px;padding:9px;border:1px solid #cad8dd;border-radius:7px;background:#fff;color:var(--text);font-weight:700;cursor:pointer}
.rc-question__answers button:hover,.rc-question__answers button.is-selected{border-color:var(--accent);background:#eaf6fa;color:var(--accent2)}
.rc-result{margin-top:18px;padding:35px 28px;border-radius:14px;background:#fff;color:var(--text);text-align:center}
.rc-result h3{margin:4px 0 10px;color:var(--ink);font-size:31px}
.rc-result>p:not(.rc-eyebrow){margin:0 auto;max-width:650px;font-size:13px;line-height:1.8}
.rc-result__others{display:flex;justify-content:center;align-items:center;gap:8px;margin:20px 0}
.rc-result__others>span{color:var(--muted);font-size:11px}
.rc-result__others a{display:flex;gap:6px;padding:7px 10px;border-radius:999px;background:#edf5f7;color:var(--accent2);font-size:11px;font-weight:800;text-decoration:none}
.rc-result__others b{font-size:9px}
.rc-result__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-width:620px;margin:0 auto}
.rc-result__reset{margin-top:15px;border:0;background:transparent;color:var(--muted);font-size:11px;text-decoration:underline;cursor:pointer}

/* next */
.rc-next{background:var(--bg)}
.rc-next__box{padding:48px 25px;border-radius:16px;background:#fff;text-align:center}
.rc-next__box h2{margin:0;color:var(--ink);font-size:clamp(25px,3vw,38px)}
.rc-next__box>p:not(.rc-eyebrow){margin:13px auto 24px;color:var(--muted);font-size:14px}
.rc-btn--wide{max-width:430px;margin:auto}

@media(max-width:767px){
  .rc-container{width:calc(100% - 28px)}
  .rc-section{padding:56px 0}
  .rc-hero{padding:55px 0 46px}
  .rc-hero h2{font-size:34px}
  .rc-hero__sub{font-size:13px}
  .rc-heading{margin-bottom:27px}
  .rc-heading h2{font-size:27px}
  .rc-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
  .rc-tabs button{min-width:0;padding:10px 5px;font-size:12px}
  .rc-table-wrap--pc{display:none}
  .rc-spcompare{display:block;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}
  .rc-spcompare__title{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;background:var(--ink);color:#fff}
  .rc-spcompare__title strong{font-size:13px}
  .rc-spcompare__title span{font-size:9px;color:#bdd2da}
  .rc-spcompare__row{display:grid;grid-template-columns:105px 1fr;min-height:52px;padding:11px 14px;border-bottom:1px solid #e7edef;align-items:center;color:var(--text);text-decoration:none}
  .rc-spcompare__row:last-child{border-bottom:0}
  .rc-spcompare__row>strong{font-size:12px}
  .rc-spcompare__row>.rc-stars{font-size:15px;text-align:right}
  .rc-spcompare__tags{display:flex;justify-content:flex-end;gap:4px;flex-wrap:wrap}
  .rc-spcompare__tags em{padding:4px 6px;border-radius:999px;background:#eef5f7;color:#506a74;font-size:9px;font-style:normal}
  .rc-note{font-size:10px}
  .rc-cards{grid-template-columns:1fr}
  .rc-card{padding:21px 17px}
  .rc-card__head h3{font-size:21px}
  .rc-card__mini b{font-size:8px}
  .rc-card__actions{grid-template-columns:1fr}
  .rc-question__head{padding:18px 17px 0}
  .rc-question__answers{padding:14px 17px 18px}
  .rc-question__answers--4,.rc-question__answers--3{grid-template-columns:1fr 1fr}
  .rc-question__answers button{font-size:11px}
  .rc-result{padding:28px 17px}
  .rc-result h3{font-size:25px}
  .rc-result__others{flex-wrap:wrap}
  .rc-result__actions{grid-template-columns:1fr}
  .pc-only{display:none!important}
}
@media(min-width:768px){.sp-only{display:none!important}}


/* v3: PC comparison table width collision guard */
@media (min-width:768px){
  .rc .rc-compare .rc-container{width:min(1180px,calc(100% - 40px))!important;max-width:1180px!important;}
  .rc .rc-compare .rc-table-wrap.rc-table-wrap--pc{display:block!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;}
  .rc .rc-compare table.rc-table{display:table!important;width:100%!important;max-width:none!important;min-width:0!important;table-layout:fixed!important;}
  .rc .rc-compare .rc-table col.c-resort{width:13%!important}
  .rc .rc-compare .rc-table col.c-score{width:10%!important}
  .rc .rc-compare .rc-table col.c-feature{width:37%!important}
  .rc .rc-compare .rc-table th,
  .rc .rc-compare .rc-table td{float:none!important;}
}


/* v4: RESORT FINDER Q1 = 5 choices */
@media (min-width:768px){
  .rc .rc-question__answers--5{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
  }
}
@media (max-width:767px){
  .rc .rc-question__answers--5{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
}


/* v5: photo treatment */
.rc-hero{position:relative;overflow:hidden;isolation:isolate}
.rc-hero__photo{
  position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(90deg,rgba(15,48,61,.92),rgba(15,48,61,.70)),
    url("../../img/ski/resort/img_1920x800_001.webp") center 45%/cover no-repeat;
}
.rc-hero__photo::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(5,36,48,.20));
}
.rc-hero__content{position:relative}

.rc-card{padding:0!important;overflow:hidden}
.rc-card__body{padding:25px 27px 27px}
.rc-card__photo{
  position:relative;display:block;overflow:hidden;
  aspect-ratio:16/9;background:#dfe9ed;text-decoration:none
}
.rc-card__photo img{
  width:100%;height:100%;display:block;object-fit:cover;
  transition:transform .35s ease
}
.rc-card__photo:hover img{transform:scale(1.025)}
.rc-card__photo>span{
  position:absolute;left:14px;bottom:13px;
  padding:6px 10px;border-radius:5px;
  background:rgba(18,48,61,.88);color:#fff;
  font-size:11px;font-weight:800;letter-spacing:.02em
}
.rc-card__photo.is-missing{display:none}

@media(max-width:767px){
  .rc-card__body{padding:20px 17px 21px}
  .rc-card__photo>span{left:11px;bottom:10px}
  .rc-hero__photo{
    background:
      linear-gradient(90deg,rgba(15,48,61,.88),rgba(15,48,61,.66)),
      url("../../img/ski/resort/img_1920x800_001.webp") center/cover no-repeat;
  }
}
