/* Responsive refinements: phones, tablets and laptop viewports. */
html{scroll-padding-top:150px}
section[id],#calcCard{scroll-margin-top:150px}
.hero-in{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(24px,4vw,56px)}
.hero-in>*,.cp-box>*,.about-in>*,.pr-card{min-width:0}
.hero h1{font-size:clamp(38px,4vw,52px)}
.hero-title-mobile{display:none}
.cp-box{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;padding:clamp(28px,4vw,56px)}
.cp-row a{min-width:0;overflow-wrap:anywhere}
.cp-phone{font-size:clamp(24px,2.5vw,32px)}
.f-vals{flex-wrap:wrap;gap:12px 20px}
.cc-form input,.modal-form input{min-width:0;width:100%;font-size:16px}
button,a,input{touch-action:manipulation}
button{line-height:1.45}
.modal{padding:24px 20px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(8px)}
.modal-card{max-height:none}
.modal-x{width:44px;height:44px;top:8px;right:8px}
.modal-t{padding-right:30px}
header{-webkit-backdrop-filter:blur(20px)}
.calc-card{-webkit-backdrop-filter:blur(12px)}
.hook-pill{-webkit-backdrop-filter:blur(6px)}
.btn-g{justify-content:center;text-align:center}
@media(max-width:1250px){
  nav{display:none}
  .h-in{gap:16px}
  .hero h1{font-size:42px}
}
@media(max-width:1024px){
  .hero-in,.cp-box{grid-template-columns:minmax(0,1fr)}
  .hero-in{gap:32px}
  .calc-card{width:100%;max-width:680px;justify-self:center}
  .hero-copy{max-width:760px}
  .cp-rows{max-width:100%}
  .hero h1{font-size:40px}
}
@media(max-width:768px){
  html{scroll-padding-top:20px}
  section[id],#calcCard{scroll-margin-top:20px}
  body{background-attachment:scroll;padding-bottom:calc(84px + env(safe-area-inset-bottom))}
  header{position:relative}
  .topbar{padding:8px 16px;font-size:9px;line-height:1.5;letter-spacing:.6px}
  .h-in{padding:12px 16px;gap:12px}
  .brand{gap:10px;min-width:0}
  .brand svg{width:30px;height:36px}
  .brand-name{font-size:15px;letter-spacing:2px}
  .brand-tag{display:none}
  .h-right .btn-o{padding:10px 12px;min-height:44px;max-width:120px;font-size:9px;letter-spacing:1px}
  .hero{padding:24px 0 40px;min-height:0}
  .hero-in{padding:0 16px;gap:16px}
  .hero-copy{display:contents}
  .hero-city{font-size:9px;gap:6px;letter-spacing:1px;margin:0}
  .hook-pill{font-size:9px;letter-spacing:.6px;padding:8px 10px;margin:0;line-height:1.5}
  .hook-pill i{flex-shrink:0}
  .hero-title-desktop{display:none}
  .hero-title-mobile{display:inline}
  .hero h1{font-size:clamp(29px,8vw,36px);line-height:1.12;margin:0}
  .hero-btns{gap:8px;margin:0;display:grid;grid-template-columns:1fr 1fr}
  .hero-btns .btn-g{grid-column:1/-1;padding:13px 16px;min-height:48px;font-size:11px;letter-spacing:1px}
  .hero-btns .btn-o{padding:11px 8px;font-size:10px;letter-spacing:.3px;min-height:44px;text-align:center}
  .calc-card{order:1;padding:24px 16px;margin-top:4px}
  .hero-sub,.hero-hooks,.hero-trust{order:2;margin:0}
  .hero-sub{font-size:14px;line-height:1.65;margin-top:8px}
  .hero-hooks li{font-size:13px}
  .hero-trust{gap:12px 18px;padding-top:4px}
  .ht{font-size:10px;letter-spacing:.7px}
  .cc-title{font-size:24px;line-height:1.25}
  .cc-sub,.cc-label{font-size:11px;letter-spacing:.8px}
  .cc-types{grid-template-columns:1fr;gap:6px}
  .cc-type{min-height:48px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left}
  .cc-type-t{font-size:13px;line-height:1.3}
  .cc-type-p{font-size:12px;margin:0;white-space:nowrap}
  .cc-extras{grid-template-columns:1fr}
  .cc-extra{min-height:48px;font-size:13px}
  input[type=range]{height:8px;margin:18px 0 12px}
  input[type=range]::-webkit-slider-thumb{width:28px;height:28px}
  input[type=range]::-moz-range-thumb{width:22px;height:22px}
  .cc-form{grid-template-columns:1fr}
  .submit{font-size:11px;letter-spacing:1px;min-height:48px}
  .res-v{font-size:clamp(25px,7vw,32px)}
  .fears,.process,.compare,.prices,.reviews,.about,.faq{padding:56px 0}
  .contact{padding-top:56px}
  .fears-grid,.proc-grid,.cmp-grid,.rev-grid{margin-top:32px}
  .pr-grid{gap:24px}
  .s-title,.cp-box h2{font-size:30px;line-height:1.2}
  .s-label{font-size:10px;letter-spacing:2px}
  .fear,.proc-step,.cmp-col,.rev{padding:24px 20px}
  .contact-panel{padding:0 16px}
  .cp-box{padding:28px 20px;gap:24px}
  .cp-box .btn-g{width:100%;padding:14px 12px;letter-spacing:1px}
  .cp-row{gap:10px;font-size:14px;min-height:44px}
  .cp-row a{line-height:1.5}
  .cp-phone{font-size:clamp(22px,6.5vw,28px);white-space:normal}
  .f-top{padding:32px 20px 0;margin-top:36px}
  .f-copy{padding:0 20px;line-height:1.7}
  .pr-row{gap:8px;align-items:flex-start}
  .pr-row .n{min-width:0}
  .pr-row .v{white-space:normal;flex-shrink:0;max-width:48%}
  .pr-head .btn-o,.cta-band .btn-g,.pr-cta .btn-g,.b2b .btn-g{width:100%;letter-spacing:1px;padding:14px 12px}
  .sticky{padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:8px;-webkit-backdrop-filter:blur(14px)}
  .sticky a{font-size:14px;padding:0;min-height:44px;display:flex;align-items:center;justify-content:center}
  .sticky button{font-size:10px;letter-spacing:.8px;min-height:48px;padding:10px 12px}
  .modal{padding-left:12px;padding-right:12px}
  .modal-card{padding:48px 20px 24px}
  .modal-t{font-size:25px}
  .modal-form input{min-height:48px}
  .srv-list{border-left:0;padding-left:0}
}
@media(max-width:360px){
  .brand-name{font-size:13px;letter-spacing:1.5px}
  .brand-tag{max-width:125px}
  .h-right .btn-o{max-width:100px}
  .cc-types{grid-template-columns:1fr}
  .cc-type{min-height:52px;flex-direction:row;align-items:center;gap:8px}
  .cc-type-p{margin:0}
  .sticky a{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}
