@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/cormorant-garamond-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/cormorant-garamond-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Lato";font-style:normal;font-weight:300;font-display:swap;src:url(fonts/lato-latin-300-normal.woff2) format("woff2")}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/lato-latin-400-normal.woff2) format("woff2")}

:root{--creme:#F4EFE6;--creme2:#EDE5D8;--navy:#1B2A41;--ink2:#3D4A5E;--mahagoni:#6B2E26;--line:#D9CFBF;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Lato",-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--creme);color:var(--navy);font-family:var(--sans);font-weight:300;font-size:17px;line-height:1.7}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--mahagoni)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

header.site{border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:28px;padding-bottom:22px;text-align:center}
.wordmark{font-family:var(--serif);font-weight:500;font-size:clamp(26px,6vw,34px);letter-spacing:.32em;padding-left:.32em}
.tagline{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--mahagoni);font-weight:400}

.hero{display:grid;grid-template-columns:1fr;gap:40px;padding-top:48px;padding-bottom:72px;align-items:center}
.arch{width:100%;max-width:440px;margin:0 auto;aspect-ratio:4/5;border-radius:220px 220px 0 0;overflow:hidden;background:var(--navy)}
.arch img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}
.intro{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px}
.eyebrow{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--mahagoni);font-weight:400}
h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(40px,9vw,64px);line-height:1.05}
.lead{margin:0;max-width:520px;color:var(--ink2);font-size:18px}
.rule{width:1px;height:48px;background:var(--mahagoni)}
.contact{display:flex;flex-direction:column;gap:12px;width:100%;max-width:360px}
.btn{display:flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:400;border:1px solid var(--navy)}
.btn.solid{background:var(--navy);color:var(--creme)}
.btn.solid:hover{background:var(--mahagoni);border-color:var(--mahagoni);color:var(--creme)}
.small{font-size:15px;color:var(--ink2)}

.quote{background:var(--creme2);padding:72px 0;text-align:center}
.quote p{margin:0 auto;max-width:760px;font-family:var(--serif);font-style:italic;font-size:clamp(26px,5.5vw,38px);line-height:1.3}
.quote span{display:block;margin-top:18px;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--mahagoni);font-weight:400}

footer.site{border-top:1px solid var(--line)}
footer.site .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:32px;padding-bottom:40px;font-size:14px;color:var(--ink2)}
footer.site nav{display:flex;flex-wrap:wrap;gap:22px}
footer.site .fw{font-family:var(--serif);font-size:18px;letter-spacing:.3em;color:var(--navy)}

.legal{max-width:760px;margin:0 auto;padding:56px 24px 88px}
.legal h1{font-size:clamp(36px,8vw,52px);margin-bottom:28px}
.legal h2{font-family:var(--serif);font-weight:500;font-size:26px;margin:36px 0 8px}
.legal p,.legal li{color:var(--ink2)}
.legal .back{display:inline-block;margin-bottom:24px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;border-bottom:1px solid var(--mahagoni);padding-bottom:3px;font-weight:400}

@media (min-width:860px){
  .hero{grid-template-columns:1fr 1fr;gap:72px;padding-top:88px;padding-bottom:112px}
  .intro{text-align:left;align-items:flex-start}
  .rule{width:64px;height:1px}
  .contact{flex-direction:row;max-width:none}
  .contact .btn{flex:1}
}
