/* CONCRETTA V424 — homepage mobile composition.
   Mobile-only final layer; desktop/tablet geometry stays untouched. */
@media (max-width:700px){
  .ct-home{overflow-x:hidden;}

  /* Hero: one calm editorial block, no competing legacy offsets. */
  .ct-home section#header2-22c.cid-smXf3eCssW{
    min-height:100svh!important;
    height:100svh!important;
    background-position:47% center!important;
  }
  .ct-home #header2-22c::before{
    width:100%!important;
    background:linear-gradient(180deg,rgba(12,10,9,.08) 0%,rgba(12,10,9,.10) 34%,rgba(12,10,9,.58) 100%)!important;
  }
  .ct-home #header2-22c::after{
    height:118px!important;
    background:linear-gradient(180deg,rgba(236,231,224,0) 0%,rgba(229,222,214,.30) 56%,rgba(241,236,229,.94) 100%)!important;
  }
  .ct-home #header2-22c .container{
    width:100%!important;
    max-width:none!important;
    min-height:100%!important;
    display:flex!important;
    align-items:flex-end!important;
    padding:76px 20px 64px!important;
  }
  .ct-home #header2-22c .row{width:100%!important;margin:0!important;}
  .ct-home #header2-22c .mbr-white{
    width:100%!important;
    max-width:390px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    text-align:left!important;
  }
  .ct-home #header2-22c .mbr-white::before{display:none!important;}
  .ct-home #header2-22c .concretta-hero-kicker{
    display:flex!important;
    width:max-content!important;
    max-width:100%!important;
    margin:0 0 15px!important;
    color:rgba(245,236,226,.80)!important;
    font-size:9px!important;
    line-height:1.25!important;
    letter-spacing:.20em!important;
    white-space:normal!important;
  }
  .ct-home #header2-22c .concretta-hero-kicker::after{
    width:26px!important;
    flex-basis:26px!important;
    background:rgba(220,197,174,.62)!important;
  }
  .ct-home #header2-22c .concretta-hero-title{
    max-width:340px!important;
    margin:0!important;
    font-size:clamp(38px,10.8vw,44px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    text-wrap:balance;
  }
  .ct-home #header2-22c .concretta-hero-subtitle{
    max-width:340px!important;
    margin:17px 0 0!important;
    color:rgba(249,243,236,.86)!important;
    font-size:13.5px!important;
    line-height:1.58!important;
  }
  .ct-home #header2-22c .ct-v58-hero-actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:7px!important;
    margin-top:21px!important;
  }
  .ct-home #header2-22c .ct-v58-hero-link{
    min-height:34px!important;
    gap:9px!important;
    padding-bottom:4px!important;
    font-size:12.5px!important;
    line-height:1.2!important;
  }

  /* Brands: remove oversized card stack and restore clear hierarchy. */
  .ct-home .concretta-premium-brands{
    padding:48px 16px 58px!important;
    background:linear-gradient(180deg,#f5f1ea 0%,#eee7dd 100%)!important;
  }
  .ct-home .concretta-premium-brands .cp-shell{
    width:100%!important;
    margin:0!important;
    gap:30px!important;
  }
  .ct-home .concretta-premium-brands .cp-intro{padding:0!important;}
  .ct-home .concretta-premium-brands .cp-kicker{
    margin:0 0 18px!important;
    font-size:9px!important;
    letter-spacing:.22em!important;
  }
  .ct-home .concretta-premium-brands .cp-kicker::after{margin-top:13px!important;width:34px!important;}
  .ct-home .concretta-premium-brands .cp-heading{
    max-width:330px!important;
    font-size:34px!important;
    line-height:1.04!important;
  }
  .ct-home .concretta-premium-brands .cp-copy{
    max-width:335px!important;
    margin-top:15px!important;
    font-size:13.5px!important;
    line-height:1.62!important;
  }
  .ct-home .concretta-premium-brands .cp-grid{display:block!important;}
  .ct-home .concretta-premium-brands .cp-card{
    min-height:286px!important;
    margin-top:12px!important;
    border-radius:12px!important;
    box-shadow:none!important;
  }
  .ct-home .concretta-premium-brands .cp-card:first-child{margin-top:0!important;}
  .ct-home .concretta-premium-brands .cp-card-body,
  .ct-home .concretta-premium-brands .cp-card:nth-child(2) .cp-card-body{
    min-height:286px!important;
    display:flex!important;
    flex-direction:column!important;
    padding:20px 19px 18px!important;
  }
  .ct-home .concretta-premium-brands .cp-number{
    margin:0!important;
    font-size:9px!important;
    letter-spacing:.16em!important;
  }
  .ct-home .concretta-premium-brands .cp-number::after{width:30px!important;}
  .ct-home .concretta-premium-brands .cp-title{
    margin-top:auto!important;
    font-size:27px!important;
    line-height:1.02!important;
  }
  .ct-home .concretta-premium-brands .cp-subtitle,
  .ct-home .concretta-premium-brands .cp-card:nth-child(2) .cp-subtitle,
  .ct-home .concretta-premium-brands .cp-card:nth-child(3) .cp-subtitle,
  .ct-home .concretta-premium-brands .cp-card:nth-child(4) .cp-subtitle{
    max-width:300px!important;
    margin:8px 0 14px!important;
    font-size:12.5px!important;
    line-height:1.42!important;
  }
  .ct-home .concretta-premium-brands .cp-button{
    font-size:11.5px!important;
    padding-bottom:5px!important;
  }
  .ct-home .concretta-premium-brands .cp-note{display:none!important;}

  /* Main editorial rhythm: consistent gutter and less dead space. */
  .ct-home .cd-wrap{width:calc(100% - 32px)!important;}
  .ct-home .cd-editorial-intro{padding:68px 0 70px!important;}
  .ct-home .cd-editorial-intro .cd-wrap{gap:23px!important;}
  .ct-home .cd-intro-label{padding-top:0!important;font-size:9px!important;}
  .ct-home .cd-intro-label i{width:34px!important;margin:14px 0!important;}
  .ct-home .cd-intro-main h2{font-size:34px!important;line-height:1.05!important;}
  .ct-home .cd-intro-main p{margin-top:18px!important;font-size:13.5px!important;line-height:1.68!important;}
  .ct-home .cd-intro-meta{padding-top:22px!important;gap:14px!important;}
  .ct-home .cd-intro-meta strong{font-size:20px!important;}
  .ct-home .cd-intro-meta span{font-size:11px!important;}

  .ct-home .cd-applications{padding:68px 0 74px!important;}
  .ct-home .cd-applications .cd-section-head{margin-bottom:26px!important;}
  .ct-home .cd-applications .cd-section-head h2{font-size:34px!important;line-height:1.04!important;}
  .ct-home .cd-section-head>p{margin-top:13px!important;font-size:13px!important;line-height:1.62!important;}
  .ct-home .cd-app-grid{display:block!important;}
  .ct-home .cd-app-card{
    min-height:272px!important;
    margin-top:10px!important;
    border-radius:12px!important;
    box-shadow:none!important;
  }
  .ct-home .cd-app-card:first-child{margin-top:0!important;}
  .ct-home .cd-app-copy{left:18px!important;right:18px!important;bottom:17px!important;}
  .ct-home .cd-app-copy h3{font-size:22px!important;}
  .ct-home .cd-app-copy p{font-size:11.5px!important;}

  .ct-home .cd-process{padding:68px 0 72px!important;}
  .ct-home .cd-process-head{gap:14px!important;padding-bottom:28px!important;}
  .ct-home .cd-process-head h2{font-size:34px!important;line-height:1.04!important;}
  .ct-home .cd-process-head p{font-size:13px!important;line-height:1.62!important;}
  .ct-home .cd-process-grid article{padding:26px 0!important;}
  .ct-home .cd-process-grid h3{margin:20px 0 10px!important;font-size:21px!important;}
  .ct-home .cd-process-grid p{font-size:12.5px!important;line-height:1.62!important;}

  .ct-home .cd-manifesto{padding:68px 0 72px!important;}
  .ct-home .cd-manifesto blockquote{font-size:34px!important;line-height:1.08!important;}

  .ct-home .cd-surface-finder{padding:62px 0 66px!important;}
  .ct-home .cd-surface-finder-head{margin-bottom:22px!important;}
  .ct-home .cd-surface-finder-head h2{font-size:33px!important;line-height:1.05!important;}
  .ct-home .cd-surface-finder-grid{grid-template-columns:1fr!important;border-top:1px solid rgba(66,57,49,.12)!important;}
  .ct-home .cd-surface-finder-grid a,
  .ct-home .cd-surface-finder-grid a:last-child{
    grid-column:auto!important;
    min-height:92px!important;
    padding:17px 4px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(66,57,49,.12)!important;
    background:transparent!important;
  }
  .ct-home .cd-surface-finder-grid a:last-child{border-bottom:0!important;}
  .ct-home .cd-surface-finder-grid a>span{margin-bottom:9px!important;}
  .ct-home .cd-surface-finder-grid strong{font-size:19px!important;}
  .ct-home .cd-surface-finder-grid b{top:18px!important;right:4px!important;}

  .ct-home .cd-journal{padding:66px 0 72px!important;}
  .ct-home .cd-journal-head h2{font-size:33px!important;}
  .ct-home .cd-journal .cd-journal-grid{gap:25px!important;}
  .ct-home .cd-journal .cd-journal-card:nth-child(n) .cd-journal-img{border-radius:10px!important;}

  .ct-home .cd-closing-statement{padding:62px 0 68px!important;}
  .ct-home .cd-closing-statement h2{font-size:33px!important;line-height:1.06!important;}
}

