@font-face{font-family:Source;src:url('fonts/source-sans.ttf') format('truetype');font-weight:200 900;font-display:swap}
:root{--ink:#16232b;--stone:#e8e4dd;--paper:#faf9f6;--line:#c8c4bd}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Source,'Arial',sans-serif;font-size:19px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid currentColor;outline-offset:7px}img{display:block;width:100%;height:100%;object-fit:cover}p,h1,h2,figure{margin:0}.header{min-height:112px;padding:28px 5.5%;display:flex;align-items:center;gap:40px;background:var(--stone);border-bottom:1px solid var(--line)}.header>a:first-child{margin-right:auto;flex-shrink:0}.logo{width:245px;height:auto}.header-note{font-size:18px}.text-link{display:flex;gap:28px;align-items:center;border-bottom:1px solid currentColor;padding:6px 0;font-size:18px}.opening{display:grid;grid-template-columns:1.05fr 1fr;background:var(--stone)}.opening-copy{padding:76px 10% 68px 10.5%;align-self:center}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.12em;display:flex;align-items:center;gap:12px;margin-bottom:32px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--ink);flex-shrink:0}h1{font-size:clamp(54px,5.2vw,88px);line-height:1.04;letter-spacing:-.035em;font-weight:350}h1 strong{font-weight:650}.lead{font-size:clamp(22px,2vw,28px);line-height:1.4;margin-top:30px}.intro{margin-top:23px;max-width:470px;font-weight:400}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ink);color:var(--stone);padding:17px 24px;margin-top:30px;line-height:1.4;font-size:18px}.button:hover{background:#2b404c}.signature{font-size:17px;margin-top:27px}.detail-photo{position:relative;min-height:740px;overflow:hidden}.detail-photo img{position:absolute;inset:0;object-position:50% 58%}.detail-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 30px 22px;background:linear-gradient(transparent,rgba(22,35,43,.8));color:#fff;font-size:16px}.contact{display:grid;grid-template-columns:1fr 1.05fr;margin:96px auto;max-width:1440px;width:89%;gap:8%;align-items:center}.interior-photo{height:610px}.interior-photo img{object-position:50% 50%}.contact-copy{padding:20px 0}.contact-copy .eyebrow{margin-bottom:26px}h2{font-size:clamp(42px,4.1vw,66px);font-weight:400;line-height:1.06;letter-spacing:-.035em}.contact-copy>p:not(.eyebrow){margin-top:27px;max-width:410px}.contact-links{margin-top:28px}.contact-links>a{display:block;padding:17px 0;border-bottom:1px solid var(--line)}.contact-label{display:block;font-size:12px;letter-spacing:.12em;margin-bottom:4px}.contact-value{display:flex;justify-content:space-between;gap:14px;font-size:clamp(20px,2vw,27px)}.contact-links>a:hover .contact-value{text-decoration:underline;text-underline-offset:5px}address{font-style:normal;font-size:18px;line-height:1.6;margin-top:26px}address strong{font-weight:600}footer{background:var(--ink);color:var(--stone);padding:25px 5.5%;display:flex;justify-content:space-between;gap:20px;font-size:16px}
@media(min-width:1600px){.opening-copy{max-width:800px;justify-self:end;padding-right:85px}.detail-photo{min-height:800px}}
@media(max-width:1000px){.header-note{display:none}.opening-copy{padding:55px 8%}.detail-photo{min-height:730px}.contact{gap:6%;margin-block:70px}.interior-photo{height:570px}.contact-value{font-size:22px}}
@media(max-width:700px){.header{min-height:95px;padding:24px;gap:20px}.logo{width:195px}.text-link{font-size:16px;gap:15px}.opening{grid-template-columns:1fr}.opening-copy{padding:50px 24px}.eyebrow{font-size:12px;margin-bottom:28px}h1{font-size:clamp(49px,11.8vw,76px)}.lead{font-size:24px}.intro{max-width:520px}.detail-photo{min-height:0;height:420px}.detail-photo img{object-position:50% 62%}.detail-photo figcaption{padding-left:24px}.contact{display:flex;flex-direction:column-reverse;align-items:stretch;width:auto;margin:0;padding:56px 24px;gap:40px}.contact-copy{padding:0}.contact-copy>p:not(.eyebrow){max-width:520px}h2{font-size:48px}.interior-photo{height:390px}.contact-value{font-size:25px}footer{padding:25px 24px;flex-direction:column;gap:5px;font-size:15px}}
@media(max-width:380px){.logo{width:170px}.text-link{font-size:15px;gap:8px}.header{gap:12px}.contact-value{font-size:22px}}

.contact-icon{display:block;flex-shrink:0;width:22px;height:22px}.contact-value{align-items:center}
