/* R80 TABLET HARD RESET V8
   Loaded AFTER theme CSS. Tablet only: 761-1000px.
   Purpose: one predictable cascade layer for tablet instead of stacking fixes
   inside common.css. Desktop and phone are not touched. */
@media (min-width:761px) and (max-width:1000px){
  :root{
    --t-edge: clamp(22px,3.3vw,34px);
    --t-section: clamp(30px,4vw,40px);
    --t-line: 1px solid var(--line);
  }

  /* Header */
  .site-header{
    height:72px!important;
    margin-top:10px!important;
    top:8px!important;
    padding:0 16px!important;
  }
  .site-header .brand img{width:42px!important;height:42px!important;flex:0 0 42px!important}
  .site-header .brand strong{font-size:17px!important;white-space:nowrap!important}
  .site-header .header-actions{display:none!important}
  .site-header .menu-toggle{display:block!important;margin-left:auto!important;min-height:40px!important;padding:8px 13px!important}

  /* Global tablet vertical rhythm */
  .section-block{padding-top:var(--t-section)!important;padding-bottom:var(--t-section)!important}
  .page-services .page-hero,
  .page-catalog .page-hero,
  .page-portfolio .page-hero,
  .page-reviews .reviews-hero{padding-top:var(--t-edge)!important;padding-bottom:var(--t-edge)!important}

  /* HOME: mobile-like composition, scaled up gently. */
  .page-home .hero{
    grid-template-columns:minmax(0,1fr)!important;
    gap:20px!important;
    min-height:0!important;
    padding-top:30px!important;
    padding-bottom:0!important;
  }
  .page-home .hero-copy{text-align:center!important}
  .page-home .hero-location-line{width:max-content!important;max-width:100%!important;margin:0 auto 10px!important;justify-content:center!important}
  .page-home .hero-copy>p{max-width:720px!important;margin-inline:auto!important;text-align:center!important;line-height:1.55!important}
  .page-home .hero-buttons{justify-content:center!important;margin-top:24px!important}
  .page-home .hero-stats{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    margin-top:28px!important;
    padding:18px 0!important;
    border-top:var(--t-line)!important;
    border-bottom:var(--t-line)!important;
    gap:0!important;
  }
  .page-home .hero-stats>div{min-height:52px!important;padding:0 14px!important;border-right:var(--t-line)!important}
  .page-home .hero-stats>div:last-child{border-right:0!important}
  .page-home .hero-stats strong{font-size:16px!important;line-height:1.2!important}
  .page-home .hero-stats span{margin-top:5px!important;font-size:11px!important;line-height:1.35!important}

  .page-home .hero-visual{
    min-height:clamp(390px,49vw,455px)!important;
    margin-top:4px!important;
    overflow:visible!important;
  }
  .page-home .hero-visual .hero-logo{
    width:min(52vw,390px)!important;
    height:auto!important;
    max-width:390px!important;
    max-height:390px!important;
  }
  .page-home .hero-orbit{width:min(58vw,430px)!important;max-width:430px!important}
  .page-home .temperature-card.hot{left:5%!important;top:31%!important}
  .page-home .temperature-card.cold{right:5%!important;bottom:23%!important}

  .page-home .hero-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin-top:0!important;
    border-top:var(--t-line)!important;
    border-bottom:var(--t-line)!important;
  }
  .page-home .hero-benefits>div{min-height:64px!important;padding:14px 12px!important}
  .page-home .quality-promises{margin-top:16px!important;gap:12px!important}
  .page-home .quality-promises>div{min-height:92px!important;padding:18px!important}
  .page-home .quality-promises + .section-block{padding-top:34px!important}
  .page-home .process-layout{padding-top:34px!important;padding-bottom:34px!important;gap:26px!important}
  .page-home .process-list li{padding-top:18px!important;padding-bottom:18px!important}
  .page-home .external-reviews-section{padding-top:28px!important;padding-bottom:20px!important}
  .page-home .home-reviews-section.section-block{padding-top:34px!important;padding-bottom:34px!important}

  /* SERVICES: keep number + copy together, no poster-like centered layout. */
  .page-services .service-detail-list{padding:0!important}
  .page-services .service-detail{
    grid-template-columns:52px minmax(0,1fr)!important;
    column-gap:14px!important;
    row-gap:18px!important;
    padding-top:32px!important;
    padding-bottom:32px!important;
    align-items:start!important;
  }
  .page-services .detail-index{grid-column:1!important;grid-row:1!important;align-self:start!important;font-size:40px!important;line-height:1!important;text-align:left!important}
  .page-services .service-detail-copy{grid-column:2!important;grid-row:1!important;text-align:left!important}
  .page-services .service-detail aside{
    grid-column:2!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:minmax(120px,.75fr) minmax(115px,.65fr) minmax(170px,1fr)!important;
    align-items:center!important;
    gap:14px!important;
    min-height:0!important;
    padding:16px 18px!important;
  }
  .page-services .faq-section.section-block{padding-top:36px!important;padding-bottom:36px!important}
  .page-services .faq-grid{gap:12px!important}
  .page-services .faq-grid>details{min-height:0!important}

  /* CATALOG */
  .page-catalog .catalog-grid{padding-top:32px!important;padding-bottom:38px!important;gap:14px!important}
  .page-catalog .selection-layout{padding-top:34px!important;padding-bottom:34px!important}
  .page-catalog .selection-layout .selection-points{margin-top:22px!important;gap:10px 12px!important}
  .page-catalog .brand-note{margin-top:28px!important;margin-bottom:30px!important;padding-top:32px!important;padding-bottom:32px!important}
  .page-catalog .brand-note-media{align-self:start!important}

  /* REVIEWS: CTA uses the subtitle baseline, no artificial tall card. */
  .page-reviews .reviews-hero{
    grid-template-columns:minmax(0,1fr) auto!important;
    column-gap:22px!important;
    align-items:end!important;
  }
  .page-reviews .reviews-hero-copy{min-width:0!important}
  .page-reviews .reviews-hero h1{margin:12px 0 14px!important;font-size:clamp(44px,6vw,56px)!important;line-height:.98!important}
  .page-reviews .reviews-hero p{margin:0!important;max-width:620px!important;line-height:1.45!important}
  .page-reviews .reviews-hero>.button{align-self:end!important;justify-self:end!important;margin:0 0 1px!important;min-width:160px!important;white-space:nowrap!important}
  .page-reviews .reviews-section{padding-top:30px!important;padding-bottom:28px!important}
  .page-reviews .reviews-empty-state{
    min-height:330px!important;
    height:auto!important;
    padding:38px 22px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .page-reviews .reviews-empty-state h2{margin-bottom:14px!important}
  .page-reviews .reviews-empty-state>.button{margin-top:14px!important}

  /* Footer: four compact columns, same logic as desktop. */
  .site-footer{
    display:grid!important;
    grid-template-columns:minmax(250px,1.55fr) minmax(82px,.5fr) minmax(82px,.5fr) minmax(165px,.95fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:clamp(12px,2vw,22px)!important;
    row-gap:0!important;
    align-items:start!important;
    padding-top:24px!important;
    padding-bottom:18px!important;
  }
  .site-footer>.footer-brand-block{grid-column:1!important;grid-row:1!important;gap:3px!important;min-width:0!important}
  .site-footer>.footer-brand-block p{max-width:290px!important;margin:4px 0 0!important;font-size:10.5px!important;line-height:1.4!important}
  .site-footer .footer-location{margin-top:9px!important}
  .site-footer>.footer-menu-groups{display:contents!important}
  .site-footer .footer-menu-groups>.footer-menu-group:first-child{grid-column:2!important;grid-row:1!important}
  .site-footer .footer-menu-groups>.footer-menu-group:last-child{grid-column:3!important;grid-row:1!important}
  .site-footer .footer-menu-group{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;min-width:0!important}
  .site-footer .footer-menu-group h3{height:auto!important;min-height:0!important;margin:0 0 7px!important;font-size:8.5px!important;line-height:1.2!important}
  .site-footer .footer-menu-group a{display:block!important;height:auto!important;min-height:0!important;margin:0 0 9px!important;padding:0!important;font-size:10.5px!important;line-height:1.2!important}
  .site-footer .footer-menu-group a:last-child{margin-bottom:0!important}
  .site-footer>.footer-contact{grid-column:4!important;grid-row:1!important;justify-self:end!important;align-self:start!important;align-items:flex-end!important;width:auto!important;margin:0!important;padding-top:27px!important;gap:2px!important;text-align:right!important}
  .site-footer>.footer-contact a{font-size:16px!important;line-height:1.15!important;white-space:nowrap!important}
  .site-footer>.footer-contact span{font-size:9px!important;line-height:1.25!important;white-space:nowrap!important}

  .site-footer>.footer-legal{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
    min-width:0!important;
    margin-top:18px!important;
    padding-top:10px!important;
    padding-bottom:0!important;
    overflow:visible!important;
  }
  .site-footer>.footer-legal .footer-legal-line{
    display:block!important;
    width:100%!important;
    margin:0!important;
    white-space:nowrap!important;
    overflow:visible!important;
    font-size:clamp(7.6px,.88vw,8.7px)!important;
    line-height:1.25!important;
    letter-spacing:-.018em!important;
  }
  .site-footer>.footer-legal .footer-legal-copy,
  .site-footer>.footer-legal .footer-legal-item,
  .site-footer>.footer-legal .footer-legal-separator,
  .site-footer>.footer-legal .footer-legal-line a{
    display:inline!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    white-space:nowrap!important;
    font-size:inherit!important;
    line-height:inherit!important;
  }
  .site-footer>.footer-legal .footer-legal-item + .footer-legal-item::before{content:" · "!important;margin:0!important}
  .site-footer>.footer-legal .footer-legal-line a{font-weight:600!important}

  /* Short reviews page: footer is the actual page bottom, never a black tail after it. */
  body.page-reviews{min-height:100dvh!important;display:flex!important;flex-direction:column!important}
  body.page-reviews>main{flex:1 0 auto!important;display:flex!important;flex-direction:column!important}
  .page-reviews .reviews-section{flex:1 0 auto!important;display:flex!important;flex-direction:column!important}
  .page-reviews .reviews-empty-state{flex:1 0 auto!important}
  body.page-reviews>.site-footer{margin-top:0!important}
}

@media (min-width:761px) and (max-width:840px){
  .page-home .hero-visual{min-height:395px!important}
  .page-home .hero-visual .hero-logo{width:min(51vw,350px)!important;max-width:350px!important}
  .page-home .hero-orbit{width:min(57vw,390px)!important;max-width:390px!important}
  .page-home .temperature-card.hot{left:2.5%!important}
  .page-home .temperature-card.cold{right:2.5%!important}
  .page-services .service-detail aside{grid-template-columns:minmax(108px,.75fr) minmax(104px,.65fr) minmax(155px,1fr)!important;padding-inline:14px!important;gap:10px!important}
  .page-reviews .reviews-hero{column-gap:14px!important}
  .page-reviews .reviews-hero h1{font-size:43px!important}
  .page-reviews .reviews-hero>.button{min-width:145px!important;padding-inline:14px!important;font-size:12px!important}
  .site-footer{grid-template-columns:minmax(210px,1.42fr) minmax(70px,.48fr) minmax(70px,.48fr) minmax(145px,.9fr)!important;column-gap:9px!important}
  .site-footer>.footer-brand-block p{font-size:9.8px!important}
  .site-footer .footer-menu-group a{font-size:9.8px!important;margin-bottom:8px!important}
  .site-footer>.footer-contact{padding-top:24px!important}
  .site-footer>.footer-contact a{font-size:14.5px!important}
  .site-footer>.footer-contact span{font-size:8.2px!important}
  .site-footer>.footer-legal .footer-legal-line{font-size:7.1px!important;letter-spacing:-.025em!important}
}
