:root{
  --paper:#f8f2e8;--paper2:#f1e5d4;--cream:#fffaf3;--ink:#2f2017;--muted:#6e625a;
  --rust:#b75a2d;--rust2:#8f421f;--olive:#465137;--olive2:#2e3828;--sage:#768066;
  --gold:#b58a56;--gold2:#d4b17d;--line:#d8c6ae;--serif:"Cormorant Garamond",Georgia,serif;
  --sans:"Inter",Arial,sans-serif;--shadow:0 18px 44px rgba(58,38,24,.12)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}
body:before{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.075;background:radial-gradient(circle at 18% 22%,rgba(80,55,37,.18) 0 1px,transparent 1.2px),radial-gradient(circle at 77% 68%,rgba(80,55,37,.10) 0 1px,transparent 1.2px);background-size:23px 23px,31px 31px}
a{text-decoration:none;color:inherit}
img{display:block;width:100%}
button{font:inherit}
h1,h2,h3{margin:0;font-family:var(--serif);line-height:.98}
h1{font-size:clamp(3.2rem,5.3vw,5.8rem);font-weight:600;letter-spacing:-.025em}
h2{font-size:clamp(2.6rem,4vw,4.35rem);font-weight:600}
h3{font-size:1.7rem;font-weight:600}
em{font-weight:500}
.eyebrow{margin:0 0 10px;color:var(--rust);font:700 10px var(--sans);letter-spacing:.22em;text-transform:uppercase}
.eyebrow.light{color:var(--gold2)}
.section-pad{padding:76px clamp(22px,5vw,78px)}
.site-header{height:84px;padding:7px clamp(18px,4.5vw,70px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:rgba(251,247,240,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(92,63,42,.13);box-shadow:0 7px 24px rgba(56,37,24,.04)}
.brand{display:flex;align-items:center;gap:10px;min-width:300px}
.brand-crest{width:52px;height:52px;object-fit:contain;flex:0 0 auto}
.brand-type{display:flex;flex-direction:column}
.brand-type strong{font:700 25px/1 var(--serif);letter-spacing:.045em;color:#4c2e20;white-space:nowrap}
.brand-type small{margin-top:5px;color:var(--rust);font:600 8px var(--sans);letter-spacing:.22em}
.main-nav{display:flex;align-items:center;gap:clamp(18px,2.1vw,33px);font:600 16px var(--serif)}
.main-nav a{position:relative;padding:30px 0 27px}
.main-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:20px;height:1px;background:var(--rust);transition:.2s}
.main-nav a:hover:after,.main-nav a.active:after{left:0;right:0}
.menu-toggle{display:none;border:0;background:none;padding:10px}
.menu-toggle span{display:block;width:26px;height:2px;background:var(--ink);margin:5px}
.btn{min-height:44px;padding:12px 23px;display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:700;transition:.2s}
.btn:hover{transform:translateY(-2px)}
.btn-rust{background:var(--rust);color:#fff}
.btn-rust:hover{background:var(--rust2)}
.btn-outline{border-color:#9a775e;color:#62412f;background:#fffaf4}
.btn-brass{background:var(--gold);color:#2b1d14}
.text-link{color:var(--rust);font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.rule,.small-rule{height:1px;background:#6a5546}
.rule{width:56px;margin:24px 0 20px}
.small-rule{width:52px;margin:18px 0 6px}
.service-area{margin:22px 0 0;color:#7a6b61;font-size:11px}
.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.lead{font:500 21px/1.4 var(--serif);color:#50463f}
.section-heading{text-align:left;max-width:760px;margin-bottom:34px}
.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}
.section-heading>p:last-child,.heading-copy{color:#6b5f56}
.split-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:26px}
.split-heading>p{max-width:430px;margin:0;color:#776960;font:18px var(--serif)}
.split-heading.compact{align-items:start}

.home-hero{min-height:575px;display:grid;grid-template-columns:58% 42%;background:var(--cream)}
.home-hero-media{min-height:575px;background:linear-gradient(90deg,rgba(37,24,16,.06),rgba(37,24,16,.01)),url("https://images.pexels.com/photos/25313617/pexels-photo-25313617.jpeg?auto=compress&cs=tinysrgb&w=2000") center/cover}
.home-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:60px clamp(34px,4.6vw,74px);background:linear-gradient(120deg,#fffaf3,#f2e7d7)}
.home-hero-copy h1{color:#3b251a}
.home-hero-copy h1 em{color:#63402e}
.home-hero-copy .lead{max-width:565px;margin:0}
.home-hero-copy .actions{margin-top:29px}
.home-intro{display:grid;grid-template-columns:.9fr 1.1fr .72fr;gap:42px;align-items:center;background:#fffdf9}
.intro-photo-wrap,.about-page-photo{position:relative;max-width:420px;margin:auto}
.intro-photo-card,.portrait-mat{padding:11px 11px 29px;background:#e9ddcd;box-shadow:var(--shadow);transform:rotate(-1deg)}
.intro-photo-card img,.portrait-mat img{aspect-ratio:.84;object-fit:cover;object-position:center 23%;filter:sepia(.05) contrast(.98)}
.paper-note{position:absolute;left:-12px;bottom:6px;padding:10px 18px;background:#f0e3d2;box-shadow:0 8px 20px rgba(54,35,22,.14);transform:rotate(-4deg);font:italic 25px var(--serif);color:#5f3b29}
.intro-copy p{color:#554a42}
.intro-copy .btn{margin-top:8px}
.feature-panel{padding:40px 27px;text-align:center;color:#f6eee2;background:linear-gradient(145deg,var(--olive),var(--olive2));box-shadow:var(--shadow)}
.feature-mark{color:var(--gold2);font-size:28px}
.feature-panel h3{font-size:2rem;margin:8px 0 14px}
.feature-panel>p:not(.eyebrow){margin:0;color:#e8dece;font-size:13px}
.feature-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.22)}
.feature-icons span{color:var(--gold2);font-size:23px}
.feature-icons small{display:block;color:#f2e8da;font-size:9px;margin-top:4px}
.home-services{background:linear-gradient(#f1e6d6,#f8f2e8)}
.service-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-preview{background:#fffaf3;border:1px solid #deceb9;box-shadow:0 10px 28px rgba(59,39,26,.07);transition:.2s}
.service-preview:hover{transform:translateY(-4px)}
.service-preview img{height:220px;object-fit:cover}
.service-preview>div{padding:19px 19px 23px}
.service-preview span{color:var(--rust);font:700 10px var(--sans);letter-spacing:.16em}
.service-preview h3{margin:5px 0 8px;color:#533323}
.service-preview p{margin:0;color:#6b5f56;font-size:13px}
.story-strip{display:grid;grid-template-columns:1fr 1.35fr 1fr;min-height:285px;background:#34251c}
.story-photo{min-height:285px;background-size:cover;background-position:center}
.story-a{background-image:url("https://images.pexels.com/photos/9056669/pexels-photo-9056669.jpeg?auto=compress&cs=tinysrgb&w=1000")}
.story-b{background-image:url("https://images.pexels.com/photos/29141327/pexels-photo-29141327.jpeg?auto=compress&cs=tinysrgb&w=1000")}
.story-copy{padding:34px 28px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff6e8;background:linear-gradient(rgba(50,35,26,.93),rgba(50,35,26,.95))}
.story-copy h2{font-size:2.6rem}
.story-copy h2 em{color:var(--gold2)}
.story-copy p:not(.eyebrow){max-width:500px;color:#dbcdbb;font:16px var(--serif)}
.story-copy a{margin-top:9px;border:1px solid #b88955;padding:10px 17px;color:#fff1df;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.home-sales{background:#fffaf4}
.sale-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sale-preview-card{position:relative;min-height:285px;overflow:hidden;box-shadow:var(--shadow)}
.sale-preview-card img{height:100%;min-height:285px;object-fit:cover;transition:.3s}
.sale-preview-card:hover img{transform:scale(1.025)}
.sale-preview-card>div{position:absolute;left:16px;right:16px;bottom:16px;padding:12px 14px;background:rgba(255,250,243,.95);display:grid;grid-template-columns:1fr auto;gap:2px 10px}
.sale-preview-card small{grid-column:1/-1;color:#8b6650;font-size:8px;font-weight:700;letter-spacing:.14em}
.sale-preview-card strong{font:600 19px var(--serif)}
.sale-preview-card span{color:var(--rust)}
.social-band{min-height:180px;display:grid;grid-template-columns:29% 35% 36%;align-items:center;background:#efe4d3;border-top:1px solid #dccab3;border-bottom:1px solid #dccab3}
.social-image{align-self:stretch;background:linear-gradient(90deg,rgba(239,228,211,.06),rgba(239,228,211,.86)),url("https://images.pexels.com/photos/5490199/pexels-photo-5490199.jpeg?auto=compress&cs=tinysrgb&w=1000") center/cover}
.social-copy{padding:24px 32px}
.social-copy h2{font-size:40px;color:#4d3022;font-style:italic}
.social-copy p:last-child{margin:5px 0 0;font:17px var(--serif);color:#665b52}
.social-actions{padding:22px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.social-btn{min-width:200px;padding:12px 14px;background:#fffaf4;border:1px solid #c9ad8c;display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;box-shadow:0 8px 20px rgba(58,39,26,.07)}
.social-btn>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#5a3a29;color:white;font:700 18px Arial}
.social-btn small{display:block;color:#90725d;font-size:7px;font-weight:700;letter-spacing:.14em}
.social-btn strong{display:block;font:600 18px var(--serif)}
.social-btn b{color:var(--rust);font-weight:400}
.home-contact{display:grid;grid-template-columns:1.15fr .85fr;color:#f7efe4;background:linear-gradient(90deg,#303828,#455038)}
.home-contact-copy{padding:66px clamp(28px,6vw,90px)}
.home-contact-copy h2{color:#fff9ef}
.home-contact-copy>p:not(.eyebrow){max-width:600px;color:#e4dacb;font:19px var(--serif)}
.contact-inline{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}
.contact-inline a{padding:11px 14px;border:1px solid rgba(213,179,126,.38);background:rgba(255,255,255,.05);color:#fff7e8;font:600 15px var(--serif)}
.home-contact-brand{display:grid;place-items:center;padding:38px;border-left:1px solid rgba(213,179,126,.22)}
.home-contact-brand img{max-width:260px}

.page-hero{min-height:420px;display:flex;align-items:flex-end;background-size:cover;background-position:center}
.about-hero{background-image:linear-gradient(90deg,rgba(39,26,18,.58),rgba(39,26,18,.18)),url("https://images.pexels.com/photos/4917121/pexels-photo-4917121.jpeg?auto=compress&cs=tinysrgb&w=1800")}
.services-hero{background-image:linear-gradient(90deg,rgba(39,26,18,.58),rgba(39,26,18,.18)),url("https://images.pexels.com/photos/9056659/pexels-photo-9056659.jpeg?auto=compress&cs=tinysrgb&w=1800")}
.sales-hero{background-image:linear-gradient(90deg,rgba(39,26,18,.62),rgba(39,26,18,.18)),url("https://images.pexels.com/photos/25313617/pexels-photo-25313617.jpeg?auto=compress&cs=tinysrgb&w=1800")}
.contact-hero{background-image:linear-gradient(90deg,rgba(39,26,18,.64),rgba(39,26,18,.22)),url("https://images.pexels.com/photos/29239249/pexels-photo-29239249.jpeg?auto=compress&cs=tinysrgb&w=1800")}
.page-hero-overlay{width:min(720px,calc(100% - 44px));margin:0 0 54px clamp(22px,6vw,92px);color:#fff8ee}
.page-hero-overlay h1{font-size:clamp(3.3rem,5vw,5.5rem)}
.page-hero-overlay h1 em{color:#e1bd8a}
.page-hero-overlay>p:last-child{max-width:620px;margin:16px 0 0;color:#eadfce;font:20px var(--serif)}
.about-page{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;background:#fffdf9}
.about-page-copy p{color:#574c44}
.about-page-copy blockquote{margin:28px 0 0;padding:18px 0 18px 24px;border-left:2px solid var(--rust);color:#694533;font:italic 25px var(--serif)}
.values-section{background:linear-gradient(#f0e5d4,#f7f0e6)}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.values-grid article{padding:26px 20px;text-align:center;background:#fffaf3;border:1px solid #ddcbb4}
.values-grid span{width:48px;height:48px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;color:white;background:var(--rust);font-size:22px}
.values-grid h3{color:#533323}
.values-grid p{margin:7px 0 0;color:#675b52;font-size:13px}
.quote-band{min-height:330px;display:grid;place-items:center;text-align:center;padding:45px 24px;color:#fff7e9;background:linear-gradient(rgba(48,54,39,.91),rgba(48,54,39,.94)),url("https://images.pexels.com/photos/29141327/pexels-photo-29141327.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover}
.quote-band h2{font-size:clamp(2.7rem,4vw,4.4rem)}
.quote-band h2 em{color:var(--gold2)}
.quote-band .btn{margin-top:24px}

.services-page{background:#fffdf9}
.services-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.services-detail-grid article{position:relative;padding:30px 24px;background:#fffaf3;border:1px solid #dcc9b2;min-height:220px}
.services-detail-grid .num{position:absolute;right:18px;top:12px;color:#dfcdb8;font:700 36px var(--serif)}
.services-detail-grid h3{margin-bottom:10px;color:#523222}
.services-detail-grid p{margin:0;color:#675b52;font-size:13px}
.process-section{display:grid;grid-template-columns:47% 53%;min-height:560px;background:var(--olive2);color:#fff4e6}
.process-image{background:linear-gradient(90deg,rgba(38,25,17,.10),rgba(38,25,17,.28)),url("https://images.pexels.com/photos/4846384/pexels-photo-4846384.jpeg?auto=compress&cs=tinysrgb&w=1500") center/cover}
.process-copy{padding:62px clamp(30px,6vw,86px);display:flex;flex-direction:column;justify-content:center}
.process-copy h2 em{color:var(--gold2)}
.process-copy ol{list-style:none;padding:0;margin:24px 0 0}
.process-copy li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:14px 0;border-top:1px solid rgba(255,255,255,.17)}
.process-copy li:last-child{border-bottom:1px solid rgba(255,255,255,.17)}
.process-copy li>span{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--gold2);color:var(--gold2);font:700 17px var(--serif)}
.process-copy strong{font:600 20px var(--serif)}
.process-copy p{margin:3px 0 0;color:#ddd2c2;font-size:13px}
.faq-section{background:#f6eee3}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:1050px;margin:auto}
.faq-grid article{padding:23px 24px;background:#fffaf4;border:1px solid #decdb8}
.faq-grid h3{color:#503022}
.faq-grid p{margin:8px 0 0;color:#685c53}
.cta-banner{padding:38px clamp(22px,5vw,78px);display:flex;align-items:center;justify-content:space-between;gap:30px;color:#fff8ec;background:#6d3528}
.cta-banner h2{font-size:2.5rem}

.sales-layout{display:grid;grid-template-columns:330px 1fr;gap:38px;align-items:start;background:#fffaf4}
.calendar-card{position:sticky;top:106px;padding:25px;background:#efe4d3;border:1px solid #d2bda1;box-shadow:0 10px 26px rgba(59,39,25,.07)}
.calendar-top h2{font-size:2rem}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:20px}
.calendar-grid span{aspect-ratio:1;display:grid;place-items:center;background:#fffaf3;font:600 12px var(--serif);border:1px solid rgba(123,92,65,.08)}
.calendar-grid .dow{aspect-ratio:auto;background:transparent;border:0;color:#8a6b55;font:700 8px var(--sans)}
.calendar-grid .muted-day{color:#b8aa9c;background:#f5eee5}
.calendar-note{margin:18px 0 0;color:#73665c;font-size:11px}
.estate-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.estate-card{background:white;border:1px solid #dfcfbb;box-shadow:0 10px 28px rgba(59,39,26,.07)}
.estate-card img{height:250px;object-fit:cover}
.estate-card-body{padding:18px}
.estate-card-body small,.catalog-grid small{color:var(--rust);font-size:8px;font-weight:700;letter-spacing:.14em}
.estate-card-body h3{margin:4px 0 8px;color:#523222}
.estate-card-body p{margin:0;color:#6b5f56;font-size:13px}
.estate-card-body span{display:block;margin-top:13px;color:#8a725f;font:italic 15px var(--serif)}
.catalog-section{background:linear-gradient(#f0e4d3,#f8f1e7)}
.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.catalog-grid article{background:#fffaf3;border:1px solid #ddcbb4}
.catalog-grid img{height:205px;object-fit:cover}
.catalog-grid article>div{padding:15px}
.catalog-grid h3{margin:4px 0;color:#523222;font-size:1.45rem}
.catalog-grid p{margin:0;color:#796a5f;font-size:12px}
.sales-note{padding:50px clamp(22px,6vw,92px);color:#fff6e8;background:linear-gradient(90deg,#313928,#48513a)}
.sales-note>div{max-width:760px}
.sales-note h2{font-size:2.7rem}
.sales-note p:last-child{color:#dfd4c5}

.contact-page{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fffdf9}
.contact-card{padding-right:clamp(0px,4vw,58px)}
.contact-intro{max-width:700px;color:#64584f;font:19px var(--serif)}
.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:28px 0}
.contact-methods a{padding:16px;border:1px solid #dcc8af;background:#fffaf3;display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:center}
.contact-methods>a>span{width:36px;height:36px;display:grid;place-items:center;border:1px solid #b88a59;color:#8f552f}
.contact-methods small{display:block;color:#9a7559;font-size:8px;font-weight:700;letter-spacing:.14em}
.contact-methods strong{display:block;font:600 17px var(--serif);overflow-wrap:anywhere}
.service-region{margin-top:26px;padding-top:19px;border-top:1px solid var(--line)}
.service-region strong{font:600 20px var(--serif)}
.contact-visual{min-height:480px;padding:45px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,var(--olive),var(--olive2));color:#f8efe2}
.contact-visual img{max-width:300px}
.contact-visual p{font:italic 20px var(--serif);color:#d8c4a7}
.contact-photo-band{min-height:300px;display:grid;place-items:center;text-align:center;padding:40px;color:#fff8ec;background:linear-gradient(rgba(53,35,25,.63),rgba(53,35,25,.67)),url("https://images.pexels.com/photos/4917121/pexels-photo-4917121.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover}
.contact-photo-band>div{max-width:780px}
.contact-photo-band h2{font-size:3rem}

.site-footer{min-height:84px;padding:12px clamp(20px,4.5vw,70px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;background:#201711;color:#e4d3bd;border-top:1px solid #765f47}
.footer-brand{display:flex;align-items:center;gap:9px}
.footer-brand img{width:44px;height:44px;object-fit:contain}
.footer-brand>div{display:flex;flex-direction:column}
.footer-brand strong{font:600 19px var(--serif)}
.footer-brand small{color:#cda978;font-size:7px;font-weight:700;letter-spacing:.16em}
.site-footer>p{margin:0;color:#c9a779;font:italic 17px var(--serif)}
.footer-links{display:flex;justify-content:flex-end;gap:19px;font:600 14px var(--serif)}

@media(max-width:1050px){
  .brand{min-width:auto}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:84px;left:16px;right:16px;flex-direction:column;gap:0;padding:10px 18px;background:#fffaf3;border:1px solid #decbb4;box-shadow:0 18px 42px rgba(50,33,22,.14)}
  .main-nav.open{display:flex}
  .main-nav a{padding:11px 0}
  .main-nav a:after{display:none}
  .home-intro{grid-template-columns:1fr 1.1fr}
  .feature-panel{grid-column:1/-1}
  .social-band{grid-template-columns:1fr 2fr}
  .social-actions{grid-column:1/-1}
  .services-detail-grid{grid-template-columns:repeat(2,1fr)}
  .catalog-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
  .site-header{height:72px;padding:5px 14px}
  .brand-crest{width:45px;height:45px}
  .brand-type strong{font-size:19px}
  .brand-type small{font-size:6.5px}
  .main-nav{top:72px}
  .home-hero{grid-template-columns:1fr}
  .home-hero-media{min-height:315px}
  .home-hero-copy{padding:40px 23px 46px}
  .home-hero-copy h1{font-size:clamp(2.9rem,12vw,4rem)}
  .home-intro{grid-template-columns:1fr}
  .intro-photo-wrap{width:min(80vw,420px)}
  .feature-panel{grid-column:auto}
  .service-preview-grid{grid-template-columns:1fr}
  .story-strip{grid-template-columns:1fr 1fr}
  .story-copy{grid-column:1/-1;grid-row:1;min-height:240px}
  .story-photo{min-height:180px}
  .sale-preview-grid{grid-template-columns:1fr}
  .social-band{grid-template-columns:1fr}
  .social-image{min-height:160px}
  .social-copy{text-align:center}
  .social-actions{grid-column:auto}
  .home-contact{grid-template-columns:1fr}
  .home-contact-brand{border-left:0;border-top:1px solid rgba(213,179,126,.22);min-height:250px}
  .page-hero{min-height:350px}
  .page-hero-overlay{margin:0 22px 38px}
  .about-page{grid-template-columns:1fr;gap:45px}
  .about-page-photo{width:min(78vw,420px)}
  .values-grid{grid-template-columns:repeat(2,1fr)}
  .process-section{grid-template-columns:1fr}
  .process-image{min-height:330px}
  .faq-grid{grid-template-columns:1fr}
  .cta-banner{flex-direction:column;align-items:flex-start}
  .sales-layout{grid-template-columns:1fr}
  .calendar-card{position:static;max-width:480px}
  .estate-grid{grid-template-columns:1fr}
  .contact-page{grid-template-columns:1fr}
  .contact-card{padding-right:0}
  .contact-visual{min-height:300px;margin-top:35px}
  .site-footer{grid-template-columns:1fr;text-align:center}
  .footer-brand{justify-content:center}
  .footer-links{justify-content:center;flex-wrap:wrap}
}
@media(max-width:540px){
  .section-pad{padding:54px 18px}
  .brand{gap:7px}
  .brand-type strong{font-size:16px}
  .brand-type small{letter-spacing:.11em}
  .home-hero-media{min-height:270px}
  .home-hero-copy{padding:34px 20px 39px}
  .home-hero-copy .actions{flex-direction:column;align-items:stretch}
  .home-hero-copy .btn{width:100%}
  .home-hero-copy .text-link{text-align:center}
  .service-area{text-align:center}
  .intro-photo-wrap{width:min(84vw,350px)}
  .paper-note{font-size:22px}
  .story-copy h2{font-size:2.2rem}
  .split-heading{flex-direction:column;align-items:flex-start;gap:8px}
  .social-copy{padding:24px 18px}
  .social-actions{padding:18px}
  .social-btn{width:100%;min-width:0}
  .home-contact-copy{padding:50px 20px}
  .contact-inline{flex-direction:column}
  .page-hero-overlay h1{font-size:3.2rem}
  .values-grid{grid-template-columns:1fr}
  .services-detail-grid{grid-template-columns:1fr}
  .process-copy{padding:50px 21px}
  .catalog-grid{grid-template-columns:1fr}
  .contact-methods{grid-template-columns:1fr}
  .contact-visual{padding:28px}
  .contact-visual img{max-width:230px}
}

/* v0.5.2 — vintage farmhouse refinement */
:root{
  --walnut:#5a3a28;
  --walnut-dark:#352218;
  --tobacco:#7c5136;
  --linen:#efe2cf;
  --parchment:#f3e7d5;
}

/* Gentle paper grain and age variation across light sections */
body{
  background:
    linear-gradient(rgba(248,242,232,.965),rgba(248,242,232,.965)),
    repeating-linear-gradient(0deg,rgba(91,61,40,.055) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(91,61,40,.025) 0 1px,transparent 1px 11px),
    var(--paper);
}
body:before{
  opacity:.11;
  background:
    radial-gradient(circle at 18% 22%,rgba(82,54,35,.22) 0 1px,transparent 1.2px),
    radial-gradient(circle at 77% 68%,rgba(82,54,35,.12) 0 1px,transparent 1.2px),
    linear-gradient(115deg,transparent 0 42%,rgba(117,83,55,.025) 43% 44%,transparent 45% 100%);
  background-size:23px 23px,31px 31px,170px 170px;
}
.site-header{
  background:
    linear-gradient(rgba(250,246,238,.965),rgba(250,246,238,.965)),
    repeating-linear-gradient(90deg,rgba(92,62,42,.035) 0 1px,transparent 1px 9px);
}
.home-hero-copy,
.about-page,
.services-page,
.contact-page,
.home-sales{
  background:
    linear-gradient(rgba(255,250,243,.96),rgba(255,250,243,.96)),
    repeating-linear-gradient(0deg,rgba(88,59,40,.045) 0 1px,transparent 1px 6px),
    radial-gradient(circle at 75% 20%,rgba(170,119,71,.09),transparent 24%),
    var(--cream);
}
.home-services,
.values-section,
.faq-section,
.catalog-section{
  background:
    linear-gradient(rgba(241,230,214,.93),rgba(248,242,232,.96)),
    repeating-linear-gradient(90deg,rgba(91,61,40,.035) 0 1px,transparent 1px 8px),
    var(--paper2);
}
.service-preview,
.sale-preview-card>div,
.social-btn,
.contact-methods a,
.values-grid article,
.services-detail-grid article,
.faq-grid article,
.catalog-grid article,
.calendar-card{
  box-shadow:0 10px 28px rgba(74,48,31,.08);
}

/* Home intro: vintage still-life replaces duplicate portrait */
.intro-still-life{
  min-height:470px;
  width:min(100%,430px);
}
.vintage-still{
  position:absolute;
  background-size:cover;
  background-position:center;
  box-shadow:var(--shadow);
  border:10px solid #e9ddcc;
}
.vintage-still-main{
  inset:18px 42px 42px 0;
  background-image:
    linear-gradient(rgba(59,39,27,.04),rgba(59,39,27,.08)),
    url("https://images.pexels.com/photos/4917121/pexels-photo-4917121.jpeg?auto=compress&cs=tinysrgb&w=1000");
  transform:rotate(-1.5deg);
}
.vintage-still-small{
  width:46%;
  height:42%;
  right:0;
  bottom:12px;
  background-image:
    linear-gradient(rgba(59,39,27,.06),rgba(59,39,27,.10)),
    url("https://images.pexels.com/photos/5490199/pexels-photo-5490199.jpeg?auto=compress&cs=tinysrgb&w=700");
  transform:rotate(2.5deg);
  border-width:8px;
}
.intro-still-life .paper-note{
  left:18px;
  bottom:0;
  z-index:3;
  background:#ead7bd;
  color:#633e2b;
}

/* Bring richer brown/leather tones into accents */
.btn-outline{
  border-color:#9a6a4a;
  color:var(--walnut);
  background:#fff9f0;
}
.story-copy{
  background:
    linear-gradient(rgba(53,34,24,.94),rgba(45,29,21,.96)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 1px,transparent 1px 11px);
}
.social-band{
  background:
    linear-gradient(rgba(239,228,211,.95),rgba(239,228,211,.95)),
    repeating-linear-gradient(0deg,rgba(103,68,45,.04) 0 1px,transparent 1px 7px),
    #efe4d3;
}
.site-footer{
  background:
    linear-gradient(rgba(32,23,17,.97),rgba(32,23,17,.97)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 10px),
    var(--walnut-dark);
}

/* Reliable large brand treatment: built from the known-good crest plus live type */
.home-contact-brand{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at center,rgba(202,161,105,.11),transparent 52%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 12px);
}
.home-contact-brand:before,
.home-contact-brand:after{
  content:"";
  position:absolute;
  width:1px;
  height:65%;
  top:17.5%;
  background:rgba(213,179,126,.18);
}
.home-contact-brand:before{left:16%}
.home-contact-brand:after{right:16%}
.heritage-mark{
  width:min(320px,90%);
  padding:26px 28px 24px;
  text-align:center;
  border:1px solid rgba(213,179,126,.42);
  outline:1px solid rgba(213,179,126,.14);
  outline-offset:6px;
  background:rgba(40,47,34,.32);
  box-shadow:0 18px 38px rgba(24,17,12,.15);
}
.heritage-mark img{
  width:92px;
  height:92px;
  margin:0 auto 9px;
  object-fit:contain;
}
.heritage-mark>span{
  display:block;
  font:600 30px/1 var(--serif);
  letter-spacing:.055em;
  color:#f4e7d2;
}
.heritage-mark>small{
  display:block;
  margin-top:7px;
  color:var(--gold2);
  font:700 8px var(--sans);
  letter-spacing:.22em;
}
.heritage-mark>i{
  display:block;
  margin-top:18px;
  color:#d8c5aa;
  font:italic 17px var(--serif);
}

/* Contact page: replace empty green block with an editorial image + inset brand card */
.contact-visual{
  position:relative;
  min-height:500px;
  padding:0;
  overflow:hidden;
  background:var(--olive2);
}
.contact-visual-photo{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(36,29,21,.18),rgba(42,49,35,.66)),
    url("https://images.pexels.com/photos/9056669/pexels-photo-9056669.jpeg?auto=compress&cs=tinysrgb&w=1200") center/cover;
}
.contact-visual-card{
  position:absolute;
  left:9%;
  right:9%;
  bottom:9%;
  padding:24px 24px 21px;
  text-align:center;
  color:#fff6e7;
  border:1px solid rgba(219,184,132,.56);
  background:rgba(47,35,25,.84);
  backdrop-filter:blur(5px);
  box-shadow:0 16px 38px rgba(28,18,12,.30);
}
.contact-visual-card img{
  width:72px;
  height:72px;
  object-fit:contain;
  margin:-54px auto 8px;
  filter:drop-shadow(0 5px 12px rgba(0,0,0,.25));
}
.contact-visual-card .eyebrow{margin-bottom:6px}
.contact-visual-card h3{font-size:2rem}
.contact-visual-card>span{
  display:block;
  width:54px;
  height:1px;
  margin:15px auto 12px;
  background:var(--gold2);
}
.contact-visual-card>p:last-child{
  margin:0 auto;
  max-width:360px;
  color:#e0d1bd;
  font:15px/1.45 var(--serif);
}

/* Slightly warmer brown treatment for contact cards */
.contact-methods a{
  background:
    linear-gradient(rgba(255,250,243,.95),rgba(255,250,243,.95)),
    repeating-linear-gradient(0deg,rgba(95,62,42,.05) 0 1px,transparent 1px 7px);
}
.contact-methods>a>span{
  border-color:#a66e46;
  color:#7b4a2f;
}

@media(max-width:800px){
  .intro-still-life{min-height:430px;width:min(82vw,400px)}
  .contact-visual{min-height:410px;margin-top:35px}
  .contact-visual-card{left:7%;right:7%;bottom:8%}
  .home-contact-brand{min-height:330px}
}
@media(max-width:540px){
  .intro-still-life{min-height:370px;width:min(88vw,340px)}
  .vintage-still-main{inset:12px 34px 38px 0}
  .vintage-still-small{width:48%;height:40%}
  .heritage-mark{width:min(290px,88%);padding:23px 19px 21px}
  .heritage-mark img{width:78px;height:78px}
  .heritage-mark>span{font-size:25px}
  .contact-visual{min-height:390px}
  .contact-visual-card{left:6%;right:6%;padding:22px 18px 18px}
  .contact-visual-card h3{font-size:1.72rem}
}


/* v0.5.3 — complete logo repair
   The previous standalone crest asset had been cropped through the lower stone curve.
   Use the original complete full logo as the source everywhere and crop only the
   emblem presentation with CSS where a compact mark is needed. */
.brand-crest{
  width:54px;
  height:54px;
  display:block;
  position:relative;
  overflow:hidden;
  flex:0 0 auto;
}
.brand-crest img{
  position:absolute;
  width:81px;
  height:81px;
  max-width:none;
  left:50%;
  top:0;
  transform:translateX(-50%);
  object-fit:contain;
}

.footer-crest{
  width:46px;
  height:46px;
  display:block;
  position:relative;
  overflow:hidden;
  flex:0 0 auto;
}
.footer-crest img{
  position:absolute;
  width:69px;
  height:69px;
  max-width:none;
  left:50%;
  top:0;
  transform:translateX(-50%);
  object-fit:contain;
}

/* Full logo treatments retain the complete bottom rule and ESTATE SALES line. */
.heritage-mark .heritage-full-logo{
  width:min(235px,88%);
  height:auto;
  max-width:none;
  margin:0 auto 12px;
  object-fit:contain;
}
.heritage-mark>span,
.heritage-mark>small{
  display:none;
}

.contact-visual-card .contact-full-logo{
  width:min(190px,72%);
  height:auto;
  max-width:none;
  margin:-62px auto 10px;
  object-fit:contain;
  filter:drop-shadow(0 5px 12px rgba(0,0,0,.25));
}

/* Ensure no logo container can clip the complete mark vertically. */
.brand,
.footer-brand,
.heritage-mark,
.contact-visual-card{
  overflow:visible;
}

@media(max-width:800px){
  .brand-crest{width:47px;height:47px}
  .brand-crest img{width:71px;height:71px}
  .footer-crest{width:44px;height:44px}
  .footer-crest img{width:66px;height:66px}
}
@media(max-width:540px){
  .brand-crest{width:43px;height:43px}
  .brand-crest img{width:65px;height:65px}
  .heritage-mark .heritage-full-logo{width:min(220px,90%)}
  .contact-visual-card .contact-full-logo{width:min(170px,72%);margin-top:-54px}
}


/* v0.5.4 — official transparent master logo
   This asset is derived directly from the client-supplied transparent source.
   The artwork is unchanged; only web sizing/compression and clear padding were applied. */
.brand-crest,
.footer-crest{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.brand-crest{
  width:56px;
  height:58px;
  overflow:hidden;
}
.brand-crest img{
  width:92px;
  height:92px;
  max-width:none;
  left:50%;
  top:-3px;
  transform:translateX(-50%);
  object-fit:contain;
}

.footer-crest{
  width:45px;
  height:47px;
  overflow:hidden;
}
.footer-crest img{
  width:74px;
  height:74px;
  max-width:none;
  left:50%;
  top:-2px;
  transform:translateX(-50%);
  object-fit:contain;
}

/* Give the transparent full mark a warm parchment field instead of a black box. */
.heritage-mark{
  width:min(340px,90%);
  padding:24px 26px 23px;
  background:
    linear-gradient(rgba(247,237,222,.97),rgba(241,225,203,.97)),
    repeating-linear-gradient(0deg,rgba(91,61,40,.04) 0 1px,transparent 1px 7px);
  border:1px solid rgba(173,126,79,.56);
  outline:1px solid rgba(213,179,126,.18);
  color:var(--ink);
}
.heritage-mark .heritage-full-logo{
  display:block;
  width:min(265px,92%);
  height:auto;
  margin:0 auto 7px;
  object-fit:contain;
  filter:none;
}
.heritage-mark>i{
  margin-top:8px;
  color:#6c513e;
  font-size:16px;
}

/* Contact feature: vintage photograph + parchment brand card. */
.contact-visual-card{
  left:8%;
  right:8%;
  bottom:7%;
  padding:24px 24px 22px;
  color:var(--ink);
  border:1px solid rgba(173,126,79,.60);
  background:
    linear-gradient(rgba(248,239,225,.965),rgba(240,224,202,.965)),
    repeating-linear-gradient(0deg,rgba(91,61,40,.045) 0 1px,transparent 1px 7px);
  backdrop-filter:blur(5px);
  box-shadow:0 18px 40px rgba(28,18,12,.28);
}
.contact-visual-card .contact-full-logo{
  display:block;
  width:min(205px,72%);
  height:auto;
  max-width:none;
  margin:0 auto 6px;
  object-fit:contain;
  filter:none;
}
.contact-visual-card h3{
  color:var(--walnut);
  margin-top:2px;
}
.contact-visual-card>span{
  background:#aa774c;
}
.contact-visual-card>p:last-child{
  color:#6d5a4b;
}

/* Transparent artwork needs breathing room, especially on mobile. */
.brand img,
.footer-brand img,
.heritage-mark img,
.contact-visual-card img{
  background:transparent !important;
}
.brand,
.footer-brand{
  align-items:center;
}

@media(max-width:800px){
  .brand-crest{width:48px;height:50px}
  .brand-crest img{width:80px;height:80px;top:-3px}
  .footer-crest{width:43px;height:45px}
  .footer-crest img{width:70px;height:70px}
  .contact-visual-card{left:7%;right:7%;bottom:7%}
}
@media(max-width:540px){
  .brand-crest{width:44px;height:46px}
  .brand-crest img{width:73px;height:73px;top:-2px}
  .heritage-mark .heritage-full-logo{width:min(240px,92%)}
  .contact-visual-card .contact-full-logo{width:min(190px,76%);margin-top:0}
}


/* v0.5.5 — emergency logo restoration using verified transparent source */
.brand-official{
  min-width:0;
  width:auto;
  height:62px;
  display:flex;
  align-items:center;
  overflow:visible;
}

/* Same official square artwork, cropped only to its lower wordmark for the header.
   This keeps the header compact and removes the awkward clipped crest treatment. */
.brand-wordmark-crop{
  position:relative;
  display:block;
  width:190px;
  height:48px;
  overflow:hidden;
  background:transparent;
}
.brand-wordmark-crop img{
  position:absolute;
  width:190px;
  height:auto;
  max-width:none;
  left:0;
  top:-127px;
  background:transparent;
}

.footer-brand-official{
  min-width:190px;
  height:48px;
  overflow:visible;
}
.footer-wordmark-crop{
  position:relative;
  display:block;
  width:180px;
  height:46px;
  overflow:hidden;
  background:transparent;
}
.footer-wordmark-crop img{
  position:absolute;
  width:180px;
  height:auto;
  max-width:none;
  left:0;
  top:-120px;
  background:transparent;
}

/* Full logo presentations use the same exact transparent artwork with no clipping. */
.heritage-mark .heritage-full-logo{
  display:block !important;
  width:min(275px,92%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto 10px !important;
  object-fit:contain !important;
  background:transparent !important;
}
.contact-visual-card .contact-full-logo{
  display:block !important;
  width:min(215px,76%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto 8px !important;
  object-fit:contain !important;
  background:transparent !important;
  filter:none !important;
}

/* Retire the old crest hacks completely. */
.brand-crest,
.footer-crest,
.brand-type{
  display:none !important;
}

@media(max-width:800px){
  .brand-official{height:54px}
  .brand-wordmark-crop{width:166px;height:42px}
  .brand-wordmark-crop img{width:166px;top:-111px}
  .footer-brand-official{min-width:170px;height:44px}
  .footer-wordmark-crop{width:165px;height:42px}
  .footer-wordmark-crop img{width:165px;top:-110px}
}
@media(max-width:540px){
  .brand-wordmark-crop{width:150px;height:39px}
  .brand-wordmark-crop img{width:150px;top:-100px}
  .footer-wordmark-crop{width:155px;height:40px}
  .footer-wordmark-crop img{width:155px;top:-103px}
  .heritage-mark .heritage-full-logo{width:min(245px,92%) !important}
  .contact-visual-card .contact-full-logo{width:min(195px,78%) !important}
}


/* v0.5.6 — visible branding restore
   Use only browser-proven transparent assets: the known-good crest plus an
   exact transparent wordmark exported from the approved master logo. */
.brand-restored{
  min-width:0 !important;
  height:64px;
  display:flex !important;
  align-items:center !important;
  gap:9px;
  overflow:visible !important;
}
.brand-restored-crest{
  display:block !important;
  width:48px !important;
  height:48px !important;
  object-fit:contain !important;
  flex:0 0 auto;
  background:transparent !important;
}
.brand-restored-wordmark{
  display:block !important;
  width:178px !important;
  height:auto !important;
  object-fit:contain !important;
  background:transparent !important;
}

.footer-brand-restored{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start;
  gap:8px;
  min-width:0 !important;
  height:auto !important;
  overflow:visible !important;
}
.footer-restored-crest{
  display:block !important;
  width:40px !important;
  height:40px !important;
  object-fit:contain !important;
  background:transparent !important;
}
.footer-restored-wordmark{
  display:block !important;
  width:145px !important;
  height:auto !important;
  object-fit:contain !important;
  background:transparent !important;
}

.heritage-mark-restored{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.heritage-restored-crest{
  display:block !important;
  width:92px !important;
  height:92px !important;
  object-fit:contain !important;
  margin:0 auto 4px !important;
  background:transparent !important;
}
.heritage-restored-wordmark{
  display:block !important;
  width:min(250px,92%) !important;
  height:auto !important;
  object-fit:contain !important;
  margin:0 auto 8px !important;
  background:transparent !important;
}

.contact-brand-lockup{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin:0 auto 10px;
}
.contact-restored-crest{
  display:block !important;
  width:78px !important;
  height:78px !important;
  object-fit:contain !important;
  margin:0 auto 3px !important;
  background:transparent !important;
}
.contact-restored-wordmark{
  display:block !important;
  width:min(205px,78%) !important;
  height:auto !important;
  object-fit:contain !important;
  margin:0 auto !important;
  background:transparent !important;
}

/* Disable every failed logo path/crop from prior iterations. */
.brand-official,
.brand-wordmark-crop,
.footer-brand-official,
.footer-wordmark-crop,
.heritage-full-logo,
.contact-full-logo{
  display:none !important;
}

@media(max-width:800px){
  .brand-restored{height:54px;gap:7px}
  .brand-restored-crest{width:42px !important;height:42px !important}
  .brand-restored-wordmark{width:153px !important}
  .footer-restored-crest{width:36px !important;height:36px !important}
  .footer-restored-wordmark{width:132px !important}
}
@media(max-width:540px){
  .brand-restored{height:50px;gap:6px}
  .brand-restored-crest{width:38px !important;height:38px !important}
  .brand-restored-wordmark{width:140px !important}
  .heritage-restored-crest{width:82px !important;height:82px !important}
  .heritage-restored-wordmark{width:min(220px,92%) !important}
  .contact-restored-crest{width:68px !important;height:68px !important}
  .contact-restored-wordmark{width:min(185px,80%) !important}
}


/* v0.5.8 — corrected transparent logo asset
   Keep the already-live crest and use a newly verified transparent PNG
   wordmark cropped directly from the client master logo. */
.brand-restored-wordmark,
.footer-restored-wordmark,
.heritage-restored-wordmark,
.contact-restored-wordmark{
  display:block !important;
  background:transparent !important;
  object-fit:contain !important;
}

.brand-restored-wordmark{
  width:178px !important;
  height:auto !important;
}
.footer-restored-wordmark{
  width:145px !important;
  height:auto !important;
}
.heritage-restored-wordmark{
  width:min(250px,92%) !important;
  height:auto !important;
  margin:0 auto 8px !important;
}
.contact-restored-wordmark{
  width:min(205px,78%) !important;
  height:auto !important;
  margin:0 auto !important;
}

/* Disable the failed v0.5.5 full-logo/crop path, but not the v0.5.8 assets. */
.brand-official,
.brand-wordmark-crop,
.footer-brand-official,
.footer-wordmark-crop,
.heritage-full-logo,
.contact-full-logo{
  display:none !important;
}

@media(max-width:800px){
  .brand-restored-wordmark{width:153px !important}
  .footer-restored-wordmark{width:132px !important}
}
@media(max-width:540px){
  .brand-restored-wordmark{width:140px !important}
  .heritage-restored-wordmark{width:min(220px,92%) !important}
  .contact-restored-wordmark{width:min(185px,80%) !important}
}


/* v0.5.9 — final single transparent logo asset
   All visible branding uses one validated WebP with alpha, derived directly
   from the client's approved transparent master. No split crest/wordmark. */
.brand-final{
  display:flex !important;
  align-items:center !important;
  min-width:auto !important;
  height:70px !important;
  overflow:visible !important;
}
.brand-final-logo{
  display:block !important;
  width:auto !important;
  height:66px !important;
  max-width:150px !important;
  object-fit:contain !important;
  background:transparent !important;
}

.footer-brand-final{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  overflow:visible !important;
}
.footer-final-logo{
  display:block !important;
  width:auto !important;
  height:58px !important;
  max-width:135px !important;
  object-fit:contain !important;
  background:transparent !important;
}

.heritage-mark-final{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}
.heritage-mark-final .heritage-final-logo{
  display:block !important;
  width:min(240px,88%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto 8px !important;
  object-fit:contain !important;
  background:transparent !important;
  filter:none !important;
}

.contact-brand-final{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 auto 10px !important;
}
.contact-brand-final .contact-final-logo{
  display:block !important;
  width:min(210px,82%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  object-fit:contain !important;
  background:transparent !important;
  filter:none !important;
}

/* Explicitly retire every previous split/broken logo implementation. */
.brand-restored-crest,
.brand-restored-wordmark,
.footer-restored-crest,
.footer-restored-wordmark,
.heritage-restored-crest,
.heritage-restored-wordmark,
.contact-restored-crest,
.contact-restored-wordmark,
.brand-crest,
.footer-crest,
.brand-wordmark-crop,
.footer-wordmark-crop,
.heritage-full-logo,
.contact-full-logo{
  display:none !important;
}

@media(max-width:800px){
  .brand-final{height:62px !important}
  .brand-final-logo{height:58px !important;max-width:132px !important}
  .footer-final-logo{height:52px !important;max-width:120px !important}
}
@media(max-width:540px){
  .brand-final{height:58px !important}
  .brand-final-logo{height:54px !important;max-width:124px !important}
  .footer-final-logo{height:48px !important;max-width:112px !important}
  .heritage-mark-final .heritage-final-logo{width:min(220px,90%) !important}
  .contact-brand-final .contact-final-logo{width:min(195px,84%) !important}
}


/* v0.6.0 — clean logo reset
   One verified PNG file, one URL, unique classes. No legacy crop/split logic. */
.brand-v10{
  display:flex !important;
  align-items:center !important;
  min-height:84px !important;
  height:auto !important;
  overflow:visible !important;
}
.brand-v10-logo{
  display:block !important;
  width:118px !important;
  height:auto !important;
  max-width:118px !important;
  object-fit:contain !important;
  background:transparent !important;
}

.footer-brand-v10{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
  overflow:visible !important;
}
.footer-v10-logo{
  display:block !important;
  width:118px !important;
  height:auto !important;
  max-width:118px !important;
  object-fit:contain !important;
  background:transparent !important;
}

.heritage-mark-v10{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}
.heritage-mark-v10 .heritage-v10-logo{
  display:block !important;
  width:min(230px,88%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto 10px !important;
  object-fit:contain !important;
  background:transparent !important;
  filter:none !important;
}

.contact-brand-v10{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 auto 10px !important;
}
.contact-brand-v10 .contact-v10-logo{
  display:block !important;
  width:min(220px,84%) !important;
  height:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  object-fit:contain !important;
  background:transparent !important;
  filter:none !important;
}

@media(max-width:800px){
  .brand-v10{min-height:78px !important}
  .brand-v10-logo{width:108px !important;max-width:108px !important}
  .footer-v10-logo{width:108px !important;max-width:108px !important}
}
@media(max-width:540px){
  .brand-v10{min-height:74px !important}
  .brand-v10-logo{width:102px !important;max-width:102px !important}
  .footer-v10-logo{width:102px !important;max-width:102px !important}
  .heritage-mark-v10 .heritage-v10-logo{width:min(210px,90%) !important}
  .contact-brand-v10 .contact-v10-logo{width:min(200px,86%) !important}
}


/* v0.6.1 — final client-facing polish */
.skip-link{
  position:fixed;
  left:16px;
  top:12px;
  z-index:9999;
  padding:10px 14px;
  background:var(--walnut,#3a2418);
  color:#fff8ee;
  border:1px solid rgba(255,255,255,.28);
  transform:translateY(-160%);
  transition:transform .18s ease;
}
.skip-link:focus{transform:translateY(0)}

a:focus-visible,
button:focus-visible{
  outline:2px solid var(--rust,#b85d32);
  outline-offset:4px;
}

.footer-legal{
  grid-column:1/-1;
  display:block;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(237,220,194,.14);
  color:rgba(244,231,211,.62);
  font:500 10px/1.4 var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase;
}

.sales-note .btn{
  display:inline-flex;
  margin-top:18px;
}

@media(max-width:800px){
  .footer-legal{
    width:100%;
    text-align:center;
    margin-top:10px;
  }
}

@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto !important;
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}


/* =========================================================
   v0.7.0 — ORIGINAL MOCKUP / RUSTIC COUNTRY RESTORATION
   Client direction: cozy cottage, farmhouse, old-country,
   barn-inspired. No modern visual language.
   ========================================================= */

:root{
  --paper:#f4eadc;
  --paper2:#eadbc7;
  --cream:#fbf5ea;
  --ink:#342218;
  --muted:#6d5d50;
  --rust:#b65a32;
  --rust2:#88401f;
  --olive:#485039;
  --olive2:#35402d;
  --sage:#7a8065;
  --gold:#b58b59;
  --gold2:#d0ac78;
  --line:#d4bea2;
  --walnut:#382419;
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:"Inter",Arial,sans-serif;
  --shadow:0 16px 34px rgba(61,39,23,.13);
}

html{background:#2b1b13}
body{
  background:
    radial-gradient(circle at 20% 10%,rgba(145,105,67,.035) 0 1px,transparent 1.5px) 0 0/18px 18px,
    linear-gradient(90deg,rgba(123,82,49,.018) 1px,transparent 1px) 0 0/7px 100%,
    var(--paper);
  color:var(--ink);
}

.site-header{
  height:90px;
  padding:6px clamp(22px,5.5vw,90px);
  background:rgba(250,245,236,.985);
  border-bottom:1px solid #d9c8b2;
  box-shadow:0 3px 14px rgba(63,40,24,.06);
  backdrop-filter:none;
}
.brand-v10{min-height:78px!important}
.brand-v10-logo{
  width:142px!important;
  max-width:142px!important;
}
.main-nav{gap:clamp(24px,2.6vw,42px);font-size:17px}
.main-nav a{position:relative}
.main-nav a::after{
  content:"";
  position:absolute;
  left:50%;right:50%;bottom:-9px;
  height:1px;background:var(--rust);
  transition:.2s;
}
.main-nav a:hover::after,.main-nav a.active::after{left:0;right:0}

.home-hero{
  min-height:600px;
  grid-template-columns:62% 38%;
  background:var(--cream);
  border-bottom:1px solid #d8c4aa;
}
.home-hero-media{
  min-height:600px;
  background:
    linear-gradient(90deg,rgba(51,31,19,.06),rgba(51,31,19,.00) 70%),
    url("https://images.pexels.com/photos/25313617/pexels-photo-25313617.jpeg?auto=compress&cs=tinysrgb&w=2000") center/cover!important;
}
.home-hero-copy{
  position:relative;
  padding:60px clamp(38px,4.5vw,78px);
  background:
    radial-gradient(circle at 85% 20%,rgba(183,90,45,.04),transparent 33%),
    linear-gradient(120deg,#fbf5ea,#efe1cd);
  border-left:1px solid rgba(130,91,56,.15);
}
.home-hero-copy::before{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid rgba(153,112,75,.18);
  pointer-events:none;
}
.home-hero h1{font-size:clamp(3.5rem,5vw,5.7rem)}
.home-hero .lead{max-width:530px;font-family:var(--serif);font-size:21px;line-height:1.35}
.home-hero .service-area{font-family:var(--serif);font-size:14px}
.rule,.small-rule{background:var(--rust)}

.section-pad{padding:78px clamp(30px,6vw,96px)}
.eyebrow{color:var(--rust2);letter-spacing:.2em}
h1,h2,h3{color:var(--ink)}
.btn{border-radius:0}
.btn-rust{background:var(--rust);border-color:var(--rust);color:#fff8ef}
.btn-olive{background:var(--olive);border-color:var(--olive);color:#fff8ef}
.btn-outline{border-color:#b79c7c;background:rgba(255,250,243,.5)}

.home-intro{
  position:relative;
  grid-template-columns:minmax(280px,.9fr) minmax(320px,1.12fr);
  gap:clamp(48px,7vw,104px);
  background:
    linear-gradient(rgba(255,253,248,.93),rgba(255,253,248,.93)),
    repeating-linear-gradient(0deg,rgba(117,81,48,.028) 0 1px,transparent 1px 4px);
}
.home-intro::after{
  content:"✣";
  position:absolute;
  right:5%;
  bottom:11%;
  color:rgba(105,80,55,.10);
  font:150px/1 var(--serif);
  transform:rotate(8deg);
  pointer-events:none;
}
.faith-home-photo{
  width:min(100%,470px);
  position:relative;
  justify-self:center;
}
.faith-home-photo .portrait-mat{
  padding:12px;
  background:#eee0cc;
  box-shadow:0 18px 36px rgba(60,38,22,.16);
  transform:rotate(-1.2deg);
}
.faith-home-photo .portrait-mat::before{
  content:"";
  position:absolute;
  inset:-10px 18px 14px -12px;
  z-index:-1;
  border:1px solid #ceb99d;
  background:#f8efe3;
  transform:rotate(2.2deg);
}
.faith-home-photo img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  display:block;
  filter:sepia(.08) contrast(.98);
}
.faith-home-photo .paper-note{
  right:auto;
  left:-12px;
  bottom:-8px;
  padding:10px 20px;
  font:italic 27px var(--serif);
  background:#efe0c6;
  color:#69442b;
  box-shadow:0 7px 18px rgba(61,41,25,.10);
  transform:rotate(-3deg);
}
.intro-copy{max-width:640px}
.intro-copy h2{font-size:clamp(3rem,4vw,4.4rem);margin-bottom:22px}
.intro-copy p{font-family:var(--serif);font-size:19px;line-height:1.45;color:#51453c}

.home-services{
  background:
    linear-gradient(rgba(238,226,208,.93),rgba(247,239,228,.93)),
    repeating-linear-gradient(90deg,rgba(96,67,42,.025) 0 1px,transparent 1px 7px);
  border-top:1px solid #dbc8af;
  border-bottom:1px solid #dbc8af;
}
.home-services .section-heading{
  text-align:center;
  margin-inline:auto;
}
.home-services .section-heading h2{font-size:clamp(2.7rem,3.6vw,4rem)}
.service-preview-grid{
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.service-preview{
  background:#fbf4e9;
  border:1px solid #d7c2a7;
  box-shadow:0 8px 18px rgba(61,40,24,.08);
  transition:transform .2s ease,box-shadow .2s ease;
}
.service-preview:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(61,40,24,.13)}
.service-preview img{
  width:100%;
  height:185px;
  object-fit:cover;
  filter:saturate(.78) sepia(.13) contrast(.96);
}
.service-preview>div{padding:17px 17px 19px;text-align:center}
.service-preview>div>span{display:none}
.service-preview h3{font-size:27px;margin-bottom:8px}
.service-preview p{font-family:var(--serif);font-size:16px;line-height:1.3;min-height:62px}
.service-preview b{
  display:inline-block;
  margin-top:8px;
  color:var(--rust);
  font:700 10px var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase;
}

.story-strip{
  grid-template-columns:1fr 1.12fr 1fr;
  min-height:315px;
  background:var(--walnut);
}
.story-photo{min-height:315px;filter:saturate(.76) sepia(.10)}
.story-a{background-image:url("https://images.pexels.com/photos/9056669/pexels-photo-9056669.jpeg?auto=compress&cs=tinysrgb&w=1200")!important}
.story-b{background-image:url("https://images.pexels.com/photos/29141327/pexels-photo-29141327.jpeg?auto=compress&cs=tinysrgb&w=1200")!important}
.story-copy{
  background:
    radial-gradient(circle at 50% 15%,rgba(184,136,82,.09),transparent 42%),
    #38251b;
}
.story-copy h2{color:#fff6e9}
.story-copy p{font-family:var(--serif);font-size:17px}

.home-sales{
  background:
    linear-gradient(rgba(251,246,238,.96),rgba(251,246,238,.96)),
    repeating-linear-gradient(0deg,rgba(105,75,48,.026) 0 1px,transparent 1px 5px);
}
.home-sales h2{font-size:clamp(3rem,4vw,4rem)}
.sale-preview-card{
  min-height:300px;
  border:1px solid #d8c2a6;
  box-shadow:0 10px 25px rgba(56,38,25,.10);
}
.sale-preview-card img{
  filter:saturate(.76) sepia(.14) contrast(.95);
  transition:transform .35s ease;
}
.sale-preview-card:hover img{transform:scale(1.025)}
.sale-preview-card>div{
  background:rgba(250,243,232,.96);
  border:1px solid #d3bea1;
}
.sale-preview-card strong{font-family:var(--serif);font-size:23px;color:var(--ink)}

.social-band{
  background:#eee0cc;
  border-color:#d4bea2;
}
.social-image{
  background:
    linear-gradient(90deg,rgba(238,224,204,.06),rgba(238,224,204,.85)),
    url("https://images.pexels.com/photos/5490199/pexels-photo-5490199.jpeg?auto=compress&cs=tinysrgb&w=1200") center/cover!important;
  filter:saturate(.75) sepia(.12);
}
.social-copy h2{font-size:clamp(2.8rem,3.6vw,3.8rem)}
.social-btn{
  background:#fbf4e9;
  border-color:#cfb99c;
}

.home-contact{
  background:
    linear-gradient(90deg,rgba(53,64,45,.98),rgba(61,73,49,.98)),
    repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 1px,transparent 1px 7px);
}
.home-contact-brand{
  border-left-color:rgba(227,211,186,.16);
}
.heritage-mark-v10{
  border:1px solid rgba(202,176,143,.65);
  background:#efe2ce;
  box-shadow:inset 0 0 0 6px rgba(90,65,44,.05),0 16px 34px rgba(20,18,13,.18);
}
.heritage-mark-v10::before,
.heritage-mark-v10::after{
  content:"";
  width:46px;height:1px;
  background:#a97c4d;
  display:block;
  margin:7px auto 10px;
}
.heritage-mark-v10 i{color:#735640}

.site-footer{
  min-height:110px;
  background:
    linear-gradient(90deg,#33402e,#3d4935);
  border-top:1px solid #94734f;
  color:#efe2cf;
}
.footer-v10-logo{
  width:150px!important;
  max-width:150px!important;
}
.site-footer>p{font:italic 22px var(--serif);color:#d4bd99}
.footer-links{font-family:var(--serif);font-size:15px}
.footer-legal{border-top-color:rgba(236,220,195,.14)}

/* Interior pages: country-only imagery and more heritage framing */
.page-hero{
  min-height:440px;
  border-bottom:1px solid #b8956b;
}
.page-hero-overlay{
  max-width:680px;
  margin:0 0 42px clamp(28px,6vw,100px);
  padding:34px 38px;
  background:rgba(55,37,26,.78);
  border:1px solid rgba(234,214,187,.42);
  box-shadow:0 14px 32px rgba(28,18,12,.20);
}
.page-hero-overlay h1{color:#fff7eb}
.page-hero-overlay p{color:#f2e5d2}
.about-hero{
  background-image:linear-gradient(90deg,rgba(39,26,18,.45),rgba(39,26,18,.08)),url("https://images.pexels.com/photos/4917121/pexels-photo-4917121.jpeg?auto=compress&cs=tinysrgb&w=1800")!important
}
.services-hero{
  background-image:linear-gradient(90deg,rgba(39,26,18,.48),rgba(39,26,18,.10)),url("https://images.pexels.com/photos/9056659/pexels-photo-9056659.jpeg?auto=compress&cs=tinysrgb&w=1800")!important
}
.sales-hero{
  background-image:linear-gradient(90deg,rgba(39,26,18,.50),rgba(39,26,18,.10)),url("https://images.pexels.com/photos/25313617/pexels-photo-25313617.jpeg?auto=compress&cs=tinysrgb&w=1800")!important
}
.contact-hero{
  background-image:linear-gradient(90deg,rgba(39,26,18,.50),rgba(39,26,18,.10)),url("https://images.pexels.com/photos/29239249/pexels-photo-29239249.jpeg?auto=compress&cs=tinysrgb&w=1800")!important
}

.about-page,.services-page,.contact-page{
  background:
    linear-gradient(rgba(255,253,248,.96),rgba(255,253,248,.96)),
    repeating-linear-gradient(0deg,rgba(103,72,45,.026) 0 1px,transparent 1px 5px);
}
.about-page-photo .portrait-mat{
  background:#ecddc8;
  border:1px solid #cdb698;
  box-shadow:0 18px 36px rgba(55,37,24,.14);
}
.about-page-photo img{filter:sepia(.07) contrast(.98)}
.about-page-copy p{font-family:var(--serif);font-size:18px}
.about-page-copy blockquote{border-left-color:var(--rust);color:#6c4d36}

.values-section,.faq-section{
  background:
    linear-gradient(rgba(237,225,207,.95),rgba(247,239,228,.95)),
    repeating-linear-gradient(90deg,rgba(104,75,48,.025) 0 1px,transparent 1px 8px);
}
.values-grid article,.services-detail-grid article,.faq-grid article{
  background:#fbf4e9;
  border-color:#d6c0a3;
  box-shadow:0 7px 18px rgba(61,40,25,.06);
}
.services-detail-grid article::before{
  content:"";
  display:block;
  width:38px;height:2px;
  margin-bottom:16px;
  background:var(--rust);
}
.process-section{background:#35402d}
.process-image{
  background:
    linear-gradient(90deg,rgba(39,27,18,.10),rgba(39,27,18,.28)),
    url("https://images.pexels.com/photos/4846384/pexels-photo-4846384.jpeg?auto=compress&cs=tinysrgb&w=1600") center/cover!important;
  filter:saturate(.80) sepia(.10);
}
.quote-band{
  background:
    linear-gradient(rgba(48,54,39,.86),rgba(48,54,39,.92)),
    url("https://images.pexels.com/photos/29141327/pexels-photo-29141327.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover!important;
}
.contact-photo-band{
  background:
    linear-gradient(rgba(53,35,25,.56),rgba(53,35,25,.68)),
    url("https://images.pexels.com/photos/9056669/pexels-photo-9056669.jpeg?auto=compress&cs=tinysrgb&w=1800") center/cover!important;
}
.contact-visual-photo{
  background:
    linear-gradient(180deg,rgba(36,29,21,.14),rgba(42,49,35,.60)),
    url("https://images.pexels.com/photos/5490199/pexels-photo-5490199.jpeg?auto=compress&cs=tinysrgb&w=1400") center/cover!important;
}

.catalog-grid img,
.sales-grid img{
  filter:saturate(.78) sepia(.12) contrast(.96);
}

/* Keep cards editorial rather than app-like */
.services-detail-grid article,
.values-grid article,
.faq-grid article,
.sale-card,
.catalog-card,
.contact-method{
  border-radius:0!important;
}

/* Responsive restoration — still polished on phones */
@media(max-width:1100px){
  .service-preview-grid{grid-template-columns:repeat(2,1fr)}
  .home-intro{grid-template-columns:.9fr 1.1fr}
}
@media(max-width:800px){
  .site-header{height:78px;padding:4px 22px}
  .brand-v10{min-height:70px!important}
  .brand-v10-logo{width:118px!important;max-width:118px!important}
  .home-hero{grid-template-columns:1fr}
  .home-hero-media{min-height:430px}
  .home-hero-copy{padding:44px 30px 48px}
  .home-hero-copy::before{inset:12px}
  .home-intro{grid-template-columns:1fr;gap:48px}
  .faith-home-photo{max-width:420px}
  .home-intro::after{display:none}
  .story-strip{grid-template-columns:1fr}
  .story-photo{min-height:220px}
  .story-copy{padding:42px 26px}
  .social-band{grid-template-columns:1fr}
  .social-image{min-height:190px}
  .home-contact{grid-template-columns:1fr}
  .home-contact-brand{border-left:0;border-top:1px solid rgba(227,211,186,.16)}
  .page-hero-overlay{margin:0 20px 28px;padding:28px}
}
@media(max-width:600px){
  .section-pad{padding:58px 20px}
  .service-preview-grid{grid-template-columns:1fr}
  .service-preview img{height:230px}
  .service-preview p{min-height:0}
  .home-hero-media{min-height:360px}
  .home-hero h1{font-size:clamp(3rem,13vw,4.3rem)}
  .intro-copy h2{font-size:clamp(2.8rem,12vw,4rem)}
  .sale-preview-grid{grid-template-columns:1fr}
  .sale-preview-card{min-height:310px}
  .footer-v10-logo{width:125px!important;max-width:125px!important}
}


/* v0.7.1 — homepage portrait cleanup
   Faith's portrait remains exclusive to the About page.
   Homepage keeps the same rustic editorial composition with a cottage still-life. */
.home-rustic-photo{
  width:min(100%,470px);
  position:relative;
  justify-self:center;
}
.home-rustic-photo .rustic-photo-mat{
  position:relative;
  padding:12px;
  background:#eee0cc;
  box-shadow:0 18px 36px rgba(60,38,22,.16);
  transform:rotate(-1.2deg);
}
.home-rustic-photo .rustic-photo-mat::before{
  content:"";
  position:absolute;
  inset:-10px 18px 14px -12px;
  z-index:-1;
  border:1px solid #ceb99d;
  background:#f8efe3;
  transform:rotate(2.2deg);
}
.home-rustic-photo img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  display:block;
  filter:saturate(.78) sepia(.14) contrast(.96);
}
.home-rustic-photo .paper-note{
  right:auto;
  left:-12px;
  bottom:-8px;
  padding:10px 20px;
  font:italic 27px var(--serif);
  background:#efe0c6;
  color:#69442b;
  box-shadow:0 7px 18px rgba(61,41,25,.10);
  transform:rotate(-3deg);
}
@media(max-width:800px){
  .home-rustic-photo{max-width:420px}
}


/* v0.11.0 — live catalog/calendar integration, no fictional sale cards */
.home-sales-empty{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  padding:30px 34px;
  border:1px solid #d3bda0;
  background:
    linear-gradient(rgba(251,244,233,.95),rgba(251,244,233,.95)),
    repeating-linear-gradient(90deg,rgba(101,72,47,.025) 0 1px,transparent 1px 7px);
  box-shadow:0 10px 26px rgba(55,37,24,.07);
}
.home-sales-empty h3{
  margin:3px 0 8px;
  font:600 32px/1 var(--serif);
}
.home-sales-empty p:last-child{
  margin:0;
  color:#6d5d50;
  font-family:var(--serif);
  font-size:17px;
}
.home-sales-empty-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.sales-live{
  background:
    linear-gradient(rgba(250,246,238,.96),rgba(250,246,238,.96)),
    repeating-linear-gradient(0deg,rgba(104,74,47,.026) 0 1px,transparent 1px 5px);
}
.live-sales-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  max-width:1080px;
  margin:35px auto 0;
}
.live-sales-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  padding:28px;
  border:1px solid #d3bda0;
  background:#fbf4e9;
  box-shadow:0 10px 25px rgba(56,38,24,.08);
  text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease;
}
.live-sales-card:hover{
  transform:translateY(-4px);
  box-shadow:0 15px 30px rgba(56,38,24,.12);
}
.live-sales-icon{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:1px solid #b88a5d;
  border-radius:50%;
  color:var(--rust);
  font:500 24px var(--serif);
}
.live-sales-card h3{
  margin:3px 0 8px;
  font:600 30px/1 var(--serif);
}
.live-sales-card p:not(.eyebrow){
  color:#6b5a4e;
  font:500 17px/1.4 var(--serif);
}
.live-sales-card strong{
  color:var(--rust);
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
@media(max-width:900px){
  .home-sales-empty{grid-template-columns:1fr}
  .home-sales-empty-actions{justify-content:flex-start}
}
@media(max-width:700px){
  .live-sales-links{grid-template-columns:1fr}
  .live-sales-card{padding:22px}
}
