/*
Theme Name: 485 Visa Insurance
Theme URI: https://485visainsurance.com
Author: AKS Immigration
Description: Custom comparison-first WordPress theme for 485 Visa Insurance Australia.
Version: 19.0.0
Text Domain: visa485
*/

:root{--ink:#10243e;--muted:#607086;--navy:#0d2847;--blue:#155eef;--sky:#eef5ff;--line:#dce5ef;--green:#0b8f63;--gold:#f4b740;--bg:#f8fafc;--white:#fff;--shadow:0 16px 40px rgba(16,36,62,.10);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:var(--blue);text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1160px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:74px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--navy);font-size:21px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--navy);color:#fff;font-weight:900}.nav{display:flex;gap:22px;align-items:center;font-size:14px;font-weight:650}.nav a{color:var(--ink)}.nav .nav-cta{color:#fff;background:var(--blue);padding:11px 16px;border-radius:12px}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 11px}.hero{background:linear-gradient(180deg,#f7fbff 0,#fff 100%);padding:68px 0 36px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:46px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#e9f2ff;color:#174ea6;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:750}.hero h1{font-size:clamp(38px,6vw,64px);line-height:1.02;letter-spacing:-.04em;margin:16px 0 18px}.hero p{font-size:19px;color:var(--muted);max-width:690px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:13px;padding:13px 18px;font-weight:750;border:1px solid transparent}.btn-primary{background:var(--blue);color:#fff}.btn-secondary{background:#fff;border-color:var(--line);color:var(--ink)}.trust-row{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:13px}.trust-row span:before{content:"✓";color:var(--green);font-weight:900;margin-right:6px}.hero-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:22px}.hero-card h3{margin:0 0 8px}.selector{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.selector button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 8px;font-weight:700;cursor:pointer}.selector button.active{border-color:var(--blue);background:var(--sky);color:var(--blue)}.mini-provider{display:grid;grid-template-columns:1fr auto;gap:8px;padding:13px 0;border-top:1px solid var(--line)}.mini-provider small{color:var(--muted)}.section{padding:66px 0}.section.alt{background:var(--bg)}.section-head{max-width:760px;margin-bottom:26px}.section-head h2{font-size:clamp(30px,4vw,44px);line-height:1.1;letter-spacing:-.03em;margin:0 0 12px}.section-head p{color:var(--muted);margin:0}.provider-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.provider-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;min-height:280px}.provider-card .name{font-size:18px;font-weight:850;margin-bottom:4px}.provider-card .price{font-size:26px;font-weight:850;margin:16px 0 0}.provider-card .price small{font-size:13px;color:var(--muted);font-weight:600}.provider-card .promo{min-height:42px;color:#6b4d00;background:#fff7da;padding:8px 10px;border-radius:10px;font-size:12px;margin:12px 0}.provider-card ul{padding-left:18px;color:var(--muted);font-size:13px;flex:1}.provider-card .btn{width:100%;padding:11px 12px}.compare-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#fff}.compare-table{width:100%;border-collapse:collapse;min-width:760px}.compare-table th,.compare-table td{padding:15px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.compare-table th{background:#f7f9fc;font-size:13px}.tick{color:var(--green);font-weight:900}.muted{color:var(--muted)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-card{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff}.guide-card h3{margin:4px 0 8px}.guide-card p{color:var(--muted);font-size:14px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line)}.step-num{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;margin-bottom:12px}.faq details{border-top:1px solid var(--line);padding:16px 0}.faq summary{cursor:pointer;font-weight:750}.faq p{color:var(--muted);max-width:850px}.disclaimer{background:#fff7df;border:1px solid #f0d78a;border-radius:16px;padding:15px 18px;font-size:13px;color:#604c16}.site-footer{background:var(--navy);color:#dbe7f5;padding:48px 0 28px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.site-footer a{color:#dbe7f5}.site-footer h4{color:#fff;margin:0 0 10px}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-top:32px;font-size:12px;color:#aebdd0}.page-hero{padding:52px 0;background:#f6f9fd}.page-content{padding:48px 0;max-width:850px}.page-content h1{font-size:46px;line-height:1.1}.page-content h2{margin-top:34px}.admin-note{font-size:12px;color:var(--muted)}
@media(max-width:980px){.nav{display:none}.nav.open{display:flex;position:absolute;left:18px;right:18px;top:72px;flex-direction:column;align-items:stretch;background:#fff;padding:16px;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.menu-toggle{display:block}.hero-grid{grid-template-columns:1fr}.provider-grid{grid-template-columns:repeat(2,1fr)}.guide-grid,.step-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.container{width:min(100% - 24px,1160px)}.hero{padding-top:42px}.hero h1{font-size:40px}.provider-grid,.guide-grid,.step-grid,.footer-grid{grid-template-columns:1fr}.selector{grid-template-columns:1fr}.hero-card{padding:16px}.section{padding:48px 0}}

/* V2 */
.provider-hero{padding:62px 0;background:linear-gradient(180deg,#f3f8ff 0,#fff 100%)}.provider-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:42px;align-items:center}.provider-hero h1{font-size:clamp(38px,5vw,58px);line-height:1.05;letter-spacing:-.04em;margin:16px 0}.provider-hero p{font-size:18px;color:var(--muted)}.provider-summary{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.provider-summary ul{padding-left:20px;color:var(--muted)}.provider-badge{font-size:25px;font-weight:900;color:var(--navy);margin-bottom:12px}.provider-price{font-size:14px!important}.btn-large{padding:15px 22px;font-size:16px}.narrow{max-width:900px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0 34px}.feature-grid>div{border:1px solid var(--line);border-radius:16px;padding:18px}.feature-grid h3{margin-top:0}.feature-grid p{color:var(--muted);margin-bottom:0}.cta-panel{background:var(--navy);color:#fff;border-radius:22px;padding:28px;margin:36px 0}.cta-panel h2{margin-top:0}.cta-panel p{color:#dbe7f5}.faq details{scroll-margin-top:90px}@media(max-width:800px){.provider-hero-grid,.feature-grid{grid-template-columns:1fr}}


/* V3 */
.footer-grid{grid-template-columns:1.25fr .85fr .85fr 1fr}.footer-disclaimer{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-top:32px;font-size:12px;line-height:1.65;color:#c5d2e2;max-width:1100px}.copyright{margin-top:14px;padding-top:14px}.page-content .lead{font-size:19px;color:var(--muted);line-height:1.75}.visa-fact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:26px 0 34px}.visa-fact{border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff}.visa-fact strong{display:block;color:var(--blue);font-size:13px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.visa-fact span{font-weight:700}.check-list{padding-left:22px}.check-list li{margin:9px 0}.info-callout{background:#eef6ff;border:1px solid #bdd8ff;border-radius:16px;padding:16px 18px;margin:22px 0;color:#173b69}.guide-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr}.guide-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.footer-grid,.guide-grid,.visa-fact-grid{grid-template-columns:1fr}}

/* V4 promotions */
.offers-section{background:#f7fbff}.promo a{display:inline-block;margin-top:5px;font-weight:700}.provider-card .promo{min-height:0}.faq details summary{line-height:1.4}

/* V5 brand logo */
.brand-logo{width:42px;height:42px;display:block;flex:0 0 42px}.footer-brand-logo{width:46px;height:46px}.brand-wordmark{font-weight:850;letter-spacing:-.02em}

/* V6 provider logos + consistent promotion system */
.provider-logo-wrap{height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.provider-logo{display:block;width:auto;max-width:170px;height:58px;object-fit:contain}
.provider-logo-page{max-width:210px;height:70px;margin:0 auto 10px}
.provider-page-logo{text-align:center;margin-bottom:10px}
.provider-type{text-align:center;margin-top:0}
.provider-card .price{text-align:left}
.provider-card .promo{background:transparent;color:inherit;padding:0;margin:12px 0 14px;border-radius:0;font-size:12px}
.promo-main{display:flex;align-items:center;gap:10px;border-radius:11px;padding:10px 11px;border:1px solid transparent}
.promo-gift{font-size:24px;line-height:1;flex:0 0 auto}
.promo-copy{display:flex;flex-direction:column;line-height:1.35}
.promo-copy strong{font-size:14px;margin-bottom:1px}
.promo-copy span{font-size:11px}
.promo-terms{display:block!important;text-align:center;margin-top:7px!important;text-decoration:underline;font-size:12px}
.promo-aia .promo-main{background:#fff0f3;border-color:#f7c6d1;color:#b71238}.promo-aia .promo-terms{color:#b71238}
.promo-nib .promo-main{background:#edf9f1;border-color:#bee4cc;color:#006b3c}.promo-nib .promo-terms{color:#006b3c}
.promo-medibank .promo-main{background:#fff0f0;border-color:#f3c8c8;color:#c9161d}.promo-medibank .promo-terms{color:#c9161d}
.promo-allianz .promo-main{background:#edf7f8;border-color:#c5e5e8;color:#006f78}.promo-allianz .promo-terms{color:#006f78}
.promo-bupa .promo-main{background:#eef6fd;border-color:#c8e0f5;color:#0067a8}.promo-bupa .promo-terms{color:#0067a8}
.provider-card{min-height:390px}
.provider-card>ul{margin-top:4px}
.brand-logo{width:42px;height:42px;object-fit:contain}
@media(max-width:900px){.provider-logo-wrap{height:60px}.provider-logo{height:50px;max-width:150px}}


/* V8 official/user-supplied provider logo sizing */
.provider-logo-wrap{height:78px}
.provider-logo{max-width:175px;max-height:62px;height:auto;width:auto;object-fit:contain}
.provider-card:nth-child(1) .provider-logo{max-height:66px;max-width:120px}
.provider-card:nth-child(5) .provider-logo{max-height:62px;max-width:90px}
.provider-logo-page{max-width:235px;max-height:82px;height:auto}
@media(max-width:900px){.provider-logo-wrap{height:66px}.provider-logo{max-height:54px;height:auto}}

/* V9 provider content + simplified hero comparison */
.provider-price small{display:inline-block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.45}.hero-card .mini-provider:first-of-type{margin-top:14px}

/* V11 clearer hover feedback for text navigation links */
.guide-card h3 a,
.site-footer li a,
.mini-provider a,
.provider-card .name a,
.page-content a:not(.btn),
.feature-grid a:not(.btn){
  display:inline-block;
  transform-origin:left center;
  transition:transform .16s ease,font-weight .16s ease,filter .16s ease;
}
.guide-card h3 a:hover,
.guide-card h3 a:focus-visible,
.site-footer li a:hover,
.site-footer li a:focus-visible,
.mini-provider a:hover,
.mini-provider a:focus-visible,
.provider-card .name a:hover,
.provider-card .name a:focus-visible,
.page-content a:not(.btn):hover,
.page-content a:not(.btn):focus-visible,
.feature-grid a:not(.btn):hover,
.feature-grid a:not(.btn):focus-visible{
  transform:scale(1.06);
  font-weight:800;
  filter:brightness(1.12);
}
.site-footer li a:hover,.site-footer li a:focus-visible{color:#fff}
@media (hover:none){
  .guide-card h3 a:hover,.site-footer li a:hover,.mini-provider a:hover,
  .provider-card .name a:hover,.page-content a:not(.btn):hover,.feature-grid a:not(.btn):hover{transform:none}
}

/* V12 comparison card alignment */
.provider-promo-slot{min-height:108px;display:flex;flex-direction:column;justify-content:flex-start}
.provider-promo-slot .promo{width:100%}
.provider-card>ul{margin-top:4px}
@media (max-width:980px){.provider-promo-slot{min-height:108px}}


/* V14 stronger, reliable hover feedback for clickable text links */
@media (hover:hover) and (pointer:fine){
  /* Guide cards: the whole card is clickable, enlarge only the blue title */
  .guide-card h3{
    display:inline-block;
    transform-origin:left center;
    transition:transform .18s ease,color .18s ease,font-weight .18s ease;
  }
  .guide-card:hover h3,
  .guide-card:focus-visible h3{
    transform:scale(1.06);
    color:#0f4fd6;
    font-weight:850;
  }

  /* Footer: hovering anywhere on the link line enlarges the linked text */
  .site-footer li a{
    display:inline-block;
    transform-origin:left center;
    transition:transform .18s ease,color .18s ease,font-weight .18s ease;
    will-change:transform;
  }
  .site-footer li:hover a,
  .site-footer li a:hover,
  .site-footer li a:focus-visible{
    transform:scale(1.06);
    color:#fff;
    font-weight:750;
  }

  /* Compact provider links in the hero */
  .mini-provider a{
    display:inline-block;
    transform-origin:right center;
    transition:transform .18s ease,color .18s ease,font-weight .18s ease;
  }
  .mini-provider:hover a,
  .mini-provider a:hover,
  .mini-provider a:focus-visible{
    transform:scale(1.06);
    color:#0f4fd6;
    font-weight:800;
  }

  /* Useful internal text links elsewhere; buttons/navigation remain unchanged */
  .page-content a:not(.btn),
  .feature-grid a:not(.btn),
  .provider-summary a:not(.btn){
    display:inline-block;
    transform-origin:left center;
    transition:transform .18s ease,color .18s ease,font-weight .18s ease;
  }
  .page-content a:not(.btn):hover,
  .page-content a:not(.btn):focus-visible,
  .feature-grid a:not(.btn):hover,
  .feature-grid a:not(.btn):focus-visible,
  .provider-summary a:not(.btn):hover,
  .provider-summary a:not(.btn):focus-visible{
    transform:scale(1.06);
    font-weight:800;
  }
}

/* V15: unmistakable 6% text-size hover feedback (uses font-size, not transform) */
@media (hover:hover) and (pointer:fine){
  /* Homepage guide cards */
  .guide-card h3{
    font-size:1.17em;
    line-height:1.25;
    transition:font-size .16s ease,color .16s ease,font-weight .16s ease;
  }
  .guide-card:hover h3,
  .guide-card:focus-within h3{
    font-size:1.2402em !important; /* 6% larger than 1.17em */
    font-weight:850;
    color:var(--blue);
    transform:none !important;
  }

  /* Footer links */
  .site-footer li a{
    display:inline-block;
    font-size:1em;
    line-height:1.6;
    transition:font-size .16s ease,color .16s ease,font-weight .16s ease;
    transform:none !important;
  }
  .site-footer li:hover a,
  .site-footer li a:hover,
  .site-footer li a:focus-visible{
    font-size:1.06em !important;
    font-weight:750;
    color:#fff;
    transform:none !important;
  }

  /* Hero provider View links */
  .mini-provider a{
    display:inline-block;
    font-size:1em;
    transition:font-size .16s ease,font-weight .16s ease,color .16s ease;
    transform:none !important;
  }
  .mini-provider:hover a,
  .mini-provider a:hover,
  .mini-provider a:focus-visible{
    font-size:1.06em !important;
    font-weight:800;
    transform:none !important;
  }

  /* Standalone internal links in page/guide content */
  .page-content a:not(.btn),
  .feature-grid a:not(.btn),
  .provider-summary a:not(.btn){
    display:inline-block;
    font-size:1em;
    transition:font-size .16s ease,font-weight .16s ease;
    transform:none !important;
  }
  .page-content a:not(.btn):hover,
  .page-content a:not(.btn):focus-visible,
  .feature-grid a:not(.btn):hover,
  .feature-grid a:not(.btn):focus-visible,
  .provider-summary a:not(.btn):hover,
  .provider-summary a:not(.btn):focus-visible{
    font-size:1.06em !important;
    font-weight:750;
    transform:none !important;
  }
}

/* V16: desktop hover enlargement without pointer media-query gating */
.guide-card h3,
.site-footer li a,
.mini-provider a,
.page-content a:not(.btn),
.feature-grid a:not(.btn),
.provider-summary a:not(.btn){
  transform-origin:left center;
}

/* Whole guide card is the link: enlarge its title whenever the card is hovered */
.guide-card:hover h3,
.guide-card:focus-within h3{
  transform:scale(1.06) !important;
  color:var(--blue) !important;
  font-weight:850 !important;
}

/* Footer navigation/provider/contact links */
.site-footer li a:hover,
.site-footer li a:focus-visible,
.site-footer li:hover > a{
  transform:scale(1.06) !important;
  color:#fff !important;
  font-weight:750 !important;
}

/* Hero View links and useful inline navigation links */
.mini-provider a:hover,
.mini-provider a:focus-visible,
.page-content a:not(.btn):hover,
.page-content a:not(.btn):focus-visible,
.feature-grid a:not(.btn):hover,
.feature-grid a:not(.btn):focus-visible,
.provider-summary a:not(.btn):hover,
.provider-summary a:not(.btn):focus-visible{
  transform:scale(1.06) !important;
  font-weight:800 !important;
}


/* V17: JS-driven hover feedback. Direct font-size changes avoid browser/CSS transform issues. */
.guide-card h3,
.site-footer li a,
.mini-provider a,
.page-content a:not(.btn),
.feature-grid a:not(.btn),
.provider-summary a:not(.btn){
  transform:none !important;
  transition:font-size .14s ease,color .14s ease,font-weight .14s ease !important;
}

/* V18: natural internal-linking cards and provider detail links */
.provider-detail-link{display:block;margin:0 0 12px;font-weight:700;text-align:center;color:#0b5cff;text-decoration:none;line-height:1.35}
.provider-detail-link:hover{text-decoration:underline}
.section-more{margin-top:22px;font-weight:700}
.section-more a{color:#0b5cff;text-decoration:none}
.section-more a:hover{text-decoration:underline}
.related-links{margin-top:34px;padding-top:28px;border-top:1px solid #d9e3ef}
.related-links h2{margin-top:0}
.related-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.related-link-card{display:block;padding:18px;border:1px solid #d6e1ee;border-radius:14px;text-decoration:none;background:#fff;color:#0c2f55}
.related-link-card strong{display:block;color:#0b5cff;margin-bottom:7px;font-size:1.02rem}
.related-link-card span{display:block;color:#536b86;line-height:1.5;font-size:.94rem}
.related-link-card:hover{box-shadow:0 8px 22px rgba(13,59,102,.10);border-color:#b8cce3}
.related-provider-links{margin-top:18px;line-height:1.9}
.related-provider-links a{color:#0b5cff;font-weight:700;text-decoration:none;white-space:nowrap}
.related-provider-links a:hover{text-decoration:underline}
@media(max-width:760px){.related-link-grid{grid-template-columns:1fr}.related-provider-links a{white-space:normal}}

/* V19: related-link cards + reliable cache-busting */
.related-links{margin-top:34px!important;padding-top:28px!important;border-top:1px solid #d9e3ef!important}
.related-links h2{margin:0 0 16px!important}
.related-link-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin-top:16px!important}
.related-link-card{display:block!important;padding:18px!important;border:1px solid #d6e1ee!important;border-radius:14px!important;text-decoration:none!important;background:#fff!important;color:#0c2f55!important;box-sizing:border-box!important}
.related-link-card strong{display:block!important;color:#0b5cff!important;margin-bottom:7px!important;font-size:1.02rem!important;line-height:1.35!important}
.related-link-card span{display:block!important;color:#536b86!important;line-height:1.5!important;font-size:.94rem!important}
.related-link-card:hover{box-shadow:0 8px 22px rgba(13,59,102,.10)!important;border-color:#b8cce3!important}
.related-link-card:hover strong{font-size:1.0812rem!important}
.related-provider-links{margin-top:18px!important;line-height:1.9!important}
.related-provider-links a{color:#0b5cff!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap!important}
.related-provider-links a:hover{font-size:1.06em!important;text-decoration:underline!important}
@media(max-width:760px){.related-link-grid{grid-template-columns:1fr!important}.related-provider-links a{white-space:normal!important}}
