:root{--bg:#fbf7ef;--surface:#f0eadf;--text:#173e40;--muted:#486766;--sage:#d8dfd5;--accent:#ba6a42;--accent-strong:#9f5531;--sand:#dcc8a0;--border:#c8bca7;--white:#ffffff}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}a{color:inherit}.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:1rem;top:1rem;background:var(--white);padding:.5rem .75rem;border-radius:.5rem;z-index:9999}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.container{width:min(1120px,calc(100% - 2.5rem));margin-inline:auto}.narrow{width:min(760px,100%)}.section{padding:4.5rem 0}.section-tinted{background:var(--surface)}.hero{position:relative;min-height:84vh;display:grid;align-items:center;overflow:hidden}.hero-image{object-fit:cover;z-index:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,45,46,.82),rgba(12,45,46,.45));z-index:1}.hero-content{position:relative;z-index:2;color:#f6f4ec;max-width:760px;padding:6rem 0}.hero-content h1{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,4rem);line-height:1.1;margin:0 0 1rem}.hero-subtitle{font-size:clamp(1rem,1.3vw,1.25rem);margin-bottom:1.5rem}.trust-line{margin-top:1rem;font-size:.95rem;color:#f2ebdc}.page-hero{padding:6rem 0 3rem}h1,h2,h3{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;line-height:1.2;margin:0 0 .85rem}h1{font-size:clamp(2rem,4vw,3.4rem)}h2{font-size:clamp(1.7rem,3vw,2.6rem)}h3{font-size:1.5rem}p{margin-top:0}.kicker{text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.82rem;color:var(--accent);margin-bottom:.6rem}.grid{display:grid;grid-gap:1rem;gap:1rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.five-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.about-note,.form-shell,.info-card,.mini-card,.step-card{background:var(--white);border:1px solid var(--border);border-radius:1rem;padding:1.2rem}.mini-card{display:flex;min-height:120px}.mini-card,.split{align-items:center}.split{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:2rem;gap:2rem}.photo-card img{width:100%;height:auto;border-radius:1rem;border:1px solid var(--border)}.about-slice{align-items:stretch}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:1rem;gap:1rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:var(--sage);font-weight:700;margin-bottom:.7rem}.button-row{display:flex;flex-wrap:wrap;gap:.8rem}.button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.1rem;border-radius:.7rem;text-decoration:none;font-weight:600;border:1px solid transparent;transition:transform .18s ease,background-color .18s ease}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--accent);color:var(--white)}.button-primary:hover{background:var(--accent-strong)}.button-secondary{background:transparent;border-color:var(--text)}.text-link{text-underline-offset:3px;font-weight:600}.check-list{padding-left:1.1rem}.check-list li{margin-bottom:.55rem}.two-col{column-count:2;column-gap:2rem}.faq-list{display:grid;grid-gap:.75rem;gap:.75rem}.faq-item{background:var(--white);border:1px solid var(--border);border-radius:.9rem;padding:.7rem 1rem}.faq-item summary{cursor:pointer;font-weight:600}.form-shell{display:grid;grid-gap:1rem;gap:1rem}.contact-form{display:grid;grid-gap:.9rem;gap:.9rem}.field-wrap{display:grid;grid-gap:.35rem;gap:.35rem}label{font-weight:600}input,select,textarea{font:inherit;padding:.7rem .75rem;border-radius:.65rem;border:1px solid var(--border);background:#fffefb}.error{color:#8e2f24;margin:0;font-size:.9rem}.form-actions{display:grid;grid-gap:.7rem;gap:.7rem}.success-state{background:#edf7ef;border:1px solid #92b69a;padding:.9rem 1rem;border-radius:.8rem}.empty-state{background:#f7f3ea;border:1px dashed var(--border);border-radius:.8rem;padding:.8rem 1rem}.small-note{color:var(--muted);font-size:.93rem}.center{text-align:center}.center-row{justify-content:center}.final-cta{background:linear-gradient(180deg,#efe7d6,#f9f3e8)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(251,247,239,.94);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-wrap{min-height:72px;display:flex;align-items:center;gap:1rem}.logo{text-decoration:none;display:inline-flex;align-items:baseline;gap:.4rem}.logo-mark{font-family:Cormorant Garamond,Georgia,serif;font-size:1.8rem;font-weight:700;color:var(--text)}.logo-text{font-size:1rem;color:var(--muted)}.desktop-nav{display:flex;gap:1rem;margin-left:auto}.nav-link{text-decoration:none;padding:.35rem .2rem}.desktop-cta{margin-left:.6rem}.mobile-menu{display:none;margin-left:auto}.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid var(--border);border-radius:.65rem;padding:.6rem .9rem;font-weight:600}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-panel{position:absolute;right:1.25rem;top:4.1rem;min-width:240px;background:var(--white);border:1px solid var(--border);border-radius:.9rem;box-shadow:0 12px 30px rgba(17,48,50,.18);padding:.7rem;display:grid;grid-gap:.25rem;gap:.25rem}.mobile-cta,.mobile-link{text-decoration:none;display:block}.mobile-link{padding:.65rem .7rem;border-radius:.6rem}.mobile-link:hover{background:var(--surface)}.site-footer{border-top:1px solid var(--border);padding:2.4rem 0;background:#ece3d2}.footer-grid{display:grid;grid-gap:1.1rem;gap:1.1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.footer-brand{font-family:Cormorant Garamond,Georgia,serif;font-size:1.65rem;margin:0}.footer-heading{margin:0 0 .35rem;font-weight:700}.footer-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:.35rem;gap:.35rem}.footer-text{margin:0}.footer-small{font-size:.92rem}@media (max-width:920px){.desktop-cta,.desktop-nav{display:none}.mobile-menu{display:block}.footer-grid,.split{grid-template-columns:1fr}}@media (max-width:760px){.section{padding:3.3rem 0}.container{width:min(1120px,calc(100% - 1.5rem))}.two-col{column-count:1}}