/* O'Neill's D&C — v74.3 compliance, trust and sharing refinements. */

.footer-base{
  grid-template-columns:minmax(190px,.8fr) minmax(420px,1.8fr) auto;
  align-items:start;
  gap:24px;
}
.footer-legal{
  max-width:760px;
  line-height:1.7;
}
.footer-legal a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
}
.footer-legal a:hover,
.footer-legal a:focus-visible{color:var(--gold)}

.location-credentials{
  padding:0 var(--pad) clamp(76px,8vw,120px);
  background:var(--espresso);
  color:var(--ivory);
}
.location-credentials__grid{
  display:grid;
  grid-template-columns:minmax(180px,.75fr) minmax(260px,1.15fr) minmax(260px,1.15fr);
  border-top:1px solid #574a43;
  border-bottom:1px solid #574a43;
}
.location-credentials__grid > div{
  padding:30px 30px 34px 0;
  margin-right:30px;
  border-right:1px solid #574a43;
}
.location-credentials__grid > div:last-child{
  margin-right:0;
  border-right:0;
}
.location-credentials__grid span{
  display:block;
  margin-bottom:15px;
  color:var(--gold);
  font-size:11px;
  line-height:1.45;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.location-credentials__grid strong{
  display:block;
  margin-bottom:8px;
  font-family:var(--serif);
  font-size:clamp(24px,2.25vw,38px);
  font-weight:400;
  line-height:1.12;
}
.location-credentials__grid p{
  max-width:430px;
  color:#c6bbb2;
  font-size:13px;
  line-height:1.65;
}

.brief-privacy{
  max-width:760px;
  margin:14px 0 22px;
  color:#6b635c;
  font-size:12px;
  line-height:1.65;
}
.brief-privacy a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:3px;
}

.privacy-hero{
  padding:clamp(150px,17vw,235px) var(--pad) clamp(72px,8vw,120px);
  background:var(--espresso);
  color:var(--ivory);
}
.privacy-hero__grid{
  display:grid;
  grid-template-columns:minmax(160px,.75fr) minmax(0,2fr);
  gap:6vw;
}
.privacy-hero h1{
  max-width:900px;
  font-family:var(--serif);
  font-size:clamp(52px,7vw,104px);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.04em;
}
.privacy-hero h1 em{color:var(--gold);font-style:italic}
.privacy-hero__intro{
  max-width:720px;
  margin-top:28px;
  color:#c6bbb2;
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.65;
}
.privacy-content{
  padding:clamp(75px,8vw,125px) var(--pad);
  background:var(--ivory);
  color:var(--ink);
}
.privacy-content__grid{
  display:grid;
  grid-template-columns:minmax(180px,.72fr) minmax(0,1.75fr);
  gap:7vw;
}
.privacy-content__aside{
  position:sticky;
  top:120px;
  align-self:start;
}
.privacy-content__aside p{
  color:#6b635c;
  font-size:12px;
  line-height:1.7;
}
.privacy-section{
  max-width:850px;
  padding:0 0 44px;
  margin:0 0 44px;
  border-bottom:1px solid #d8d0c6;
}
.privacy-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.privacy-section h2{
  margin-bottom:18px;
  font-family:var(--serif);
  font-size:clamp(30px,3vw,48px);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.025em;
}
.privacy-section p,
.privacy-section li{
  color:#514b46;
  font-size:15px;
  line-height:1.78;
}
.privacy-section p + p{margin-top:16px}
.privacy-section ul{margin:16px 0 0 1.2em}
.privacy-section li + li{margin-top:8px}
.privacy-section a{color:inherit;text-decoration:underline;text-underline-offset:3px}

@media(max-width:900px){
  .footer-base{
    grid-template-columns:1fr auto;
  }
  .footer-legal{
    grid-column:1/-1;
    grid-row:2;
  }
  .location-credentials__grid{
    grid-template-columns:1fr 1fr;
  }
  .location-credentials__grid > div:first-child{
    grid-column:1/-1;
    border-right:0;
    border-bottom:1px solid #574a43;
  }
  .location-credentials__grid > div:nth-child(2){border-right:1px solid #574a43}
  .privacy-hero__grid,
  .privacy-content__grid{grid-template-columns:1fr;gap:30px}
  .privacy-content__aside{position:static}
}

@media(max-width:560px){
  .footer-base{grid-template-columns:1fr;gap:16px}
  .footer-legal{grid-column:auto;grid-row:auto}
  .location-credentials{padding-left:22px;padding-right:22px}
  .location-credentials__grid{grid-template-columns:1fr}
  .location-credentials__grid > div,
  .location-credentials__grid > div:nth-child(2){
    margin:0;
    padding:24px 0;
    border-right:0;
    border-bottom:1px solid #574a43;
  }
  .location-credentials__grid > div:last-child{border-bottom:0}
  .privacy-hero,.privacy-content{padding-left:22px;padding-right:22px}
  .privacy-hero h1{font-size:14vw}
}
