:root{
  --cream:#f7f2ea;
  --paper:#fffdf9;
  --ink:#211b18;
  --taupe:#8b7565;
  --line:#d9cdc2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.site-header{position:absolute;top:0;left:0;right:0;z-index:20;color:#fff}
.site-header__inner{display:flex;align-items:center;gap:28px;padding:28px 6%;border-bottom:1px solid rgba(255,255,255,.3)}
.site-brand{margin-right:auto;font:italic 30px Georgia,serif}
.custom-logo{display:block;max-height:74px;width:auto}
.site-nav{display:flex;gap:28px;align-items:center}
.site-nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}
.site-nav a{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.button{display:inline-block;border:0;padding:15px 23px;cursor:pointer;text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.13em}
.button--light{background:#fff;color:var(--ink)}
.button--dark{background:var(--ink);color:#fff}
.hero{position:relative;min-height:100vh;color:#fff;background:url("../images/hero.jpg") center/cover}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,12,9,.76),rgba(20,12,9,.12)),linear-gradient(0deg,rgba(20,12,9,.4),transparent 55%)}
.hero__content{position:relative;z-index:2;max-width:920px;padding:25vh 6% 90px}
.eyebrow{margin:0 0 20px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.eyebrow--dark{color:var(--taupe)}
.hero h1,.contact h2,.content-card h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em}
.hero h1{max-width:950px;margin:0;font-size:clamp(68px,10vw,145px);line-height:.86}
.hero__copy{max-width:570px;margin:30px 0 35px;font:23px/1.55 Georgia,serif}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:260px;gap:14px;padding:14px}
.gallery__item{background-size:cover;background-position:center}
.gallery__item--1{grid-column:span 7;grid-row:span 2}
.gallery__item--2,.gallery__item--3{grid-column:span 5}
.gallery__item--4,.gallery__item--5,.gallery__item--6{grid-column:span 4}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:120px max(6%,calc((100vw - 1180px)/2))}
.contact h2{margin:0 0 18px;font-size:clamp(52px,7vw,86px)}
.contact__intro>p:last-of-type{font:22px Georgia,serif;color:var(--taupe)}
.instagram-link{display:inline-block;margin-top:28px;border-bottom:1px solid currentColor;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.form-notice{grid-column:2;padding:14px 16px;margin:0 0 -50px;border:1px solid var(--line)}
.form-notice--success{background:#f1f5ef}
.form-notice--error{background:#fff1ef}
.contact-form{display:grid;gap:20px}
.contact-form label{display:grid;gap:8px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 3px;outline:none}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink)}
.contact-form .button{justify-self:start}
.site-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center;padding:30px 6%;border-top:1px solid var(--line);font-size:12px;color:var(--taupe)}
.site-footer__social{display:flex;gap:20px}
.site-footer__copyright{text-align:right}
.content-shell{max-width:900px;margin:0 auto;padding:160px 24px 90px}
.content-card h1{font-size:clamp(48px,7vw,82px)}
.entry-content{font:19px/1.7 Georgia,serif}
@media(max-width:850px){
  .site-header__inner{padding:20px}
  .site-nav{display:none}
  .site-brand{font-size:23px}
  .hero__content{padding:23vh 20px 65px}
  .gallery{grid-template-columns:1fr;grid-auto-rows:340px}
  .gallery__item{grid-column:auto;grid-row:auto}
  .contact{grid-template-columns:1fr;gap:45px;padding:80px 24px}
  .site-footer{grid-template-columns:1fr;text-align:center}
  .site-footer__social{justify-content:center}
  .site-footer__copyright{text-align:center}
}

/* Keep decorative layers from intercepting links and form controls. */
.hero__overlay,.gallery__item{pointer-events:none}
.contact,.site-footer{position:relative;z-index:3}
.instagram-link,.site-footer a,.contact-form button,.contact-form input,.contact-form textarea{position:relative;z-index:4;pointer-events:auto}
