/* ==========================================================================
   Travel With Plan Pro — Mobile refinements
   ========================================================================== */

@media (max-width:780px){
    .twp-container{padding:0 16px}
    .twp-tool{padding:44px 0}
    .twp-quick-start, .twp-safety, .twp-featured-gear, .twp-comparison, .twp-destinations, .twp-guides, .twp-faq-section, .twp-newsletter, .twp-trust{padding:44px 0}
    .twp-quiz, .twp-budget, .twp-priority, .twp-itinerary, .twp-packing, .twp-gear-finder, .twp-docs, .twp-readiness, .twp-expense, .twp-season{padding:20px}
    .twp-budget__result, .twp-priority__result{padding:18px}
    .twp-priority__grid, .twp-budget__row{grid-template-columns:1fr 1fr;gap:10px}
}

@media (max-width:540px){
    .twp-priority__grid, .twp-budget__row{grid-template-columns:1fr}
    .twp-quick-start__grid{grid-template-columns:repeat(2,1fr)}
    .twp-quick-card{padding:14px 8px}
    .twp-quick-card__icon{font-size:24px}
    .twp-quick-card__label{font-size:12.5px}
    .twp-product-box{padding:18px}
    .twp-product-box--hero{padding:20px}
    .twp-product-box__title{font-size:1.05rem}
    .twp-amazon-btn{width:100%;justify-content:center}
    .twp-btn--xl{width:100%}
    .twp-hero__ctas{flex-direction:column}
    .twp-hero__ctas .twp-btn{width:100%}
    .twp-quiz__options{grid-template-columns:1fr}
    .twp-itinerary__day-blocks{grid-template-columns:1fr}
    .twp-readiness__progress{width:100%;justify-content:space-between}
    .twp-readiness__progress::before{max-width:none}
    .twp-readiness__head{flex-direction:column;align-items:stretch;gap:10px}
}

/* Compare drawer mobile = bottom sheet */
@media (max-width:560px){
    .twp-compare-drawer{top:auto;bottom:0;width:100%;height:80vh;border-left:0;border-top:1px solid var(--twp-line);border-radius:18px 18px 0 0;transform:translateY(100%);box-shadow:0 -16px 40px rgba(15,31,61,.18)}
    .twp-compare-drawer.is-open{transform:translateY(0)}
}

/* Sticky CTA only on small screens, sits above iOS safe area */
@media (max-width:980px){
    .twp-sticky-cta{padding-bottom:env(safe-area-inset-bottom,0)}
}

/* Tap target sizing */
@media (max-width:780px){
    .twp-btn{min-height:44px}
    .twp-quick-card{min-height:88px}
    .twp-faq__item summary{min-height:48px}
    input,select,textarea{min-height:44px}
}

/* Disable hover-driven transforms on touch */
@media (hover:none){
    .twp-card:hover, .twp-product-box:hover, .twp-quick-card:hover, .twp-dest-card:hover, .twp-404__tile:hover{transform:none;box-shadow:none}
}
