:root{color-scheme:light;--ink:#20221d;--paper:#f5f2e9;--cream:#e9e3d5;--green:#39483b;--gold:#bd925c;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #d59b5e;outline-offset:4px}
.skip-link{position:absolute;z-index:20;left:1rem;top:-5rem;padding:.7rem 1rem;background:#fff;color:#111}
.skip-link:focus{top:1rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;z-index:10;top:0;background:rgba(23,25,21,.97);color:#f7f4ec}
.header-inner{max-width:1280px;min-height:76px;margin:auto;padding:0 5.4%;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none}
.brand-mark{display:grid;place-items:center;width:39px;height:39px;border:1px solid #ba9569;border-radius:50%;font:italic 14px var(--serif);color:#d9bd98}
.brand-name{font:20px var(--serif);letter-spacing:.03em}.brand-name span{color:#c3a078}
.primary-nav{display:flex;gap:2.1rem;align-items:center}
.primary-nav a{text-decoration:none;font-size:.81rem;letter-spacing:.04em;color:#e3e1d9;transition:color .2s}
.primary-nav a:hover{color:#d9b786}
.primary-nav .nav-cta{padding:.7rem 1rem;border:1px solid #79694f;color:#f4ead8}
.menu-toggle{display:none;border:0;background:none;color:inherit;padding:.6rem}
.hero{min-height:640px;position:relative;overflow:hidden;display:flex;align-items:center;background:#171915;color:#f4f0e5;padding:6rem max(8%,calc((100vw - 1180px)/2))}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,25,21,.98) 0%,rgba(23,25,21,.93) 43%,rgba(23,25,21,.18) 100%),radial-gradient(ellipse at 75% 65%,#4a4939 0%,#252921 48%,transparent 70%)}
.hero-grain{position:absolute;inset:0;opacity:.14;background-image:repeating-linear-gradient(115deg,transparent 0 9px,rgba(255,255,255,.07) 10px,transparent 11px 20px);mask-image:linear-gradient(90deg,#000,transparent)}
.hero-content{position:relative;z-index:2;max-width:650px}
.eyebrow{display:flex;align-items:center;gap:.8rem;margin:0 0 1.5rem;color:#c9b18f;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem}
.eyebrow-rule{width:37px;height:1px;background:#bd925c}
h1,h2,h3,p{margin-top:0}
.hero h1{font:clamp(3.6rem,8vw,7.3rem)/.98 var(--serif);font-weight:400;letter-spacing:-.055em;margin:0}
.hero h1 em,h2 em{font-weight:400;color:#c8a477}
.hero-copy{font:1.05rem/1.8 var(--serif);color:#d0cfc5;max-width:440px;margin:1.6rem 0 2rem}
.button{display:inline-flex;gap:2rem;align-items:center;padding:1rem 1.3rem;text-decoration:none;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;transition:transform .2s,background .2s}
.button:hover{transform:translateY(-2px)}
.button-light{background:#e8dfcd;color:#25251f}
.hero-art{position:absolute;right:9%;top:12%;width:min(42vw,500px);height:76%;min-height:420px}
.sun-disc{position:absolute;width:45%;aspect-ratio:1;border-radius:50%;background:#a77b51;top:8%;right:15%;box-shadow:0 0 90px #bd925c35}
.arch{position:absolute;bottom:-12%;height:90%;width:61%;border-radius:50% 50% 0 0}
.arch-back{right:11%;border:1px solid #9d8a6e;background:linear-gradient(180deg,#454537 0%,#292b24 65%);box-shadow:inset 0 0 0 13px #171915, inset 0 0 0 14px #77694f}
.arch-front{right:20%;bottom:-17%;height:70%;width:43%;border:1px solid #a48b67;background:linear-gradient(180deg,#63513e,#302f28);border-bottom:0}
.arch-line{position:absolute;top:0;left:50%;height:100%;border-left:1px solid #ad9470;opacity:.75}
.art-caption{position:absolute;right:2%;bottom:18%;writing-mode:vertical-rl;font:italic 1rem var(--serif);letter-spacing:.08em;color:#c2b49e}
.section-wrap{max-width:1280px;margin:auto;padding-left:5.4%;padding-right:5.4%}
.intro{padding-top:7rem;padding-bottom:7rem}
.section-label{color:#77776c;text-transform:uppercase;font-size:.66rem;letter-spacing:.16em}.section-label span{color:#b17f4b}
.intro-body{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end;margin-top:2rem}
.intro h2,.section-heading h2,.values h2{font:clamp(2.6rem,5vw,4.6rem)/1.08 var(--serif);letter-spacing:-.04em;margin:0}
.intro h2 em{color:#727d68}
.intro-copy{max-width:440px;color:#66675f;font-size:.94rem}
.intro-copy p:first-child{margin-bottom:1.2rem}
.small-note{font:italic 1.1rem var(--serif);color:#9a754f}
.businesses{padding-top:1rem;padding-bottom:8rem}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.6rem}
.dark-eyebrow{color:#918d7e;margin-bottom:1rem}
.section-heading h2{font-size:clamp(2.4rem,4.5vw,4rem)}
.section-heading h2 em{color:#78816c}
.section-heading>p{max-width:310px;color:#77776c;font-size:.9rem;margin:0 0 .4rem}
.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.business-card{background:#fffdf7;display:grid;grid-template-columns:1fr 1fr;min-height:360px;overflow:hidden}
.card-art{position:relative;min-height:100%;overflow:hidden}
.mart-art{background:linear-gradient(145deg,#8b9b70,#435848)}
.mart-sun{position:absolute;width:47%;aspect-ratio:1;border-radius:50%;background:#ddc58c;top:12%;left:18%;opacity:.9}
.produce{position:absolute;bottom:-8%;border-radius:50% 50% 2px 2px;box-shadow:inset -12px 0 25px #0002}
.produce-one{height:56%;width:31%;left:13%;background:#a6523c;transform:rotate(-12deg)}
.produce-two{height:68%;width:32%;left:39%;background:#bd9452;transform:rotate(8deg)}
.produce-three{height:48%;width:31%;left:64%;background:#557451;transform:rotate(15deg)}
.hotel-art{background:linear-gradient(145deg,#b0845e,#5a4839)}
.hotel-sun{position:absolute;width:48%;aspect-ratio:1;border-radius:50%;background:#dfbf92;top:12%;left:27%}
.hotel-arch{position:absolute;bottom:-22%;left:20%;width:60%;height:77%;border-radius:50% 50% 0 0;background:#372e28;border:1px solid #e0c29a;box-shadow:inset 0 0 0 10px #5a4839,inset 0 0 0 11px #d1ab7d}
.hotel-window{position:absolute;bottom:0;left:42%;width:17%;height:35%;background:#c2976b}
.art-tag{position:absolute;top:1.2rem;left:1.1rem;font:italic .8rem var(--serif);color:#fff8e9;z-index:1}
.card-number{position:absolute;right:1rem;bottom:.6rem;font:2.6rem var(--serif);color:#fff9;z-index:1}
.card-content{align-self:center;padding:2rem 1.7rem}
.card-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.61rem;color:#8f795c;margin-bottom:.7rem}
.card-content h3{font:clamp(1.7rem,2.4vw,2.35rem)/1.1 var(--serif);letter-spacing:-.03em;margin:0 0 .9rem}
.card-content>p:not(.card-kicker){color:#73736a;font-size:.83rem;line-height:1.7}
.text-link{display:inline-flex;gap:.8rem;align-items:center;padding-top:.45rem;text-decoration:none;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #b99264;padding-bottom:.3rem}
.text-link:hover{color:#8e6741}
.values{background:#29352c;color:#f4f0e5;padding:6.5rem 0 7rem}
.values-top{display:flex;justify-content:space-between;align-items:start;gap:2rem}
.light-label{color:#b5b4a8}
.values h2{font-size:clamp(2.5rem,4.5vw,4.2rem)}
.values h2 em{color:#c8a477}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4.5rem}
.value-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:1.4rem;border:1px solid #829080;border-radius:50%}
.value-icon svg{width:26px;height:26px;fill:none;stroke:#d7bd98;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.value-item h3{font:1.25rem var(--serif);margin-bottom:.55rem}
.value-item p{max-width:220px;color:#c1c3b9;font-size:.81rem;line-height:1.65}
.site-footer{background:#171915;color:#f2eee4}
.footer-main{display:grid;grid-template-columns:1.35fr 1fr 1.2fr .8fr;gap:2.5rem;padding-top:4rem;padding-bottom:3.5rem}
.brand-footer .brand-mark{border-color:#806a4e}
.footer-brand>p{max-width:230px;color:#b1b1a7;font:italic 1.05rem/1.6 var(--serif);margin-top:1.2rem}
.footer-col h2{font:1rem var(--serif);margin-bottom:1rem}
.footer-col a,.footer-col p{display:block;color:#b5b6ab;text-decoration:none;font-size:.78rem;margin-bottom:.55rem}
.footer-col a:hover{color:#d6b17e}
.placeholder{color:#c0a27d!important}
.footer-bottom{padding-top:1rem;padding-bottom:1.2rem;border-top:1px solid #3b3d35;display:flex;justify-content:space-between;color:#93958b;font-size:.68rem}
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}
.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:850px){.hero-art{right:-2%;opacity:.75}.hero:before{background:linear-gradient(90deg,rgba(23,25,21,.98),rgba(23,25,21,.8) 60%,rgba(23,25,21,.38))}.business-card{grid-template-columns:1fr}.card-art{min-height:230px}.card-content{padding:1.7rem}.values-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:1fr 1fr}.intro-body{gap:5%}}
@media(max-width:640px){.header-inner{min-height:68px;padding:0 5%}.js .menu-toggle{display:block}.menu-lines,.menu-lines:before,.menu-lines:after{display:block;width:23px;height:1px;background:#f4f0e5;position:relative;transition:transform .2s}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0}.menu-lines:before{top:-7px}.menu-lines:after{top:7px}.menu-toggle[aria-expanded=true] .menu-lines{background:transparent}.menu-toggle[aria-expanded=true] .menu-lines:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{top:0;transform:rotate(-45deg)}.primary-nav{position:absolute;left:0;right:0;top:100%;padding:1rem 5% 1.5rem;background:#171915;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #34362f}.js .primary-nav{display:none}.js .primary-nav.is-open{display:flex}.primary-nav a{padding:.9rem .2rem}.primary-nav .nav-cta{margin-top:.6rem;text-align:center}.hero{min-height:620px;padding:5.5rem 7% 7rem}.hero h1{font-size:clamp(3.5rem,17vw,5.4rem)}.hero-copy{max-width:350px}.hero-art{width:75vw;right:-20%;top:24%;opacity:.45}.intro{padding-top:4.5rem;padding-bottom:4.5rem}.intro-body{grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}.intro h2{font-size:3rem}.businesses{padding-bottom:5rem}.section-heading{display:block}.section-heading>p{margin-top:1rem}.business-grid{grid-template-columns:1fr;gap:1rem}.business-card{grid-template-columns:43% 57%;min-height:300px}.card-art{min-height:100%}.card-content{padding:1.3rem}.card-content h3{font-size:1.75rem}.values{padding:4.5rem 0}.values-top{display:block}.values h2{margin-top:1.7rem}.values-grid{gap:2rem 1.2rem;margin-top:3rem}.value-item h3{font-size:1.1rem}.footer-main{grid-template-columns:1fr 1fr;gap:2rem 1rem;padding-top:3rem}.footer-brand{grid-column:1/-1}.footer-bottom{gap:1rem;flex-direction:column}}
@media(max-width:390px){.business-card{grid-template-columns:1fr}.card-art{min-height:190px}.card-content{padding:1.4rem}.values-grid{grid-template-columns:1fr}.value-item p{max-width:300px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
