/* source: font-system.css */
@import url('https://fonts.googleapis.com/css2?family=Funnel+Sans:wght@400;500;600;700&family=Oxanium:wght@700&display=swap');

/* Roamnessa uses two fonts: Oxanium for its public-facing signature moments,
   Funnel Sans for every functional and supporting interface element. */
body,
body button,
body input,
body select,
body textarea,
body summary,
body * {
  font-family: 'Funnel Sans', Arial, sans-serif !important;
}

body h1,
body .brand,
body .mark,
body .hero h1,
body .optimizer-copy h1,
body .destination-hero h1 {
  font-family: Oxanium, Arial, sans-serif !important;
  font-weight: 700 !important;
}

/* source: destination-page.css */
:root{--ink:#172519;--cream:#f5f2e9;--paper:#fffdf8;--orange:#f15c3e;--lime:#c7ed56;--green:#174c37;--muted:#637065;--line:#d8ddd2}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Onest,Arial,sans-serif}.destination-nav,main{max-width:1120px;margin:auto;padding-left:28px;padding-right:28px}.destination-nav{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:24px;font-weight:800;letter-spacing:-1.5px;text-decoration:none}.brand-mark{width:27px;height:27px}.destination-nav nav{display:flex;gap:20px}.destination-nav nav a,.back,.setup-card a{color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.back{display:inline-block;margin-top:30px}.destination-hero{padding:58px 0 62px;max-width:780px}.eyebrow{font:500 10px 'Azeret Mono',monospace;letter-spacing:.14em;color:#607060;margin:0;text-transform:uppercase}.destination-hero h1,.destination-section h2,.destination-content-grid h2,.destination-help h2{font-size:clamp(32px,5vw,59px);line-height:.98;letter-spacing:-.065em;margin:15px 0 18px}.destination-hero>p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:17px;line-height:1.65}.destination-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.destination-facts>div{border:1px solid #d7ded2;background:#eef4e6;border-radius:11px;padding:14px}.destination-facts span{display:block;color:#617161;font-size:10px;font-weight:800}.destination-facts strong{display:block;font-size:15px;letter-spacing:-.03em;margin-top:6px}.destination-section{border-top:1px solid var(--line);padding:50px 0}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:24px}.section-heading h2{font-size:34px;margin:9px 0 0}.section-heading>p{max-width:370px;color:var(--muted);font-size:13px;line-height:1.6;margin:0}.destination-plans{display:grid;gap:10px}.destination-plan{display:grid;grid-template-columns:1fr auto auto;gap:22px;align-items:center;background:var(--paper);border:1px solid #dbe1d6;border-radius:13px;padding:19px}.destination-tag{display:inline-block;background:#e5f5bd;border-radius:5px;color:#355c21;font-size:10px;font-weight:800;padding:5px 7px}.destination-plan h2{font-size:17px;letter-spacing:-.03em;margin:11px 0 3px}.destination-plan p{color:var(--muted);font-size:11px;margin:0}.destination-plan-data{text-align:right}.destination-plan-data strong,.destination-plan-action strong{display:block;font-size:21px;letter-spacing:-.05em}.destination-plan-data .data-price-per-gb{font:600 9px Onest;color:var(--muted);letter-spacing:0;white-space:nowrap}.destination-plan-data span{color:var(--muted);font-size:11px}.destination-plan-action{text-align:right}.destination-buy{border:0;border-radius:8px;background:var(--ink);color:#fff;cursor:pointer;font:800 11px Onest;margin-top:8px;padding:10px 13px}.destination-buy:disabled{opacity:.65}.destination-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:50px}.destination-content-grid>article{border:1px solid #dbe1d6;border-radius:13px;background:var(--paper);padding:25px}.destination-content-grid h2{font-size:27px;margin-top:10px}.destination-content-grid p,.destination-content-grid li{color:var(--muted);font-size:13px;line-height:1.68}.regional-options{background:#e8f2dc;border:0;margin:0 calc(50% - 50vw);padding-left:max(28px,calc((100vw - 1120px)/2));padding-right:max(28px,calc((100vw - 1120px)/2))}.regional-options-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.regional-option{background:#fffdf8;border:1px solid #d4dfca;border-radius:12px;padding:17px;display:flex;flex-direction:column;justify-content:space-between;min-height:160px}.regional-option h3{font-size:15px;margin:0 0 8px}.regional-option p{color:var(--muted);font-size:11px;line-height:1.5;margin:0}.regional-option strong{display:block;font-size:19px;letter-spacing:-.04em;margin-top:18px}.regional-option a{color:var(--green);display:inline-block;font-size:11px;font-weight:800;margin-top:7px;text-decoration:none}.setup-card{padding-top:50px}.setup-card ol{padding-left:20px}.destination-faq details{border-top:1px solid #e1e6dc;padding:12px 0}.destination-faq summary{cursor:pointer;font-size:12px;font-weight:800}.destination-faq p{margin:8px 0 0}.destination-help{border-top:1px solid var(--line);padding:52px 0 72px;text-align:center}.destination-help h2{font-size:33px}.destination-help p{color:var(--muted);font-size:13px}.destination-help div{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:20px}.destination-help a{border:1px solid var(--green);border-radius:999px;color:var(--green);font-size:11px;font-weight:800;padding:9px 12px;text-decoration:none}@media(max-width:760px){.destination-nav,main{padding-left:18px;padding-right:18px}.destination-nav nav{gap:12px}.destination-hero{padding:40px 0}.destination-facts,.destination-content-grid,.regional-options-grid{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:13px}.destination-plan{grid-template-columns:1fr auto}.destination-plan-action{grid-column:1/-1;text-align:left;display:flex;justify-content:space-between;align-items:center}.destination-plan-action strong{display:inline}.regional-options{padding-left:18px;padding-right:18px}.destination-section h2{font-size:31px}.destination-content-grid{padding-bottom:32px}}

.destination-filter-panel{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:14px;border:1px solid #dbe3d6;border-radius:13px;background:#f1f5eb}.destination-filter-tabs{display:flex;gap:6px;flex-wrap:wrap}.destination-filter-tabs button,.destination-filter-select select{min-height:36px;border:1px solid #cfd8ca;border-radius:999px;background:#fffdf8;color:var(--ink);font:800 11px Onest}.destination-filter-tabs button{padding:8px 11px;cursor:pointer}.destination-filter-tabs button.is-active{border-color:var(--green);background:var(--green);color:#fff}.destination-filter-select{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 4px 0 10px;border:1px solid #cfd8ca;border-radius:999px;background:#fffdf8;color:#617161;font:800 10px Onest}.destination-filter-select select{min-height:32px;border:0;padding:0 19px 0 2px;background:transparent;outline:0}.destination-filter-check{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 10px;border:1px solid #cfd8ca;border-radius:999px;background:#fffdf8;color:#516151;font:800 11px Onest}.destination-filter-check input{appearance:none;width:16px;height:16px;margin:0;border:1px solid #9db09b;border-radius:5px;background:#fff;cursor:pointer}.destination-filter-check input:checked{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 3px #fff}.destination-calculator-link{color:var(--green);font-size:11px;font-weight:800;text-decoration:underline;text-underline-offset:4px}.destination-filter-prompt{margin:0 0 11px;color:#687667;font-size:12px}.destination-detail-hint{margin:0 0 15px;color:#355c21;font-size:11px;font-weight:800}.destination-filter-empty{margin:0 0 15px;padding:12px;border:1px solid #f0c9c2;border-radius:9px;background:#fff4f1;color:#9a4032;font-size:12px;font-weight:800}.destination-plan{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.destination-plan:hover,.destination-plan:focus-within,.destination-plan:focus{border-color:#a7c37a;box-shadow:0 9px 20px #17301d12;outline:0;transform:translateY(-1px)}.destination-plan[hidden]{display:none}.destination-plan-dialog{width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 28px);border:0;border-radius:17px;padding:28px;background:#fffdf8;color:var(--ink);box-shadow:0 22px 70px #17251955}.destination-plan-dialog::backdrop{background:#17251988}.destination-plan-dialog h2{font-size:29px;letter-spacing:-.055em;margin:9px 36px 22px 0}.destination-plan-dialog-close{position:absolute;top:13px;right:13px;width:33px;height:33px;border:1px solid #cbd6c6;border-radius:50%;background:#fffdf8;color:var(--green);font-size:20px;cursor:pointer}.destination-plan-dialog dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.destination-plan-dialog dl div{padding:12px;border:1px solid #dce4d8;border-radius:10px;background:#f4f7ef}.destination-plan-dialog dt{color:#667664;font-size:10px;font-weight:800}.destination-plan-dialog dd{margin:5px 0 0;color:var(--ink);font-size:13px;font-weight:800;overflow-wrap:anywhere}.destination-plan-dialog .partner-networks dd small{display:block;margin-top:6px;color:#687667;font-size:10px;font-weight:600;line-height:1.4}@media(max-width:760px){.destination-filter-panel{align-items:stretch}.destination-filter-tabs{width:100%}.destination-filter-tabs button{flex:1 1 112px}.destination-filter-select{flex:1 1 170px;justify-content:space-between}.destination-filter-check{flex:1 1 170px}.destination-calculator-link{padding:6px 1px}.destination-plan-dialog{padding:24px 18px}.destination-plan-dialog dl{grid-template-columns:1fr}.destination-plan-dialog-close{position:fixed;top:18px;right:18px;background:#fffdf8;z-index:2}}

.destination-validity-group{margin-top:8px;padding-top:17px;border-top:1px solid #dce5d4}.destination-validity-group:first-child{margin-top:0;padding-top:0;border-top:0}.destination-validity-group .validity-group-heading{margin:0 0 9px}.destination-validity-group .validity-group-toggle{display:inline-flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;border:0;padding:0;background:transparent;color:#315427;cursor:pointer;font:800 16px Onest;text-align:left}.destination-validity-group .validity-group-toggle>span:last-child{transition:transform .16s ease}.destination-validity-group .validity-group-toggle[aria-expanded="true"]>span:last-child{transform:rotate(180deg)}.destination-validity-group .validity-group-cards{display:grid;grid-template-columns:1fr;gap:10px}.destination-validity-group:not([data-expanded="true"]) .validity-group-cards{display:none}

/* Keep the country-page filter controls in one familiar, scrollable row. */
.destination-filter-panel{align-items:center;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.destination-filter-panel>*{flex:0 0 auto}.destination-filter-tabs{flex-wrap:nowrap}.destination-filter-tabs button{white-space:nowrap}.destination-filter-best{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;padding:8px 10px;border:1px solid #cfe0b8;border-radius:9px;background:#edf5df;color:#29421c;font-size:10px;line-height:1.35}.destination-filter-best[hidden]{display:none!important}.destination-filter-best>span{font:800 9px 'Azeret Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#557432}.destination-filter-best>strong{font-size:11px}.destination-filter-best>small{color:#52634f;font-size:10px}.destination-filter-best button{margin-left:auto;border:0;border-radius:6px;background:var(--green);color:#fff;padding:6px 8px;font:800 10px Onest;cursor:pointer}@media(max-width:760px){.destination-filter-panel{align-items:center;flex-wrap:nowrap}.destination-filter-tabs{width:auto}.destination-filter-tabs button,.destination-filter-select,.destination-filter-check{flex:0 0 auto}.destination-filter-best{align-items:flex-start}.destination-filter-best button{margin-left:0}}

/* Match the compact homepage controls without forcing a horizontal scroll. */
.destination-filter-panel{gap:5px;padding:9px;overflow:visible;flex-wrap:wrap}.destination-filter-panel>*{flex:0 0 auto}.destination-filter-tabs{gap:4px}.destination-filter-tabs button{min-height:32px;padding:7px 9px;font-size:10px}.destination-filter-select{min-height:32px;gap:4px;padding-left:8px;font-size:9px}.destination-filter-select select{min-height:29px;padding-right:15px;font-size:10px}.destination-filter-check{min-height:32px;gap:5px;padding:0 8px;font-size:10px}.destination-filter-check input{width:14px;height:14px}.destination-calculator-link{font-size:10px;white-space:nowrap}@media(min-width:980px){.destination-filter-panel{flex-wrap:nowrap}}@media(max-width:979px){.destination-filter-panel{align-items:center;overflow:visible}.destination-filter-tabs{width:auto}.destination-filter-tabs button,.destination-filter-select,.destination-filter-check{flex:0 0 auto}}

/* Destination guide language control, matching the rest of the storefront. */
.destination-language-menu{position:relative;flex:0 0 auto}.destination-language-menu summary{cursor:pointer;list-style:none;border:1px solid var(--ink);border-radius:30px;padding:8px 10px;background:var(--paper);font:700 11px Onest}.destination-language-menu summary::-webkit-details-marker{display:none}.destination-language-menu:not([open]) .language-options{display:none}.destination-language-menu .language-options{position:absolute;right:0;top:39px;z-index:30;display:grid;grid-template-columns:repeat(2,minmax(82px,1fr));gap:2px;width:193px;padding:8px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 30px #17251922}.destination-language-menu .language-options a{padding:7px;border-radius:6px;color:var(--ink);font:700 11px Onest;text-decoration:none}.destination-language-menu .language-options a:hover{background:#e8eee0}@media(max-width:760px){.destination-nav{height:auto;min-height:72px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.destination-nav nav{order:3;width:100%;gap:14px}.destination-language-menu{margin-left:auto}.destination-language-menu[open]{width:100%}.destination-language-menu[open] summary{margin-left:auto;width:max-content}.destination-language-menu[open] .language-options{position:static;width:100%;margin-top:8px;box-shadow:none}}

/* Keep language choice with the other destination-page help links. */
.destination-language-footer{display:flex;justify-content:center;margin-top:18px}.destination-language-footer .destination-language-menu{margin-left:0}@media(max-width:760px){.destination-language-footer .destination-language-menu[open]{width:min(100%,240px)}.destination-language-footer .destination-language-menu[open] summary{margin-left:auto;margin-right:auto}}

@media(max-width:760px){
  .destination-filter-panel{display:block;margin:0 0 12px;padding:0;border:0;background:transparent}
  .destination-mobile-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .destination-mobile-disclosure{position:relative}
  .destination-mobile-disclosure summary{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--green);border-radius:10px;background:var(--paper);color:var(--green);cursor:pointer;font:800 13px Onest;list-style:none}
  .destination-mobile-disclosure summary::-webkit-details-marker{display:none}
  .destination-mobile-disclosure summary::after{content:'⌄';margin-left:8px;font-size:15px;line-height:1}
  .destination-mobile-disclosure[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0;background:#edf5df}
  .destination-mobile-disclosure[open] summary::after{transform:rotate(180deg)}
  .destination-mobile-disclosure-content{position:absolute;z-index:20;top:100%;left:0;display:grid;gap:8px;width:max(100%,220px);padding:9px;border:1px solid var(--green);border-radius:0 0 10px 10px;background:var(--paper);box-shadow:0 14px 28px #17301d24}
  .destination-mobile-filters .destination-mobile-disclosure-content{right:0;left:auto}
  .destination-mobile-disclosure-content .destination-filter-tabs{display:grid;width:100%;gap:8px}
  .destination-mobile-disclosure-content .destination-filter-tabs button{width:100%;min-height:44px;padding:8px 11px;border:1px solid #d9ded4;border-radius:9px;background:#fff;color:#4d584e;text-align:left;font:700 12px Onest}
  .destination-mobile-disclosure-content .destination-filter-tabs button.is-active{background:var(--green);border-color:var(--green);color:#fff}
  .destination-mobile-disclosure-content .destination-filter-select,.destination-mobile-disclosure-content .destination-filter-check{display:flex;justify-content:space-between;width:100%;min-height:44px;margin:0;border:1px solid #d9ded4;border-radius:9px;padding:8px 11px;background:#fff;font-size:11px}
  .destination-mobile-disclosure-content .destination-filter-select select{max-width:62%;min-width:0;font-size:11px;text-align:right}
  .destination-mobile-disclosure-content .destination-calculator-link{padding:7px 2px;font-size:11px}
}

.destination-capability-tag{margin-left:5px;text-transform:none;letter-spacing:0}.destination-calling-tag{background:#e5f0dc;color:#355c21}.regional-option>.destination-capability-tag{align-self:flex-start;margin:0 0 9px}@media(max-width:760px){.destination-plan{padding:14px}.destination-plan .destination-tag:not(.destination-capability-tag),.destination-plan p{display:none}.destination-plan h2{margin:6px 0 0;font-size:15px;line-height:1.3}.destination-plan-data{text-align:right}.destination-plan-data strong{font-size:20px}.destination-plan-action{margin-top:1px}.destination-plan-action strong{font-size:17px}.destination-buy{min-height:40px;margin:0;padding:9px 12px}}
.destination-phone-number-filter{gap:5px;min-height:36px;padding:0 9px}

/* source: brand-color.css */
.brand{display:inline-flex;align-items:center;gap:8px}.brand-mark,.brand>span{background:#31572c!important}.brand img.brand-mark{width:27px;height:27px;object-fit:contain;background:transparent!important;border-radius:50%!important}

/* source: rtl.css */
html[dir="rtl"] .hero-art{left:-110px;right:auto}html[dir="rtl"] .language-options{left:0;right:auto}html[dir="rtl"] .search-icon{padding-left:15px;padding-right:20px}html[dir="rtl"] .section-intro,html[dir="rtl"] .finder-top,html[dir="rtl"] .footer{direction:rtl}@media(max-width:800px){html[dir="rtl"] .hero-art{left:-150px;right:auto}}

/* source: package-reviews.css */
.package-reviews{margin-top:14px;padding-top:0}.plan-details-no-partner .plan-detail-checklist li:last-child,.plan-detail-checklist .plan-detail-partner-networks{border-bottom:0}.plan-details-no-partner .plan-detail-price{border-bottom:1px solid var(--line)}.package-reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.package-reviews-heading h3{margin:0}.package-reviews-heading>span{color:#536253;font-size:13px}.package-review{background:#f7f8f2;border:1px solid #dde4d8;border-radius:12px;margin-top:12px;padding:15px}.package-review>div{display:flex;justify-content:space-between;gap:14px}.package-review-stars{color:#d98712;letter-spacing:.05em}.package-review h4{margin:13px 0 4px}.package-review p{margin:7px 0;color:#536053;line-height:1.55}.package-review footer{display:flex;flex-direction:column;gap:4px;border-top:1px solid #dce3d8;margin-top:12px;padding-top:10px;color:#697469;font-size:12px}.package-review-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}.package-review-actions a{color:#174c37;font-size:13px;font-weight:800}.review-disclosure{color:#778078!important;font-size:11px!important;line-height:1.5!important;margin:16px 0 0!important}.package-reviews .review-empty{color:#6b756c;font-size:13px}.package-reviews .review-loading{min-height:20px;margin:12px 0 0}.package-reviews .review-loading:after{content:'';display:inline-block;width:10px;height:10px;margin-left:8px;border:2px solid #b7c7b0;border-top-color:#174c37;border-radius:50%;vertical-align:-1px;animation:review-spin .7s linear infinite}@keyframes review-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.package-reviews-heading{align-items:flex-start}.package-review>div{flex-direction:column;gap:4px}}

/* source: analytics-consent.css */
.analytics-consent{position:fixed;z-index:10000;right:18px;bottom:18px;width:min(440px,calc(100vw - 36px));display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 17px;border:1px solid #cbd6c2;border-radius:14px;background:#fffdf8;color:#172519;box-shadow:0 16px 42px rgba(23,37,25,.18);font:13px/1.45 Onest,Arial,sans-serif}.analytics-consent__copy{display:grid;gap:3px}.analytics-consent strong{font-size:13px}.analytics-consent span,.analytics-consent small{color:#566257;font-size:11px}.analytics-consent__actions{display:flex;gap:8px;flex:none}.analytics-consent button{border:1px solid #174c37;border-radius:8px;padding:8px 10px;background:#fffdf8;color:#174c37;cursor:pointer;font:800 11px Onest,Arial,sans-serif;white-space:nowrap}.analytics-consent button[data-analytics-choice="granted"]{background:#174c37;color:#fff}.analytics-consent--preferences{display:grid;gap:13px;align-items:stretch}.analytics-consent__setting{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px;border:1px solid #d8e0d3;border-radius:10px;background:#f8faf5;cursor:pointer}.analytics-consent__setting>span{display:grid;gap:2px}.analytics-consent__setting small{display:block;max-width:300px}.analytics-consent__setting input{inline-size:19px;block-size:19px;accent-color:#174c37;flex:none}@media(max-width:560px){.analytics-consent{right:12px;bottom:12px;width:calc(100vw - 24px);display:block}.analytics-consent__actions{margin-top:13px}.analytics-consent button{flex:1}.analytics-consent--preferences{display:grid}.analytics-consent--preferences .analytics-consent__actions{margin-top:0}}

/* source: radius-system.css */
/* Roamnessa radius system: functional UI stays precise; editorial surfaces stay calm. */
:root {
  --radius-label: 2px;
  --radius-image: 4px;
  --radius-field: 6px;
  --radius-button: 8px;
  --radius-plan: 10px;
  --radius-surface: 12px;
}

/* Actions and form controls */
button, .button, .support, .select-plan, .trip-buy, .continue,
.cart-header-badge, .currency-selector, .calculator-language-menu summary {
  border-radius: var(--radius-button);
}

.support-ticket-return {
  border-radius: var(--radius-button);
}

input:not([type="checkbox"]):not([type="radio"]), select, textarea,
.duration-filter, .route-filter, .data-range-filter, .hotspot-filter,
.regional-country-filter, .region-phone-number-filter, .region-details-hint,
.filter, .catalog-controls button, .mobile-menu-trigger {
  border-radius: var(--radius-field);
}

/* Dense product choices */
.plan-card, .regional-card, .plan, .item, .recommendation,
.country-best-choice, .filter-best-choice, .mobile-plan-refinements,
.mobile-plan-disclosure summary, .mobile-plan-disclosure-content,
.eid-step, .compact-card-group {
  border-radius: var(--radius-plan);
}

/* General surfaces and dialogs */
.finder, .trip-card, .card, .summary, .cta, .plan-details-dialog,
.account-service-modal, .support-ticket, .referral-form, .review-card,
.review-submit-card, .toast, .calculator-language-options,
.device-model-suggestions {
  border-radius: var(--radius-surface);
}

/* Labels are deliberately almost square rather than pill-shaped. */
.plan-tag, .calling-plan-badge, .review-badge, .optimizer-lowest-price,
.region-plan-badges .calling-plan-badge, .data-price-per-gb,
.country-best-choice > span, .filter-best-choice > span {
  border-radius: var(--radius-label);
}

/* Keep circles only for things that are inherently circular. */
.avatar, .brand-mark, .eyebrow::before, .eyebrow i, .globe, .orbit,
.plan-details-close, .mobile-site-menu-header button, .toggle, .toggle::before,
.cart-header-badge b, .search-trip-help-plus, .eid-badge, .dial-code b {
  border-radius: 50%;
}

/* Photography and data-heavy content should not inherit card softness. */
main img:not(.brand-mark), .destination-hero img, .destination-guide img,
.story-image, .photo, table {
  border-radius: var(--radius-image);
}

/* source: color-system.css */
/* Roamnessa color system — deep field greens with a retained coral signal. */
:root {
  --ink: #132a13;
  --green: #31572c;
  --green-mid: #4f772d;
  --lime-strong: #90a955;
  --lime: #ecf39e;
  --cream: #f5f2e9;
  --paper: #fffdf8;
  --muted: #455744;
  --line: #cbd7c4;
  --orange: #f15c3e;
  --orange-display: #bd432f;
}

/* Dark green and pale lime carry interface states; the mid green is reserved
   for secondary actions and the olive never carries light text. */
.announcement { background: var(--ink); color: var(--lime); }
.announcement span { color: #c4d0bd; }
.brand-mark, .brand > span { background: var(--green) !important; }
.filter.active, .optimizer, .estimate, .support-bot-toggle,
.support-bot-header { background: var(--green); }
.optimizer h2 em, .optimizer-steps span { color: var(--lime); }
.light { color: #dce9b1; }

/* #F15C3E is retained as the brand's coral accent. Its label uses the deep
   green instead of white so normal-size CTA copy clears WCAG AA (4.63:1). */
.search-box button, .optimize-btn, .cta button, .support-bot-form button,
.summary button, .button, .primary {
  background: var(--orange) !important;
  color: var(--ink) !important;
}

/* The brighter coral is intentionally reserved for dark-text CTA surfaces.
   Display copy uses the deeper coral, which clears large-text contrast on cream. */
h1 em, h2 em { color: var(--orange-display); }

/* Pale lime remains a surface color only; dark green is used for its text. */
.coral, .lime, .recommendation, .country-best-choice, .filter-best-choice,
.trip-recommended, .profile.active, .profiles button.active {
  background: var(--lime) !important;
  color: var(--ink) !important;
}
.coral, .lime { color: var(--green) !important; }
.cart-preview-checkout { background: var(--lime) !important; color: var(--ink) !important; }

/* Use the accessible middle green for secondary emphasis on light surfaces. */
.data-filter-calculator-link, .regional-data-calculator-link, .multi-data-calculator-link,
.destination-guide-link, .support-bot-action, .package-review-actions a {
  color: var(--green-mid);
}

/* Consistent keyboard cue at 3:1+ against every light surface. */
:where(a, button, summary, input, select, textarea):focus-visible {
  outline-color: var(--green-mid) !important;
}

/* source: spacing-system.css */
/* Roamnessa spacing: plans compress; editorial and travel content breathe. */
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 18px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 44px;
  --space-8: 60px;
  --space-9: 84px;
  --space-10: 116px;
}

/* Relationship rules */
.brand, .active-country, .trust div, .eyebrow, .section-label,
.destination-filter-select, .destination-filter-check { gap: var(--space-2); }
.active-country small, .destination-facts strong, .profiles span,
.friend-code > span { margin-top: var(--space-1); }
.plan-card h3, .plan h2, .destination-plan h2, .item h2 { margin-bottom: var(--space-3); }
.hero-copy, .section-intro p, .intro, .destination-hero > p:not(.eyebrow),
.section-heading > p { margin-top: var(--space-4); }
.hero-copy + .search-box, .intro + .layout, .intro + .calculator,
.destination-hero > p:not(.eyebrow) + .destination-facts { margin-top: var(--space-6); }

/* Product interfaces use the compact end of the scale. */
.plan-grid, .plans, .destination-plans, .items { gap: var(--space-5); }
.plan-card, .plan, .destination-plan, .item { padding: var(--space-5); }
.plan-card .data, .plan .data { margin-top: var(--space-4); }
.plan-details, .trip-buy-row, .plan-card-badges, .region-plan-badges { gap: var(--space-2); }
.finder, .trip-card, .setup, .estimate, .explain, .card, .summary { padding: var(--space-5); }

/* Storytelling sections use the generous end of the scale. */
.hero { padding-top: var(--space-10); padding-bottom: var(--space-9); }
.plans-section, .how { padding-top: var(--space-9); padding-bottom: var(--space-9); }
.optimizer { padding-top: var(--space-9); padding-bottom: var(--space-9); }
.destination-hero { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.destination-section, .destination-help { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.cta { margin-bottom: var(--space-8); padding: var(--space-7) var(--space-8); }

@media (max-width: 800px) {
  .hero { padding-top: var(--space-8); padding-bottom: var(--space-7); }
  .plans-section, .how, .optimizer { padding-top: var(--space-8); padding-bottom: var(--space-8); }
  .destination-hero, .destination-section, .destination-help { padding-top: var(--space-7); padding-bottom: var(--space-7); }
  .plan-grid, .plans, .destination-plans, .items { gap: var(--space-4); }
  .plan-card, .plan, .destination-plan, .item, .finder, .trip-card,
  .setup, .estimate, .explain, .card, .summary { padding: var(--space-5); }
}
