:root{--green-deep:#1a3a2a;--green-mid:#2d5a40;--burgundy:#6b1e2e;--burgundy-deep:#4a1420;--cream:#f5e6c8;--cream-soft:#faf3e4;--gold:#c9a227;--gold-bright:#e0b83d;--ink:#1a1510;--muted:#5c5348;--border:#c9a227;--radius:2px;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"Source Serif 4", Georgia, serif;--font-accent:"Libre Baskerville", Georgia, serif;--shadow-poster:0 8px 32px rgba(26, 58, 42, 0.25);--max:72rem;--pad:clamp(1rem, 4vw, 2.5rem)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:radial-gradient(ellipse at 20% 0%,rgba(201,162,39,8%),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(107,30,46,6%),transparent 45%),linear-gradient(180deg,var(--cream-soft) 0%,var(--cream) 40%,#efe4cc 100%);min-height:100vh}img{max-width:100%;height:auto;display:block}a{color:var(--burgundy);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--burgundy-deep)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--green-deep);margin:0 0 .6em}h1{font-size:clamp(2.25rem,5vw,3.75rem);letter-spacing:-.02em}h2{font-size:clamp(1.75rem,3.5vw,2.5rem)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}p{margin:0 0 1em}ul,ol{margin:0 0 1.25em;padding-left:1.35em}li{margin-bottom:.35em}.site-wrap{overflow-x:hidden}.poster-frame{border:3px solid var(--gold);outline:1px solid var(--burgundy);outline-offset:6px;position:relative}.poster-frame::before{content:"";position:absolute;inset:8px;border:1px solid rgba(201,162,39,.45);pointer-events:none;z-index:1}.container{width:min(100% - 2 * var(--pad),var(--max));margin-inline:auto}.site-header{background:var(--green-deep);color:var(--cream);border-bottom:4px solid var(--gold);position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0}.brand{font-family:var(--font-display);font-size:clamp(1.35rem,3vw,1.85rem);font-weight:700;color:var(--gold-bright);text-decoration:none;letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--gold);padding:.25rem .65rem;line-height:1.2}.brand:hover{color:var(--cream);background:rgba(201,162,39,.15)}.nav-toggle{display:none;background:0 0;border:2px solid var(--gold);color:var(--cream);font-family:var(--font-accent);font-size:.85rem;padding:.4rem .75rem;cursor:pointer}.nav-toggle:hover{background:rgba(201,162,39,.2)}.nav-list{display:flex;flex-wrap:wrap;gap:.15rem 1.1rem;list-style:none;margin:0;padding:0;align-items:center}.nav-list a{color:var(--cream);text-decoration:none;font-family:var(--font-accent);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.nav-list a:hover,.nav-list a[aria-current=page]{color:var(--gold-bright);border-bottom:2px solid var(--gold)}@media(max-width:880px){.nav-toggle{display:block}.nav-list{display:none;position:absolute;left:0;right:0;top:100%;background:var(--burgundy-deep);flex-direction:column;padding:1rem var(--pad);gap:.75rem;border-bottom:3px solid var(--gold)}.nav-list.is-open{display:flex}}.btn{display:inline-block;font-family:var(--font-accent);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;padding:.75rem 1.4rem;border:2px solid var(--gold);cursor:pointer;transition:background .25s ease,color .25s ease,transform .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--burgundy);color:var(--cream)}.btn-primary:hover{background:var(--burgundy-deep);color:var(--gold-bright)}.btn-ghost{background:0 0;color:var(--cream);border-color:var(--cream)}.btn-ghost:hover{background:rgba(245,230,200,.12);color:var(--gold-bright)}.btn-outline{background:0 0;color:var(--green-deep);border-color:var(--green-deep)}.btn-outline:hover{background:var(--green-deep);color:var(--cream)}.btn-group{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.hero{position:relative;min-height:min(88vh,720px);display:flex;align-items:flex-end;background:var(--green-deep);color:var(--cream);overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45;animation:heroKen 28s ease-in-out infinite alternate}@keyframes heroKen{from{transform:scale(1)}to{transform:scale(1.08)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,58,42,.35) 0%,rgba(26,58,42,.85) 55%,rgba(74,20,32,.92) 100%),repeating-linear-gradient( 0,transparent,transparent 3px,rgba(0,0,0,3%) 3px,rgba(0,0,0,3%) 4px )}.hero-content{position:relative;z-index:2;width:min(100% - 2 * var(--pad),var(--max));margin:0 auto;padding:3.5rem 0 3rem;border-top:3px solid var(--gold);animation:riseIn .9s ease-out both}@keyframes riseIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.hero-brand{font-family:var(--font-display);font-size:clamp(2.8rem,8vw,5.5rem);color:var(--gold-bright);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .35em;text-shadow:2px 3px 0 rgba(0,0,0,.35);line-height:.95}.hero h1{color:var(--cream);font-size:clamp(1.35rem,3vw,2rem);font-weight:600;max-width:28ch;margin-bottom:.5em}.hero .lede{max-width:42ch;color:rgba(245,230,200,.9);font-size:1.1rem;margin-bottom:0}.hero-number{position:absolute;right:var(--pad);bottom:2rem;z-index:2;font-family:var(--font-display);font-size:clamp(4rem,12vw,9rem);color:rgba(201,162,39,.22);line-height:.8;pointer-events:none;user-select:none}.section{padding:clamp(3rem,8vw,5.5rem)0}.section-alt{background:linear-gradient(180deg,rgba(26,58,42,6%),rgba(107,30,46,5%));border-block:1px solid rgba(201,162,39,.35)}.section-head{margin-bottom:2rem;max-width:40rem}.section-head .eyebrow{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--burgundy);margin-bottom:.5rem}.section-head p{color:var(--muted)}.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.5rem}.offer-card{background:var(--cream-soft);border:2px solid var(--gold);outline:1px solid var(--green-mid);outline-offset:4px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none;color:inherit;display:flex;flex-direction:column}.offer-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-poster);color:inherit}.offer-card img{aspect-ratio:16/10;object-fit:cover;width:100%;filter:sepia(.15)contrast(1.05)}.offer-card .body{padding:1.25rem 1.35rem 1.5rem;flex:1;display:flex;flex-direction:column}.offer-card h3{margin-bottom:.4em;font-size:1.25rem}.offer-card p{color:var(--muted);font-size:.98rem;flex:1}.offer-card .link-label{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy);margin-top:.75rem}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1.5rem;text-align:center}.stat-item{border:2px solid var(--gold);background:var(--green-deep);color:var(--cream);padding:1.75rem 1rem;position:relative}.stat-item .num{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,3.5rem);color:var(--gold-bright);line-height:1;display:block;margin-bottom:.4rem}.stat-item .label{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;opacity:.9}.quote-block{border-left:4px solid var(--gold);padding:.5rem 0 .5rem 1.5rem;margin:1.5rem 0;font-family:var(--font-accent);font-style:italic;color:var(--green-deep);font-size:1.15rem}.quote-attr{font-style:normal;font-size:.85rem;color:var(--muted);margin-top:.75rem;letter-spacing:.04em}.review-grid{display:grid;gap:1.75rem}@media(min-width:720px){.review-grid{grid-template-columns:1fr 1fr}}.review-card{background:var(--cream-soft);border:2px solid var(--burgundy);padding:1.5rem}.review-card.wide{grid-column:1/-1}.page-hero{background:var(--green-deep);color:var(--cream);padding:3rem 0 2.5rem;border-bottom:4px solid var(--gold);position:relative;overflow:hidden}.page-hero h1{color:var(--gold-bright);margin-bottom:.35em}.page-hero p{color:rgba(245,230,200,.88);max-width:48ch;margin:0}.page-hero-ornament{position:absolute;right:5%;top:50%;transform:translateY(-50%);font-family:var(--font-display);font-size:8rem;color:rgba(201,162,39,.15);line-height:1;pointer-events:none}.prose{max-width:42rem}.prose h2{margin-top:2em}.prose h3{margin-top:1.5em}.content-with-aside{display:grid;gap:2.5rem}@media(min-width:900px){.content-with-aside{grid-template-columns:1fr 18rem;align-items:start}}.aside-box{background:var(--green-deep);color:var(--cream);border:3px solid var(--gold);padding:1.5rem;position:sticky;top:5.5rem}.aside-box h3{color:var(--gold-bright);font-size:1.1rem}.aside-box p,.aside-box li{color:rgba(245,230,200,.9);font-size:.95rem}.aside-box a{color:var(--gold-bright)}.rate-table{width:100%;border-collapse:collapse;font-size:.98rem;margin:1.5rem 0 2rem}.rate-table th,.rate-table td{border:1px solid rgba(201,162,39,.55);padding:.85rem 1rem;text-align:left}.rate-table th{background:var(--green-deep);color:var(--gold-bright);font-family:var(--font-accent);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.rate-table tr:nth-child(even) td{background:rgba(26,58,42,5%)}.price-note{font-size:.95rem;color:var(--muted);border:2px dashed var(--gold);padding:1rem 1.25rem;background:rgba(245,230,200,.5)}.form-panel{background:var(--cream-soft);border:3px solid var(--gold);outline:1px solid var(--burgundy);outline-offset:5px;padding:clamp(1.5rem,4vw,2.25rem);max-width:36rem}.form-group{margin-bottom:1.15rem}.form-group label{display:block;font-family:var(--font-accent);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.4rem;color:var(--green-deep)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.7rem .85rem;border:2px solid var(--green-mid);background:#fffef9;font-family:var(--font-body);font-size:1rem;color:var(--ink)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--burgundy)}.form-group textarea{min-height:8rem;resize:vertical}.field-error{color:var(--burgundy);font-size:.85rem;margin-top:.35rem;font-family:var(--font-accent)}.form-status{margin-top:1rem;padding:.85rem 1rem;border:2px solid;font-family:var(--font-accent);font-size:.95rem}.form-status.success{border-color:var(--green-mid);background:rgba(45,90,64,.12);color:var(--green-deep)}.form-status.error{border-color:var(--burgundy);background:rgba(107,30,46,.1);color:var(--burgundy-deep)}.contact-details{margin-top:2rem;padding:1.5rem;border:2px solid var(--green-deep);background:rgba(26,58,42,4%)}.contact-details dt{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy);margin-top:.85rem}.contact-details dt:first-child{margin-top:0}.contact-details dd{margin:.25rem 0 0}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1.75rem}.blog-card{text-decoration:none;color:inherit;border:2px solid var(--gold);background:var(--cream-soft);overflow:hidden;transition:transform .25s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-3px);color:inherit}.blog-card img{aspect-ratio:16/9;object-fit:cover;width:100%}.blog-card .body{padding:1.25rem}.blog-card time{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--burgundy)}.post-cover{width:100%;max-height:28rem;object-fit:cover;border:3px solid var(--gold);margin-bottom:2rem}.post-meta{font-family:var(--font-accent);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1.5rem}.steps{counter-reset:step;list-style:none;padding:0;margin:2rem 0}.steps li{counter-increment:step;position:relative;padding:1.5rem 1.5rem 1.5rem 5.5rem;border:2px solid var(--gold);background:var(--cream-soft);margin-bottom:1rem}.steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:1rem;top:1.25rem;font-family:var(--font-display);font-size:2.25rem;color:var(--burgundy);line-height:1}.site-footer{background:var(--green-deep);color:var(--cream);border-top:4px solid var(--gold);padding:3rem 0 2rem;margin-top:2rem}.footer-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin-bottom:2rem}.site-footer h3{color:var(--gold-bright);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.75rem}.site-footer a{color:var(--cream);text-decoration:none}.site-footer a:hover{color:var(--gold-bright)}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:.4rem}.footer-brand{font-family:var(--font-display);font-size:1.75rem;color:var(--gold-bright);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem}.footer-bottom{border-top:1px solid rgba(201,162,39,.35);padding-top:1.25rem;font-size:.85rem;color:rgba(245,230,200,.7);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.legal-links{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--burgundy-deep);color:var(--cream);border-top:3px solid var(--gold);padding:1.25rem var(--pad);box-shadow:0 -8px 32px rgba(0,0,0,.3);animation:slideUp .45s ease-out}@keyframes slideUp{from{transform:translateY(100%)}to{transform:translateY(0)}}.cookie-inner{width:min(100%,var(--max));margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.cookie-inner p{margin:0;flex:1 1 18rem;font-size:.95rem}.cookie-inner a{color:var(--gold-bright)}.cookie-actions{display:flex;gap:.65rem;flex-wrap:wrap}.not-found{text-align:center;padding:6rem var(--pad)}.not-found .big{font-family:var(--font-display);font-size:clamp(5rem,20vw,10rem);color:var(--burgundy);line-height:1;margin:0}.service-hero-img{width:100%;max-height:22rem;object-fit:cover;border:3px solid var(--gold);margin:0 0 2rem}.portrait-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.5rem;margin:2rem 0}.portrait{text-align:center}.portrait img{width:100%;aspect-ratio:1;object-fit:cover;border:3px solid var(--gold);outline:1px solid var(--burgundy);outline-offset:4px;margin-bottom:.85rem;filter:sepia(.12)}.portrait h3{font-size:1.15rem;margin-bottom:.2em}.portrait .role{font-family:var(--font-accent);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy)}.split{display:grid;gap:2rem;align-items:center}@media(min-width:800px){.split{grid-template-columns:1fr 1fr}.split.reverse .split-media{order:2}}.split-media img{width:100%;border:3px solid var(--gold);outline:1px solid var(--green-mid);outline-offset:6px}@media(prefers-reduced-motion:no-preference){.offer-card,.blog-card,.stat-item{animation:fadeUp .6s ease-out both}.offer-card:nth-child(2),.blog-card:nth-child(2),.stat-item:nth-child(2){animation-delay:.1s}.offer-card:nth-child(3),.blog-card:nth-child(3),.stat-item:nth-child(3){animation-delay:.2s}.offer-card:nth-child(4),.blog-card:nth-child(4),.stat-item:nth-child(4){animation-delay:.3s}}@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hero-bg{animation:none}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}