/* Phone-first refinements; desktop layouts remain unchanged. */
@media (max-width:1000px) {
  .menu-toggle{width:44px;height:44px;padding:12px;align-content:center;gap:7px}
  .menu-toggle span{width:22px;height:2px;transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
}
@media (max-width:760px) {
  html{scroll-padding-top:98px;scroll-padding-bottom:90px}
  .container{width:calc(100% - 36px)}
  .preview-bar{min-height:32px;padding:5px 18px;gap:10px;font-size:10px;line-height:1.5}
  .preview-bar>span{flex-shrink:0;font-size:8px}
  .site-header{height:80px}
  .site-header .brand{width:60px;flex-basis:60px}
  .site-header .brand .official-logo{width:60px}
  .header-inner{gap:18px}
  .site-header .header-cta{display:none}
  .header-inner .menu-toggle{margin-left:auto}
  .menu-toggle{margin-left:0}
  .site-header nav{top:80px;padding:12px 18px 24px;max-height:calc(100dvh - 120px);overscroll-behavior:contain;box-shadow:0 16px 25px #16427d0d}
  .site-header nav>a,.nav-dropdown summary{font-size:16px;padding:12px 8px;min-height:48px}
  .site-header .dropdown-panel{padding:0 0 0 10px;border:0;border-left:1px solid #dce2e8;border-radius:0;margin:3px 0 10px 8px;width:calc(100% - 8px);box-shadow:none}
  .site-header .dropdown-panel a{font-size:15px;line-height:1.5;padding:11px 12px;min-height:46px}
  .site-header .dropdown-panel .icon{display:none}
  .section-nav{top:80px}.section-nav>.container{gap:22px}
  .section{padding:48px 0}
  h2{font-size:30px;line-height:1.23;letter-spacing:-.04em}
  .eyebrow{font-size:11px;line-height:1.6}
  .editorial-hero-content{min-height:0;padding-top:38px;padding-bottom:38px}
  .editorial-hero-content h1{font-size:clamp(35px,9.6vw,54px);line-height:1.14}
  .editorial-hero-content .hero-copy>p{font-size:16px;line-height:1.7;margin-top:23px}
  .editorial-hero-content .hero-actions{gap:18px;margin-top:26px}
  .hero-actions>.button{width:100%;justify-content:space-between;min-height:50px;padding:13px 18px;font-size:14px}
  .hero-actions>.text-link{font-size:14px;min-height:40px;align-items:center}
  .editorial-hero-content .hero-footnote{margin-top:23px;font-size:12px}
  .hero-bottom .container{gap:10px 17px;min-height:58px;padding:15px 0;font-size:9px}
  .section-heading{margin-bottom:24px}
  .section-heading>p{font-size:16px;line-height:1.7;margin-top:18px}
  .solution-tabs{padding:4px;gap:3px;margin-bottom:22px}
  .solution-tabs button{font-size:12px;min-height:44px;padding:9px 7px}
  .home-feature-section{padding:36px 0}
  .feature-photo{height:260px}.home-feature-grid{gap:27px}
  .feature-copy>p{font-size:16px;line-height:1.7}
  .feature-list{gap:12px 16px}.feature-list li{font-size:13px}
  .feature-copy>.button{width:100%;justify-content:space-between}
  .full-value-grid{gap:24px}.full-value-grid p{font-size:15px}
  .business-banner{min-height:0;padding:44px 0}.business-banner h2{font-size:32px}
  .business-banner p{font-size:16px;line-height:1.7}
  .service-card{padding:25px}.service-card p{font-size:15px}
  /* Keep custom icons, but give the copy most of the phone width. */
  .journey-section .section-heading{margin-bottom:28px}
  .journey-map .journey-connections{left:7px;top:24px;bottom:24px}
  .journey-map .journey-steps{gap:16px}
  .journey-map .journey-steps>li{margin-left:24px;padding:20px;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px 15px;align-items:center;border-radius:12px}
  .journey-steps>li:before{content:'';position:absolute;left:-21px;top:42px;width:7px;height:7px;border-radius:50%;background:var(--gold-dark);outline:5px solid #f4f6f8}
  .journey-step-top{display:contents}
  .journey-steps>li .journey-icon{position:static;grid-column:1;grid-row:1;width:54px;height:54px;background:none;outline:0}
  .journey-steps>li .journey-icon img{width:54px;height:54px}
  .journey-number{position:absolute;top:8px;right:12px;font-size:18px;color:#94702e;letter-spacing:0}
  .journey-caption{display:none}
  .journey-steps h3{grid-column:2;grid-row:1;font-size:20px;line-height:1.3;padding-top:6px}
  .journey-steps p{grid-column:1/-1;margin:0;font-size:15px;line-height:1.65;max-width:none}
  /* Keep the calculators close to their controls and remove duplicate fixed CTA. */
  .calculator-intro{padding:24px 0 18px}
  .calculator-intro .eyebrow{font-size:10px;margin-bottom:10px}
  .calculator-intro h1{font-size:28px;line-height:1.2}
  .calculator-intro p{font-size:14px;line-height:1.6;margin-top:12px}
  .calculator-jumps[role=tablist]{margin-top:20px;gap:4px;padding:4px}
  .calculator-jumps [role=tab]{min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px 8px;font-size:13px}
  .calculator-workspace,.has-calculator-tabs .consolidation-section{padding-top:20px}
  .emi-controls,.emi-summary{padding:22px}
  .emi-controls>.eyebrow,.emi-controls>p:not(.estimate-note){display:none}
  .emi-controls h2{font-size:21px;line-height:1.3}
  .emi-controls .calculator-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 14px;margin-top:22px}
  .emi-controls .calculator-fields label{display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:13px;line-height:1.45;min-width:0}
  .emi-controls .calculator-fields label:first-child{grid-column:1/-1}
  .emi-controls .input-unit{width:100%;min-height:48px;font-size:13px;padding:9px 11px}
  .emi-controls .input-unit input{font-size:16px}
  .emi-controls .estimate-note{font-size:12px;margin-top:18px;line-height:1.6}
  .emi-summary .emi-result strong{font-size:36px}
  .emi-summary .repayment-detail{margin-top:20px}
  .emi-summary .repayment-detail>div{gap:14px;font-size:14px}
  .emi-summary>.button{margin-top:22px}
  .calculator-page .debt-calculator{padding:22px}
  .calculator-page .debt-calculator h2{font-size:23px}
  .calculator-page .debt-row{padding:16px;gap:16px 8px}
  .calculator-page .remove-debt{width:32px;min-height:44px}
  .calculator-page .debt-results{padding:18px;gap:23px 14px}
  .calculator-page .debt-results strong{font-size:21px}
  .calculator-page .eligibility-results{grid-template-columns:1fr;padding:18px;gap:20px 14px}
  .calculator-page .eligibility-results strong{font-size:21px}
  .calculator-page .debt-results>div:last-child{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px}
  .calculator-preview-grid{gap:26px}.calculator-card{padding:23px}
  .page-hero h1,.product-hero-grid h1{font-size:clamp(32px,9vw,42px)}
  .breadcrumbs{flex-wrap:wrap;row-gap:4px;line-height:1.5}
  .page-hero{padding-bottom:36px}.product-hero{padding-bottom:32px}
  .photo-product-hero{background-attachment:scroll}
  .enquiry-form{padding:23px}.form-grid{grid-template-columns:1fr;gap:16px}
  .form-grid .full{grid-column:auto}.form-grid label{font-size:14px}
  .enquiry-form h2,.enquiry-form h3{font-size:23px}
  .enquiry-form input,.enquiry-form select,.enquiry-form textarea{min-height:48px;font-size:16px}
  .consent{font-size:12px;gap:11px}.consent input{width:18px;height:18px;min-height:18px}
  .faq-item{padding:19px 0}.faq-item summary{font-size:17px;min-height:34px;line-height:1.4}
  .faq-item p{font-size:15px;line-height:1.75;padding-right:0}
  .footer-top{gap:28px 22px}.footer-top>div>a:not(.brand){font-size:14px;min-height:32px;margin-bottom:7px}
  .footer-brand{text-align:center}
  .footer-brand>.brand{margin-inline:auto}
  .footer-bottom{padding-bottom:96px}
  .footer-bottom>div{text-align:center;align-items:center}
  .mobile-cta{padding:10px 18px max(10px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 20px #16427d08}
  .mobile-cta>.button{min-height:44px;font-size:14px}
  body:has(.calculator-page) .mobile-cta,body:has(.contact-grid) .mobile-cta,body:has(input:focus) .mobile-cta,body:has(select:focus) .mobile-cta,body:has(textarea:focus) .mobile-cta,body.mobile-menu-open .mobile-cta{display:none}
  body:has(.calculator-page) .footer-bottom,body:has(.contact-grid) .footer-bottom{padding-bottom:28px}
  input,select,textarea{scroll-margin-block:110px 100px}
  .reveal-word{max-width:100%;overflow-wrap:anywhere;white-space:normal}
}
@media(max-width:480px){
  .product-grid{grid-template-columns:1fr;gap:12px}
  .product-card{display:grid;grid-template-columns:35px minmax(0,1fr);gap:8px 17px;padding:20px;min-height:0}
  .product-card .card-top{grid-column:1;grid-row:1/4;margin:2px 0 0;display:block}
  .product-card .card-top>span{display:block;margin-top:12px;font-size:12px}
  .product-card h3{grid-column:2;font-size:18px;line-height:1.35}
  .product-card p{grid-column:2;font-size:14px;line-height:1.6;margin:0}
  .product-card .card-bottom{grid-column:2;margin-top:7px;font-size:12px}
}
@media(max-width:360px){
  .container{width:calc(100% - 32px)}
  .header-cta{display:inline-flex;font-size:12px;padding:10px 12px}
  .editorial-hero-content h1{font-size:34px}
  .journey-map .journey-steps>li{padding:18px;gap:12px}.journey-steps h3{font-size:18px}
  .emi-controls,.emi-summary,.calculator-page .debt-calculator{padding:18px}
  .emi-controls .calculator-fields{grid-template-columns:1fr}.emi-controls .calculator-fields label:first-child{grid-column:auto}
  .calculator-page .debt-results{grid-template-columns:1fr}
  .calculator-fields label{gap:10px;font-size:13px}.calculator-fields .input-unit{width:138px}
  .emi-controls .calculator-fields .input-unit{width:100%}
  .full-value-grid{grid-template-columns:1fr}
}
@media(min-width:761px) and (max-width:1000px){
  .site-header .header-cta{display:none}
  .header-inner .menu-toggle{margin-left:auto;min-width:44px;min-height:44px}
  .site-header nav>a,.nav-dropdown summary{font-size:16px;min-height:48px}
  .site-header .dropdown-panel{padding:0 0 0 12px;border:0;border-left:1px solid var(--line);border-radius:0;margin-left:8px;width:calc(100% - 8px)}
  .site-header .dropdown-panel a{font-size:15px;padding:12px;min-height:46px}
  .site-header .dropdown-panel .icon{display:none}
}
/* v23 debt row */@media(max-width:560px){.debt-row{grid-template-columns:1fr 24px;gap:12px 10px;align-items:start}.debt-row label{grid-column:1/2}.debt-row label:nth-child(1),.debt-row label:nth-child(3),.debt-row label:nth-child(4){grid-column:1/2}.debt-row .remove-debt{grid-column:2;grid-row:1;align-self:start;height:auto;padding:4px}.debt-declared legend{font-size:10px;letter-spacing:.05em;padding:0 6px}}