@media (max-width:390px){
  .ct-home #header2-22c .container{padding-left:16px!important;padding-right:16px!important;}
  .ct-home #header2-22c .concretta-hero-title{font-size:37px!important;}
  .ct-home #header2-22c .concretta-hero-subtitle{font-size:13px!important;}
  .ct-home .concretta-premium-brands{padding-left:13px!important;padding-right:13px!important;}
  .ct-home .concretta-premium-brands .cp-heading{font-size:32px!important;}
  .ct-home .cd-wrap{width:calc(100% - 26px)!important;}
}


/* CONCRETTA V425 — iPhone/Safari stabilization + dedicated tablet composition.
   Desktop >=992px intentionally receives no rule from this block. */
@media (min-width:701px) and (max-width:991px){
  .ct-home{overflow-x:clip;}
  .ct-home section#header2-22c.cid-smXf3eCssW{
    height:auto!important;
    min-height:86svh!important;
    background-position:50% center!important;
  }
  .ct-home #header2-22c .container{
    width:100%!important;
    max-width:none!important;
    min-height:86svh!important;
    display:flex!important;
    align-items:flex-end!important;
    padding:104px clamp(38px,6vw,58px) 72px!important;
  }
  .ct-home #header2-22c .row{width:100%!important;margin:0!important;}
  .ct-home #header2-22c .mbr-white{
    width:min(570px,78vw)!important;
    max-width:570px!important;
    margin:0!important;
    padding:0 0 0 24px!important;
    transform:none!important;
  }
  .ct-home #header2-22c .mbr-white::before{height:108px!important;}
  .ct-home #header2-22c .concretta-hero-title{max-width:540px!important;font-size:clamp(48px,6.4vw,58px)!important;line-height:.98!important;}
  .ct-home #header2-22c .concretta-hero-subtitle{max-width:500px!important;margin-top:22px!important;font-size:14px!important;line-height:1.65!important;}
  .ct-home #header2-22c::after{height:170px!important;}

  .ct-home .concretta-premium-brands{padding:68px 28px 76px!important;}
  .ct-home .concretta-premium-brands .cp-shell{display:grid!important;grid-template-columns:1fr!important;min-height:0!important;gap:32px!important;width:100%!important;}
  .ct-home .concretta-premium-brands .cp-intro{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:20px 42px!important;min-height:0!important;padding:0 4px!important;}
  .ct-home .concretta-premium-brands .cp-kicker{grid-column:1/-1!important;margin-bottom:2px!important;}
  .ct-home .concretta-premium-brands .cp-heading{max-width:440px!important;font-size:clamp(38px,5vw,46px)!important;}
  .ct-home .concretta-premium-brands .cp-copy{max-width:410px!important;margin-top:3px!important;align-self:end!important;font-size:14px!important;}
  .ct-home .concretta-premium-brands .cp-intro-bottom{display:none!important;}
  .ct-home .concretta-premium-brands .cp-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:320px 276px!important;
    gap:14px!important;
    min-height:0!important;
  }
  .ct-home .concretta-premium-brands .cp-card{min-height:0!important;margin:0!important;border-radius:15px!important;}
  .ct-home .concretta-premium-brands .cp-card:nth-child(1){grid-column:1!important;grid-row:1!important;}
  .ct-home .concretta-premium-brands .cp-card:nth-child(2){grid-column:2!important;grid-row:1!important;}
  .ct-home .concretta-premium-brands .cp-card:nth-child(3){grid-column:1!important;grid-row:2!important;}
  .ct-home .concretta-premium-brands .cp-card:nth-child(4){grid-column:2!important;grid-row:2!important;}
  .ct-home .concretta-premium-brands .cp-card-body,
  .ct-home .concretta-premium-brands .cp-card:nth-child(2) .cp-card-body{min-height:100%!important;padding:24px 22px 20px!important;}
  .ct-home .concretta-premium-brands .cp-title{font-size:27px!important;}
  .ct-home .concretta-premium-brands .cp-subtitle{min-height:0!important;max-width:92%!important;font-size:12.5px!important;line-height:1.45!important;}

  .ct-home .cd-wrap{width:calc(100% - 56px)!important;max-width:1120px!important;}
  .ct-home .cd-editorial-intro,.ct-home .cd-applications,.ct-home .cd-process,.ct-home .cd-manifesto,.ct-home .cd-journal{padding-top:82px!important;padding-bottom:86px!important;}
  .ct-home .cd-app-grid{grid-template-columns:1fr 1fr!important;grid-template-rows:350px 270px 270px!important;gap:14px!important;}
  .ct-home .cd-app-card{border-radius:14px!important;}
  .ct-home .cd-surface-finder{padding:76px 0 80px!important;}
  .ct-home .cd-surface-finder-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .ct-home .cd-surface-finder-grid a{min-height:126px!important;padding:21px 20px 18px!important;border-bottom:1px solid rgba(66,57,49,.12)!important;}
  .ct-home .cd-surface-finder-grid a:nth-child(3n){border-right:0!important;}
  .ct-home .cd-journal .cd-journal-grid{grid-template-columns:1fr 1fr!important;gap:30px 18px!important;}
}

