/* INDIC RMC — v320 typography & colour consistency layer
   Public site only. Preserves layout and intentional hero/title emphasis while
   standardising type family, weights, supporting-copy colours and small UI text. */
:root{
  --ir-type-ink:#17191d;
  --ir-type-ink-soft:#2b3036;
  --ir-type-copy:#626a74;
  --ir-type-muted:#6f7781;
  --ir-type-on-dark:#f7f8f9;
  --ir-type-copy-on-dark:#c5cad1;
  --ir-type-muted-on-dark:#9ba3ad;
  --ir-type-accent:#ff6000;
  --ir-type-accent-text:#ff6000;
  --ir-type-accent-on-dark:#ff6000;
}

/* One public type stack and one weight hierarchy. */
html body{
  font-family:Inter,Arial,"Noto Sans",sans-serif!important;
  color:var(--ir-type-ink);
  font-synthesis-weight:none;
}
html body main :where(p,li,dd,blockquote){font-weight:400!important}
html body main :where(h1,h2,h3){color:inherit}
html body main h1{font-weight:800!important}
html body main h2{font-weight:750!important}
html body main h3{font-weight:700!important}

/* Labels are informative, not competing headlines. */
html body :where(.kicker,.eyebrow,.ir-kicker,.ir-section-kicker,.ir-explore-label,.ir-path-label,.ir-mini-kicker,.ir-snapshot-label,.country,.ir-footer-eyebrow){
  font-weight:650!important;
}

/* Navigation and actions use a calm, repeatable weight. */
html body > .site-header .navlinks > a,
html body > .site-header .ir-nav-destinations-trigger{font-weight:600!important}
html body .ir-nav-register,
html body :where(.btn,.ir-btn){font-weight:700!important}
html body :where(.read,.ir-card-link,.ir-section-link,.ir-country-news-action,.share-action){font-weight:650!important}

