:root{--ink:#202123;--ink-soft:#4e4b46;--gold:#9f7627;--gold-dark:#765316;--cream:#f7f3eb;--sand:#e9dfcf;--white:#fff;--green:#4f5c44;--error:#9b2c2c;--success:#35643c;--shadow:0 18px 50px #2021231f;--radius:1rem;--container:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif;line-height:1.65}body:has(.admin-shell){background:#f5f5f2}a{color:inherit}img{max-width:100%}button,input,select,textarea{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}h1,h2,h3{letter-spacing:-.03em;margin:0 0 1rem;font-weight:500;line-height:1.08}h1{font-size:clamp(2.7rem,6vw,5.8rem)}h2{font-size:clamp(2rem,4vw,3.6rem)}h3{font-size:clamp(1.25rem,2vw,1.65rem)}p{margin:0 0 1.15rem}.container{width:min(calc(100% - 2rem), var(--container));margin-inline:auto}.narrow{width:min(100% - 2rem,820px);margin-inline:auto}.section{padding:clamp(4rem,8vw,7rem) 0}.section--white{background:var(--white)}.section--ink{background:var(--ink);color:var(--white)}.section--gold{background:var(--gold);color:var(--white)}.eyebrow{color:var(--gold);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.75rem;font-size:.78rem;font-weight:700}.section--ink .eyebrow,.section--gold .eyebrow{color:var(--sand)}.section-heading{max-width:800px;margin-bottom:2.25rem}.lead{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.55}.muted{color:var(--ink-soft)}.button{min-height:48px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid;border-radius:999px;justify-content:center;align-items:center;padding:.75rem 1.2rem;font-weight:650;text-decoration:none;transition:transform .2s,background .2s,color .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--gold{border-color:var(--gold);background:var(--gold);color:var(--white)}.button--ink{border-color:var(--ink);background:var(--ink);color:var(--white)}.button--light{border-color:var(--white);color:var(--white)}.button-row{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.site-header{z-index:20;background:#f7f3ebf5;border-bottom:1px solid #2021231a;position:relative}.site-header__inner{width:min(calc(100% - 2rem), var(--container));grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;min-height:92px;margin:auto;display:grid}.site-header__logo{display:flex}.brand-logo{object-fit:contain;width:auto;height:58px}.desktop-nav{justify-content:center;gap:clamp(1rem,2.5vw,2.2rem);display:flex}.desktop-nav a{font-size:.94rem;font-weight:600;text-decoration:none}.desktop-nav a:hover{color:var(--gold-dark)}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;font-weight:700;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{background:var(--white);min-width:210px;box-shadow:var(--shadow);border-radius:.75rem;padding:1rem;position:absolute;top:2.5rem;right:0}.mobile-menu nav a{padding:.65rem;text-decoration:none;display:block}.hero{background:var(--ink);min-height:calc(100svh - 92px);color:var(--white);align-items:end;display:flex;position:relative;overflow:hidden}.hero .media-slot{position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(90deg, rgb(24 25 27/var(--hero-overlay-strength,.68)) 0%, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .68)) 44%, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .15)) 76%, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .03)) 100%), linear-gradient(180deg, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .03)) 38%, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .62)) 100%);position:absolute;inset:0}.hero__content{z-index:2;width:min(calc(100% - 2rem), var(--container));margin:0 auto;padding:5rem 0;position:relative}.hero__content>div{max-width:780px}.hero__content h1{text-shadow:0 3px 24px #0000005c;font-size:clamp(2.7rem,5.4vw,5.2rem)}.hero__content p:not(.eyebrow){max-width:700px;font-size:clamp(1.05rem,2vw,1.3rem)}.hero__content p{text-shadow:0 2px 14px #00000073}.hero .eyebrow{color:var(--sand)}.hero .button:not(.button--gold){color:var(--white)}.media-slot{background:var(--sand);position:relative;overflow:hidden}.media-slot img{object-fit:cover;width:100%;height:100%;display:block}.media-slot__fallback{color:#2021238c;text-align:center;background:linear-gradient(135deg,#d7c6a9,#eee5d7);place-items:center;width:100%;height:100%;min-height:280px;padding:2rem;display:grid}.media-slot__fallback span{max-width:240px;font-weight:650}.proof-bar{background:var(--white);border-bottom:1px solid var(--sand);grid-template-columns:repeat(4,1fr);display:grid}.proof-bar span{text-align:center;border-right:1px solid var(--sand);padding:1.2rem;font-weight:650}.proof-bar span:last-child{border-right:0}.intro-copy{max-width:900px}.card-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}.feature-card{background:var(--white);border-radius:var(--radius);flex-direction:column;min-height:100%;display:flex;overflow:hidden;box-shadow:0 8px 30px #2021230f}.feature-card .media-slot{aspect-ratio:4/3}.feature-card__body{flex:1;padding:1.4rem}.feature-card__body a{color:var(--gold-dark);font-weight:700}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,6vw,6rem);display:grid}.split .media-slot{border-radius:var(--radius);min-height:520px}.steps{gap:.25rem;margin-top:1.5rem;display:grid}.step{border-top:1px solid;grid-template-columns:3rem 1fr;align-items:start;padding:1rem 0;display:grid}.step strong{color:var(--gold)}.page-hero{background:var(--ink);color:var(--white);padding:clamp(5rem,10vw,8rem) 0}.page-hero__grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:3rem;display:grid}.page-hero .media-slot{border-radius:var(--radius);min-height:420px}.page-hero .eyebrow{color:var(--sand)}.page-hero p{max-width:700px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.gallery-grid .media-slot{border-radius:.75rem;min-height:360px}.gallery-grid .media-slot:nth-child(2),.gallery-grid .media-slot:nth-child(5){transform:translateY(2rem)}.map-frame{border-radius:var(--radius);border:0;width:100%;min-height:520px}.menu-nav{flex-wrap:wrap;gap:.5rem;margin:2rem 0 3rem;display:flex}.menu-nav a{border:1px solid var(--sand);background:var(--white);border-radius:999px;padding:.55rem .85rem;text-decoration:none}.menu-section{border-top:1px solid var(--sand);padding:2.25rem 0;scroll-margin-top:2rem}.menu-section__head{max-width:700px}.menu-items{grid-template-columns:1fr 1fr;column-gap:3rem;display:grid}.menu-item{border-bottom:1px solid var(--sand);grid-template-columns:1fr auto;gap:1rem;padding:1rem 0;display:grid}.menu-item h3{letter-spacing:0;margin:0;font-size:1.08rem}.menu-item p{color:var(--ink-soft);grid-column:1/-1;margin:-.6rem 0 0;font-size:.92rem}.menu-item__price{color:var(--gold-dark);font-weight:750}.faq-list{border-top:1px solid}.faq-list details{border-bottom:1px solid;padding:1.1rem 0}.faq-list summary{cursor:pointer;font-weight:700}.faq-list p{max-width:780px;margin:1rem 0 0}.form-grid{gap:1rem;display:grid}.form-pair{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{gap:.4rem;display:grid}.field label,.field>span{font-size:.9rem;font-weight:700}.field input,.field select,.field textarea{background:var(--white);width:100%;color:var(--ink);border:1px solid #bbb4aa;border-radius:.6rem;padding:.85rem 1rem}.field textarea{resize:vertical;min-height:130px}.form-message{background:var(--sand);border-radius:.6rem;padding:.8rem 1rem}.form-message--error{color:var(--error);background:#f6dddd}.form-message--success{color:var(--success);background:#dcecdc}.site-footer{background:#ebe3d7;padding:5rem 0 1rem}.footer-grid{grid-template-columns:1.4fr .7fr 1fr;gap:3rem;display:grid}.footer-grid h2{letter-spacing:.08em;text-transform:uppercase;font-size:1rem}.footer-grid a{width:fit-content;margin:.35rem 0;display:block}.footer-bottom{border-top:1px solid #ccc1b0;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1rem;font-size:.85rem;display:flex}.mobile-actions{display:none}.status-pill{background:#eee9df;border-radius:999px;padding:.25rem .6rem;font-size:.76rem;font-weight:750;display:inline-flex}.empty-state{text-align:center;color:var(--ink-soft);border:1px dashed #aaa;border-radius:.75rem;padding:2rem}@media (max-width:980px){.desktop-nav,.desktop-directions{display:none}.site-header__inner{grid-template-columns:1fr auto}.mobile-menu{display:block}.card-grid{grid-template-columns:1fr 1fr}.split,.page-hero__grid{grid-template-columns:1fr}.page-hero .media-slot{min-height:340px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .media-slot:nth-child(2),.gallery-grid .media-slot:nth-child(5){transform:none}}@media (max-width:640px){body{padding-bottom:64px}h1{font-size:clamp(2.45rem,13vw,4rem)}.site-header__inner{min-height:76px}.brand-logo{height:46px}.hero{min-height:calc(92svh - 76px)}.hero:after{background:linear-gradient(180deg, rgb(24 25 27/calc(var(--hero-overlay-strength,.68) * .26)) 0%, rgb(24 25 27/min(1, calc(var(--hero-overlay-strength,.68) * 1.06))) 100%)}.hero__content{padding:3rem 0}.proof-bar{grid-template-columns:1fr 1fr}.proof-bar span{border-bottom:1px solid var(--sand)}.card-grid,.gallery-grid,.menu-items,.form-pair,.footer-grid{grid-template-columns:1fr}.split .media-slot,.map-frame{min-height:340px}.gallery-grid .media-slot{min-height:300px}.footer-bottom{flex-wrap:wrap;justify-content:start}.mobile-actions{z-index:50;background:var(--ink);color:var(--white);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #0000002e}.mobile-actions a{text-align:center;border-right:1px solid #fff3;padding:.8rem .35rem;font-size:.82rem;font-weight:750;text-decoration:none}}.admin-login{background:var(--cream);place-items:center;min-height:100svh;padding:2rem;display:grid}.admin-login__panel{background:var(--white);border-radius:var(--radius);width:min(100%,460px);box-shadow:var(--shadow);padding:2rem}.admin-login__panel .brand-logo{height:88px;margin:0 auto 2rem;display:block}.admin-shell{min-height:100svh;color:var(--ink);grid-template-columns:260px 1fr;display:grid}.admin-sidebar{background:var(--ink);height:100svh;color:var(--white);padding:1.5rem;position:sticky;top:0;overflow-y:auto}.admin-sidebar .brand-logo{filter:invert();height:68px;margin-bottom:2rem}.admin-sidebar nav{gap:.3rem;display:grid}.admin-sidebar nav a,.admin-sidebar button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.5rem;padding:.75rem;text-decoration:none;display:block}.admin-sidebar nav a:hover,.admin-sidebar button:hover{background:#ffffff1a}.admin-content{min-width:0;padding:clamp(1.25rem,4vw,3rem)}.admin-topline{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.admin-topline h1{font-size:clamp(2rem,4vw,3.5rem)}.admin-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.admin-card{background:var(--white);border:1px solid #dedbd5;border-radius:.8rem;padding:1.25rem}.admin-card h2{font-size:1.2rem}.admin-stat{color:var(--gold-dark);font-size:2.5rem;font-weight:700;line-height:1}.admin-section{margin-top:2.5rem}.admin-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.admin-table-wrap{background:var(--white);border:1px solid #dedbd5;border-radius:.8rem;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e6e3de;padding:.8rem 1rem}.admin-table th{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);font-size:.75rem}.admin-table a{color:var(--gold-dark);font-weight:700}.admin-form{background:var(--white);border:1px solid #dedbd5;border-radius:.8rem;gap:1rem;padding:1.25rem;display:grid}.admin-form__grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.admin-form .field input,.admin-form .field select,.admin-form .field textarea{background:#fff}.media-admin-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.media-admin-card{background:var(--white);border:1px solid #dedbd5;border-radius:.8rem;overflow:hidden}.media-admin-card__preview{aspect-ratio:16/9;background:var(--sand);overflow:hidden}.media-admin-card__preview img{object-fit:cover;width:100%;height:100%}.media-admin-card__body{padding:1rem}.focal-preview{gap:.75rem;display:grid}.focal-preview__image{aspect-ratio:16/9;background:var(--sand);border-radius:.5rem;overflow:hidden}.focal-preview__image img{object-fit:cover;width:100%;height:100%}.range-row{grid-template-columns:5.5rem 1fr 3rem;align-items:center;gap:.5rem;display:grid}.hero-preview-toolbar{gap:.35rem;display:flex}.hero-preview-toolbar button{background:var(--white);color:var(--ink);cursor:pointer;border:1px solid #bbb4aa;border-radius:999px;padding:.45rem .8rem}.hero-preview-toolbar button.is-active{border-color:var(--ink);background:var(--ink);color:var(--white)}.hero-overlay-preview{--hero-overlay-strength:.68;aspect-ratio:16/7;background:var(--ink);width:100%;color:var(--white);border-radius:.75rem;transition:width .25s,aspect-ratio .25s;position:relative;overflow:hidden}.hero-overlay-preview.is-mobile{aspect-ratio:9/14;width:min(100%,390px)}.hero-overlay-preview>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-overlay-preview:after{content:"";background:linear-gradient(90deg, rgb(24 25 27/var(--hero-overlay-strength)) 0%, rgb(24 25 27/calc(var(--hero-overlay-strength) * .68)) 44%, rgb(24 25 27/calc(var(--hero-overlay-strength) * .15)) 76%, rgb(24 25 27/calc(var(--hero-overlay-strength) * .03)) 100%), linear-gradient(180deg, rgb(24 25 27/calc(var(--hero-overlay-strength) * .03)) 38%, rgb(24 25 27/calc(var(--hero-overlay-strength) * .62)) 100%);position:absolute;inset:0}.hero-overlay-preview.is-mobile:after{background:linear-gradient(180deg, rgb(24 25 27/calc(var(--hero-overlay-strength) * .26)) 0%, rgb(24 25 27/min(1, calc(var(--hero-overlay-strength) * 1.06))) 100%)}.hero-overlay-preview__fallback{background:var(--sand);color:var(--ink-soft);text-align:center;place-items:center;padding:2rem;display:grid;position:absolute;inset:0}.hero-overlay-preview__copy{z-index:1;text-shadow:0 2px 14px #00000080;gap:.45rem;max-width:62%;display:grid;position:absolute;bottom:clamp(1rem,5vw,3rem);left:clamp(1rem,5vw,3rem);right:clamp(1rem,5vw,3rem)}.hero-overlay-preview__copy span{color:var(--sand);letter-spacing:.12em;text-transform:uppercase;font-size:clamp(.55rem,1.2vw,.75rem);font-weight:750}.hero-overlay-preview__copy strong{font-size:clamp(1rem,2.8vw,2.25rem);font-weight:550;line-height:1.08}.hero-overlay-preview__copy small{font-size:clamp(.7rem,1.3vw,.95rem)}.hero-overlay-preview.is-mobile .hero-overlay-preview__copy{max-width:none}.hero-strength-control{grid-template-columns:minmax(190px,1fr) minmax(180px,2fr) 3.5rem;align-items:center;gap:1rem;display:grid}.hero-strength-control>span{display:grid}.hero-strength-control small{color:var(--ink-soft);font-weight:400}.hero-strength-control output{text-align:right;font-weight:750}.proposal-total{border-top:2px solid var(--ink);justify-content:space-between;padding:1rem 0;font-size:1.2rem;font-weight:750;display:flex}.admin-note{border-left:4px solid var(--gold);background:#fbf6ea;padding:1rem}@media (max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{height:auto;position:relative}.admin-sidebar nav{grid-template-columns:repeat(3,1fr)}.admin-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.admin-sidebar nav,.admin-grid,.media-admin-grid,.admin-form__grid,.hero-strength-control{grid-template-columns:1fr}.hero-strength-control output{text-align:left}.admin-content{padding:1rem}}
