
.ci-page{--ci:#167d86;--ci-dark:#0b5960;--ci-gold:#e8c45c;--ci-ink:#17333a;--ci-soft:#eef7f7;--ci-line:#dce9e9;color:var(--ci-ink);font-family:'Outfit',Arial,sans-serif;font-weight:400}
.ci-page *{box-sizing:border-box}.ci-page a{color:inherit}.ci-page button,.ci-page input,.ci-page select,.ci-page textarea{font:inherit}.ci-page h1,.ci-page h2,.ci-page h3,.ci-page strong,.ci-page b{font-family:'Outfit',Arial,sans-serif}.ci-page h1,.ci-page h2{font-weight:500;letter-spacing:-.035em}.ci-page h3{font-weight:600;letter-spacing:-.015em}.ci-page em{font-family:inherit;font-style:italic;font-weight:400}
.ci-hero{padding:70px max(24px,calc((100vw - 1240px)/2)) 52px;background:linear-gradient(135deg,#eaf7f7,#f7fbf7)}
.ci-breadcrumb{display:flex;gap:9px;flex-wrap:wrap;font-size:.84rem;margin-bottom:38px;color:#496164}.ci-breadcrumb a{text-decoration:none}.ci-breadcrumb a:hover{text-decoration:underline}
.ci-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:64px;align-items:center}
.ci-hero .kicker,.ci-section .kicker{letter-spacing:.13em;font-weight:700;font-size:.76rem;color:var(--ci)}
.ci-hero h1,.ci-section h2{font-size:clamp(2.7rem,6vw,5.3rem);line-height:.98;margin:.25em 0}
.ci-lead{font-size:1.18rem;line-height:1.65;max-width:800px}
.ci-hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:30px}.ci-text-link{text-decoration:none;font-weight:700}
.ci-score-card{background:var(--ci-dark);color:white;padding:34px;border-radius:16px;box-shadow:0 18px 45px rgba(11,89,96,.18)}
.ci-score-card>span{font-size:.76rem;letter-spacing:.13em;font-weight:700;color:#bde3e5}.ci-score-card>strong{display:block;font-size:5rem;line-height:1;margin-top:12px}.ci-score-card>small{opacity:.8}.ci-score-card h2{font-size:1.8rem;line-height:1.05;margin:28px 0 10px;font-weight:500;letter-spacing:-.02em}.ci-score-card p{line-height:1.5;color:#dceff0}.ci-score-card a{font-weight:700;text-decoration:none}
.ci-kpis{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:0 auto;padding:0 24px;transform:translateY(-1px)}
.ci-kpis div{padding:26px 18px;border:1px solid var(--ci-line);background:white;text-align:center}.ci-kpis strong{display:block;font-size:2rem;color:var(--ci-dark)}.ci-kpis span{font-size:.88rem;color:#526b6e}
.ci-anchor-nav{position:sticky;top:0;z-index:7;display:flex;gap:8px;overflow-x:auto;padding:13px max(24px,calc((100vw - 1240px)/2));background:rgba(255,255,255,.95);border-bottom:1px solid var(--ci-line);backdrop-filter:blur(12px)}
.ci-anchor-nav a{white-space:nowrap;text-decoration:none;padding:8px 12px;border-radius:999px}.ci-anchor-nav a:hover{background:var(--ci-soft)}
.ci-section{max-width:1240px;margin:0 auto;padding:88px 24px}.ci-section-head{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:end;margin-bottom:38px}.ci-section-head h2{font-size:clamp(2.35rem,4vw,4rem)}.ci-section-head>p{line-height:1.65;color:#526b6e}
.ci-top-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ci-top-card{display:grid;grid-template-columns:180px 1fr;border:1px solid var(--ci-line);border-radius:12px;overflow:hidden;background:white}
.ci-top-image{min-height:230px;background:var(--ci-soft);display:block;overflow:hidden}.ci-top-image picture{display:block;width:100%;height:100%}.ci-top-image img{display:block;width:100%;height:100%;object-fit:cover}.ci-top-image-missing{display:flex;align-items:flex-end;padding:18px;background:linear-gradient(145deg,#dceff0,#eef7f7);text-decoration:none}.ci-top-image-missing span{font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--ci-dark)}.ci-top-body{padding:22px}.ci-rankline{display:flex;align-items:center;justify-content:space-between}.ci-rankline span{font-weight:800;color:var(--ci)}.ci-rankline b{font-size:2rem;color:var(--ci-dark)}
.ci-country{font-size:.74rem;letter-spacing:.11em;text-transform:uppercase;color:#526b6e;margin:14px 0 5px}.ci-top-card h3{font-size:1.28rem;margin:0 0 13px}.ci-top-card h3 a{text-decoration:none}.ci-month-chips{display:flex;gap:7px;flex-wrap:wrap}.ci-month-chips span{font-size:.77rem;background:var(--ci-soft);padding:5px 8px;border-radius:999px}.ci-weather{font-size:.84rem;color:#526b6e}.ci-card-link{font-weight:700;text-decoration:none}
.ci-ranking-section{max-width:1400px}.ci-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:12px;background:var(--ci-soft);padding:18px;border-radius:18px;margin-bottom:15px}.ci-filters label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ci-filters input,.ci-filters select{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #bdd6d8;border-radius:10px;background:white;color:var(--ci-ink)}.ci-filters button{align-self:end;padding:12px 15px;border:0;border-radius:10px;background:var(--ci-dark);color:white;font-weight:700;cursor:pointer}
.ci-result-count{font-size:.9rem;color:#526b6e}.ci-table-wrap{overflow:auto;border:1px solid var(--ci-line);border-radius:16px}.ci-table{width:100%;border-collapse:collapse;min-width:1120px;background:white}.ci-table th{position:sticky;top:0;background:#f4f9f9;text-align:left;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;padding:13px 11px;border-bottom:1px solid var(--ci-line)}.ci-table td{padding:13px 11px;border-bottom:1px solid #edf2f2;font-size:.9rem}.ci-table td strong{display:block}.ci-table td small{display:block;color:#526b6e;margin-top:3px}.ci-table tr:hover{background:#fbfdfd}.ci-rank{color:var(--ci);font-weight:800}.ci-score{font-weight:800;font-size:1.05rem!important;color:var(--ci-dark)}.ci-table td:last-child a{font-size:1.2rem;text-decoration:none}.ci-note{font-size:.84rem;color:#526b6e;line-height:1.55}
.ci-method-section{background:white}.ci-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.ci-method-grid article{padding:26px;border-radius:10px;background:var(--ci-soft)}.ci-method-grid span{font-size:2rem;font-weight:800;color:var(--ci)}.ci-method-grid h3{margin:.6em 0}.ci-method-grid p,.ci-method-copy p{line-height:1.6;color:#526b6e}.ci-method-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:42px;padding-top:35px;border-top:1px solid var(--ci-line)}
.ci-data-section{padding-top:35px}.ci-data-box{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;background:var(--ci-dark);color:white;border-radius:14px;padding:48px}.ci-data-box h2{font-size:clamp(2.2rem,4vw,3.7rem)}.ci-data-box>div:last-child{align-self:center}.ci-data-box p{line-height:1.65;color:#dceced}.ci-data-meta{font-size:.82rem!important;opacity:.8}
.ci-faq-list{max-width:900px}.ci-faq details{border-top:1px solid var(--ci-line)}.ci-faq details:last-child{border-bottom:1px solid var(--ci-line)}.ci-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-weight:700}.ci-faq summary::-webkit-details-marker{display:none}.ci-faq summary span{font-size:1.4rem}.ci-faq details[open] summary span{transform:rotate(45deg)}.ci-faq details p{margin:0 0 22px;line-height:1.65;color:#526b6e}
.ci-closing{text-align:center;padding-bottom:110px}.ci-closing h2{font-size:clamp(2.5rem,5vw,4.6rem)}.ci-closing>p:not(.kicker){max-width:700px;margin:0 auto 28px;line-height:1.65}
@media(max-width:980px){.ci-hero-grid,.ci-section-head,.ci-data-box{grid-template-columns:1fr}.ci-method-grid{grid-template-columns:repeat(2,1fr)}.ci-method-copy{grid-template-columns:1fr}.ci-filters{grid-template-columns:1fr 1fr}.ci-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.ci-hero{padding-top:40px}.ci-top-grid{grid-template-columns:1fr}.ci-top-card{grid-template-columns:110px 1fr}.ci-top-image{min-height:210px}.ci-method-grid{grid-template-columns:1fr}.ci-filters{grid-template-columns:1fr}.ci-kpis{padding:0 14px}.ci-kpis div{padding:18px 10px}.ci-kpis strong{font-size:1.55rem}.ci-section{padding:65px 18px}.ci-score-card>strong{font-size:4rem}.ci-data-box{padding:30px}}

/* V3 accessibility hardening – only Coolcation Index */
.ci-page a:focus-visible,
.ci-page button:focus-visible,
.ci-page input:focus-visible,
.ci-page select:focus-visible,
.ci-page summary:focus-visible,
.ci-table-wrap:focus-visible{
  outline:3px solid #007f86;
  outline-offset:3px;
}
.ci-score-card a:focus-visible,
.ci-data-box a:focus-visible{outline-color:#f5cb4d}
.ci-breadcrumb a,
.ci-text-link,
.ci-card-link,
.ci-score-card a{
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.ci-breadcrumb a:hover,
.ci-breadcrumb a:focus-visible,
.ci-text-link:hover,
.ci-text-link:focus-visible,
.ci-card-link:hover,
.ci-card-link:focus-visible,
.ci-score-card a:hover,
.ci-score-card a:focus-visible{text-decoration:underline}
.ci-filters input,.ci-filters select{border-color:#86aaa9}
.ci-table th{color:#294b4e}
.ci-table td small,
.ci-country,
.ci-result-count,
.ci-note,
.ci-section-head>p,
.ci-weather,
.ci-method-grid p,
.ci-method-copy p,
.ci-faq details p{color:#526b6e}
.ci-data-box p{color:#edf8f7}
.ci-score-card>small{color:#edf8f7;opacity:1}
.ci-score-card>span{color:#cfeff0}
@media (prefers-reduced-motion:reduce){
  .ci-page *{scroll-behavior:auto!important;transition:none!important}
}
