*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background:#F5E6E8;color:#3D2024;line-height:1.7;font-size:1rem;overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:'Poppins',sans-serif;font-weight:600;line-height:1.25;color:#722F37;letter-spacing:-0.01em}
h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700}
h2{font-size:clamp(1.5rem,3.5vw,2.5rem);margin-bottom:1rem}
h3{font-size:clamp(1.15rem,2vw,1.5rem);margin-bottom:0.6rem}
p{margin-bottom:1rem}
a{color:#B76E79;text-decoration:none;transition:color 0.25s ease}
a:hover{color:#722F37}
img{max-width:100%;height:auto;display:block;border-radius:12px;object-fit:cover}
ul,ol{margin-bottom:1rem;padding-left:1.4rem}
li{margin-bottom:0.4rem}
section{padding:clamp(3rem,7vw,5rem) 0;position:relative}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}
.section-blush{background:#F5E6E8}
.section-white{background:#FFFFFF}
.section-dark{background:#722F37;color:#F5E6E8}
.section-dark h2,.section-dark h3{color:#F5E6E8}
.section-dark a{color:#E8C5CC}
.section-dark a:hover{color:#FFFFFF}
.section-header{text-align:center;max-width:700px;margin:0 auto 3rem}
.section-header h2{margin-bottom:0.6rem}
.section-header p{color:#8B5560;font-size:1.05rem}
.section-dark .section-header p{color:#E8C5CC}
.topbar{background:#5A242B;color:#F5E6E8;font-size:0.85rem;padding:0.5rem 0}
.topbar .container{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.5rem}
.topbar a{color:#F5E6E8}
.topbar a:hover{color:#B76E79}
.topbar-info{display:flex;gap:1.5rem;flex-wrap:wrap}
.topbar-info span,.topbar-info a{display:inline-flex;align-items:center;gap:0.35rem}
.site-header{background:#722F37;color:#F5E6E8;position:sticky;top:0;z-index:1000;box-shadow:0 2px 20px rgba(114,47,55,0.25)}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;gap:1.5rem}
.logo{font-family:'Poppins',sans-serif;font-weight:700;font-size:1.4rem;color:#F5E6E8;letter-spacing:-0.02em;line-height:1.1;white-space:nowrap}
.logo span{color:#B76E79;display:block;font-size:0.7rem;font-weight:400;letter-spacing:0.15em;text-transform:uppercase;margin-top:2px}
.nav-toggle{display:none;background:none;border:none;color:#F5E6E8;font-size:1.5rem;cursor:pointer;padding:0.3rem}
.main-nav ul{list-style:none;display:flex;gap:2rem;margin:0;padding:0;align-items:center}
.main-nav a{color:#F5E6E8;font-weight:500;font-size:0.95rem;padding:0.5rem 0;position:relative;transition:color 0.25s ease}
.main-nav a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:#B76E79;transition:width 0.3s ease}
.main-nav a:hover::after,.main-nav a:focus::after{width:100%}
.main-nav a:hover,.main-nav a:focus{color:#B76E79}
.main-nav a.active,.main-nav a[aria-current="page"]{color:#B76E79}
.main-nav a.active::after,.main-nav a[aria-current="page"]::after{width:100%}
.hero{background:linear-gradient(135deg,#722F37 0%,#5A242B 100%);color:#F5E6E8;padding:clamp(4rem,10vw,7rem) 0;text-align:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-50%;right:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(183,110,121,0.15) 0%,transparent 70%);border-radius:50%}
.hero::after{content:'';position:absolute;bottom:-30%;left:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(245,230,232,0.08) 0%,transparent 70%);border-radius:50%}
.hero .container{position:relative;z-index:1;max-width:860px}
.hero h1{color:#F5E6E8;margin-bottom:1rem}
.hero p{font-size:clamp(1.05rem,2vw,1.3rem);color:#E8C5CC;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto}
.hero .btn{margin:0.4rem}
.btn{display:inline-block;padding:0.85rem 2rem;font-family:'Poppins',sans-serif;font-weight:500;font-size:0.95rem;border:none;border-radius:8px;cursor:pointer;text-decoration:none;transition:all 0.3s ease;letter-spacing:0.02em;line-height:1.4}
.btn-primary{background:linear-gradient(135deg,#B76E79 0%,#8B4D56 100%);color:#FFFFFF;box-shadow:0 4px 15px rgba(183,110,121,0.35)}
.btn-primary:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 25px rgba(183,110,121,0.5);color:#FFFFFF}
.btn-secondary{background:linear-gradient(135deg,#722F37 0%,#5A242B 100%);color:#F5E6E8;box-shadow:0 4px 15px rgba(114,47,55,0.3)}
.btn-secondary:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 25px rgba(114,47,55,0.45);color:#F5E6E8}
.btn-outline{background:transparent;color:#722F37;border:2px solid #B76E79}
.btn-outline:hover{background:#B76E79;color:#FFFFFF;transform:translateY(-2px);box-shadow:0 6px 20px rgba(183,110,121,0.4)}
.btn-light{background:linear-gradient(135deg,#F5E6E8 0%,#E8C5CC 100%);color:#722F37;box-shadow:0 4px 15px rgba(245,230,232,0.3)}
.btn-light:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 25px rgba(245,230,232,0.5);color:#722F37}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.card{background:#FFFFFF;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(114,47,55,0.08);transition:all 0.35s ease;display:flex;flex-direction:column}
.card:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(114,47,55,0.2)}
.card-img{width:100%;height:220px;border-radius:0}
.card-img img{width:100%;height:100%;border-radius:0}
.card-body{padding:1.75rem;flex-grow:1;display:flex;flex-direction:column}
.card-body h3{color:#722F37}
.card-body p{color:#5A4044;flex-grow:1}
.card-icon{width:56px;height:56px;background:linear-gradient(135deg,#F5E6E8,#E8C5CC);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;font-size:1.5rem;color:#B76E79}
.card-link{margin-top:1rem;font-weight:500;color:#B76E79;display:inline-flex;align-items:center;gap:0.3rem}
.card-link:hover{color:#722F37}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}
.feature-item{text-align:center;padding:2rem 1.5rem;background:#FFFFFF;border-radius:14px;transition:all 0.35s ease}
.feature-item:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(114,47,55,0.15)}
.section-blush .feature-item{background:#FFFFFF}
.section-white .feature-item{background:#F5E6E8}
.feature-icon{width:64px;height:64px;background:linear-gradient(135deg,#B76E79,#8B4D56);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:1.6rem;color:#FFFFFF}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.split-section.reverse .split-text{order:2}
.split-section img{width:100%;height:400px;border-radius:16px;box-shadow:0 8px 30px rgba(114,47,55,0.15)}
.split-text h2{margin-bottom:1rem}
.split-text p{color:#5A4044;margin-bottom:1.2rem}
.split-text ul{list-style:none;padding:0;margin-bottom:1.5rem}
.split-text ul li{padding-left:1.6rem;position:relative;margin-bottom:0.6rem;color:#5A4044}
.split-text ul li::before{content:'✦';position:absolute;left:0;color:#B76E79}
.contact-block{background:#FFFFFF;border-radius:16px;padding:2.5rem;box-shadow:0 4px 20px rgba(114,47,55,0.1);max-width:600px;margin:0 auto}
.section-dark .contact-block{background:rgba(245,230,232,0.08);backdrop-filter:blur(10px);border:1px solid rgba(183,110,121,0.3)}
address{font-style:normal;line-height:2;font-size:1.05rem;color:#3D2024}
.section-dark address{color:#F5E6E8}
address strong{color:#722F37;display:inline-block;min-width:100px;font-family:'Poppins',sans-serif;font-weight:500}
.section-dark address strong{color:#B76E79}
address a{color:#B76E79}
address a:hover{color:#722F37}
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}
.contact-item{text-align:center;padding:1.5rem}
.contact-item h4{color:#B76E79;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:0.5rem;font-family:'Poppins',sans-serif}
.contact-item p{color:#3D2024;font-size:1.05rem;margin:0}
.section-dark .contact-item p{color:#F5E6E8}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}
.gallery-grid img{width:100%;height:250px;transition:transform 0.4s ease,box-shadow 0.4s ease}
.gallery-grid img:hover{transform:scale(1.05);box-shadow:0 12px 30px rgba(114,47,55,0.25)}
.cta-banner{background:linear-gradient(135deg,#722F37,#5A242B);color:#F5E6E8;text-align:center;padding:clamp(3rem,6vw,4.5rem) 0;border-radius:0}
.cta-banner h2{color:#F5E6E8}
.cta-banner p{color:#E8C5CC;font-size:1.1rem;max-width:550px;margin:0 auto 1.8rem}
.site-footer{background:#5A242B;color:#E8C5CC;padding:3.5rem 0 1.5rem}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:2.5rem;margin-bottom:2.5rem}
.footer-brand h3{color:#F5E6E8;font-size:1.3rem;margin-bottom:0.8rem;font-family:'Poppins',sans-serif}
.footer-brand p{color:#E8C5CC;font-size:0.9rem;line-height:1.6}
.footer-col h4{color:#B76E79;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:1rem;font-family:'Poppins',sans-serif;font-weight:600}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col ul li{margin-bottom:0.6rem}
.footer-col a{color:#E8C5CC;font-size:0.9rem;transition:color 0.25s ease,padding-left 0.25s ease}
.footer-col a:hover{color:#F5E6E8;padding-left:4px}
.footer-contact p{font-size:0.9rem;margin-bottom:0.5rem;color:#E8C5CC}
.footer-contact a{color:#E8C5CC}
.footer-contact a:hover{color:#F5E6E8}
.footer-bottom{border-top:1px solid rgba(183,110,121,0.3);padding-top:1.5rem;text-align:center;font-size:0.85rem;color:#C9A0A8}
.footer-bottom p{margin:0}
.social-links{display:flex;gap:0.8rem;margin-top:1rem}
.social-links a{width:38px;height:38px;background:rgba(183,110,121,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#E8C5CC;font-size:0.95rem;transition:all 0.3s ease}
.social-links a:hover{background:#B76E79;color:#FFFFFF;transform:translateY(-3px)}
.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.8s ease,transform 0.8s ease}
.reveal.reveal-left{transform:translateX(-40px)}
.reveal.reveal-right{transform:translateX(40px)}
.reveal.reveal-visible{opacity:1;transform:translate(0,