/* Trends homepage refinement v13. Homepage only. Wide editorial canvas. */
body[data-page="index.html"] {
  background:#fff;
}

/* HERO remains the visual anchor. */
body[data-page="index.html"] .issue-first-hero.hero-v7 {
  grid-template-columns:minmax(0,1.04fr) minmax(430px,.96fr);
  min-height:690px;
  background:#101416;
  overflow:hidden;
}
body[data-page="index.html"] .hero-v7 .hero-v7-panel {
  justify-content:center;
  padding:clamp(58px,6.5vw,116px) clamp(52px,7vw,132px);
}
body[data-page="index.html"] .hero-v7 .issue-first-kicker {
  margin-bottom:24px;
  gap:12px;
  font-size:10px;
  letter-spacing:.14em;
}
body[data-page="index.html"] .hero-v7 .issue-first-copy h1 {
  max-width:13ch;
  font-size:clamp(50px,4.9vw,82px);
  line-height:1.01;
  letter-spacing:-.05em;
}
body[data-page="index.html"] .hero-v7 .issue-first-copy .hero-statement {
  max-width:32em;
  margin-top:26px;
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.62;
}
body[data-page="index.html"] .hero-v7 .issue-first-actions {
  margin-top:31px;
}
body[data-page="index.html"] .hero-v7 .issue-first-visual {
  height:auto;
  min-height:690px;
  padding:clamp(34px,4.4vw,68px);
  background:#edf1ed;
  border-left:1px solid #d4dbd7;
}
body[data-page="index.html"] .hero-v7 .issue-first-cover {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
}
body[data-page="index.html"] .hero-v7 .issue-first-cover img {
  width:auto;
  max-width:100%;
  height:auto;
  max-height:630px;
  object-fit:contain;
  box-shadow:0 22px 54px rgba(16,20,22,.18);
}

/* Full-width editorial rhythm. */
body[data-page="index.html"] main > .wrap {
  width:100%;
  max-width:none;
  margin:0;
  padding-inline:clamp(44px,6vw,112px);
}

/* Credibility strip aligns with the page grid instead of floating in the center. */
body[data-page="index.html"] .hero-aam-readership {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:62px;
  padding:17px clamp(44px,6vw,112px);
  background:#f7f8f5;
  border-top:1px solid #d9dedb;
  border-bottom:1px solid #d9dedb;
  text-align:left;
}
body[data-page="index.html"] .hero-aam-readership p {
  width:100%;
  margin:0;
  color:#30383b;
  font:400 14px/1.65 Arial,Helvetica,sans-serif;
  letter-spacing:.015em;
}
body[data-page="index.html"] .hero-aam-readership span,
body[data-page="index.html"] .hero-aam-readership strong {
  font:700 inherit;
  font-size:inherit;
}

/* Top advertising behaves like a magazine ad well, not a centered floating card. */
body[data-page="index.html"] main > .ad-wrap {
  margin:0;
  padding:24px clamp(44px,6vw,112px) 18px;
  background:#fff;
  border-bottom:1px solid #d9dedb;
  text-align:left;
}
body[data-page="index.html"] main > .ad-wrap .ad-label {
  width:min(72vw,946px);
  margin:0 0 9px;
  text-align:left;
  font-size:8px;
  letter-spacing:.18em;
}
body[data-page="index.html"] main > .ad-wrap .ad-stage {
  width:min(72vw,946px);
  max-width:946px;
  margin:0;
  box-shadow:none;
  border:1px solid #ecefed;
}
body[data-page="index.html"] main > .ad-wrap .ad-controls {
  width:min(72vw,946px);
  justify-content:flex-start;
  height:36px;
  margin-top:5px;
  gap:12px;
}
body[data-page="index.html"] main > .ad-wrap .ad-controls button {
  min-width:34px;
  min-height:34px;
  padding:6px;
}
body[data-page="index.html"] main > .ad-wrap .ad-counter {
  font-size:9px;
  letter-spacing:.12em;
}

