/* ===================== INTERIOR: CONTACTS ===================== */
.nav-trigger.is-current::after{transform:scaleX(1)}
.page-hero{background:var(--sand-50);padding-block:clamp(1.5rem,3vw,2.25rem) 0}
.crumbs ol{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;font-size:.9rem;color:var(--gray-ink)}
.crumbs li+li::before{content:"/";margin-right:.4rem;color:var(--sand-line)}
.crumbs a{color:var(--gray-ink);text-underline-offset:3px}
.crumbs [aria-current]{color:var(--ink);font-weight:600}
.page-hero h1{font-size:clamp(2.4rem,4vw,3.4rem);font-weight:700;letter-spacing:-.025em;line-height:1.05;margin-bottom:.85rem}
.page-intro{font-size:clamp(1.05rem,1.3vw,1.15rem);line-height:1.55;color:var(--gray-ink);max-width:52ch}

.filters{padding-block:clamp(1.5rem,3vw,2rem) 0}
.filters fieldset{border:0;margin:0;padding:0}
.filters legend{font-size:.8rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-ink);margin-bottom:.8rem}
.searchrow{margin-bottom:1rem}
.cfield{display:flex;align-items:center;gap:.7rem;max-width:460px;background:#fff;border:2px solid var(--sand-line);border-radius:var(--pill);padding:.35rem 1.1rem}
.cfield:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px rgba(0,132,135,.13)}
.cfield svg.i{width:19px;height:19px;color:var(--gray);flex:none}
.cfield input{flex:1 1 auto;width:100%;min-width:0;border:0;outline:0;background:transparent;font:500 1rem var(--font);color:var(--ink);padding:.6rem 0}
.cfield input::-webkit-search-cancel-button{display:none}
.cfield button{border:0;background:none;min-width:44px;min-height:44px;font-size:1.5rem;line-height:1;color:var(--gray-ink);cursor:pointer;padding:0 .2rem;visibility:hidden}
.cfield.has-text button{visibility:visible}
.cfield button:hover{color:var(--ink)}
.linkbtn{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--orange-link);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.chips{display:flex;flex-wrap:wrap;gap:.6rem}
.filters input[type="radio"]{position:absolute;opacity:0;width:1px;height:1px}
.filters label{display:inline-flex;align-items:center;min-height:46px;padding:.55rem 1.25rem;border-radius:var(--pill);border:1.5px solid var(--sand-line);background:#fff;font-weight:600;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.filters label:hover{border-color:var(--ink)}
.filters input[type="radio"]:focus-visible + label{outline:3px solid var(--teal);outline-offset:3px}
.filters input[type="radio"]:checked + label{background:var(--orange-ink);border-color:var(--orange-ink);color:#fff}
.count{margin-top:1.25rem;font-size:.92rem;color:var(--gray-ink)}

.tiles{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:1rem}
.tile{display:flex;flex-direction:column;background:#fff;border:1px solid var(--sand-line);border-radius:var(--r-md);padding:1.3rem 1.4rem;transition:border-color .15s,box-shadow .15s}
.tile:hover{border-color:var(--orange);box-shadow:0 14px 30px -24px rgba(40,40,40,.6)}
.tile .logo{height:30px;display:flex;align-items:center;margin-bottom:.9rem}
.tile .logo svg{max-height:26px;width:auto;max-width:150px}
.vlogo{max-height:26px;width:auto;max-width:190px;display:block}
.vlogo-svg{max-height:26px;width:auto;max-width:190px;display:block}
.vlogo-none{display:block;width:34px;height:3px;border-radius:2px;background:var(--orange)}
.logo-fd{color:var(--orange);display:flex;align-items:center}
.logo-fd svg{width:24px;height:24px}
.logo-ph{height:28px;min-width:96px;padding:0 .7rem;border:1.5px dashed var(--sand-line);border-radius:7px;display:grid;place-items:center;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;color:var(--gray)}
.tile h3{font-size:1.1rem;letter-spacing:-.01em;line-height:1.25}
.tile .service{font-size:.9rem;font-weight:700;color:var(--teal-deep);margin-top:.2rem}
.tile .rows{margin-top:.9rem;display:grid;gap:.45rem;font-size:.95rem}
.tile .row{display:flex;align-items:flex-start;gap:.6rem}
.tile .row svg.i{width:17px;height:17px;color:var(--orange);margin-top:.15rem;flex:none}
.tile a.tel{display:inline-flex;align-items:center;min-height:44px;font-weight:800;font-size:1.15rem;letter-spacing:-.02em;color:var(--ink);text-decoration:none;line-height:1.2}
.tile a.tel:hover{color:var(--orange)}
.tile a.web{color:var(--ink);text-underline-offset:3px;word-break:break-word}
.tile a.web:hover{color:var(--orange-link)}
.tile .meta{font-size:.88rem;color:var(--gray-ink)}
.tile .apps{display:flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:1rem}
.tile .apps-label{font-size:.82rem;font-weight:600;color:var(--gray-ink);margin-right:.1rem}
.store{display:grid;place-items:center;width:40px;height:40px;border-radius:8px;border:1px solid var(--sand-line);background:#fff;transition:border-color .15s,transform .15s}
.store:hover{border-color:var(--ink);transform:translateY(-1px)}
.store img{width:21px;height:21px;border-radius:5px;display:block}
.store .store-ic{width:19px;height:19px;display:block}

/* pure-CSS filtering */
.filters:has(#f-health:checked) .tile:not(.c-health),
.filters:has(#f-protection:checked) .tile:not(.c-protection),
.filters:has(#f-savings:checked) .tile:not(.c-savings),
.filters:has(#f-perks:checked) .tile:not(.c-perks),
.filters:has(#f-timeaway:checked) .tile:not(.c-timeaway){display:none}
.tile[hidden]{display:none!important}
.count{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.no-results{display:none;margin-top:1.5rem;font-size:1.05rem;color:var(--gray-ink)}
.filters.is-empty .no-results{display:block}

.closing{background:linear-gradient(135deg,var(--teal) 0%,var(--teal-deep) 100%);color:#fff;position:relative;overflow:hidden;padding-block:clamp(3rem,5vw,4rem);margin-top:clamp(3.5rem,6vw,5rem)}
.closing::before{content:"";position:absolute;right:-120px;bottom:-260px;width:520px;height:640px;border:70px solid rgba(255,255,255,.07);border-bottom:0;border-radius:999px 999px 0 0}
.closing-inner{position:relative;display:grid;grid-template-columns:minmax(0,380px) 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.closing h2{font-size:clamp(1.35rem,1.9vw,1.6rem);margin-bottom:1rem}
.closing p{color:rgba(255,255,255,.9);max-width:44ch}
.closing .btn{margin-top:1.25rem}
.btn-white{background:#fff;color:var(--teal-deep)}
.btn-white:hover{background:var(--sand-50)}
.related{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.related a{display:inline-flex;align-items:center;min-height:42px;padding:.5rem 1rem;border-radius:var(--pill);border:1.5px solid rgba(255,255,255,.5);color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;transition:background-color .15s,color .15s,border-color .15s}
.related a:hover{background:var(--orange);color:#fff;border-color:var(--orange)}
@media (max-width:860px){.closing-inner{grid-template-columns:1fr}}
@media (max-width:520px){.tiles{grid-template-columns:1fr}}

/* sub-label inside a contact tile row (e.g. "Traveling inside the U.S.") */
.tile .row-note{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--gray-ink)}
.tile .row:has(.row-note){margin-top:.5rem;gap:0}