/* ----- HOME ----- */
body[data-page="home"] :where(.lead,.ir-next-step-head p,.ir-next-step-copy p,.ir-next-step-inline-copy p,.ir-why-card p,.ir-destinations-v68 .ir-destinations-head p,.ir-team-showcase-head .lead,.ir-team-interaction-note,.ir-funds-head p,.ir-faq-heading p,.ir-faq-answer p){
  color:var(--ir-type-copy)!important;
  font-weight:400!important;
}
body[data-page="home"] :where(.ir-next-step-kicker,.ir-destinations-v68 .kicker,.ir-team-showcase-head .kicker,.ir-faq-heading .kicker){
  color:var(--ir-type-accent-text)!important;
  font-weight:650!important;
}
body[data-page="home"] .ir-next-step-action{color:var(--ir-type-accent-text)!important;font-weight:650!important}
body[data-page="home"] .ir-team-interaction-note{font-weight:400!important}
body[data-page="home"] .ir-team-card-primary p{font-weight:400!important;color:rgba(255,255,255,.80)!important}
body[data-page="home"] .ir-team-detail span{font-weight:650!important;color:var(--ir-type-accent-on-dark)!important}
body[data-page="home"] .ir-team-detail strong,
body[data-page="home"] .ir-team-contact a{font-weight:550!important}
body[data-page="home"] .ir-team-cert strong{font-weight:650!important}
body[data-page="home"] .ir-why-lead,
body[data-page="home"] .ir-conversation-lead,
body[data-page="home"] .success-spotlight-head .lead,
body[data-page="home"] .testimonial-heading p{
  color:var(--ir-type-copy-on-dark)!important;
  font-weight:400!important;
}
body[data-page="home"] .ir-conversation-topics span{font-weight:550!important;color:#e6e9ed!important}
body[data-page="home"] .ir-funds-updated span{font-weight:600!important;color:var(--ir-type-muted)!important}
body[data-page="home"] .ir-funds-updated strong{font-weight:600!important;color:var(--ir-type-ink-soft)!important}
body[data-page="home"] :where(.option,.ir-subject-chip,.country-tab,.country-pill){font-weight:600!important}

/* ----- BLOG + IMMINEWS ----- */
body:is([data-page="blog"],[data-page="imminews"]) .hero p{
  color:var(--ir-type-copy-on-dark)!important;
  font-weight:400!important;
}
body:is([data-page="blog"],[data-page="imminews"]) :where(.intro p,.featured p,.card-copy p,.news-detail-summary,.blog-article-body p,.news-detail-copy p){
  color:var(--ir-type-copy)!important;
  font-weight:400!important;
}
body:is([data-page="blog"],[data-page="imminews"]) :where(.status,.source-note,.date,.featured-slider-status){
  color:var(--ir-type-muted)!important;
  font-weight:500!important;
}
body:is([data-page="blog"],[data-page="imminews"]) .country{color:var(--ir-type-accent-text)!important;font-weight:650!important}
body:is([data-page="blog"],[data-page="imminews"]) :where(.filters input,.filters select){font-weight:550!important}
body:is([data-page="blog"],[data-page="imminews"]) .filters input::placeholder{color:#9ca4ae!important;font-weight:400!important}
body:is([data-page="blog"],[data-page="imminews"]) .topic{font-weight:600!important}
body:is([data-page="blog"],[data-page="imminews"]) .read{color:var(--ir-type-accent-text)!important}
body:is([data-page="blog"],[data-page="imminews"]) .page-btn{font-weight:650!important}
body:is([data-page="blog"],[data-page="imminews"]) .news-detail-source-label,
body:is([data-page="blog"],[data-page="imminews"]) .blog-source-label{font-weight:650!important}

/* ----- DESTINATION SYSTEM ----- */
.ir-destination-hero .ir-hero-intro{color:var(--ir-type-copy-on-dark)!important;font-weight:400!important}
.ir-snapshot-label{color:var(--ir-type-accent-on-dark)!important;font-weight:650!important}
.ir-snapshot-item strong{font-weight:650!important}
.ir-snapshot-item span:last-child{color:#aeb6bf!important;font-weight:400!important}
.ir-section-kicker,.ir-explore-label{color:var(--ir-type-accent-text)!important;font-weight:650!important}
.ir-section-head p,
.ir-explore-card p,
.ir-journey-copy p,
.ir-check span{color:var(--ir-type-copy)!important;font-weight:400!important}
.ir-section-link,.ir-card-link{color:var(--ir-type-accent-text)!important;font-weight:650!important}
.ir-path-label,.ir-mini-kicker,.ir-country-news .ir-section-kicker{color:var(--ir-type-accent-on-dark)!important;font-weight:650!important}
.ir-dark .ir-section-head p,
.ir-path-card p,
.ir-path-note,
.ir-visual-copy p,
.ir-country-news .ir-section-head p,
.ir-country-news-card p,
.ir-country-news-state{color:var(--ir-type-copy-on-dark)!important;font-weight:400!important}
.ir-path-note,.ir-country-news-note,.ir-country-news-date{color:var(--ir-type-muted-on-dark)!important;font-weight:400!important}
.ir-country-news-source{color:var(--ir-type-accent-on-dark)!important;font-weight:600!important}
.ir-country-news-action{color:var(--ir-type-accent-on-dark)!important;font-weight:650!important}
.ir-check strong{font-weight:650!important;color:var(--ir-type-ink-soft)!important}
.ir-subject-chip{font-weight:550!important;color:#3d434a!important}

/* ----- CAREERS + PRIVACY ----- */
body[data-page="careers"] .eyebrow{color:var(--ir-type-accent-text)!important;font-weight:650!important}
body[data-page="careers"] :where(.hero p,.card p){color:var(--ir-type-copy)!important;font-weight:400!important}
body[data-page="careers"] .mini p{color:var(--ir-type-copy-on-dark)!important}
body[data-page="careers"] .mini strong{color:var(--ir-type-accent-on-dark)!important;font-weight:650!important}
body[data-page="privacy"]>.wrap :where(p,li){color:var(--ir-type-copy)!important;font-weight:400!important}
body[data-page="privacy"] .note{color:#4e555e!important}

/* ----- FOOTER ----- */
html body .ir-footer-eyebrow{color:var(--ir-type-accent-on-dark)!important;font-weight:650!important}
html body .ir-footer-cta p,
html body .ir-footer-about,
html body .ir-footer-location,
html body .ir-footer-award-subtitle{color:var(--ir-type-copy-on-dark)!important;font-weight:400!important}
html body .ir-footer-column h4{font-weight:650!important}
html body .ir-footer-column a{color:#c7ccd2!important;font-weight:400!important}
html body .ir-footer-column a:hover,
html body .ir-footer-column a:focus-visible{color:#fff!important}
html body .ir-footer-award-title{font-weight:600!important}
html body .ir-footer-contact-column a strong{font-weight:550!important}
html body .ir-footer-btn{font-weight:650!important}

/* Small UI text stays readable without becoming visually dominant. */
html body :where(.meta,.ir-country-news-meta,.source-note,.guide-note,.ir-country-news-note){letter-spacing:0!important}

/* Tablet: retain the same hierarchy without oversized supporting copy. */
@media (min-width:621px) and (max-width:1180px){
  body:is([data-page="blog"],[data-page="imminews"]) .hero p{font-size:16px!important}
  .ir-section-head p{font-size:13.5px!important}
}

/* Mobile: preserve legibility while avoiding heavy text blocks. */
@media (max-width:620px){
  html body main h1{font-weight:800!important}
  html body main h2{font-weight:750!important}
  html body main h3{font-weight:700!important}
  body:is([data-page="blog"],[data-page="imminews"]) .hero p{font-size:14px!important}
  body:is([data-page="blog"],[data-page="imminews"]) .card-copy p{font-size:12px!important}
  .ir-explore-card p,.ir-country-news-card p{font-size:12px!important}
  .ir-path-card p{font-size:12.5px!important}
  html body .ir-footer-column a{font-size:12.5px!important}
}

/* Repeating content roles share a restrained size scale. */
body:is([data-page="blog"],[data-page="imminews"]) .intro p{font-size:14px!important;line-height:1.62!important}
body:is([data-page="blog"],[data-page="imminews"]) .featured p{font-size:13.5px!important;line-height:1.64!important}
body:is([data-page="blog"],[data-page="imminews"]) .card-copy p{font-size:12.5px!important;line-height:1.58!important}
body:is([data-page="blog"],[data-page="imminews"]) :where(.country,.date){font-size:10.5px!important}
.ir-section-head p{font-size:14px!important;line-height:1.6!important}
.ir-explore-card p{font-size:12.5px!important;line-height:1.6!important}
.ir-path-card p{font-size:12.5px!important;line-height:1.62!important}
.ir-journey-copy p{font-size:13.5px!important;line-height:1.6!important}
.ir-check span{font-size:11.5px!important;line-height:1.5!important}
.ir-country-news-card p{font-size:12px!important;line-height:1.58!important}
body[data-page="careers"] .card p{font-size:14px!important}

@media (max-width:620px){
  body:is([data-page="blog"],[data-page="imminews"]) .intro p{font-size:13.5px!important}
  body:is([data-page="blog"],[data-page="imminews"]) .featured p{font-size:13px!important}
  .ir-section-head p{font-size:13px!important}
  .ir-journey-copy p{font-size:13px!important}
}


/* --------------------------------------------------------------------------
   v319 — Small orange text normalization
   Keep orange microcopy visually consistent across legacy page layers.
   One weight everywhere; only luminance changes between light/dark surfaces
   so small text retains accessible contrast.
   -------------------------------------------------------------------------- */
:root{
  --ir-small-orange-light:#ff6000;
  --ir-small-orange-dark:#ff6000;
  --ir-small-orange-weight:600;
}

/* Light-surface orange microcopy / links. */
html body :where(
  .eyebrow,.kicker,.ir-kicker,.ir-section-kicker,.ir-explore-label,
  .ir-section-link,.ir-card-link,.ir-next-step-kicker,.ir-next-step-action,
  .ir-uni-head .kicker,.ir-funds-head .kicker,.ir-option-checker-copy .kicker,
  .ir-funds-step-copy span,.ir-funds-email-error-kicker,
  .read,.country,.blog-modal-kicker
){
  color:var(--ir-small-orange-light)!important;
  font-weight:var(--ir-small-orange-weight)!important;
}

/* Home estimator/support microcopy on light surfaces. */
body[data-page="home"] :where(
  .ir-funds-lkr span,.ir-funds-essential>span,.ir-funds-preview-head>div>span,
  .ir-funds-result-note strong,.ir-funds-field>span em
){
  color:var(--ir-small-orange-light)!important;
  font-weight:var(--ir-small-orange-weight)!important;
}

/* Dark-surface orange microcopy. */
html body :where(
  .ir-team-detail span,.ir-team-cert strong,.ir-team-career-copy span,
  .success-story-count,.ir-funds-processing-kicker,.ir-funds-preview-hero small,
  .ir-funds-consult-kicker,.ir-funds-consult-code,.ir-funds-consult-detail>span,
  .ir-snapshot-label,.ir-path-label,.ir-mini-kicker,
  .ir-country-news .ir-section-kicker,.ir-country-news-source,
  .ir-country-news .ir-section-link,.ir-country-news-action,
  .ir-footer-eyebrow,.ir-footer-award-year
){
  color:var(--ir-small-orange-dark)!important;
  font-weight:var(--ir-small-orange-weight)!important;
}

/* Blog / ImmiNews hero micro-kickers are dark-surface text. */
body:is([data-page="blog"],[data-page="imminews"]) .hero .kicker{
  color:var(--ir-small-orange-dark)!important;
  font-weight:var(--ir-small-orange-weight)!important;
}

/* Careers dark-panel orange microcopy. */
body[data-page="careers"] .mini strong{
  color:var(--ir-small-orange-dark)!important;
  font-weight:var(--ir-small-orange-weight)!important;
}

/* Small orange hover/focus text uses the same contextual tone instead of
   introducing another shade. */
body:is([data-page="blog"],[data-page="imminews"]) :where(.read,.topic):hover,
body:is([data-page="blog"],[data-page="imminews"]) :where(.read,.topic):focus-visible,
.ir-section-link:hover,.ir-section-link:focus-visible,
.ir-card-link:hover,.ir-card-link:focus-visible{
  color:var(--ir-small-orange-light)!important;
}


/* --------------------------------------------------------------------------
   v320 — Full-site orange microcopy audit
   Final cascade layer after auditing every public page and legacy inline rule.
   This catches remaining small text roles that older page-specific CSS coloured
   with one-off oranges or 800–950 weights. Major orange headings, counters,
   icons, button fills and decorative accents are intentionally excluded.
   -------------------------------------------------------------------------- */
:root{
  --ir-micro-orange-light:#ff6000;
  --ir-micro-orange-dark:#ff6000;
  --ir-micro-orange-weight:600;
}

/* HOME — light-surface microcopy. */
body[data-page="home"] :where(
  .ir-country-hero .ir-hero-eyebrow,
  .ir-next-step-kicker,.ir-next-step-action,
  .ir-team-showcase-head .kicker,.ir-faq-heading .kicker,
  .ir-uni-head .kicker,.ir-uni-platform,.ir-trending-universities-v84 .ir-uni-country,
  .ir-notice-kicker,.ir-consultant-kicker,.ir-consultant-credential,
  .ir-funds-head .kicker,.ir-option-checker-copy .kicker,
  .ir-funds-field>span em,.ir-funds-pdf b,
  .ir-funds-form-note,.ir-funds-form-note strong,.ir-funds-result-note strong,
  .ir-funds-email-error-kicker,
  .ir-funds-breakdown-head .ir-consultant-kicker,
  .ir-funds-modal-program-line,.ir-funds-modal-section-title,
  .ir-funds-modal-detail-body .ir-funds-extra-title,
  .ir-funds-modal-detail-body .ir-funds-source,
  .ir-funds-modal-total>div:last-child span,
  .ir-funds-modal-context span:first-child,
  .ir-option-wizard-head>span
){
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}

/* HOME — dark-surface microcopy. */
body[data-page="home"] :where(
  .ir-why-intro .kicker,.ir-conversation-card .kicker,
  .ir-destinations-v68 .ir-destinations-head .kicker,
  .success-spotlight-head .kicker,.testimonial-heading .eyebrow,
  .ir-destination-landmark,
  .ir-team-detail span,.ir-team-cert strong,.ir-team-career-copy span,
  .success-story-status,.success-review-credit,.success-story-count,
  .ir-funds-passage-badge,
  .ir-funds-country-code,.ir-funds-extra-title,.ir-funds-essential>span,.ir-funds-amount-star,
  .ir-funds-step-copy span,.ir-funds-processing-kicker,
  .ir-funds-preview-head>div>span,.ir-funds-preview-hero small,
  .ir-funds-plan-kicker,.ir-funds-preview-program-type,.ir-funds-live-plan-head small,
  .ir-funds-consult-kicker,.ir-funds-consult-code,.ir-funds-consult-detail>span,
  .ir-funds-consult-note strong,.ir-funds-preview-note-full strong,
  .ir-funds-detail-drawer summary b
){
  color:var(--ir-micro-orange-dark)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body[data-page="home"] :where(
  .ir-funds-source:hover,.ir-funds-source:focus-visible,
  .ir-team-contact a:hover,.ir-team-contact a:focus-visible,
  .ir-consultant-contact a:hover,.ir-consultant-contact a:focus-visible
){color:var(--ir-micro-orange-dark)!important}

/* BLOG + IMMINEWS — card/filter/detail/source microcopy. */
body:is([data-page="blog"],[data-page="imminews"]) :where(
  .intro .kicker,.country,.read,.blog-category,
  .news-detail-kicker,.news-detail-country,.news-source-label,
  .blog-modal-kicker,.blog-source-label
){
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body:is([data-page="blog"],[data-page="imminews"]) :where(
  .hero .kicker
){
  color:var(--ir-micro-orange-dark)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body[data-page="imminews"] .notice{
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body:is([data-page="blog"],[data-page="imminews"]) .featured-slider-status strong{
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body:is([data-page="blog"],[data-page="imminews"]) :where(
  .read:hover,.read:focus-visible,.share-action:hover,.share-action:focus-visible,
  .news-card-source:hover,.news-card-source:focus-visible,
  .blog-source-list a:hover,.blog-source-list a:focus-visible
){color:var(--ir-micro-orange-light)!important}

/* DESTINATION PAGES — explicitly distinguish the dark hero from light sections. */
body:is([data-page="uk"],[data-page="australia"],[data-page="canada"],[data-page="new-zealand"],[data-page="usa"],[data-page="taiwan"],[data-page="europe"],[data-page="ireland"],[data-page="germany"],[data-page="france"],[data-page="malta"],[data-page="netherlands"],[data-page="denmark"],[data-page="finland"],[data-page="sweden"]) .ir-destination-hero .ir-kicker{
  color:var(--ir-micro-orange-dark)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body:is([data-page="uk"],[data-page="australia"],[data-page="canada"],[data-page="new-zealand"],[data-page="usa"],[data-page="taiwan"],[data-page="europe"],[data-page="ireland"],[data-page="germany"],[data-page="france"],[data-page="malta"],[data-page="netherlands"],[data-page="denmark"],[data-page="finland"],[data-page="sweden"]) :where(
  .ir-section-kicker,.ir-explore-label,.ir-section-link,.ir-card-link
){
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body:is([data-page="uk"],[data-page="australia"],[data-page="canada"],[data-page="new-zealand"],[data-page="usa"],[data-page="taiwan"],[data-page="europe"],[data-page="ireland"],[data-page="germany"],[data-page="france"],[data-page="malta"],[data-page="netherlands"],[data-page="denmark"],[data-page="finland"],[data-page="sweden"]) :where(
  .ir-snapshot-label,.ir-path-label,.ir-mini-kicker,
  .ir-country-news .ir-section-kicker,.ir-country-news-source,
  .ir-country-news .ir-section-link,.ir-country-news-action
){
  color:var(--ir-micro-orange-dark)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}

/* CAREERS / FOOTER and shared microcopy. */
body[data-page="careers"] .eyebrow{
  color:var(--ir-micro-orange-light)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}
body[data-page="careers"] .mini strong,
html body :where(.ir-footer-eyebrow,.ir-footer-award-year){
  color:var(--ir-micro-orange-dark)!important;
  font-weight:var(--ir-micro-orange-weight)!important;
}

/* Ensure hover/focus states do not introduce legacy third/fourth orange shades. */
body:is([data-page="uk"],[data-page="australia"],[data-page="canada"],[data-page="new-zealand"],[data-page="usa"],[data-page="taiwan"],[data-page="europe"],[data-page="ireland"],[data-page="germany"],[data-page="france"],[data-page="malta"],[data-page="netherlands"],[data-page="denmark"],[data-page="finland"],[data-page="sweden"]) :where(.ir-section-link,.ir-card-link):is(:hover,:focus-visible),
body:is([data-page="blog"],[data-page="imminews"]) .topic:is(:hover,:focus-visible){
  color:var(--ir-micro-orange-light)!important;
}

/* Small orange text keeps the same weight at every responsive breakpoint. */
@media (max-width:1180px){
  html body :where(
    .kicker,.eyebrow,.ir-kicker,.ir-section-kicker,.ir-explore-label,
    .ir-section-link,.ir-card-link,.country,.read,.blog-category,
    .blog-modal-kicker,.news-detail-kicker,.news-detail-country,.news-source-label,
    .ir-footer-eyebrow,.ir-footer-award-year
  ){font-weight:var(--ir-micro-orange-weight)!important}
}
