:root{--primary:#c83a35;--neutral-dark:#111;--neutral-light:#f8f5ef;--secondary:#b89a63;--sage:#7d8b67;--indigo:#2d4564;--terracotta:#b86446;--olive:#7a6a45;--soft-divider:#d8d1c7;--deep-green:#c83a35;--light-green:#b89a63;--beige:#f8f5ef;--white:#fff;--text-dark:#111;--text-light:#55504e;--border-color:#d8d1c7;--shadow-sm:0 1px 3px rgba(200,58,53,.05);--shadow-md:0 4px 6px rgba(200,58,53,.06);--shadow-lg:0 10px 20px rgba(200,58,53,.08);--accent:#f79a9f;--font-sans:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-script:"Cormorant Garamond",serif;--font-logo:"Cormorant Garamond","Playfair Display",serif;--font-shaena:"Playfair Display",serif;--space-xs:clamp(0.5rem,1vw,0.75rem);--space-sm:clamp(0.75rem,1.5vw,1rem);--space-md:clamp(1rem,2vw,1.5rem);--space-lg:clamp(1.5rem,3vw,2rem);--space-xl:clamp(2rem,4vw,3rem);--space-2xl:clamp(3rem,6vw,5rem);--space-3xl:clamp(4rem,8vw,6rem);--space-section:clamp(3rem,6vw,6rem);--container-pad:clamp(1rem,3vw,2rem)}*{box-sizing:border-box;padding:0;margin:0;font-family:var(--font-sans)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;letter-spacing:-.02em;margin-bottom:1rem}em{font-style:italic}.script-font{font-family:var(--font-script)}body,html{max-width:100vw;overflow-x:hidden;font-family:Montserrat,sans-serif;color:var(--text-dark);background:linear-gradient(180deg,#fff,#faf8f5 45%,#f8f5ef);background-attachment:fixed}body{line-height:1.6}a{color:inherit;text-decoration:none;transition:color .3s ease}a:hover{color:var(--deep-green)}h1{font-size:clamp(2rem,4.5vw,3.5rem)}h1,h2{font-weight:500}h2{font-size:clamp(1.75rem,3.5vw,2.5rem)}h3{font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:500}p{margin-bottom:1rem;color:var(--text-light)}button{cursor:pointer;border:none;transition:all .3s ease}button,input,textarea{font-family:Montserrat,sans-serif;outline:none}img{max-width:100%;height:auto;display:block}.script-font{font-family:Playfair Display,serif;font-weight:400;font-style:italic}.container{max-width:1400px;margin:0 auto;padding-inline:var(--container-pad)}.section{padding-block:var(--space-section)}.section-title{text-align:center;margin-bottom:var(--space-xl);color:var(--deep-green)}.btn{display:inline-block;padding:clamp(.75rem,1.5vw,.875rem) clamp(1.5rem,3vw,2rem);border-radius:2px;font-weight:500;font-size:clamp(.8rem,1.2vw,.875rem);letter-spacing:1px;text-transform:uppercase;transition:all .3s ease;min-height:44px}.btn-primary{background-color:var(--text-dark);color:var(--white);border:1px solid var(--text-dark)}.btn-primary:hover{background-color:var(--deep-green);border-color:var(--deep-green);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--text-dark);border:1px solid var(--text-dark)}.btn-secondary:hover{background-color:var(--text-dark);color:var(--white);transform:translateY(-1px)}.btn-light{background-color:var(--white);color:var(--text-dark);border:1px solid var(--white)}.btn-light:hover{background-color:transparent;color:var(--white);border-color:var(--white)}html{scroll-behavior:smooth;scroll-padding-top:80px}body{-webkit-overflow-scrolling:touch}*,a[href^="#"],body{scroll-behavior:smooth}.no-scroll-chain{overscroll-behavior:contain}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out}