/* WHERE TO FIND TRENDS becomes a broad editorial utility section, not a centered box. */
body[data-page="index.html"] .find-trends-home.home-pickup {
  position:relative;
  width:100%;
  margin:42px 0 62px;
  padding:46px 0 38px;
  background:transparent;
  border:0;
  border-top:3px solid #0794bd;
  border-bottom:1px solid #d5dcda;
  box-shadow:none;
}
body[data-page="index.html"] .find-trends-home .find-home-heading {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) auto;
  align-items:end;
  gap:clamp(36px,6vw,110px);
  margin-bottom:30px;
}
body[data-page="index.html"] .find-trends-home .find-home-heading h2 {
  margin-bottom:10px;
  max-width:none;
  font-size:clamp(48px,4.7vw,72px);
  line-height:.98;
  letter-spacing:-.045em;
}
body[data-page="index.html"] .find-trends-home .find-home-heading p:not(.eyebrow) {
  max-width:720px;
  color:#4c565a;
  font-size:14px;
  line-height:1.7;
}
body[data-page="index.html"] .home-pickup-filters {
  justify-content:flex-start;
  padding:22px 0 0;
  border-top:1px solid #d9dfdc;
}
body[data-page="index.html"] .home-pickup-grid {
  width:100%;
}
body[data-page="index.html"] .home-pickup-card {
  background:transparent;
}
body[data-page="index.html"] .find-home-notice {
  margin-top:28px;
  padding-top:19px;
  border-top:1px solid #d9dfdc;
}

/* Social calendar receives a larger editorial canvas. */
body[data-page="index.html"] .season-preview {
  width:100%;
  margin:0 0 70px;
  padding:58px 0 64px;
  border-top:2px solid #101416;
  border-bottom:1px solid #d7ddda;
}

/* Social scene stretches naturally across the page grid. */
body[data-page="index.html"] .society-home.scene-v7 {
  width:100%;
  margin:0 0 68px;
  padding-top:58px;
  padding-bottom:60px;
}
body[data-page="index.html"] .society-home.scene-v7 .section-head {
  align-items:end;
}
body[data-page="index.html"] .society-home.scene-v7 .section-head h2 {
  font-size:clamp(48px,4.8vw,74px);
  line-height:.98;
}

/* Full-width ad band remains full width and visually quiet. */
body[data-page="index.html"] .home-sponsor-placement.fullwidth-ads-v7 {
  width:100%;
  max-width:none;
  margin:0 0 68px;
  padding:34px clamp(44px,6vw,112px) 42px;
  background:#f6f7f4;
  border-top:1px solid #d6dcda;
  border-bottom:1px solid #d6dcda;
}
body[data-page="index.html"] .home-sponsor-placement .ad-placement-heading {
  max-width:none;
  margin:0 0 22px;
}
body[data-page="index.html"] .home-sponsor-placement .tile-grid {
  justify-items:start;
}
body[data-page="index.html"] .home-sponsor-placement .tile-grid > a {
  box-shadow:none;
}

/* Inside Trends is a broad editorial spread. */
body[data-page="index.html"] main > .wrap > .section {
  width:100%;
  padding-top:62px;
  padding-bottom:68px;
}
body[data-page="index.html"] main > .wrap > .section .section-head {
  align-items:end;
  gap:clamp(42px,7vw,120px);
}
body[data-page="index.html"] main > .wrap > .section .section-head h2 {
  font-size:clamp(46px,4.4vw,68px);
  line-height:1;
}
body[data-page="index.html"] .inside-trends-pair {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(34px,4.5vw,78px);
}
body[data-page="index.html"] .inside-trends-pair .editorial-card {
  max-width:none;
}

/* Newsletter spans the editorial grid instead of appearing as a centered insert. */
body[data-page="index.html"] .newsletter {
  width:100%;
  margin:0;
  padding:54px clamp(36px,4vw,72px);
}

/* Large desktop: take advantage of the actual screen. */
@media (min-width:1500px) {
  body[data-page="index.html"] main > .wrap {
    padding-inline:clamp(72px,7vw,138px);
  }
  body[data-page="index.html"] .hero-aam-readership,
  body[data-page="index.html"] main > .ad-wrap {
    padding-left:clamp(72px,7vw,138px);
    padding-right:clamp(72px,7vw,138px);
  }
  body[data-page="index.html"] .home-sponsor-placement.fullwidth-ads-v7 {
    padding-left:clamp(72px,7vw,138px);
    padding-right:clamp(72px,7vw,138px);
  }
}

/* Tablet. */
@media (max-width:1020px) {
  body[data-page="index.html"] main > .wrap {
    padding-inline:32px;
  }
  body[data-page="index.html"] .hero-aam-readership,
  body[data-page="index.html"] main > .ad-wrap {
    padding-left:32px;
    padding-right:32px;
  }
  body[data-page="index.html"] main > .ad-wrap .ad-label,
  body[data-page="index.html"] main > .ad-wrap .ad-stage,
  body[data-page="index.html"] main > .ad-wrap .ad-controls {
    width:min(88vw,946px);
  }
  body[data-page="index.html"] .issue-first-hero.hero-v7 {
    grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);
    min-height:610px;
  }
  body[data-page="index.html"] .hero-v7 .hero-v7-panel {
    padding:52px 44px;
  }
  body[data-page="index.html"] .hero-v7 .issue-first-copy h1 {
    font-size:clamp(44px,5.8vw,62px);
  }
  body[data-page="index.html"] .hero-v7 .issue-first-visual {
    min-height:610px;
    padding:34px 28px;
  }
  body[data-page="index.html"] .find-trends-home .find-home-heading {
    grid-template-columns:1fr auto;
    gap:28px;
  }
}

