/* ============================================================
   RESPONSIVE.CSS — Tablet & Mobile breakpoints
   ============================================================ */

/* ----- Large screens fine-tune ----- */
@media (max-width:1200px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
}

/* ----- Tablet ----- */
@media (max-width:960px){
  .main-nav{display:none;}
  .hamburger{display:flex;flex-shrink:0;}
  .header-actions{gap:10px;}
  .header-actions .btn-primary{display:none;}
  .theme-toggle{flex-shrink:0;}
  .site-header .container{gap:12px;}
  .brand{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .hero .container{grid-template-columns:1fr;}
  .hero-copy{text-align:left;}
  .hero-copy p{max-width:100%;}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .contact-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:repeat(3,1fr);}
  .faq-columns{column-count:1;}
  .section{padding:72px 0;}
}

/* ----- Mobile ----- */
@media (max-width:640px){
  .container{padding:0 18px;}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}
  .field-row{grid-template-columns:1fr;}
  .checklist{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;gap:32px;row-gap:40px;}
  .footer-brand{grid-column:1 / -1;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
  .hero{padding:48px 0 72px;}
  .hero-actions{flex-direction:column;}
  .hero-actions .btn{width:100%;}
  .hero-trust{gap:20px;}
  .calc-card{padding:22px;}
  .section{padding:56px 0;}
  .section-head{margin-bottom:32px;}
  .cta-banner{padding:44px 24px;}
  .timeline{padding-left:32px;}
  .timeline-item::before{left:-32px;width:24px;height:24px;font-size:.64rem;}
  table.rates-table{min-width:0;}
  .rates-table-wrap{overflow-x:visible;border:none;border-radius:0;}
  table.rates-table{display:block;width:100%;}
  table.rates-table thead{display:none;}
  table.rates-table tbody{display:block;width:100%;}
  table.rates-table tr{
    display:block;width:100%;background:var(--white);border:1px solid var(--line);
    border-radius:var(--radius-sm);margin-bottom:10px;overflow:hidden;
  }
  table.rates-table tr:last-child{margin-bottom:0;}
  table.rates-table td{
    display:flex;justify-content:space-between;align-items:center;gap:12px;
    width:100%;padding:12px 16px;border-bottom:1px solid var(--line);font-size:.88rem;text-align:right;
  }
  table.rates-table td:last-child{border-bottom:none;}
  table.rates-table td::before{
    content:attr(data-label);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.05em;
    text-transform:uppercase;color:var(--ink-500);text-align:left;flex-shrink:0;
  }
  .back-to-top{right:16px;bottom:16px;width:44px;height:44px;}
  .brand{font-size:1.05rem;}
  .brand .seal{width:30px;height:30px;}
}

@media (max-width:400px){
  .hero-trust{flex-direction:column;gap:14px;}
  .currency-price-row{grid-template-columns:78px 1fr;gap:6px;}
  .field input[type="text"],.field input[type="number"],.field select{padding:13px 10px;font-size:.92rem;}
  .field input.has-prefix{padding-left:28px;}
}

/* ----- Reduced motion ----- */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

/* ----- Print ----- */
@media print{
  .site-header,.mobile-nav,.back-to-top,.hero-actions,.hamburger,.theme-toggle,
  .calc-actions,.result-tools,.site-footer,.cta-banner,.faq-search,
  .testimonial-slider,.slider-dots,section:not(.print-section){display:none !important;}
  body{background:#fff;color:#000;}
  .calc-results{display:block !important;}
}