@media (max-width:700px){
  .ct-home{overflow-x:hidden!important;}
  .ct-home section#header2-22c.cid-smXf3eCssW{
    height:auto!important;
    min-height:100svh!important;
    min-height:100dvh!important;
    overflow:hidden!important;
  }
  .ct-home #header2-22c .container{
    min-height:100svh!important;
    min-height:100dvh!important;
    height:auto!important;
    padding-top:max(84px,calc(68px + env(safe-area-inset-top)))!important;
    padding-left:max(20px,env(safe-area-inset-left))!important;
    padding-right:max(20px,env(safe-area-inset-right))!important;
    padding-bottom:max(64px,calc(48px + env(safe-area-inset-bottom)))!important;
    box-sizing:border-box!important;
  }
  .ct-home #header2-22c .row,
  .ct-home #header2-22c .mbr-white,
  .ct-home #header2-22c .concretta-hero-kicker,
  .ct-home #header2-22c .concretta-hero-title,
  .ct-home #header2-22c .concretta-hero-subtitle,
  .ct-home #header2-22c .ct-v58-hero-actions{min-width:0!important;box-sizing:border-box!important;}
  .ct-home #header2-22c .concretta-hero-title,
  .ct-home #header2-22c .concretta-hero-subtitle{overflow-wrap:anywhere!important;word-break:normal!important;}
  .ct-home img,.ct-home video,.ct-home iframe{max-width:100%;}
  .ct-home .concretta-premium-brands .cp-card-body,
  .ct-home .cd-app-copy,
  .ct-home .cd-process-grid article,
  .ct-home .cd-journal-card{min-width:0!important;}
}