/* Mobile keeps the hierarchy but returns to one column. */
@media (max-width:767px) {
  body[data-page="index.html"] .issue-first-hero.hero-v7 {
    display:grid;
    grid-template-columns:1fr;
    min-height:0;
  }
  body[data-page="index.html"] .hero-v7 .hero-v7-panel {
    padding:42px 24px 38px;
  }
  body[data-page="index.html"] .hero-v7 .issue-first-copy h1 {
    max-width:14ch;
    font-size:clamp(40px,11vw,54px);
  }
  body[data-page="index.html"] .hero-v7 .issue-first-visual {
    min-height:0;
    padding:28px 24px 34px;
    border-left:0;
    border-top:1px solid #d4dbd7;
  }
  body[data-page="index.html"] .hero-v7 .issue-first-cover img {
    width:min(86vw,410px);
    max-height:none;
  }
  body[data-page="index.html"] main > .wrap {
    padding-inline:18px;
  }
  body[data-page="index.html"] .hero-aam-readership {
    padding:14px 18px;
  }
  body[data-page="index.html"] .hero-aam-readership p {
    font-size:12px;
  }
  body[data-page="index.html"] main > .ad-wrap {
    padding:18px 18px 12px;
  }
  body[data-page="index.html"] main > .ad-wrap .ad-label,
  body[data-page="index.html"] main > .ad-wrap .ad-stage,
  body[data-page="index.html"] main > .ad-wrap .ad-controls {
    width:100%;
  }
  body[data-page="index.html"] .find-trends-home.home-pickup {
    margin:30px 0 42px;
    padding:32px 0 28px;
  }
  body[data-page="index.html"] .find-trends-home .find-home-heading {
    display:block;
  }
  body[data-page="index.html"] .find-trends-home .find-home-heading .button {
    margin-top:18px;
  }
  body[data-page="index.html"] .find-trends-home .find-home-heading h2 {
    font-size:42px;
  }
  body[data-page="index.html"] .season-preview {
    padding:42px 0 46px;
    margin-bottom:46px;
  }
  body[data-page="index.html"] .society-home.scene-v7 {
    padding-top:42px;
    padding-bottom:44px;
    margin-bottom:46px;
  }
  body[data-page="index.html"] .home-sponsor-placement.fullwidth-ads-v7 {
    padding:28px 18px 32px;
    margin-bottom:46px;
  }
  body[data-page="index.html"] main > .wrap > .section {
    padding-top:46px;
    padding-bottom:50px;
  }
  body[data-page="index.html"] .inside-trends-pair {
    grid-template-columns:1fr;
    gap:30px;
  }
  body[data-page="index.html"] .newsletter {
    padding:38px 24px;
  }
}

/* Mobile luxury photo-arrow refinement v16. */
@media (max-width:767px) {
  body[data-page="index.html"] .society-home.scene-v7 .scene-zoom {
    width:46px;
    height:46px;
    right:12px;
    bottom:12px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(16,20,22,.78);
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 10px 24px rgba(0,0,0,.24);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    color:transparent;
    font-size:0;
    opacity:1;
  }
  body[data-page="index.html"] .society-home.scene-v7 .scene-zoom::before {
    content:"";
    position:absolute;
    width:17px;
    height:1.5px;
    background:#f3efe6;
    transform:rotate(-45deg);
    transform-origin:center;
  }
  body[data-page="index.html"] .society-home.scene-v7 .scene-zoom::after {
    content:"";
    position:absolute;
    width:8px;
    height:8px;
    border-top:1.5px solid #f3efe6;
    border-right:1.5px solid #f3efe6;
    transform:translate(4px,-4px);
  }
}


/* Homepage direction-link arrow refinement v18. */
body[data-page="index.html"] .pickup-directions,
body[data-page="index.html"] .find-home-heading .button {
  display:inline-flex;
  align-items:center;
  gap:9px;
}
body[data-page="index.html"] .pickup-directions::after,
body[data-page="index.html"] .find-home-heading .button::after {
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
  transform:rotate(45deg);
  margin-left:2px;
  opacity:.9;
}
@media (max-width:767px) {
  body[data-page="index.html"] .pickup-directions::after,
  body[data-page="index.html"] .find-home-heading .button::after {
    width:6px;
    height:6px;
    flex-basis:6px;
    border-width:1.25px 1.25px 0 0;
  }
}
