/* Coast Graph v0.54.17 — responsive Tide composition
   Wide desktop (>=1440px) is intentionally left to the approved Tide CSS.
   This file owns laptop, tablet and mobile breakpoint behaviour only.
*/

/* ------------------------------------------------------------------
   Navigation ownership
   ------------------------------------------------------------------ */
@media (max-width:599px){
  .emcg-tide-v3 > .emcg-tide-product-nav-v3{display:block!important;}
  .emcg-tide-v3 .emcg-tide-mast-actions{display:none!important;}
}

@media (min-width:600px){
  .emcg-tide-v3 > .emcg-tide-product-nav-v3{display:none!important;}
  .emcg-tide-v3 .emcg-tide-eyebrow{display:none!important;}
  .emcg-tide-v3 .emcg-tide-mast-v3,
  .emcg-tide-v3 .emcg-tide-mast-v3::before,
  .emcg-tide-v3 .emcg-tide-mast-v3::after{border-top:0!important;}

  /* Search is icon-led outside mobile. */
  .emcg-tide-v3 .emcg-tide-search-copy-v4 input::placeholder{
    color:transparent!important;
    opacity:0!important;
  }

  /* Canonical utility row — one line, one type system. */
  .emcg-tide-v3 .emcg-tide-mast-actions{
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;
    gap:9px!important;
    overflow:visible!important;
  }
  .emcg-tide-v3 .emcg-tide-utility-label,
  .emcg-tide-v3 .emcg-tide-my-v3,
  .emcg-tide-v3 .emcg-tide-share-v3,
  .emcg-tide-v3 .emcg-tide-activity-v3{
    display:inline-flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-transform:none!important;
    letter-spacing:0!important;
    font-family:inherit!important;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.15!important;
  }
  .emcg-tide-v3 .emcg-tide-utility-label{color:#0064F9!important;}
  .emcg-tide-v3 .emcg-tide-my-v3,
  .emcg-tide-v3 .emcg-tide-share-v3,
  .emcg-tide-v3 .emcg-tide-activity-v3{
    color:#000C32!important;
    text-decoration:none!important;
    gap:6px!important;
  }
  .emcg-tide-v3 .emcg-tide-my-v3::before,
  .emcg-tide-v3 .emcg-tide-share-v3::before,
  .emcg-tide-v3 .emcg-tide-activity-v3::before{
    content:"·"!important;
    display:inline-block!important;
    flex:0 0 auto!important;
    margin-right:1px!important;
    color:#66738A!important;
    font-size:10px!important;
    font-weight:650!important;
    line-height:1!important;
  }
  .emcg-tide-v3 .emcg-tide-share-v3 > .emcg-tide-share-label{
    display:inline!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:inherit!important;
    font:inherit!important;
    line-height:inherit!important;
    white-space:nowrap!important;
  }
  .emcg-tide-v3 .emcg-tide-share-v3 > .emcg-tide-share-plus{
    display:grid!important;
    place-items:center!important;
    flex:0 0 20px!important;
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    max-width:20px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:50%!important;
    background:#FFB300!important;
    color:#000C32!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
  }
  .emcg-tide-v3 .emcg-tide-activity-v3 > b{flex:0 0 auto!important;}
}

/* ------------------------------------------------------------------
   Laptop — same premium lockup as desktop, scaled rather than squeezed.
   ------------------------------------------------------------------ */
@media (min-width:1024px) and (max-width:1439px){
  .emcg-tide-v3 .emcg-tide-mast-v3{
    grid-template-columns:minmax(0,1fr) 172px!important;
    grid-template-areas:
      "copy clock"
      "search search"
      "actions actions"!important;
    column-gap:22px!important;
    row-gap:8px!important;
    align-items:start!important;
    padding:18px 0 10px!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-copy{max-width:none!important;}
  .emcg-tide-v3 .emcg-tide-mast-copy h1{
    max-width:none!important;
    white-space:normal!important;
    font-size:clamp(58px,5.5vw,72px)!important;
    line-height:.87!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-copy p{
    margin-top:10px!important;
    font-size:11px!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3{
    width:172px!important;
    max-width:172px!important;
    min-height:0!important;
    height:max-content!important;
    padding:3px 0 3px 13px!important;
    border-left:3px solid #FFB300!important;
    align-self:start!important;
    justify-content:flex-start!important;
    transform:translateY(7px)!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>span{
    font-size:7.8px!important;
    line-height:1.1!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>strong{
    margin:4px 0 0!important;
    font-size:43px!important;
    line-height:.88!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>small{
    display:block!important;
    margin-top:6px!important;
    color:#59677F!important;
    font-size:7.8px!important;
    line-height:1.22!important;
    font-weight:800!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>i{
    margin-top:7px!important;
    font-size:7px!important;
  }
  .emcg-tide-v3 .emcg-tide-search-v3{
    grid-area:search!important;
    width:100%!important;
    max-width:760px!important;
    min-height:47px!important;
    padding:4px 0 7px!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-actions{grid-area:actions!important;gap:11px!important;}
  .emcg-tide-v3 .emcg-tide-utility-label,
  .emcg-tide-v3 .emcg-tide-my-v3,
  .emcg-tide-v3 .emcg-tide-share-v3,
  .emcg-tide-v3 .emcg-tide-activity-v3{font-size:12.5px!important;}
}

@media (min-width:1180px) and (max-width:1439px){
  .emcg-tide-v3 .emcg-tide-mast-copy h1{
    white-space:nowrap!important;
    font-size:clamp(54px,4.9vw,68px)!important;
  }
}

/* ------------------------------------------------------------------
   Tablet — headline + clock are one row; Search and utility row own
   full width underneath. No tall Amber rule spanning three rows.
   ------------------------------------------------------------------ */
@media (min-width:600px) and (max-width:1023px){
  .emcg-tide-v3{padding-left:16px!important;padding-right:16px!important;}
  .emcg-tide-v3 .emcg-tide-mast-v3{
    grid-template-columns:minmax(0,1fr) 142px!important;
    grid-template-areas:
      "copy clock"
      "search search"
      "actions actions"!important;
    column-gap:18px!important;
    row-gap:8px!important;
    align-items:start!important;
    padding:16px 0 10px!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-copy{max-width:none!important;}
  .emcg-tide-v3 .emcg-tide-mast-copy h1{
    max-width:none!important;
    white-space:normal!important;
    font-size:clamp(46px,7.2vw,58px)!important;
    line-height:.88!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-copy p{
    max-width:560px!important;
    margin-top:8px!important;
    font-size:10px!important;
    line-height:1.42!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3{
    grid-area:clock!important;
    width:142px!important;
    max-width:142px!important;
    min-height:0!important;
    height:max-content!important;
    padding:3px 0 3px 11px!important;
    border-left:3px solid #FFB300!important;
    align-self:start!important;
    justify-content:flex-start!important;
    transform:translateY(5px)!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>span{
    font-size:7px!important;
    line-height:1.1!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>strong{
    margin:4px 0 0!important;
    font-size:36px!important;
    line-height:.9!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>small{
    display:block!important;
    margin-top:5px!important;
    color:#59677F!important;
    font-size:6.8px!important;
    line-height:1.2!important;
    font-weight:800!important;
  }
  .emcg-tide-v3 .emcg-tide-clock-v3>i{
    margin-top:6px!important;
    font-size:6.3px!important;
  }
  .emcg-tide-v3 .emcg-tide-search-v3{
    grid-area:search!important;
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    padding:3px 0 6px!important;
  }
  .emcg-tide-v3 .emcg-tide-mast-actions{
    grid-area:actions!important;
    gap:8px!important;
    min-height:28px!important;
  }
  .emcg-tide-v3 .emcg-tide-utility-label,
  .emcg-tide-v3 .emcg-tide-my-v3,
  .emcg-tide-v3 .emcg-tide-share-v3,
  .emcg-tide-v3 .emcg-tide-activity-v3{font-size:11.5px!important;}
  .emcg-tide-v3 .emcg-tide-share-v3 > .emcg-tide-share-plus{
    flex-basis:19px!important;width:19px!important;height:19px!important;min-width:19px!important;max-width:19px!important;font-size:12px!important;
  }
}

/* Narrow tablet: filters and stats get their own clean rows. */
@media (min-width:600px) and (max-width:820px){
  .emcg-tide-v3 .emcg-tide-pulse-v3{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:10px 0 12px!important;
  }
  .emcg-tide-v3 .emcg-tide-tabs-v3{justify-content:flex-start!important;}
  .emcg-tide-v3 .emcg-tide-signals-v3{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    justify-content:stretch!important;
    gap:8px!important;
  }
  .emcg-tide-v3 .emcg-tide-signals-v3 span:nth-child(4){display:grid!important;}
  .emcg-tide-v3 .emcg-tide-signals-v3 small{font-size:5.8px!important;}
  .emcg-tide-v3 .emcg-tide-signals-v3 b{font-size:8.2px!important;}
}

/* ------------------------------------------------------------------
   Mobile — preserve the approved side-by-side hero/clock. Clean only
   the tiny product navigation and Search treatment.
   ------------------------------------------------------------------ */
@media (max-width:599px){
  .emcg-tide-v3 .emcg-tide-product-nav-v3{
    width:calc(100% + 20px)!important;
    margin:0 -10px 10px!important;
    padding:0 10px 7px!important;
    overflow:hidden!important;
  }
  .emcg-tide-v3 .emcg-product-nav{
    width:100%!important;
    max-width:100%!important;
    gap:4px!important;
    overflow-x:auto!important;
    scroll-padding-inline:10px!important;
  }
  .emcg-tide-v3 .emcg-product-nav a{
    min-height:31px!important;
    padding:7px 9px!important;
    font-size:8px!important;
    line-height:1!important;
  }

  /* Hero and clock geometry intentionally unchanged. */
  .emcg-tide-v3 .emcg-tide-search-copy-v4 input::placeholder{
    color:transparent!important;
    opacity:0!important;
  }
  .emcg-tide-v3 .emcg-tide-search-copy-v4 small{
    font-size:7.4px!important;
    line-height:1.25!important;
  }
  .emcg-tide-v3 .emcg-tide-search-v3>a{font-size:7px!important;}

  .emcg-tide-v3 .emcg-tide-signals-v3{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
  }
  .emcg-tide-v3 .emcg-tide-signals-v3 span:nth-child(4){display:grid!important;}
  .emcg-tide-v3 .emcg-tide-signals-v3 small{font-size:4.8px!important;}
  .emcg-tide-v3 .emcg-tide-signals-v3 b{font-size:6.9px!important;}
}

/* Approved wide desktop values: do not let the shared ownership rules
   alter the finished >=1440px utility rhythm. */
@media (min-width:1440px){
  .emcg-tide-v3 .emcg-tide-mast-actions{gap:11px!important;}
  .emcg-tide-v3 .emcg-tide-utility-label,
  .emcg-tide-v3 .emcg-tide-my-v3,
  .emcg-tide-v3 .emcg-tide-share-v3,
  .emcg-tide-v3 .emcg-tide-activity-v3{font-size:12.5px!important;}
}
