:root{--green-deep:#0d3b2e;--green-mid:#1a5240;--burgundy:#6b1c2e;--burgundy-deep:#4a1220;--cream:#f5e6c8;--cream-soft:#faf3e4;--gold:#c9a227;--gold-bright:#e0bc4a;--ink:#1a1208;--muted:#5c4a3a;--border-ornate:3px solid var(--gold);--font-display:"Cinzel", "Playfair Display", Georgia, serif;--font-body:"Libre Baskerville", "Source Serif 4", Georgia, serif;--font-accent:"Playfair Display", Georgia, serif;--space:clamp(1rem, 3vw, 2rem);--max:72rem;--radius:2px;--shadow-poster:0 12px 40px rgba(13, 59, 46, 0.35)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:1.05rem;line-height:1.7;color:var(--ink);background:radial-gradient(ellipse at 20% 0%,rgba(201,162,39,.12),transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(107,28,46,.1),transparent 45%),linear-gradient(180deg,var(--cream-soft) 0%,var(--cream) 40%,#efe0c0 100%);min-height:100vh}img{max-width:100%;height:auto;display:block}a{color:var(--burgundy);text-decoration-thickness:1px;text-underline-offset:.2em;transition:color .2s ease}a:hover{color:var(--gold)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.2;letter-spacing:.02em;color:var(--green-deep)}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}.container{width:min(100% - 2 * var(--space),var(--max));margin-inline:auto}.site-header{background:var(--green-deep);color:var(--cream);border-bottom:4px double var(--gold);position:sticky;top:0;z-index:100;animation:headerDrop .6s ease-out}@keyframes headerDrop{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.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.1rem,2.5vw,1.45rem);color:var(--cream);text-decoration:none;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--gold);padding:.35rem .75rem;box-shadow:inset 0 0 0 2px var(--burgundy)}.brand:hover{color:var(--gold-bright)}.nav-toggle{display:none;background:0 0;border:1px solid var(--gold);color:var(--cream);font-family:var(--font-display);padding:.4rem .7rem;cursor:pointer;letter-spacing:.06em}.nav-list{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;list-style:none;margin:0;padding:0}.nav-list a{color:var(--cream);text-decoration:none;font-family:var(--font-display);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;padding:.25rem 0;border-bottom:2px solid transparent}.nav-list a:hover,.nav-list a[aria-current=page]{color:var(--gold-bright);border-bottom-color:var(--gold)}@media(max-width:880px){.nav-toggle{display:inline-block}.nav-panel{display:none;position:absolute;left:0;right:0;top:100%;background:var(--burgundy-deep);border-bottom:3px solid var(--gold);padding:1rem var(--space)1.25rem}.nav-panel.is-open{display:block;animation:panelReveal .25s ease}@keyframes panelReveal{from{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.nav-list{flex-direction:column;gap:.75rem}}.site-footer{background:var(--green-deep);color:var(--cream);margin-top:4rem;border-top:4px double var(--gold);padding:2.5rem 0 1.5rem}.footer-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.footer-grid h3{color:var(--gold);font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem}.footer-grid p,.footer-grid a{color:var(--cream);margin:.35rem 0;font-size:.95rem}.footer-grid a:hover{color:var(--gold-bright)}.footer-links{list-style:none;margin:0;padding:0}.footer-links a{text-decoration:none;font-family:var(--font-display);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.footer-bottom{margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(201,162,39,.35);font-size:.85rem;opacity:.85;text-align:center}.btn{display:inline-block;font-family:var(--font-display);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:.75rem 1.4rem;border:2px solid var(--gold);background:var(--burgundy);color:var(--cream);cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;box-shadow:0 4px 0 var(--burgundy-deep)}.btn:hover{background:var(--green-mid);color:var(--cream);transform:translateY(-2px);box-shadow:0 6px 0 var(--green-deep)}.btn-ghost{background:0 0;color:var(--cream);box-shadow:none;border-color:var(--gold)}.btn-ghost:hover{background:rgba(201,162,39,.15);color:var(--gold-bright);box-shadow:none}.btn-on-light{background:var(--green-deep);color:var(--cream)}.poster-frame{border:var(--border-ornate);outline:6px solid var(--green-deep);outline-offset:4px;background:var(--cream-soft);position:relative}.poster-frame::before{content:"";position:absolute;inset:8px;border:1px solid var(--burgundy);pointer-events:none;z-index:1}.section{padding:3.5rem 0}.section-label{font-family:var(--font-display);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--burgundy);margin:0 0 .5rem}.big-number{font-family:var(--font-display);font-size:clamp(3.5rem,10vw,6.5rem);line-height:.9;color:var(--gold);text-shadow:3px 3px 0 var(--burgundy);margin:0}.hero-home{position:relative;min-height:min(88vh,52rem);display:grid;align-items:end;overflow:hidden;background:var(--green-deep)}.hero-home__media{position:absolute;inset:0}.hero-home__media img{width:100%;height:100%;object-fit:cover;opacity:.45;animation:kenBurns 18s ease-in-out infinite alternate}@keyframes kenBurns{from{transform:scale(1)}to{transform:scale(1.08)}}.hero-home__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,59,46,.35) 0%,rgba(13,59,46,.85) 70%,rgba(74,18,32,.95) 100%)}.hero-home__content{position:relative;z-index:2;padding:3rem 0 4rem;color:var(--cream);width:min(100% - 2 * var(--space),var(--max));margin-inline:auto;animation:riseIn .9s ease-out .15s both}@keyframes riseIn{from{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.hero-home__brand{font-family:var(--font-display);font-size:clamp(2.8rem,8vw,5.5rem);letter-spacing:.06em;text-transform:uppercase;color:var(--cream);margin:0 0 .75rem;text-shadow:4px 4px 0 var(--burgundy),0 0 40px rgba(201,162,39,.25);border:3px solid var(--gold);display:inline-block;padding:.35rem .85rem;background:rgba(13,59,46,.55)}.hero-home h1{color:var(--gold-bright);font-size:clamp(1.35rem,3vw,2rem);font-weight:500;max-width:28ch;margin:1rem 0 .75rem}.hero-home p{max-width:38ch;margin:0 0 1.5rem;font-size:1.05rem;color:var(--cream)}.page-hero{background:var(--green-deep);color:var(--cream);padding:3rem 0 2.5rem;border-bottom:4px double var(--gold);position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;right:-2rem;top:-2rem;width:12rem;height:12rem;border:3px solid rgba(201,162,39,.25);border-radius:50%;pointer-events:none}.page-hero h1{color:var(--cream);margin:.5rem 0}.page-hero p{max-width:48ch;margin:0;opacity:.92}.page-hero--image{min-height:18rem;display:grid;align-items:end}.page-hero--image .page-hero__bg{position:absolute;inset:0}.page-hero--image .page-hero__bg img{width:100%;height:100%;object-fit:cover;opacity:.4}.page-hero--image .container{position:relative;z-index:2;padding-bottom:.5rem}.prose{max-width:65ch}.prose>*:first-child{margin-top:0}.offer-strip{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));margin-top:2rem}.offer-tile{background:var(--cream-soft);border:2px solid var(--gold);outline:3px solid var(--green-deep);outline-offset:3px;padding:1.25rem;transition:transform .25s ease}.offer-tile:hover{transform:translateY(-4px)}.offer-tile img{width:100%;height:10rem;object-fit:cover;margin-bottom:1rem;border:1px solid var(--burgundy)}.offer-tile h3{margin:0 0 .5rem}.offer-tile h3 a{text-decoration:none;color:var(--green-deep)}.offer-tile h3 a:hover{color:var(--burgundy)}.marquee-band{background:var(--burgundy);color:var(--cream);border-block:3px solid var(--gold);padding:.85rem 0;overflow:hidden;font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;font-size:.8rem}.marquee-band__inner{display:flex;gap:3rem;white-space:nowrap;animation:scrollMarquee 28s linear infinite;width:max-content}@keyframes scrollMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}.quote-block{border-left:6px solid var(--gold);padding:1rem 0 1rem 1.25rem;margin:1.5rem 0;background:rgba(13,59,46,6%)}.quote-block p{font-family:var(--font-accent);font-style:italic;font-size:1.15rem;margin:0 0 .75rem}.quote-block cite{font-style:normal;font-family:var(--font-display);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--burgundy)}.grid-2{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.stat-poster{text-align:center;padding:1.5rem;border:2px solid var(--gold);background:var(--green-deep);color:var(--cream)}.stat-poster p{margin:.5rem 0 0;font-family:var(--font-display);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.price-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;align-items:baseline;padding:1.25rem 0;border-bottom:1px dashed var(--burgundy)}.price-row strong{font-family:var(--font-display);color:var(--burgundy);font-size:1.25rem}.review-card{padding:1.5rem;border:2px solid var(--green-deep);background:var(--cream-soft);box-shadow:6px 6px 0 var(--gold);margin-bottom:1.75rem}.review-card .meta{font-family:var(--font-display);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy);margin-top:1rem}.blog-list{display:grid;gap:1.75rem}.blog-item{display:grid;gap:1.25rem;grid-template-columns:minmax(0,12rem)1fr;align-items:start;padding-bottom:1.75rem;border-bottom:1px solid rgba(107,28,46,.25)}@media(max-width:640px){.blog-item{grid-template-columns:1fr}}.blog-item img{width:100%;height:8.5rem;object-fit:cover;border:2px solid var(--gold)}.blog-item h2{margin:0 0 .5rem;font-size:1.35rem}.blog-item h2 a{text-decoration:none;color:var(--green-deep)}.form-card{max-width:36rem;padding:1.75rem;background:var(--cream-soft);border:3px solid var(--gold);outline:4px solid var(--green-deep);outline-offset:4px}.form-group{margin-bottom:1.15rem}.form-group label{display:block;font-family:var(--font-display);font-size:.75rem;letter-spacing:.1em;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:1px solid var(--green-mid);background:#fffef8;font-family:var(--font-body);font-size:1rem;color:var(--ink)}.form-group textarea{min-height:8rem;resize:vertical}.form-group .error{color:var(--burgundy);font-size:.9rem;margin-top:.35rem}.form-status{margin-top:1rem;padding:.85rem 1rem;border:1px solid var(--gold);font-family:var(--font-display);font-size:.85rem;letter-spacing:.04em}.form-status.success{background:rgba(13,59,46,.12);color:var(--green-deep)}.form-status.fail{background:rgba(107,28,46,.12);color:var(--burgundy-deep)}.contact-aside{padding:1.5rem;background:var(--green-deep);color:var(--cream);border:2px solid var(--gold)}.contact-aside h2{color:var(--gold);margin-top:0}.contact-aside a{color:var(--cream)}.legal-nav{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin:1.5rem 0;font-family:var(--font-display);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}table.cookies-table{width:100%;border-collapse:collapse;font-size:.95rem;margin:1.5rem 0}table.cookies-table th,table.cookies-table td{border:1px solid var(--green-mid);padding:.65rem .75rem;text-align:left;vertical-align:top}table.cookies-table th{background:var(--green-deep);color:var(--cream);font-family:var(--font-display);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.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.15rem var(--space);box-shadow:0 -8px 30px rgba(0,0,0,.35);animation:riseIn .4s ease-out}.cookie-banner__inner{width:min(100%,var(--max));margin-inline:auto;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.cookie-banner p{margin:0;flex:1 1 18rem;font-size:.95rem}.cookie-banner a{color:var(--gold-bright)}.cookie-actions{display:flex;gap:.65rem;flex-wrap:wrap}.cookie-actions button{font-family:var(--font-display);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;padding:.55rem 1rem;cursor:pointer;border:2px solid var(--gold)}.cookie-actions .accept{background:var(--gold);color:var(--green-deep)}.cookie-actions .reject{background:0 0;color:var(--cream)}.method-steps{counter-reset:step;list-style:none;padding:0;margin:2rem 0}.method-steps li{position:relative;padding:1.25rem 1.25rem 1.25rem 5.5rem;margin-bottom:1.25rem;border:2px solid var(--gold);background:var(--cream-soft)}.method-steps li::before{counter-increment:step;content:counter(step,decimal-leading-zero);position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-family:var(--font-display);font-size:2.2rem;color:var(--burgundy);line-height:1}.service-meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin:1.25rem 0 2rem;font-family:var(--font-display);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--burgundy)}.cover-img{width:100%;max-height:24rem;object-fit:cover;border:3px solid var(--gold);margin:1.5rem 0}.not-found{text-align:center;padding:5rem 0}.not-found .big-number{margin-bottom:1rem}.cta-band{background:var(--burgundy);color:var(--cream);padding:2.5rem 0;border-block:3px solid var(--gold);text-align:center}.cta-band h2{color:var(--cream);margin:0 0 .75rem}.cta-band p{margin:0 0 1.25rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}