
*{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#efeee9;--text:#101010;--muted:#727272;--line:rgba(0,0,0,.14)}
html{scroll-behavior:smooth}
body{min-height:100vh;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
.header{max-width:1450px;margin:0 auto;padding:0 30px}
.header-top{height:82px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;border-bottom:1px solid var(--line)}
.logo{width:max-content;font-size:38px;font-weight:900;letter-spacing:-3px;line-height:1}
.logo sup{position:relative;top:-15px;margin-left:2px;font-size:10px;font-weight:700;letter-spacing:0}
.nav{justify-self:center;display:flex;gap:34px}
.nav a{font-size:13px}
.nav a:hover{opacity:.45}
.contact{justify-self:end;display:flex;align-items:center;gap:24px;font-size:14px}
.content{max-width:1450px;margin:0 auto;padding:85px 30px 100px}
.eyebrow{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.55px;margin-bottom:28px}
.page-title{max-width:850px;font-size:clamp(48px,8vw,112px);line-height:.88;letter-spacing:-6px;font-weight:500}
.page-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;margin-top:100px;border-top:1px solid var(--line);padding-top:35px}
.page-lead{font-size:22px;line-height:1.18;letter-spacing:-.6px;max-width:620px}
.page-copy{max-width:520px;font-size:13px;line-height:1.65}
.page-copy p{margin-bottom:18px}
.info-list{margin-top:34px;border-top:1px solid var(--line)}
.info-row{display:grid;grid-template-columns:160px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.55}
.info-row strong{font-weight:600}
.cta{display:inline-flex;align-items:center;gap:25px;margin-top:30px;border:1px solid #111;border-radius:9px;padding:13px 16px;font-size:12px}
.cta:hover{background:#111;color:#fff}


/* =========================
   FOOTER
========================= */
.site-footer{
  max-width:1450px;
  min-height:300px;
  margin:110px auto 0;
  padding:0 30px;
  display:flex;
  align-items:center;
}

.footer-layout{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,760px) 1fr auto;
  column-gap:72px;
  align-items:center;
}

.footer-left{
  display:grid;
  grid-template-columns:repeat(2,minmax(180px,1fr));
  column-gap:68px;
  row-gap:30px;
}

.footer-group-title{
  margin-bottom:8px;
  font-size:9px;
  font-weight:400;
  color:#b9b9b9;
  text-transform:uppercase;
  letter-spacing:.45px;
}

.footer-group-title span{
  margin-left:3px;
}

.footer-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px;
}

.footer-row a{
  font-size:12px;
  font-weight:600;
  line-height:1.35;
}

.footer-row a:hover{
  opacity:.45;
}

.footer-right{
  justify-self:end;
  align-self:center;
  text-align:right;
  font-size:10px;
  line-height:1.18;
  color:#c0c0c0;
  text-transform:uppercase;
  letter-spacing:.45px;
  white-space:pre-line;
}


@media(max-width:800px){
  .header{padding:0 15px}
  .header-top{height:70px;grid-template-columns:1fr auto}
  .nav{display:none}
  .logo{font-size:31px}
  .logo sup{top:-12px}
  .content{padding:55px 15px 75px}
  .page-title{letter-spacing:-3px}
  .page-grid{grid-template-columns:1fr;gap:45px;margin-top:65px}
  .info-row{grid-template-columns:1fr;gap:6px}
  .site-footer{min-height:0;margin-top:70px;padding:55px 15px 28px;display:block}
  .footer-layout{display:grid;grid-template-columns:1fr;row-gap:42px}
  .footer-left{grid-template-columns:1fr 1fr;column-gap:30px;row-gap:30px}
  .footer-right{justify-self:start;text-align:left}
}

@media(max-width:520px){.footer-left{grid-template-columns:1fr;row-gap:26px}}


/* PAYMENT / RETURN PAGE */
.legal-content{
  max-width:1450px;
  margin:0 auto;
  padding:72px 30px 90px;
}
.legal-title{
  font-size:clamp(36px,4.2vw,64px);
  line-height:1;
  letter-spacing:-2px;
  font-weight:500;
  margin-bottom:58px;
}
.legal-section{
  max-width:1040px;
  margin-bottom:46px;
}
.legal-section h2{
  margin-bottom:22px;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.25px;
}
.legal-section p{
  margin-bottom:14px;
  font-size:12px;
  line-height:1.65;
}
.legal-note{
  max-width:1040px;
  margin-top:20px;
  padding:14px 0;
  border-top:1px solid var(--line);
  font-size:10px;
  line-height:1.55;
  color:var(--muted);
}
@media(max-width:800px){
  .legal-content{padding:50px 15px 70px}
  .legal-title{margin-bottom:42px}
  .legal-section{margin-bottom:36px}
}


/* PAYMENT / RETURN PAGE */
.legal-content{
  max-width:1450px;
  margin:0 auto;
  padding:72px 30px 90px;
}
.legal-title{
  font-size:clamp(36px,4.2vw,64px);
  line-height:1;
  letter-spacing:-2px;
  font-weight:500;
  margin-bottom:58px;
}
.legal-section{
  max-width:1040px;
  margin-bottom:46px;
}
.legal-section h2{
  margin-bottom:22px;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.25px;
}
.legal-section p{
  margin-bottom:14px;
  font-size:12px;
  line-height:1.65;
}
.legal-note{
  max-width:1040px;
  margin-top:20px;
  padding:14px 0;
  border-top:1px solid var(--line);
  font-size:10px;
  line-height:1.55;
  color:var(--muted);
}
@media(max-width:800px){
  .legal-content{padding:50px 15px 70px}
  .legal-title{margin-bottom:42px}
  .legal-section{margin-bottom:36px}
}


/* =========================================
   MOBILE REFINEMENT — INNER PAGES
========================================= */
@media(max-width:800px){
  html,
  body{
    max-width:100%;
    overflow-x:hidden;
  }

  .header{
    padding:0 14px;
  }

  .header-top{
    height:64px;
  }

  .logo{
    font-size:29px;
    letter-spacing:-2.5px;
  }

  .logo sup{
    top:-11px;
    font-size:8px;
  }

  .contact{
    gap:8px;
    font-size:12px;
    white-space:nowrap;
  }

  .content{
    padding:46px 14px 58px;
  }

  .eyebrow{
    margin-bottom:20px;
    font-size:8px;
  }

  .page-title{
    font-size:clamp(42px,15vw,66px);
    letter-spacing:-3px;
  }

  .page-grid{
    gap:32px;
    margin-top:48px;
    padding-top:24px;
  }

  .page-lead{
    font-size:18px;
    line-height:1.25;
  }

  .page-copy{
    font-size:12px;
  }

  .legal-content{
    padding:46px 14px 58px;
  }

  .legal-title{
    margin-bottom:40px;
    font-size:clamp(38px,11vw,54px);
    letter-spacing:-2px;
  }

  .legal-section{
    margin-bottom:34px;
  }

  .legal-section h2{
    margin-bottom:16px;
    font-size:9px;
  }

  .legal-section p{
    margin-bottom:12px;
    font-size:11px;
    line-height:1.65;
  }

  .site-footer{
    width:100%;
    min-height:0;
    margin-top:22px;
    padding:38px 14px calc(34px + env(safe-area-inset-bottom));
  }

  .footer-layout{
    grid-template-columns:1fr;
    row-gap:28px;
  }

  .footer-left{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:20px;
    row-gap:24px;
  }

  .footer-group-title{
    font-size:8px;
    margin-bottom:7px;
  }

  .footer-row{
    gap:7px 12px;
  }

  .footer-row a{
    font-size:11px;
  }

  .footer-right{
    font-size:9px;
  }
}

@media(max-width:380px){
  .footer-left{
    column-gap:14px;
  }
}
