:root{
  --pin-red:#e60023;
  --rausch:#ff385c;
  --cream:#fffaf5;
  --cream-2:#f8f2eb;
  --soft-pink:#f7dfe4;
  --blush:#ffe7ee;
  --peach:#ffb7a3;
  --lav:#ede7ff;
  --mint:#dff8e8;
  --ink:#211922;
  --charcoal:#1f2937;
  --body:#53444a;
  --muted:#7d6d73;
  --line:#eadfe0;
  --white:#fff;
  --shadow:0 24px 70px rgba(60,32,42,.10);
  --shadow-soft:0 12px 34px rgba(60,32,42,.08);
  --r16:16px;
  --r24:24px;
  --r32:32px;
  --pill:999px;
}
*{-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--body);
  background:
    radial-gradient(circle at 12% 0%,rgba(255,183,163,.30),transparent 28%),
    radial-gradient(circle at 85% 14%,rgba(237,231,255,.65),transparent 24%),
    linear-gradient(180deg,var(--cream) 0%,#fff 48%,#fff8fb 100%);
}
a{text-decoration:none;color:inherit;}
img{max-width:100%;height:auto;}
::selection{background:var(--soft-pink);color:var(--ink);}
.navbar.pretty-nav{
  background:rgba(255,250,245,.82)!important;
  backdrop-filter:saturate(170%) blur(18px);
  border-bottom:1px solid rgba(234,223,224,.76);
  padding:12px 0;
}
.brand-mark{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--ink)!important;letter-spacing:-.04em;}
.brand-dot{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-family:'Playfair Display',serif;font-weight:800;box-shadow:0 8px 20px rgba(33,25,34,.18);}
.navbar .nav-link{font-weight:750;color:#5b4d52!important;font-size:.94rem;border-radius:var(--pill);padding:10px 14px!important;}
.navbar .nav-link:hover{background:#fff;color:var(--pin-red)!important;}
.nav-cta{background:var(--pin-red);color:#fff!important;border-radius:var(--pill);font-weight:800;padding:10px 18px!important;box-shadow:0 12px 26px rgba(230,0,35,.18);}
.btn{border:0;border-radius:var(--pill);font-weight:850;padding:13px 22px;letter-spacing:-.01em;transition:.22s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-main{background:var(--pin-red);color:#fff;box-shadow:0 18px 36px rgba(230,0,35,.18);}
.btn-main:hover{background:#cc001f;color:#fff;}
.btn-soft{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-soft);}
.btn-soft:hover{background:var(--cream);color:var(--ink);}
.btn-dark-soft{background:var(--ink);color:#fff;box-shadow:0 16px 40px rgba(33,25,34,.18);}
.btn-dark-soft:hover{background:#000;color:#fff;}
.section{padding:88px 0;position:relative;}
.section-tight{padding:64px 0;}
.section-soft{background:linear-gradient(180deg,rgba(255,250,245,.75),rgba(255,255,255,.9));}
.kicker,.section-kicker{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--pill);padding:8px 14px;color:var(--pin-red);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;box-shadow:var(--shadow-soft);}
.section-title,.page-title{font-family:'Playfair Display',Georgia,serif;color:var(--ink);font-size:clamp(2.25rem,5vw,4.7rem);line-height:.96;letter-spacing:-.05em;font-weight:800;margin:16px 0;}
.section-subtitle,.lead-copy{font-size:1.05rem;line-height:1.85;color:var(--muted);max-width:760px;}
.hero-local{padding:108px 0 80px;overflow:hidden;}
.hero-wrap{position:relative;border-radius:44px;padding:42px;background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.86);box-shadow:var(--shadow);}
.hero-wrap::before{content:"";position:absolute;inset:14px;border-radius:36px;border:1px dashed rgba(230,0,35,.16);pointer-events:none;}
.hero-title{font-family:'Playfair Display',Georgia,serif;color:var(--ink);font-size:clamp(3.2rem,7vw,6.9rem);line-height:.86;letter-spacing:-.07em;font-weight:900;margin:18px 0 20px;}
.hero-title .script{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:700;color:var(--pin-red);}
.hero-copy{font-size:1.08rem;line-height:1.85;color:#66545a;max-width:650px;}
.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.pill{display:inline-flex;align-items:center;gap:8px;border-radius:var(--pill);background:#fff;border:1px solid var(--line);padding:10px 14px;font-size:.9rem;font-weight:800;color:var(--ink);box-shadow:0 8px 22px rgba(60,32,42,.06);}
.moodboard{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;}
.pin{position:relative;min-height:160px;border-radius:var(--r24);overflow:hidden;background:var(--soft-pink);box-shadow:var(--shadow-soft);display:flex;align-items:end;padding:18px;color:var(--ink);font-weight:900;isolation:isolate;}
.pin::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(255,255,255,.82));z-index:-1;}
.pin.tall{min-height:330px;grid-row:span 2;background:linear-gradient(145deg,#ffdce7,#fff7d8);}
.pin.dark{background:linear-gradient(145deg,#211922,#584a50);color:#fff;}
.pin.mint{background:linear-gradient(145deg,#e3fbec,#fff);}
.pin.lav{background:linear-gradient(145deg,#ede7ff,#fff0f5);}
.pin .label{background:#fff;color:var(--ink);border-radius:var(--pill);padding:7px 12px;font-size:.8rem;box-shadow:0 8px 22px rgba(0,0,0,.08);}
.float-note{position:absolute;right:18px;top:18px;background:#fff;border:1px solid var(--line);border-radius:var(--r16);padding:13px 15px;font-weight:900;color:var(--pin-red);transform:rotate(3deg);box-shadow:var(--shadow-soft);}
.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px;}
.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--r24);padding:20px;box-shadow:var(--shadow-soft);}
.stat-card strong{display:block;color:var(--ink);font-size:1.35rem;letter-spacing:-.04em;}.stat-card span{color:var(--muted);font-size:.9rem;}
.service-grid,.area-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.card-pretty{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:var(--r32);padding:26px;box-shadow:var(--shadow-soft);height:100%;transition:.25s ease;position:relative;overflow:hidden;}
.card-pretty:hover{transform:translateY(-5px) rotate(-.3deg);box-shadow:var(--shadow);}
.card-pretty h3,.card-pretty h4,.card-pretty h5{color:var(--ink);font-weight:900;letter-spacing:-.04em;}.card-pretty p{color:var(--muted);line-height:1.75;margin-bottom:0;}
.icon-bubble{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:var(--blush);font-size:1.45rem;margin-bottom:18px;}
.area-card:nth-child(2){margin-top:34px;}.area-card:nth-child(3){margin-top:-12px;}.area-card:nth-child(4){grid-column:span 3;margin-inline:8%;background:linear-gradient(135deg,#211922,#3d3036);color:#fff;}.area-card:nth-child(4) h3,.area-card:nth-child(4) p{color:#fff;}.area-card:nth-child(4) .pill{color:var(--ink);}
.gallery-masonry{columns:4 220px;column-gap:12px;}.gallery-item{break-inside:avoid;margin-bottom:12px;border-radius:var(--r24);background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow-soft);}.gallery-img{height:var(--h,240px);display:flex;align-items:end;padding:16px;background:linear-gradient(145deg,var(--soft-pink),#fff2bd);}.gallery-img.dark{background:linear-gradient(145deg,#211922,#725a64);}.gallery-img.mint{background:linear-gradient(145deg,#dff8e8,#fff);}.gallery-body{padding:16px;}.gallery-body strong{color:var(--ink);display:block;margin-bottom:4px;}.gallery-body span{color:var(--muted);font-size:.9rem;}
.flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}.flow-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r32);padding:26px;box-shadow:var(--shadow-soft);}.flow-no{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:900;margin-bottom:20px;}.flow-card:nth-child(even){margin-top:34px;background:var(--cream);}
.cta-panel{background:linear-gradient(135deg,#211922 0%,#3a2933 58%,#e60023 160%);border-radius:44px;color:#fff;padding:46px;position:relative;overflow:hidden;box-shadow:0 30px 80px rgba(33,25,34,.20);}.cta-panel h2{font-family:'Playfair Display',serif;font-size:clamp(2.3rem,5vw,4.8rem);line-height:.96;letter-spacing:-.05em;font-weight:900;}.cta-panel p{color:rgba(255,255,255,.74);line-height:1.8;}.cta-panel .pill{border-color:rgba(255,255,255,.18);}
.price-card .price{font-family:'Playfair Display',serif;color:var(--ink);font-size:2.4rem;font-weight:900;letter-spacing:-.06em;}.feature-list{list-style:none;padding:0;margin:20px 0;}.feature-list li{display:flex;gap:10px;margin-bottom:10px;color:var(--body);}.feature-list li::before{content:"✦";color:var(--pin-red);font-weight:900;}
.seo-box{background:var(--cream);border:1px solid var(--line);border-radius:var(--r32);padding:30px;box-shadow:var(--shadow-soft);}.seo-keywords{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}.seo-keywords span{background:#fff;border:1px solid var(--line);border-radius:var(--pill);padding:8px 12px;font-size:.9rem;font-weight:800;color:var(--ink);}
.footer{background:#fff;border-top:1px solid var(--line);padding:44px 0;color:var(--muted);}.footer strong{color:var(--ink);}.footer a{color:var(--ink);font-weight:800;}
.page-hero{padding:96px 0 28px;}.page-hero-shell{background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.92);border-radius:44px;padding:42px;box-shadow:var(--shadow);}.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--r32);padding:30px;box-shadow:var(--shadow-soft);}.social-card{display:flex;flex-direction:column;gap:16px;background:var(--cream);border:1px solid var(--line);border-radius:var(--r32);padding:24px;box-shadow:var(--shadow-soft);height:100%;}
.review-pin-grid{columns:3 240px;column-gap:14px;}.review-pin{break-inside:avoid;margin-bottom:14px;background:#fff;border:1px solid var(--line);border-radius:var(--r32);overflow:hidden;box-shadow:var(--shadow-soft);}.review-thumb{height:260px;background:linear-gradient(145deg,#ffdce7,#fff7d8);display:grid;place-items:center;font-size:2.4rem;}.review-pin:nth-child(2n) .review-thumb{height:340px;background:linear-gradient(145deg,#ede7ff,#fff);}.review-pin:nth-child(3n) .review-thumb{height:210px;background:linear-gradient(145deg,#dff8e8,#fff);}.review-copy{padding:18px;}.sticky-wa{position:fixed;right:18px;bottom:18px;z-index:999;background:var(--pin-red);color:#fff;border-radius:var(--pill);padding:13px 18px;font-weight:900;box-shadow:0 18px 38px rgba(230,0,35,.26);}.sticky-wa:hover{color:#fff;transform:translateY(-2px);}
@media(max-width:991.98px){.hero-wrap{padding:28px;border-radius:32px}.moodboard{margin-top:30px}.stat-strip,.service-grid,.area-grid,.flow-grid{grid-template-columns:1fr 1fr}.area-card:nth-child(2),.area-card:nth-child(3),.flow-card:nth-child(even){margin-top:0}.area-card:nth-child(4){grid-column:span 2;margin-inline:0}.section{padding:66px 0}.navbar-collapse{padding-top:14px}.nav-cta{display:inline-flex;margin-top:8px}}
@media(max-width:767.98px){.hero-local{padding-top:90px}.hero-title{font-size:3.45rem}.section-title,.page-title{font-size:2.65rem}.stat-strip,.service-grid,.area-grid,.flow-grid,.faq-grid{grid-template-columns:1fr}.area-card:nth-child(4){grid-column:span 1}.cta-panel,.page-hero-shell{padding:28px;border-radius:30px}.gallery-masonry,.review-pin-grid{columns:1}.sticky-wa{left:16px;right:16px;text-align:center}.hero-wrap::before{display:none}.float-note{position:static;margin-bottom:12px;transform:none;width:max-content}.pin.tall{min-height:240px}.moodboard{grid-template-columns:1fr 1fr}}