/* iPhone Safari: stable viewport and no compositing overlap while browser bars expand/collapse. */
@supports (-webkit-touch-callout:none){
  @media (max-width:700px){
    .ct-home section#header2-22c.cid-smXf3eCssW,
    .ct-home #header2-22c .container{min-height:100svh!important;}
    .ct-home #header2-22c .container{height:auto!important;}
    .ct-home #header2-22c .mbr-white{transform:none!important;-webkit-transform:none!important;}
  }
}

/* Short iPhones / landscape browser chrome: content wins over fixed hero height. */
@media (max-width:700px) and (max-height:700px){
  .ct-home #header2-22c .container{padding-top:max(78px,calc(64px + env(safe-area-inset-top)))!important;padding-bottom:max(34px,calc(24px + env(safe-area-inset-bottom)))!important;}
  .ct-home #header2-22c .concretta-hero-kicker{margin-bottom:10px!important;}
  .ct-home #header2-22c .concretta-hero-title{font-size:34px!important;}
  .ct-home #header2-22c .concretta-hero-subtitle{margin-top:12px!important;font-size:12.5px!important;line-height:1.5!important;}
  .ct-home #header2-22c .ct-v58-hero-actions{margin-top:14px!important;}
}


/* Landscape touch-tablet rhythm: no effect on mouse/trackpad desktop. */
@media (min-width:992px) and (max-width:1180px) and (hover:none) and (pointer:coarse){
  .ct-home section#header2-22c.cid-smXf3eCssW{height:auto!important;min-height:82svh!important;}
  .ct-home #header2-22c .container{min-height:82svh!important;padding-top:96px!important;padding-bottom:70px!important;}
  .ct-home #header2-22c .mbr-white{transform:none!important;}
  .ct-home .concretta-premium-brands{padding-top:54px!important;padding-bottom:64px!important;}
  .ct-home .cd-wrap{width:calc(100% - 64px)!important;}
}
