
:root{--ink:#332f2b;--sand:#eee5da;--cream:#f8f4ee;--gold:#a98261;--white:#fff;--line:rgba(51,47,43,.18);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.65}img{display:block;width:100%}a{color:inherit;text-decoration:none}.site-header{height:98px;padding:14px 4vw;display:flex;align-items:center;justify-content:space-between;position:fixed;inset:0 0 auto;z-index:20;background:linear-gradient(to bottom,rgba(25,22,19,.38),transparent);color:white}.brand{display:flex;flex-direction:column;gap:0}.brand img{width:245px;max-height:58px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.brand span{font-size:.64rem;text-transform:uppercase;letter-spacing:.24em;margin-left:8px}.site-header nav{display:flex;gap:2.3rem;text-transform:uppercase;font-size:.72rem;letter-spacing:.14em}.site-header nav a{padding:12px 0;border-bottom:1px solid transparent}.site-header nav a:hover{border-color:white}.menu-button{display:none;background:none;border:1px solid rgba(255,255,255,.65);color:white;padding:9px 13px}.hero{height:min(860px,100vh);min-height:680px;position:relative;display:grid;align-items:center}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(36,31,27,.55) 0%,rgba(36,31,27,.15) 58%,rgba(36,31,27,.02) 100%)}.hero-content{position:relative;z-index:2;color:white;margin-left:15vw;max-width:570px}.overline{text-transform:uppercase;letter-spacing:.19em;font-size:.72rem;font-weight:700;color:var(--gold)}.hero .overline{color:white}.hero h1,h2{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.025em}.hero h1{font-size:clamp(4rem,7vw,7.3rem);margin:.2em 0}.hero-content>p:not(.overline){font-size:1.16rem;max-width:520px}.button{display:inline-block;padding:13px 22px;margin-top:20px;background:rgba(244,236,225,.9);color:var(--ink);text-transform:uppercase;font-size:.72rem;letter-spacing:.12em;border:0;cursor:pointer}.button.dark{background:var(--ink);color:white}.section{padding:120px max(6vw,24px)}.narrow{max-width:850px;margin:auto;text-align:center}.narrow h2,.copy h2,.contact h2,.sea-copy h2{font-size:clamp(2.6rem,5vw,5rem);margin:.15em 0 .45em}.narrow p:last-child{font-size:1.12rem}.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center}.feature-grid.reverse .image-card{order:2}.feature-grid.reverse .copy{order:1}.image-card{height:650px;overflow:hidden}.image-card img{height:100%;object-fit:cover}.copy{max-width:650px}.copy p{font-size:1.08rem}.copy blockquote{font-family:var(--serif);font-size:1.65rem;margin:35px 0;padding-left:24px;border-left:2px solid var(--gold)}.text-link{display:inline-block;margin-top:20px;font-weight:700}.sand{background:var(--sand)}.copy small{display:block;margin-top:18px;opacity:.65}.full-image{height:640px;position:relative}.full-image img{height:100%;object-fit:cover}.full-image:after{content:"";position:absolute;inset:0;background:rgba(20,25,20,.25)}.full-image-copy{position:absolute;z-index:2;inset:0;display:grid;place-items:center;color:white;text-align:center;padding:30px}.full-image-copy p{font:clamp(2.3rem,4.5vw,5rem)/1.15 var(--serif);max-width:1050px}.story{background:#fbf8f3}.timeline{display:grid;grid-template-columns:repeat(4,1fr);max-width:1100px;margin:70px auto 30px;border-top:1px solid var(--gold)}.timeline div{position:relative;padding:28px 20px 0}.timeline div:before{content:"";position:absolute;width:12px;height:12px;background:var(--cream);border:2px solid var(--gold);border-radius:50%;top:-8px;left:20px}.timeline strong,.timeline span{display:block}.timeline strong{font-family:var(--serif);font-size:1.45rem}.timeline span{opacity:.7}.external-links{display:flex;justify-content:center;gap:25px;margin-top:50px}.external-links a{border:1px solid var(--line);padding:18px 24px;background:white}.sea-section{min-height:720px;position:relative;display:grid;align-items:center;color:white}.sea-section>img{position:absolute;inset:0;height:100%;object-fit:cover}.sea-section:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,27,24,.72),rgba(30,27,24,.08))}.sea-copy{position:relative;z-index:2;max-width:650px}.sea-copy .overline{color:white}.light{color:white}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--sand)}.contact-form{background:white;padding:38px}.contact-form label{display:block;font-weight:700;margin-bottom:18px}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid var(--line);background:#fff}.contact-form button{width:100%}footer{padding:45px 6vw 30px;background:#2b2825;color:white;display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:end}footer img{width:220px;filter:brightness(0) invert(1)}footer p{margin:.35rem 0;font-size:.78rem;opacity:.75}.footer-links{display:flex;gap:20px}.reveal{opacity:0;transform:translateY(25px);transition:.75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:auto;background:rgba(45,40,35,.86)}.site-header nav{display:none;position:absolute;top:86px;left:0;right:0;padding:25px;background:#37322e;flex-direction:column}.site-header nav.open{display:flex}.menu-button{display:block}.brand img{width:190px}.hero-content{margin:0 8vw}.feature-grid,.contact{grid-template-columns:1fr}.feature-grid.reverse .image-card,.feature-grid.reverse .copy{order:initial}.image-card{height:520px}.timeline{grid-template-columns:1fr 1fr;gap:30px;border-top:0}.timeline div{border-top:1px solid var(--gold)}.timeline div:before{top:-8px}.external-links{flex-direction:column}.external-links a{text-align:center}footer{grid-template-columns:1fr}.footer-links{margin-top:15px}}
@media(max-width:560px){.section{padding:85px 20px}.hero{min-height:680px}.hero-content{margin:80px 24px 0}.hero h1{font-size:3.8rem}.image-card{height:390px}.timeline{grid-template-columns:1fr}.full-image{height:520px}.site-header nav{top:80px}.brand span{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}}
