@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ivory:#f6f3ec;--paper:#fffdf8;--ink:#292c26;--muted:#66675e;--terracotta:#8b4c3e;--wine:#713a35;--line:#dcd5c8;--sand:#eae1d2;--forest:#303e32;--cream:#e8d3b3;--header:82px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}figure{margin:0}h1,h2,.display{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.033em;line-height:1.14}h1{font-size:clamp(2.9rem,5.1vw,5.3rem);line-height:1.1;margin:0 0 28px}h2{font-size:clamp(2.15rem,3.8vw,4.1rem);margin:0 0 25px}h3{font-size:clamp(1.12rem,1.55vw,1.4rem);line-height:1.35;margin:0 0 14px;font-weight:600}p{margin:0 0 17px}strong{font-weight:700}.wrap{width:min(100% - 64px,1250px);margin:auto}.eyebrow{display:flex;gap:14px;align-items:center;font-size:.72rem;line-height:1.4;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--terracotta);margin:0 0 24px}.eyebrow:before{content:'';width:32px;height:1px;background:currentColor;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:50px;padding:13px 23px;border:1px solid var(--wine);background:var(--wine);color:white;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .16s ease,background .16s ease}.btn:hover{transform:translateY(-2px);background:#512925}.btn--outline{background:transparent;color:var(--wine)}.btn--outline:hover{background:var(--wine);color:#fff}.linkline{display:inline-flex;align-items:center;gap:9px;color:var(--wine);font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}.skip{position:absolute;left:-9999px;top:0;background:white;color:var(--ink);z-index:100;padding:10px}.skip:focus{left:0}.topbar{background:var(--ivory);border-bottom:1px solid #d6cec0;position:sticky;top:0;z-index:40}.top{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:1rem;font-weight:700;line-height:1.2;letter-spacing:.045em;white-space:nowrap}.brand small{font-size:.6rem;display:block;text-transform:uppercase;letter-spacing:.23em;color:var(--terracotta);font-weight:500;margin-top:6px}.nav-links{display:flex;align-items:center;gap:clamp(11px,1.55vw,24px);font-size:.77rem;font-weight:600;letter-spacing:.02em}.nav-links a:not(.btn):hover{text-decoration:underline;text-decoration-color:var(--terracotta);text-underline-offset:7px}.nav-links .btn{padding:11px 15px;font-size:.69rem}.mobile-menu{display:none} .mobile-menu summary{cursor:pointer;list-style:none;border:1px solid var(--line);padding:9px 13px;font-weight:700}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu[open] .mobile-menu-list{position:absolute;top:100%;left:0;right:0;background:var(--paper);box-shadow:0 20px 30px #0002;border-top:1px solid var(--line);padding:22px 25px;display:grid;gap:14px}.mobile-menu-list a{font-size:.9rem;font-weight:600;padding:6px 0}
.hero{background:var(--ivory);border-bottom:1px solid var(--line)}.hero-layout{display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);align-items:center;gap:clamp(28px,5vw,84px);min-height:670px;padding-top:55px;padding-bottom:65px}.hero-copy{min-width:0}.hero-copy h1{max-width:790px}.hero-copy h1 span{color:var(--terracotta)}.hero-copy>p:not(.eyebrow){font-size:1.04rem;max-width:620px;line-height:1.82;color:#4d5148}.hero-copy>p strong{color:#303c33}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero-actions .btn{min-width:240px}.hero-media{position:relative;margin:0;padding:28px 28px 28px 0;height:590px}.hero-media:before{content:'';position:absolute;inset:0 0 0 34px;background:#ded6c6}.hero-media figure{height:100%;position:relative}.hero-media picture{display:block;height:100%}.hero-media picture,.hero-media img{position:relative;width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:saturate(.83) contrast(1.015)}.hero-stamp{position:absolute;left:-12px;bottom:40px;background:var(--wine);color:#fff;padding:15px 20px;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;max-width:270px}.hero-meta{font-size:.78rem;color:var(--muted)}
.services-section{padding:100px 0 110px;background:var(--paper)}.section-heading{display:grid;grid-template-columns:1fr 340px;gap:65px;align-items:end;margin-bottom:41px}.section-heading h2{margin:0}.section-heading .intro{color:var(--muted)}.section-heading .intro p:last-child{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{min-width:0}.service-card .card-image{aspect-ratio:3/4;overflow:hidden;background:var(--sand);display:block}.service-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;filter:saturate(.85)}.service-card:hover img{transform:scale(1.035)}.card-head{display:flex;align-items:flex-start;gap:11px;border-top:1px solid #bdb5a5;margin-top:14px;padding-top:17px}.card-index{font-size:.7rem;color:var(--muted);padding-top:4px}.card-head h3{font-size:1.1rem;margin:0 0 8px}.card-arrow{margin-left:auto;color:var(--wine)}.service-card .card-text{font-size:.81rem;line-height:1.7;color:#66665e;margin:0 0 12px}.service-card .card-link{color:var(--wine);font-size:.76rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.editorial{padding:105px 0;background:var(--ivory);border-top:1px solid var(--line)}.editorial:nth-of-type(even){background:var(--paper)}.editorial-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,115px);align-items:center}.editorial.reverse .editorial-media{order:2}.editorial.reverse .editorial-copy{order:1}.editorial:not(.has-photo) .editorial-inner{display:block;max-width:970px}.editorial-copy{min-width:0}.editorial-copy p{color:#53564e;font-size:.99rem;line-height:1.86;max-width:580px}.editorial-copy h3{font-size:1.16rem;margin:26px 0 12px}.editorial-copy a:not(.btn){color:var(--wine);text-decoration:underline;text-underline-offset:4px}.editorial-media{margin:0;position:relative;min-width:0}.editorial-media figure{margin:0}.editorial-media picture,.editorial-media img{display:block;width:100%}.editorial-media img{aspect-ratio:5/4;object-fit:cover;filter:saturate(.87)}.editorial-media:after{content:'';position:absolute;width:20%;height:25%;background:var(--sand);bottom:-18px;right:-18px;z-index:-1}.editorial.reverse .editorial-media:after{right:auto;left:-18px}.editorial-media figcaption{font-size:.76rem;color:var(--muted);padding-top:10px}.feature-image-strip{background:var(--sand);padding:55px 0}.feature-image-strip img{width:100%;height:380px;object-fit:cover}.feature-image-strip figcaption{font-size:.8rem;color:var(--muted);padding-top:9px}
.page-intro{max-width:930px;margin:0 auto 70px;font-size:1.1rem;color:var(--muted)}.page-intro h2,.page-intro h3{color:var(--ink)}.page-intro .photo-block{max-width:700px;margin-top:30px}.page-intro .photo-block img{width:100%;max-height:520px;object-fit:cover}.main-copy{overflow:hidden}.main-copy>.editorial:nth-child(even){background:var(--paper)}.main-copy>.editorial:nth-child(odd){background:var(--ivory)}.support-links{padding:95px 0;background:#eee7db}.support-links .links-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.support-links .links-grid a{border-bottom:1px solid #bcb4a7;padding:14px 0;color:var(--wine);display:flex;align-items:center;justify-content:space-between;font-weight:700}.faq-section{background:var(--paper);padding:90px 0}.faq-section h2{max-width:800px}.faq-items{max-width:960px}.faq-items details{border-bottom:1px solid #d4ccbf;padding:19px 0}.faq-items summary{font-weight:700;cursor:pointer;font-size:1.04rem;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-items summary::after{content:'+';font-size:1.4rem;font-weight:400;color:var(--wine)}.faq-items details[open] summary::after{content:'−'}.faq-items summary::-webkit-details-marker{display:none}.faq-items p{margin:14px 0 0;color:var(--muted);max-width:790px}.bottom-cta{background:var(--forest);color:#fff;text-align:center;padding:104px 24px 115px}.bottom-cta .eyebrow{color:var(--cream);justify-content:center}.bottom-cta .eyebrow:before{display:none}.bottom-cta h2{max-width:780px;margin:0 auto 26px}.bottom-cta p{max-width:720px;margin:0 auto 27px;color:#e7e8e1}.bottom-cta .btn{background:var(--cream);color:var(--forest);border-color:var(--cream)}.bottom-cta .btn:hover{background:#f5dfbe}.legal-main{padding:80px 0 110px}.legal-main article{max-width:870px;margin:auto}.legal-main h1{font-size:clamp(2.8rem,5vw,4.6rem)}.legal-main h2{font-size:1.8rem;margin:48px 0 18px}.legal-main li{margin:8px 0}.legal-main p{color:#52564c}.legal-main a{color:var(--wine);text-decoration:underline}.legal-list{padding-left:24px}.footer{background:#eee7dc;border-top:1px solid var(--line);padding:55px 0 25px}.footer-main{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-links{display:flex;flex-wrap:wrap;gap:15px 26px;font-size:.79rem}.footer-links a:hover{text-decoration:underline}.footer-small{font-size:.73rem;color:var(--muted);border-top:1px solid #d0c7b8;margin-top:36px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.mobile-call{display:none}.service-content-continued{padding-bottom:75px}.special-note{color:#6d6b61;font-size:.8rem}
@media(max-width:1150px){.nav-links{gap:12px;font-size:.72rem}.nav-links a:nth-child(4),.nav-links a:nth-child(5){display:none}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card .card-image{aspect-ratio:4/3}.hero-layout{min-height:580px}.hero-media{height:520px}.section-heading{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:850px){:root{--header:70px}.top{min-height:70px}.nav-links{display:none}.mobile-menu{display:block}.hero-layout{grid-template-columns:1fr;gap:23px;padding-top:54px;padding-bottom:55px}.hero-media{height:400px;padding:16px 20px 16px 0;max-width:650px}.hero-media:before{left:25px}.hero-stamp{left:0;bottom:22px}.section-heading{display:block}.section-heading .intro{max-width:750px;margin-top:18px}.editorial-inner{grid-template-columns:1fr;gap:35px}.editorial.reverse .editorial-media,.editorial.reverse .editorial-copy{order:initial}.editorial-media{max-width:720px}.editorial{padding:70px 0}.services-section{padding:76px 0}.footer-main{display:block}.footer-links{margin-top:20px}}
@media(max-width:560px){.wrap{width:min(100% - 36px,1250px)}h1{font-size:clamp(2.55rem,10.8vw,3.7rem)}h2{font-size:clamp(2.05rem,8.5vw,3.1rem)}body{font-size:15px}.hero-copy>p:not(.eyebrow){font-size:.99rem}.hero-layout{padding-top:35px}.hero-actions .btn{width:100%}.hero-media{height:330px;margin-top:10px}.service-grid{grid-template-columns:minmax(0,1fr);gap:32px}.service-card .card-image{aspect-ratio:4/3}.card-head h3{font-size:1.18rem}.card-index,.card-arrow{display:none}.card-head{padding-top:13px}.service-card .card-text{font-size:.76rem}.editorial-media img{aspect-ratio:4/3}.bottom-cta{padding:75px 18px 100px}.footer{padding-bottom:92px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--wine);padding:11px 20px;text-align:center;color:#fff;z-index:50;box-shadow:0 -5px 20px #0002;font-size:.88rem;font-weight:700}.mobile-call a{display:block}.support-links .links-grid{grid-template-columns:1fr}.page-intro{margin:0 auto 40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}