/* CONCRETTA V428 — main product/brand responsive safety.
   Scope is opt-in via body.ct-product-responsive-v428. Desktop >=1181px unchanged. */
body.ct-product-responsive-v428{overflow-x:hidden;}
body.ct-product-responsive-v428 *,body.ct-product-responsive-v428 *::before,body.ct-product-responsive-v428 *::after{box-sizing:border-box;}
body.ct-product-responsive-v428 :where(img,video,iframe,svg){max-width:100%;}
body.ct-product-responsive-v428 :where(.micro158-shell,.micro151-wrap,.micro158-body,.micro158-media,.micro151-copy,.micro151-story-copy,.micro151-floor-copy,.micro151-materials-copy,.cb119-wrap,.cb119-hero-copy,.cb119-hero-media,.cb119-story-copy,.cb119-architecture-copy){min-width:0;}
body.ct-product-responsive-v428 :where(h1,h2,h3,p,a,span,strong){overflow-wrap:break-word;}

/* Micro/product family */
@media (min-width:701px) and (max-width:1180px){
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-shell,
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-wrap{width:calc(100% - 56px);max-width:1120px;margin-left:auto;margin-right:auto;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-intro{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:36px;align-items:start;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero{padding-top:max(112px,calc(92px + env(safe-area-inset-top)));}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero h1{font-size:clamp(44px,6vw,58px);max-width:100%;}
  body.ct-product-responsive-v428.ct-micro-product-page :where(.micro151-intro-grid,.micro151-story-grid,.micro151-floor,.micro151-materials-grid,.micro151-process-grid){gap:36px;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid article:nth-child(n){border-right:1px solid var(--m150-line);border-bottom:1px solid var(--m150-line);padding-left:20px;padding-right:20px;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid article:nth-child(2n){border-right:0;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid article:last-child{border-bottom:0;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-gallery-grid{grid-template-columns:1.15fr .85fr!important;grid-template-rows:repeat(2,240px)!important;}
}

@media (max-width:700px){
  body.ct-product-responsive-v428{overflow-x:hidden!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-shell,
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-wrap{width:calc(100% - 32px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero{padding-top:max(96px,calc(78px + env(safe-area-inset-top)))!important;padding-bottom:28px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-intro{display:grid!important;grid-template-columns:1fr!important;gap:20px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero h1{font-size:clamp(34px,10vw,43px)!important;line-height:1!important;max-width:100%!important;letter-spacing:-.04em!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-sub{font-size:14px!important;line-height:1.6!important;max-width:100%!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-actions{display:flex!important;flex-wrap:wrap!important;gap:12px 18px!important;align-items:flex-start!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-media{min-height:0!important;height:auto!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-media img{width:100%!important;height:auto!important;max-height:none!important;object-fit:cover;}
  body.ct-product-responsive-v428.ct-micro-product-page :where(.micro151-intro-grid,.micro151-story-grid,.micro151-floor,.micro151-materials-grid,.micro151-process-grid,.micro156-ws-bridge-line){grid-template-columns:1fr!important;gap:26px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page :where(.micro151-story-media,.micro151-floor-media,.micro151-process-media){min-height:0!important;height:auto!important;}
  body.ct-product-responsive-v428.ct-micro-product-page :where(.micro151-story-media,.micro151-floor-media,.micro151-process-media) img{width:100%!important;height:auto!important;min-height:0!important;object-fit:cover;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid{grid-template-columns:1fr!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro153-trust-grid article{padding:20px 0!important;border-right:0!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-tech-grid{grid-template-columns:1fr!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-invite-actions,
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-inline-links,
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-gallery-links{display:flex!important;flex-wrap:wrap!important;gap:12px 18px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro151-button{max-width:100%;white-space:normal;text-align:center;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-gallery-grid{grid-template-columns:1fr!important;grid-template-rows:none!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-gallery-grid figure,
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-gallery-grid .micro151-gallery-main{grid-row:auto!important;min-height:0!important;height:auto!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-gallery-grid img{width:100%!important;height:auto!important;min-height:0!important;object-fit:cover;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-faq-list summary{grid-template-columns:30px minmax(0,1fr) 22px!important;gap:10px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro155-faq-answer{padding-left:40px!important;padding-right:8px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page :where(input,select,textarea){max-width:100%;font-size:16px;}
}

/* Co-Wall / Co-Stone brand family using cb119 hero system. */
@media (min-width:701px) and (max-width:1180px){
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-wrap{width:calc(100% - 56px);max-width:1120px;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero{min-height:76svh;height:auto;padding-top:max(116px,calc(96px + env(safe-area-inset-top)));padding-bottom:56px;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-layout{grid-template-columns:1fr;gap:28px;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-rail{display:none;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-copy{max-width:680px;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero h1{font-size:clamp(46px,6.5vw,62px);max-width:100%;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cw133-series-grid,.cs146-series-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media (max-width:700px){
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-wrap{width:auto!important;max-width:none!important;margin-left:16px!important;margin-right:16px!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero{min-height:100svh;min-height:100dvh;height:auto!important;padding-top:max(104px,calc(84px + env(safe-area-inset-top)))!important;padding-bottom:max(44px,calc(30px + env(safe-area-inset-bottom)))!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-layout{grid-template-columns:1fr!important;gap:20px!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-rail{display:none!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero h1{font-size:clamp(36px,11vw,48px)!important;line-height:1!important;max-width:100%!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-copy{font-size:14.5px!important;line-height:1.62!important;max-width:100%!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-actions{display:flex!important;flex-wrap:wrap!important;gap:12px 18px!important;align-items:flex-start!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cb119-intro-grid,.cb119-story-grid,.cb119-architecture-grid,.cw133-seo-grid,.cs146-seo-grid){grid-template-columns:1fr!important;gap:28px!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cw133-series-grid,.cs146-series-grid){grid-template-columns:1fr!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cb119-story-media,.cb119-architecture-media){min-height:0!important;height:auto!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cb119-story-media,.cb119-architecture-media) img{width:100%!important;height:auto!important;min-height:0!important;object-fit:cover;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cw133-docs,.cs146-docs){flex-direction:column!important;align-items:stretch!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) :where(.cw133-docs a,.cs146-docs a){justify-content:center!important;}
}

/* Short landscape phones: remove portrait-height forcing. */
@media (max-width:900px) and (max-height:520px) and (orientation:landscape){
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero{padding-top:max(82px,calc(64px + env(safe-area-inset-top)))!important;padding-bottom:18px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-intro{grid-template-columns:minmax(0,1.05fr) minmax(220px,.95fr)!important;gap:24px!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-hero h1{font-size:clamp(30px,6vw,42px)!important;}
  body.ct-product-responsive-v428.ct-micro-product-page .micro158-media{align-self:start;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero{min-height:0!important;height:auto!important;padding-top:max(82px,calc(64px + env(safe-area-inset-top)))!important;padding-bottom:max(24px,calc(18px + env(safe-area-inset-bottom)))!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero h1{font-size:clamp(32px,7vw,44px)!important;}
  body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero-copy{font-size:13.5px!important;line-height:1.5!important;}
}

@supports (-webkit-touch-callout:none){
  @media (max-width:700px){
    body.ct-product-responsive-v428.ct-concretta-page:not(.ct-micro-product-page) .cb119-hero{min-height:100svh;}
  }
}
