:root{
  --rose:#cc6f8a;
  --rose-deep:#8f4058;
  --rose-soft:#f6cfda;
  --blush:#f7dbe3;
  --cream:#fff8fa;
  --cream-card:rgba(255,250,252,.88);
  --gold:#d7a949;
  --gold-dark:#8f5f17;
  --gold-light:#fff0b8;
  --ink:#5d2f3b;
  --muted:#7d5862;
  --line:rgba(215,169,73,.42);
  --shadow:0 22px 55px rgba(93,38,54,.18);
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Cormorant Garamond", Georgia, serif;
  color:var(--ink);
  background-image:
    linear-gradient(rgba(255,247,250,.36),rgba(244,219,227,.28)),
    url('../images/palace-background-clean.png');
  background-size:cover,cover;
  background-position:center top,center top;
  background-repeat:no-repeat,no-repeat;
  background-attachment:fixed,fixed;
}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(255,247,250,.55),rgba(255,247,250,.2) 44%,rgba(138,65,85,.25));}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.18),transparent 18%),radial-gradient(circle at 92% 18%,rgba(255,240,188,.16),transparent 17%);}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}.container{width:min(1180px,92vw);margin-inline:auto}
.notice-bar{background:linear-gradient(90deg,#8f5f17,#c89335 22%,#fff0b8 50%,#c89335 78%,#8f5f17);color:#fff8e8;text-align:center;padding:.58rem 1rem;letter-spacing:.09em;font:700 .84rem Montserrat,Arial,sans-serif;text-transform:uppercase;text-shadow:0 1px 0 rgba(90,54,5,.4)}
header.site-header{position:sticky;top:0;z-index:50;background:rgba(255,247,250,.86);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);box-shadow:0 10px 26px rgba(93,38,54,.1)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:.72rem 0;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;font:800 .95rem Montserrat,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}.brand img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:1px solid var(--line);box-shadow:0 7px 18px rgba(151,78,92,.2)}
.nav{display:flex;gap:1.08rem;align-items:center;font:700 .78rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.11em}.nav a{position:relative;white-space:nowrap}.nav a.active::after,.nav a:hover::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:linear-gradient(90deg,transparent,var(--gold-light),var(--gold),transparent)}
.mobile-toggle{display:none;background:none;border:0;font-size:1.6rem}.gold-text,.brand,.nav a,.mobile-toggle,h1,h2,h3,.section-head h2,.page-hero h1,.footer h3,.service-card h3,.gallery-card h3,.review-card h3,.policy-card h3{background:linear-gradient(180deg,#fff8dc 0%,#f7df9b 16%,#dbad4e 34%,#a66d18 53%,#f3d98f 68%,#8c5b14 88%,#ffeeba 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 1px 1px rgba(88,48,5,.18),0 0 14px rgba(255,229,155,.22)}
h1,h2,h3{font-weight:600;line-height:1.03;margin:0}h1{font-size:clamp(3rem,7vw,6.4rem);margin:.45rem 0}.script{font-family:"Great Vibes",cursive;color:#c96585;background:none;-webkit-background-clip:initial;background-clip:initial;text-shadow:0 2px 0 rgba(255,255,255,.25);font-weight:400;line-height:.9}.hero .script{display:block;font-size:clamp(3.2rem,7vw,5.5rem)}
p{font-size:1.08rem;line-height:1.68;color:var(--muted)}.eyebrow{font:800 .82rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.19em;color:var(--gold-dark)}
.btn,.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.86rem 1.22rem;border-radius:999px;border:1px solid rgba(215,169,73,.85);background:linear-gradient(135deg,#c8617e,#ed9ab2 55%,#c8617e);color:white;font:800 .76rem Montserrat,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 13px 30px rgba(176,78,105,.24);cursor:pointer;position:relative;overflow:hidden}.btn::before,.button::before{content:"";position:absolute;top:0;left:-45%;width:28%;height:100%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent);animation:shimmer 5.2s ease-in-out infinite}@keyframes shimmer{0%,76%,100%{left:-45%}20%,33%{left:120%}}.btn.secondary{background:rgba(255,252,253,.7);color:var(--gold-dark)}.btn.gold{background:linear-gradient(135deg,#fff0b8,#dbad4e 50%,#a66d18);color:#5b3708}
.hero{padding:62px 0 42px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}.card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section{background:linear-gradient(155deg,rgba(255,251,252,.9),rgba(255,235,240,.82));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden;backdrop-filter:blur(8px)}.card-panel::before,.service-card::before,.gallery-card::before,.cart-box::before,.gallery-section::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.36),transparent 42%,rgba(215,169,73,.12));pointer-events:none}.card-panel::after,.service-card::after,.policy-card::after,.gallery-card::after,.review-card::after,.cart-box::after,.gallery-section::after{content:"";position:absolute;inset:10px;border:1px solid rgba(215,169,73,.23);border-radius:20px;pointer-events:none}.hero-copy{padding:3rem}.hero-actions,.contact-row{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.25rem}.logo-card{padding:1.4rem;text-align:center}.logo-card img{border-radius:20px;box-shadow:0 18px 42px rgba(98,42,58,.16)}.ribbon{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;padding:.76rem 1rem;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,rgba(255,252,245,.86),rgba(255,236,205,.58));font:800 .74rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark)}
section{padding:54px 0}.section-head{text-align:center;margin-bottom:2rem}.section-head h2{font-size:clamp(2.4rem,5vw,4.3rem)}.section-head p{max-width:780px;margin:.75rem auto 0}.grid{display:grid;gap:1.1rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.4rem;align-items:start}.service-card,.gallery-card,.review-card,.policy-card,.cart-box{padding:1.24rem}.service-card img,.gallery-card img{width:100%;height:230px;object-fit:cover;border-radius:16px;border:1px solid rgba(215,169,73,.35);box-shadow:0 16px 36px rgba(93,38,54,.14);margin-bottom:.9rem}.service-card h3,.gallery-card h3{font-size:1.55rem;margin-bottom:.25rem}.price{font:800 .95rem Montserrat,Arial,sans-serif;color:var(--rose-deep);letter-spacing:.04em;margin:.35rem 0}.meta{font:500 .82rem Montserrat,Arial,sans-serif;color:var(--muted)}.chip{display:inline-flex;padding:.36rem .66rem;border-radius:999px;background:rgba(215,169,73,.16);border:1px solid rgba(215,169,73,.38);font:800 .72rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-dark);margin-bottom:.65rem}.service-card .btn{width:100%;margin-top:.85rem}.feature-img{border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow);width:100%;height:100%;object-fit:cover;min-height:360px}.portfolio-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.portfolio-strip img{height:170px;width:100%;object-fit:cover;border-radius:18px;border:1px solid var(--line)}ul.clean{padding-left:1.08rem;color:var(--muted);line-height:1.9;font-size:1.05rem}.page-hero{padding:52px 0 28px}.page-hero .card-panel{padding:2.4rem;text-align:center}.page-hero h1{font-size:clamp(2.8rem,7vw,5.6rem)}.placeholder{height:210px;border-radius:16px;border:1px dashed rgba(215,169,73,.65);display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,249,250,.9),rgba(248,223,231,.75));font:800 .8rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark);text-align:center;padding:1rem}.alert{border-left:4px solid var(--gold);background:rgba(255,248,232,.72);padding:1rem;border-radius:16px;margin:1rem 0;color:var(--ink)}
.gallery-section{padding:1.2rem;margin-bottom:1.4rem}.gallery-section h2{font-size:2.3rem;margin-bottom:.5rem}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1rem}.gallery-item{position:relative;overflow:hidden;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.5);box-shadow:0 14px 28px rgba(93,38,54,.13)}.gallery-item img{width:100%;height:260px;object-fit:cover}.gallery-caption{padding:.72rem .8rem;font:700 .82rem Montserrat,Arial,sans-serif;color:var(--ink)}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}label{display:block;font:800 .76rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark);margin-bottom:.35rem}input,select,textarea{width:100%;border:1px solid rgba(215,169,73,.42);background:rgba(255,251,252,.74);border-radius:14px;padding:.9rem 1rem;color:var(--ink);font:1rem Montserrat,Arial,sans-serif;outline:none}textarea{min-height:120px;resize:vertical}.full{grid-column:1/-1}.form-note{font:.92rem Montserrat,Arial,sans-serif;color:var(--muted)}.cart-sticky{position:sticky;top:100px}.cart-line{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(215,169,73,.25);padding:.55rem 0;font:500 .9rem Montserrat,Arial,sans-serif}.cart-total{font-size:1.1rem;font-weight:800;color:var(--rose-deep)}.small-btn{background:none;border:0;color:var(--rose-deep);text-decoration:underline;cursor:pointer}
.footer{background:linear-gradient(135deg,rgba(95,39,53,.94),rgba(137,62,78,.96));color:#fff1f5;padding:2.5rem 0;margin-top:3rem;border-top:1px solid rgba(215,169,73,.65)}.footer p,.footer a{color:#fff1f5}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:1.4rem}.footer .brand img{width:48px;height:48px}.social-buttons{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.75rem}.social-buttons .btn{min-height:38px;padding:.65rem .88rem;font-size:.68rem}.fairy-sparkle{position:fixed;z-index:99999;width:7px;height:7px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fff 0%,#fff4b8 35%,#d7a949 62%,rgba(215,169,73,0) 72%);box-shadow:0 0 10px #fff0b8,0 0 18px rgba(215,169,73,.55);animation:fairyDust .9s ease-out forwards}@keyframes fairyDust{to{transform:translate(var(--dx),var(--dy)) scale(.08);opacity:0}}
@media(max-width:1000px){.grid-4,.gallery-grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.split,.footer-grid{grid-template-columns:1fr}.feature-img{min-height:280px}.nav{position:absolute;left:0;right:0;top:100%;background:rgba(255,247,250,.98);padding:1rem;display:none;flex-direction:column;border-bottom:1px solid var(--line)}.nav.open{display:flex}.mobile-toggle{display:block}.form-grid{grid-template-columns:1fr}.cart-sticky{position:static}.portfolio-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.grid-2,.grid-3,.grid-4,.gallery-grid{grid-template-columns:1fr}.hero-copy{padding:1.45rem}.hero-actions,.contact-row{flex-direction:column}.btn{width:100%}.brand span{font-size:.8rem}.section-head h2{font-size:2.4rem}.gallery-item img,.service-card img{height:300px}.portfolio-strip{grid-template-columns:1fr 1fr}.portfolio-strip img{height:190px}}

/* Final client-facing cleanup: clickable gallery albums, logo contact buttons, and multi-service cart */
.header-icons,.icon-buttons{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.header-icons{margin-left:.2rem}.icon-buttons.center{justify-content:center}.icon-btn{width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-direction:column;gap:.1rem;border:1px solid rgba(215,169,73,.75);background:linear-gradient(145deg,rgba(255,252,242,.95),rgba(234,179,86,.86));box-shadow:0 12px 24px rgba(93,38,54,.16),inset 0 1px 0 rgba(255,255,255,.6);color:#70410d!important;text-decoration:none;font-family:Montserrat,Arial,sans-serif;font-weight:800;position:relative;overflow:hidden}.icon-btn::before{content:"";position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.46) 50%,transparent 62%);transform:translateX(-80%) rotate(12deg);transition:.45s ease}.icon-btn:hover::before{transform:translateX(80%) rotate(12deg)}.icon-btn span{font-size:1.25rem;line-height:1}.icon-btn small{font-size:.52rem;letter-spacing:.06em;text-transform:uppercase}.header-icons .icon-btn{width:38px;height:38px}.header-icons .icon-btn small{display:none}.header-icons .icon-btn span{font-size:1rem}.phone span{font-size:1.35rem}.instagram span{font-size:1.45rem}.tiktok span{font-size:1.35rem}.facebook span{font-family:Georgia,serif;font-size:1.35rem}.footer .icon-buttons{margin-top:.55rem}.footer .icon-btn{background:linear-gradient(145deg,#fff3c4,#d4a142);color:#5d3708!important}.gallery-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1rem}.gallery-category-card{border:1px solid rgba(215,169,73,.55);border-radius:24px;overflow:hidden;padding:0;background:linear-gradient(155deg,rgba(255,251,252,.92),rgba(255,231,238,.82));box-shadow:0 16px 34px rgba(93,38,54,.14);cursor:pointer;text-align:left;position:relative}.gallery-category-card img{width:100%;height:230px;object-fit:cover;display:block}.gallery-category-card span{display:block;padding:1rem;font:800 .86rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;background:linear-gradient(180deg,#fff8dc,#dbad4e 52%,#8c5b14);-webkit-background-clip:text;background-clip:text;color:transparent}.gallery-category-card.active{outline:2px solid rgba(215,169,73,.72);transform:translateY(-2px)}.gallery-intro{margin-bottom:1.4rem}.gallery-panel{display:none}.gallery-panel.active{display:block}.gallery-section h2{font-size:clamp(2rem,5vw,3.6rem)}.gallery-grid{align-items:start}.gallery-item img{height:300px}.selected-card{outline:2px solid rgba(215,169,73,.76);box-shadow:0 18px 38px rgba(143,64,88,.22)}.addon-check{display:flex;align-items:center;gap:.55rem;cursor:pointer;margin:0;text-transform:none;letter-spacing:normal;font-size:1.05rem}.addon-check input{width:auto;accent-color:#c85d7e}.cart-line{gap:.65rem}.cart-line span{flex:1}.cart-remove{width:28px;height:28px;border-radius:50%;border:1px solid rgba(215,169,73,.55);background:rgba(255,255,255,.55);color:#8f4058;font-weight:900;cursor:pointer}.cart-remove:hover{background:#fff3c4}.site-header .btn{white-space:nowrap}.footer h3{margin-bottom:.55rem}.footer .brand{margin-bottom:.5rem}.footer p{font-size:1rem;line-height:1.55}.contact-row .icon-buttons{margin-top:0}.clean-client-note{display:none!important}
@media(max-width:1050px){.header-icons{display:none}.gallery-category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.gallery-category-grid{grid-template-columns:1fr}.gallery-category-card img{height:260px}.icon-buttons{justify-content:flex-start}.icon-btn{width:52px;height:52px}.footer .icon-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:.45rem}.footer .icon-btn{width:100%;height:48px}.footer .icon-btn small{display:none}.gallery-item img{height:320px}}

/* Final polish: real platform-style logo buttons, readable luxe cursive headers, and stronger sparkle styling */
.brand{
  gap:.72rem;
  text-transform:none !important;
  letter-spacing:0 !important;
}
.brand span{
  font-family:"Great Vibes", cursive !important;
  font-size:clamp(1.85rem,3vw,2.35rem) !important;
  line-height:1 !important;
  letter-spacing:.015em !important;
  text-transform:none !important;
  white-space:nowrap;
  background:linear-gradient(180deg,#fff8dd 0%,#f4d88a 18%,#d6a13d 44%,#fff1b8 60%,#a86e16 86%,#ffe5a8 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
  text-shadow:0 1px 1px rgba(90,48,7,.18),0 0 13px rgba(255,224,143,.18);
}
.nav a:not(.btn){
  font-family:Montserrat,Arial,sans-serif !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
}
h1,
.page-hero h1,
.section-head h2,
.hero-copy h2,
.gallery-section h2,
.footer h3{
  font-family:"Great Vibes", cursive !important;
  font-weight:400 !important;
  letter-spacing:.015em !important;
  text-transform:none !important;
  background:linear-gradient(180deg,#fff8df 0%,#efd082 20%,#c88b32 48%,#fff0b3 62%,#9d6416 88%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
  text-shadow:0 1px 1px rgba(90,48,7,.16),0 0 14px rgba(255,222,140,.14);
}
.service-card h3,
.gallery-card h3,
.policy-card h3,
.review-card h3{
  font-family:"Cormorant Garamond", Georgia, serif !important;
  font-weight:600 !important;
  letter-spacing:.015em !important;
}
.icon-buttons,
.header-icons{
  display:flex;
  align-items:center;
  gap:.62rem;
  flex-wrap:wrap;
}
.icon-buttons.center{justify-content:center;}
.icon-btn{
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:2px solid rgba(255,232,165,.72) !important;
  box-shadow:0 12px 25px rgba(93,38,54,.18), inset 0 1px 0 rgba(255,255,255,.5) !important;
  padding:0 !important;
  overflow:hidden !important;
  position:relative !important;
  text-indent:0 !important;
}
.header-icons .icon-btn{
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  border-width:1.5px !important;
}
.icon-btn svg{
  width:25px !important;
  height:25px !important;
  display:block !important;
  position:relative;
  z-index:2;
}
.header-icons .icon-btn svg{width:20px !important;height:20px !important;}
.icon-btn small,
.icon-btn span{display:none !important;}
.icon-btn::before{
  content:"";
  position:absolute;
  inset:-45%;
  background:linear-gradient(120deg,transparent 38%,rgba(255,255,255,.52) 50%,transparent 62%);
  transform:translateX(-100%) rotate(18deg);
  transition:.45s ease;
  z-index:3;
  pointer-events:none;
}
.icon-btn:hover::before{transform:translateX(100%) rotate(18deg);}
.icon-btn.phone,
.icon-btn.email{
  background:linear-gradient(145deg,#fff4c8 0%,#e3bd67 45%,#af741d 100%) !important;
}
.icon-btn.phone svg path,
.icon-btn.email svg path{fill:#71430c;}
.icon-btn.instagram{
  background:radial-gradient(circle at 30% 105%,#fdf497 0 18%,#fd5949 42%,#d6249f 63%,#285AEB 100%) !important;
}
.icon-btn.instagram svg path{fill:#fff;}
.icon-btn.tiktok{background:#050505 !important;}
.icon-btn.tiktok svg path:not(.tk-shadow-red):not(.tk-shadow-cyan){fill:#fff;}
.icon-btn.tiktok .tk-shadow-red{fill:#fe2c55;transform:translate(1.3px,1px);}
.icon-btn.tiktok .tk-shadow-cyan{fill:#25f4ee;transform:translate(-1px,-.8px);}
.icon-btn.facebook{background:#1877F2 !important;}
.icon-btn.facebook svg path{fill:#fff;}
.footer .icon-buttons{display:flex !important;grid-template-columns:none !important;}
.footer .icon-btn{width:48px !important;height:48px !important;min-width:48px !important;}
.footer .icon-btn svg{width:22px !important;height:22px !important;}
.fairy-sparkle{
  width:8px !important;
  height:8px !important;
  background:radial-gradient(circle,#fff 0%,#fff9cb 30%,#efca64 58%,rgba(239,202,100,0) 72%) !important;
  box-shadow:0 0 10px #fff6bd,0 0 20px rgba(239,202,100,.7),0 0 34px rgba(255,183,224,.34) !important;
}
@media(max-width:620px){
  .brand span{font-size:1.65rem !important;}
  .icon-btn{width:52px !important;height:52px !important;min-width:52px !important;}
  .footer .icon-buttons{display:flex !important;}
}


/* --- Final visibility, review, and sparkle polish --- */
body{
  color:#512b35;
}
.site-header,
.nav.open{
  background:rgba(249,226,236,.97) !important;
  box-shadow:0 18px 38px rgba(96,37,49,.18);
}
.nav.open{
  border-bottom:2px solid rgba(215,169,73,.55);
}
.card-panel,
.service-card,
.policy-card,
.gallery-card,
.review-card,
.cart-box,
.gallery-section{
  background:linear-gradient(155deg,rgba(255,240,246,.96),rgba(244,210,222,.92)) !important;
  border:1.5px solid rgba(180,128,43,.56) !important;
  box-shadow:0 22px 58px rgba(94,42,57,.22) !important;
}
.card-panel::after,
.service-card::after,
.policy-card::after,
.gallery-card::after,
.review-card::after,
.cart-box::after,
.gallery-section::after{
  border-color:rgba(180,128,43,.34) !important;
}
p,
ul.clean,
.meta,
.form-note,
.gallery-caption{
  color:#59313d !important;
}
.section-head{
  background:linear-gradient(155deg,rgba(255,239,245,.80),rgba(243,209,221,.68));
  border:1px solid rgba(215,169,73,.42);
  border-radius:28px;
  padding:1.6rem 1rem;
  box-shadow:0 14px 34px rgba(94,42,57,.12);
}
.section-head h2,
.page-hero h1,
h1,h2,h3{
  background:linear-gradient(180deg,#fff6cf 0%,#f3d377 15%,#c68a24 38%,#7c4f0c 56%,#ddb058 72%,#fff0b7 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  text-shadow:0 2px 1px rgba(255,255,255,.44),0 0 18px rgba(255,221,140,.46),0 2px 11px rgba(88,48,5,.18) !important;
  filter:drop-shadow(0 2px 0 rgba(255,247,226,.28));
}
.featured-head h2{
  font-size:clamp(2.8rem,6vw,4.7rem) !important;
  letter-spacing:.02em;
}
.featured-head p{
  font-weight:600;
  color:#5f3341 !important;
}
.nav a,
.brand span,
.mobile-toggle{
  text-shadow:0 1px 1px rgba(255,255,255,.45),0 0 12px rgba(255,220,140,.45) !important;
}
.btn.secondary,
.btn.gold,
.gallery-category-card,
.review-card,
.policy-card{
  background:linear-gradient(155deg,rgba(255,244,248,.96),rgba(241,202,217,.92)) !important;
}
.review-form-card{
  max-width:920px;
  margin-inline:auto;
}
.review-form-card .btn{
  width:auto;
}
select option{
  color:#512b35;
  background:#fff3f7;
}
.fairy-sparkle{
  width:var(--size,13px) !important;
  height:var(--size,13px) !important;
  border-radius:50%;
  background:radial-gradient(circle,#ffffff 0%,#fff7c9 22%,#ffd873 42%,#f070b2 62%,rgba(240,112,178,0) 76%) !important;
  box-shadow:0 0 12px #fff,0 0 24px rgba(255,218,115,.95),0 0 36px rgba(239,91,158,.85) !important;
  opacity:1;
  mix-blend-mode:normal;
  animation:fairyDustFinal 1.25s cubic-bezier(.14,.79,.32,1) forwards !important;
}
.fairy-sparkle::after{
  content:"✦";
  position:absolute;
  left:50%;top:50%;
  transform:translate(-50%,-50%) rotate(var(--rot,0deg));
  color:#fff5b6;
  font-size:calc(var(--size,13px) * 1.45);
  line-height:1;
  text-shadow:0 0 8px #fff,0 0 18px #ffd873,0 0 24px #f070b2;
}
@keyframes fairyDustFinal{
  0%{transform:translate(0,0) scale(.65) rotate(0deg);opacity:0;}
  12%{opacity:1;}
  100%{transform:translate(var(--dx),var(--dy)) scale(.04) rotate(180deg);opacity:0;}
}
@media(max-width:1000px){
  .nav.open{
    padding:1.4rem 1rem 1.6rem !important;
  }
  .nav.open a:not(.btn){
    font-size:1rem;
    padding:.35rem 0;
  }
  .nav .btn{
    background:rgba(255,247,250,.92) !important;
    color:#8f5f17 !important;
    border-color:rgba(215,169,73,.75) !important;
  }
}
@media(max-width:620px){
  .section-head{padding:1.15rem .9rem;}
  .review-form-card .btn{width:100%;}
}


/* --- FINAL CLIENT CLEANUP: side menu, stronger contrast, usable forms, gallery polish --- */
body::before{
  background:linear-gradient(180deg,rgba(255,247,250,.44),rgba(255,247,250,.12) 42%,rgba(93,38,54,.26)) !important;
}
.site-header{background:rgba(255,238,246,.96) !important;box-shadow:0 16px 38px rgba(81,43,53,.16) !important;}
.nav-wrap{min-height:76px;}
.brand{letter-spacing:0 !important;text-transform:none !important;min-width:0;}
.brand span{
  font-family:"Great Vibes",cursive !important;
  font-size:clamp(2.05rem,3.2vw,3rem) !important;
  line-height:.9 !important;
  letter-spacing:.02em !important;
  color:#9a6418 !important;
  background:linear-gradient(180deg,#fff5c7 0%,#e8be62 22%,#9a6418 48%,#72420a 70%,#edcf84 100%) !important;
  -webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72),0 2px 8px rgba(86,45,8,.28),0 0 15px rgba(239,205,117,.34) !important;
  filter:drop-shadow(0 2px 0 rgba(255,255,255,.22));
}
.mobile-toggle{
  display:grid !important;place-items:center;width:50px;height:50px;border:1px solid rgba(178,126,43,.54) !important;border-radius:999px;
  color:#8f5f17 !important;background:linear-gradient(145deg,rgba(255,247,250,.94),rgba(236,194,210,.88)) !important;
  box-shadow:0 8px 20px rgba(93,38,54,.14);font-size:1.55rem !important;position:relative;z-index:120;
}
.nav{
  position:fixed !important;top:0;right:0;bottom:0;width:min(390px,88vw);height:100vh;z-index:110;
  display:flex !important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.55rem;
  padding:96px 28px 28px !important;
  background:linear-gradient(165deg,rgba(255,237,245,.98),rgba(231,181,200,.98)) !important;
  border-left:2px solid rgba(178,126,43,.55);box-shadow:-22px 0 55px rgba(81,43,53,.25);
  transform:translateX(105%);transition:transform .28s ease;overflow:auto;
}
.nav.open{transform:translateX(0);background:linear-gradient(165deg,rgba(255,237,245,.99),rgba(224,166,189,.99)) !important;border-bottom:0 !important;}
.nav a:not(.btn){
  display:block;text-align:center;padding:.88rem .8rem;border-radius:18px;border:1px solid rgba(178,126,43,.30);
  background:rgba(255,248,251,.66) !important;color:#7a4a0e !important;font-size:1rem !important;letter-spacing:.16em !important;
}
.nav a.active::after,.nav a:hover::after{display:none !important;}
.nav a:not(.btn):hover,.nav a.active{background:linear-gradient(145deg,rgba(255,244,248,.92),rgba(244,210,222,.86)) !important;box-shadow:0 8px 20px rgba(93,38,54,.12);}
.nav .btn{width:100%;margin-top:.75rem;background:linear-gradient(135deg,#c8617e,#ed9ab2 55%,#b94e70) !important;color:#fff !important;}
.header-icons{display:flex !important;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:.8rem 0 0;padding:.5rem 0;}
.card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section{
  background:linear-gradient(155deg,rgba(255,243,248,.97),rgba(238,197,214,.94)) !important;
}
.card-panel p,.service-card p,.policy-card p,.review-card p,.gallery-section p,.cart-box p,
.form-note,.meta,ul.clean,.gallery-caption{color:#442630 !important;font-weight:600;}
.price{color:#6f3a10 !important;font-weight:900 !important;}
.section-head h2,.featured-head h2,.page-hero h1,h1,h2,h3{
  color:#7a4a0e !important;
  background:linear-gradient(180deg,#fff4bd 0%,#d39c33 30%,#70440b 58%,#e7be62 100%) !important;
  -webkit-background-clip:text !important;background-clip:text !important;color:transparent !important;
  text-shadow:0 1px 0 rgba(255,255,255,.75),0 2px 10px rgba(80,42,8,.32),0 0 16px rgba(232,188,93,.35) !important;
}
.script{color:#a94d73 !important;background:none !important;-webkit-background-clip:initial !important;background-clip:initial !important;text-shadow:0 1px 0 rgba(255,255,255,.65),0 0 12px rgba(169,77,115,.22) !important;}
.hero-copy .script{font-size:clamp(3.1rem,6.5vw,5.3rem) !important;}
.gallery-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.2rem;}
.gallery-category-card{border:1.5px solid rgba(178,126,43,.52) !important;border-radius:24px;padding:.85rem;background:linear-gradient(155deg,rgba(255,246,250,.98),rgba(238,197,214,.94)) !important;box-shadow:0 16px 34px rgba(93,38,54,.16);cursor:pointer;overflow:hidden;}
.gallery-category-card img{width:100%;height:220px;object-fit:cover;border-radius:18px;border:1px solid rgba(178,126,43,.34);}
.gallery-category-card span{display:block;margin-top:.75rem;text-align:center;font:900 .86rem Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#7a4a0e;text-shadow:0 1px 0 rgba(255,255,255,.7);}
.gallery-category-card.active{outline:3px solid rgba(216,169,73,.65);}
.gallery-panel{display:none;}
.gallery-panel.active{display:block;}
.gallery-grid{grid-template-columns:repeat(3,1fr) !important;}
.gallery-item{background:rgba(255,243,248,.96) !important;border-color:rgba(178,126,43,.48) !important;}
.gallery-caption{background:linear-gradient(155deg,rgba(255,244,248,.98),rgba(238,197,214,.94));font-weight:900 !important;color:#4a2631 !important;text-shadow:0 1px 0 rgba(255,255,255,.5);}
.footer{background:linear-gradient(135deg,rgba(95,39,53,.98),rgba(128,50,71,.98)) !important;}
.footer h3,.footer p{color:#fff4f8 !important;text-shadow:0 1px 4px rgba(0,0,0,.42) !important;}
.footer .brand span{filter:none;}
.fairy-sparkle{z-index:2147483647 !important;mix-blend-mode:screen !important;}
.fairy-sparkle::after{font-size:calc(var(--size,15px) * 1.8) !important;color:#fff !important;text-shadow:0 0 7px #fff,0 0 18px #ffe177,0 0 30px #ff4dab,0 0 42px #fff !important;}
@media(max-width:980px){.gallery-category-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr) !important}.brand img{width:50px;height:50px}.brand span{font-size:2.25rem !important;}}
@media(max-width:620px){.gallery-category-grid,.gallery-grid{grid-template-columns:1fr !important}.nav{width:92vw}.brand span{font-size:1.9rem !important}.nav-wrap{gap:.55rem}.brand img{width:48px;height:48px}.gallery-category-card img,.gallery-item img{height:260px}.card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section{background:linear-gradient(155deg,rgba(255,241,247,.98),rgba(235,189,208,.96)) !important;}}


/* --- FINAL POLISH: readable luxury typography + opaque cards + scroll motion --- */
:root{
  --card-opaque: rgba(255,246,250,.985);
  --card-opaque-2: rgba(238,190,210,.965);
  --text-strong:#3f222c;
  --gold-readable:#6d4210;
}
body{
  color:var(--text-strong) !important;
}
body::before{
  background:linear-gradient(180deg,rgba(255,246,250,.58),rgba(255,246,250,.24) 42%,rgba(93,38,54,.30)) !important;
}
.card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section,.section-head{
  background:linear-gradient(155deg,var(--card-opaque),var(--card-opaque-2)) !important;
  backdrop-filter:blur(5px) saturate(1.06) !important;
  border-color:rgba(178,126,43,.58) !important;
  box-shadow:0 22px 58px rgba(80,31,47,.20), inset 0 1px 0 rgba(255,255,255,.65) !important;
}
.card-panel p,.service-card p,.policy-card p,.review-card p,.gallery-section p,.cart-box p,
.form-note,.meta,ul.clean,.gallery-caption,.section-head p,.hero-copy p{
  color:var(--text-strong) !important;
  font-weight:650 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.42) !important;
}
.eyebrow,.price,label,.chip,.gallery-category-card span,.cart-line,strong,.cart-total{
  color:var(--gold-readable) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
.brand span,
.section-head h2,
.featured-head h2,
.page-hero h1,
h1,h2,h3{
  text-shadow:0 1px 0 rgba(255,255,255,.9),0 2px 10px rgba(80,42,8,.38),0 0 18px rgba(255,219,125,.38) !important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.34)) drop-shadow(0 7px 15px rgba(79,30,48,.10)) !important;
}
.brand span{
  font-size:clamp(2.25rem,3.6vw,3.45rem) !important;
  color:#7b4a0d !important;
}
.script,
.hero-copy .script{
  color:#9d3f66 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.82),0 0 14px rgba(157,63,102,.28) !important;
}
.featured-head h2{
  font-size:clamp(3.2rem,6.8vw,5.2rem) !important;
}
.nav.open{
  background:linear-gradient(165deg,rgba(255,237,245,.995),rgba(216,150,178,.985)) !important;
}
.nav a:not(.btn){
  background:rgba(255,248,251,.84) !important;
  color:#6d4210 !important;
}
.icon-btn{box-shadow:0 11px 26px rgba(75,26,42,.25), inset 0 0 0 2px rgba(255,255,255,.32) !important;}
.footer{background:linear-gradient(135deg,rgba(85,31,47,.99),rgba(122,44,67,.99)) !important;}
.footer p,.footer a{color:#fff7fa !important;text-shadow:0 1px 6px rgba(0,0,0,.55) !important;}
/* scroll transition system */
.reveal{
  opacity:0;
  transform:translateY(34px) scale(.985);
  filter:blur(4px);
  transition:opacity .82s ease, transform .82s cubic-bezier(.2,.75,.2,1), filter .82s ease;
  will-change:opacity,transform,filter;
}
.reveal.revealed{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}
.reveal-left{transform:translateX(-36px) scale(.985);}
.reveal-right{transform:translateX(36px) scale(.985);}
.reveal-left.revealed,.reveal-right.revealed{transform:translateX(0) scale(1);}
.service-card.reveal,.gallery-item.reveal,.gallery-category-card.reveal,.review-card.reveal,.policy-card.reveal{
  transition-delay:var(--delay,0ms);
}
@media(prefers-reduced-motion:reduce){
  .reveal,.reveal-left,.reveal-right{opacity:1 !important;transform:none !important;filter:none !important;transition:none !important;}
}
@media(max-width:620px){
  .brand span{font-size:2.12rem !important;}
  .card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section,.section-head{
    background:linear-gradient(155deg,rgba(255,243,248,.992),rgba(232,176,201,.978)) !important;
  }
}

/* --- THEME LOCK: champagne gold + blush/rose pink only (no silver lettering) --- */
:root{
  --champagne:#f8df9a;
  --champagne-light:#fff4ca;
  --champagne-mid:#d7a64a;
  --champagne-deep:#7a4a0d;
  --rose-brand:#c65f83;
  --rose-brand-dark:#8d3f58;
  --pink-card:#f7d7e2;
  --pink-card-deep:#e8aac1;
  --text-rose:#47242f;
}
body,
p,
ul.clean,
.meta,
.form-note,
.gallery-caption,
.cart-line,
.service-card p,
.policy-card p,
.review-card p,
.gallery-section p,
.cart-box p{
  color:var(--text-rose) !important;
}
/* headings and brand: champagne gold, not silver */
.brand span,
.gold-text,
.section-head h2,
.featured-head h2,
.page-hero h1,
h1,h2,h3,
.service-card h3,
.gallery-card h3,
.policy-card h3,
.review-card h3,
.gallery-section h2,
.footer h3{
  background:linear-gradient(180deg,
    var(--champagne-light) 0%,
    var(--champagne) 16%,
    var(--champagne-mid) 38%,
    var(--champagne-deep) 58%,
    #e7bf67 76%,
    #fff1bc 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.82),
    0 2px 8px rgba(88,48,8,.34),
    0 0 16px rgba(248,223,154,.38) !important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.32)) !important;
}
/* hero script stays rose-pink, readable, and luxury */
.script,
.hero-copy .script,
.scriptText{
  color:var(--rose-brand) !important;
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-fill-color:var(--rose-brand) !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.88),
    0 2px 8px rgba(141,63,88,.26),
    0 0 12px rgba(255,176,208,.30) !important;
}
/* navigation/menu labels: darker champagne gold for readability */
.nav a:not(.btn),
.mobile-toggle,
.eyebrow,
.price,
label,
.chip,
.gallery-category-card span,
.cart-total,
strong{
  color:var(--champagne-deep) !important;
  -webkit-text-fill-color:var(--champagne-deep) !important;
  background:none !important;
  text-shadow:0 1px 0 rgba(255,255,255,.72),0 0 10px rgba(248,223,154,.28) !important;
}
/* opaque pink/champagne cards */
.card-panel,
.service-card,
.policy-card,
.gallery-card,
.review-card,
.cart-box,
.gallery-section,
.section-head{
  background:linear-gradient(155deg,
    rgba(255,246,250,.995) 0%,
    rgba(247,215,226,.985) 48%,
    rgba(232,170,193,.965) 100%) !important;
  border-color:rgba(215,166,74,.66) !important;
}
.card-panel::after,
.service-card::after,
.policy-card::after,
.gallery-card::after,
.review-card::after,
.cart-box::after,
.gallery-section::after{
  border-color:rgba(215,166,74,.36) !important;
}
/* buttons stay rose-pink with champagne border */
.btn,
.button,
.nav .btn,
.service-card .btn{
  background:linear-gradient(135deg,#b94e70 0%,#d96f92 48%,#f0a6bd 100%) !important;
  border-color:rgba(248,223,154,.85) !important;
  color:#fff8fb !important;
  -webkit-text-fill-color:#fff8fb !important;
  text-shadow:0 1px 2px rgba(89,28,47,.35) !important;
}
.btn.secondary,
.btn.gold{
  background:linear-gradient(135deg,#fff6d7 0%,#f0cf82 48%,#c18a2f 100%) !important;
  color:var(--champagne-deep) !important;
  -webkit-text-fill-color:var(--champagne-deep) !important;
}
/* form fields readable */
input,select,textarea{
  background:rgba(255,249,251,.94) !important;
  color:var(--text-rose) !important;
  border-color:rgba(215,166,74,.55) !important;
}
::placeholder{color:#8b5967 !important;opacity:1;}
/* footer remains rich rose with champagne headings */
.footer{
  background:linear-gradient(135deg,rgba(92,35,51,.99),rgba(137,55,80,.99)) !important;
}
.footer p,.footer a{color:#fff3f8 !important;-webkit-text-fill-color:#fff3f8 !important;}

/* --- ABSOLUTE FINAL COLOR LOCK: champagne gold + rose only, no silver/white lettering --- */
:root{
  --pn-gold-light:#f3cf78;
  --pn-gold:#d5a13a;
  --pn-gold-deep:#7b4a0d;
  --pn-rose-shadow:#8b3f57;
}
.brand span,
.gold-text,
.section-head h2,
.featured-head h2,
.page-hero h1,
.hero-copy h1,
.hero-copy h2,
h1,h2,h3,
.service-card h3,
.gallery-card h3,
.policy-card h3,
.review-card h3,
.gallery-section h2,
.footer h3{
  background:linear-gradient(180deg,
    var(--pn-gold-light) 0%,
    var(--pn-gold) 26%,
    #b77c20 52%,
    var(--pn-gold-deep) 74%,
    #c6902f 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  -webkit-text-stroke:.25px rgba(94,54,10,.38) !important;
  text-shadow:
    0 1px 0 rgba(117,67,12,.28),
    0 2px 7px rgba(79,39,8,.26),
    0 0 10px rgba(213,161,58,.28) !important;
  filter:none !important;
}
/* script/cursive words were reading silver because of pale highlights; force warm champagne-gold */
.script,
.hero-copy .script,
.scriptText,
.hero .script{
  background:linear-gradient(180deg,
    #f1c96f 0%,
    #d49a33 38%,
    #8f5a14 68%,
    #c78625 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  -webkit-text-stroke:.22px rgba(93,45,10,.36) !important;
  text-shadow:
    0 1px 0 rgba(133,64,87,.22),
    0 2px 8px rgba(112,58,11,.24),
    0 0 12px rgba(210,146,61,.30) !important;
}
/* small nav/header labels: readable darker champagne */
.nav a:not(.btn),
.mobile-toggle,
.eyebrow,
.price,
label,
.chip,
.gallery-category-card span,
.cart-total,
strong,
.notice-bar,
.meta b{
  background:none !important;
  color:var(--pn-gold-deep) !important;
  -webkit-text-fill-color:var(--pn-gold-deep) !important;
  text-shadow:0 1px 0 rgba(255,230,164,.42),0 0 8px rgba(213,161,58,.24) !important;
  -webkit-text-stroke:0 !important;
}
/* service card headers need extra readability over pink cards */
.service-card h3,
.gallery-card h3{
  font-weight:700 !important;
  letter-spacing:.01em !important;
}
/* footer brand/headings: champagne-gold instead of pale silver */
.footer .brand span,
.footer h3{
  background:linear-gradient(180deg,#f0ca70 0%,#d6a13a 38%,#8b5510 72%,#c88f2e 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  text-shadow:0 2px 8px rgba(0,0,0,.22),0 0 12px rgba(213,161,58,.22) !important;
}



/* --- FINAL MOBILE SHARP BACKGROUND + READABILITY + MENU + MOTION FIX --- */

/* keep typography champagne gold + rose-pink only, no silver/white wash */
.brand span,
.gold-text,
.section-head h2,
.featured-head h2,
.page-hero h1,
.hero-copy h1,
.hero-copy h2,
h1,h2,h3,
.gallery-section h2,
.footer h3{
  background:linear-gradient(180deg,#e8bd62 0%,#d19a2f 38%,#8d5914 70%,#c48928 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  -webkit-text-stroke:.18px rgba(76,42,7,.42) !important;
  text-shadow:0 1px 0 rgba(255,226,158,.32),0 2px 8px rgba(69,35,6,.35),0 0 13px rgba(213,161,58,.28) !important;
  filter:none !important;
}
.script,
.hero-copy .script,
.hero .script{
  background:linear-gradient(180deg,#dfac4f 0%,#ba7825 48%,#7a4a0d 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  -webkit-text-stroke:.16px rgba(76,42,7,.32) !important;
  text-shadow:0 1px 0 rgba(255,231,169,.34),0 3px 9px rgba(93,44,18,.30) !important;
}
.service-card h3,
.gallery-card h3,
.review-card h3,
.policy-card h3{
  background:none !important;
  color:#7f4e12 !important;
  -webkit-text-fill-color:#7f4e12 !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(255,232,170,.45),0 2px 8px rgba(75,38,8,.12) !important;
}

/* more opaque cards so text stays readable over the palace photo */
.card-panel,
.service-card,
.policy-card,
.gallery-card,
.review-card,
.cart-box,
.gallery-section,
.section-head{
  background:linear-gradient(155deg,rgba(255,247,250,.995) 0%,rgba(248,223,231,.988) 48%,rgba(235,184,204,.976) 100%) !important;
  border-color:rgba(207,157,62,.72) !important;
  box-shadow:0 24px 58px rgba(89,31,51,.22) !important;
  backdrop-filter:blur(3px) saturate(1.08) !important;
}
.card-panel::before,
.service-card::before,
.gallery-card::before,
.cart-box::before,
.gallery-section::before{
  background:linear-gradient(120deg,rgba(255,255,255,.22),transparent 44%,rgba(207,157,62,.09)) !important;
}
p,
ul.clean,
.meta,
.form-note,
.gallery-caption,
.cart-line,
.service-card p,
.policy-card p,
.review-card p,
.gallery-section p,
.cart-box p{
  color:#44232e !important;
  text-shadow:none !important;
}
.section-head p,
.page-hero p,
.hero-copy p{
  font-weight:600 !important;
  color:#4f2935 !important;
}

/* show only the hamburger/menu button; keep nav out of the header on desktop and mobile */
.mobile-toggle{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(207,157,62,.72) !important;
  background:linear-gradient(145deg,#fff0c3,#d2a13f) !important;
  color:#70430d !important;
  -webkit-text-fill-color:#70430d !important;
  box-shadow:0 10px 24px rgba(89,31,51,.15);
}
.nav{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  left:auto !important;
  width:min(390px,88vw) !important;
  height:100dvh !important;
  padding:5.25rem 1.3rem 1.4rem !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:.7rem !important;
  background:linear-gradient(180deg,rgba(112,38,61,.985),rgba(74,22,39,.992)) !important;
  border-left:1px solid rgba(237,197,108,.55) !important;
  box-shadow:-24px 0 60px rgba(50,12,24,.28) !important;
  transform:translateX(112%) !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:transform .38s cubic-bezier(.2,.75,.2,1), opacity .38s ease !important;
  z-index:80 !important;
}
.nav.open{
  transform:translateX(0) !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.nav a:not(.btn){
  display:block !important;
  width:100% !important;
  padding:.9rem 1rem !important;
  border-radius:18px !important;
  background:rgba(255,240,247,.09) !important;
  border:1px solid rgba(237,197,108,.20) !important;
  color:#f0c774 !important;
  -webkit-text-fill-color:#f0c774 !important;
  font-size:.9rem !important;
  letter-spacing:.16em !important;
  text-align:center !important;
  text-shadow:0 2px 10px rgba(0,0,0,.28) !important;
}
.nav a:not(.btn):hover,
.nav a.active:not(.btn){
  background:rgba(255,240,247,.17) !important;
  border-color:rgba(237,197,108,.42) !important;
}
.nav .btn{
  width:100% !important;
  margin-top:.4rem !important;
}
.nav .header-icons{
  justify-content:center !important;
  margin:.5rem 0 !important;
}
.nav .header-icons .icon-btn{
  width:48px !important;
  height:48px !important;
}
.nav-wrap{
  position:relative;
}

/* bigger, brighter fairy dust that remains visible on pale pink and gold backgrounds */
.fairy-sparkle{
  width:var(--size,15px) !important;
  height:var(--size,15px) !important;
  background:radial-gradient(circle,#fff 0%,#fff4b8 22%,#ffd15a 42%,#ff57bd 68%,rgba(255,87,189,0) 76%) !important;
  box-shadow:0 0 14px #fff,0 0 26px #ffd15a,0 0 42px rgba(255,87,189,.88) !important;
  mix-blend-mode:screen !important;
  animation:fairyDust 1.15s ease-out forwards !important;
}
@keyframes fairyDust{
  0%{opacity:0;transform:translate(0,0) scale(.4) rotate(0deg)}
  12%{opacity:1}
  100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.05) rotate(var(--rot,180deg))}
}

/* stronger scroll reveal, including on mobile */
.reveal{
  opacity:0 !important;
  transform:translateY(42px) scale(.975) !important;
  filter:blur(5px) !important;
  transition:opacity .9s ease, transform .9s cubic-bezier(.2,.75,.2,1), filter .9s ease !important;
  will-change:opacity,transform,filter !important;
}
.reveal.revealed{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  filter:blur(0) !important;
}
.reveal-left{transform:translateX(-42px) translateY(18px) scale(.975) !important;}
.reveal-right{transform:translateX(42px) translateY(18px) scale(.975) !important;}
.reveal-left.revealed,
.reveal-right.revealed{transform:translateX(0) translateY(0) scale(1) !important;}

/* mobile: use a dedicated portrait background so it fits the phone browser cleanly instead of stretching/blurring */
@media(max-width:768px){
  body{
    background-image:
      linear-gradient(rgba(255,244,248,.22),rgba(135,52,79,.26)),
      url('../images/palace-background-mobile.png') !important;
    background-size:100% auto,100% auto !important;
    background-position:center top,center top !important;
    background-repeat:repeat-y,repeat-y !important;
    background-attachment:scroll,scroll !important;
    background-color:#e9aebe !important;
  }
  body::before{
    background:linear-gradient(180deg,rgba(255,247,250,.24),rgba(255,247,250,.10) 40%,rgba(122,45,70,.18)) !important;
  }
  .hero{padding:32px 0 28px !important;}
  .hero-copy{padding:1.65rem !important;}
  .hero .script{font-size:clamp(3.1rem,16vw,5rem) !important;}
  .section-head h2,.page-hero h1{font-size:clamp(2.8rem,14vw,4.6rem) !important;}
  .brand span{font-size:2rem !important;max-width:230px;white-space:nowrap;}
  header.site-header{background:rgba(255,239,246,.94) !important;}
  .card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section,.section-head{
    background:linear-gradient(155deg,rgba(255,247,250,.997),rgba(239,199,214,.988)) !important;
  }
}


/* --- FINAL ADD-ONS + BOLD CHAMPAGNE GOLD TYPOGRAPHY OVERRIDE --- */
:root{
  --champagne-gold:#b77a22;
  --deep-gold:#7b4a0d;
  --warm-gold:#d49d3e;
  --soft-gold:#f1cf7a;
  --rose-readable:#9f4e68;
}
/* Remove silver/white wash from major brand/header words. Keep bold champagne-gold, less shine. */
.brand span,
.gold-text,
.section-head h2,
.featured-head h2,
.page-hero h1,
.hero-copy h1,
.hero-copy h2,
h1,h2,h3,
.gallery-section h2,
.footer h3,
.service-card h3,
.gallery-card h3,
.review-card h3,
.policy-card h3,
.gallery-category-card span{
  background:none !important;
  color:var(--champagne-gold) !important;
  -webkit-text-fill-color:var(--champagne-gold) !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  -webkit-text-stroke:0 !important;
  text-shadow:
    0 1px 0 rgba(255,235,170,.55),
    0 2px 5px rgba(88,46,8,.24),
    0 0 4px rgba(212,157,62,.20) !important;
  filter:none !important;
  font-weight:700 !important;
}
/* Main cursive hero/brand script: champagne gold, readable, not silver. */
.script,
.hero-copy .script,
.hero .script,
.brand span{
  color:var(--champagne-gold) !important;
  -webkit-text-fill-color:var(--champagne-gold) !important;
  text-shadow:
    0 1px 0 rgba(255,236,182,.62),
    0 3px 8px rgba(82,40,10,.26) !important;
}
.hero-copy h1 .script{
  color:var(--rose-readable) !important;
  -webkit-text-fill-color:var(--rose-readable) !important;
  text-shadow:0 1px 0 rgba(255,235,244,.65),0 3px 8px rgba(97,38,58,.20) !important;
}
.price,
.cart-total,
.eyebrow,
label,
.chip{
  color:var(--deep-gold) !important;
  -webkit-text-fill-color:var(--deep-gold) !important;
}
.service-card h3,
.gallery-card h3,
.review-card h3,
.policy-card h3{
  font-weight:700 !important;
  color:#946016 !important;
  -webkit-text-fill-color:#946016 !important;
}
/* tighter addon cards so the expanded add-on list stays clean */
.addon-card{padding:1rem !important;}
.addon-card .price{font-size:.9rem !important;margin:.25rem 0 0 !important;}
.addon-check span{color:#4d2732 !important;font-weight:800 !important;}
@media(max-width:620px){
  .brand span{font-size:1.85rem !important;line-height:.9 !important;}
  .section-head h2,.page-hero h1,.gallery-section h2{font-size:clamp(2.45rem,12vw,4rem) !important;}
  .hero-copy h1{font-size:clamp(2.7rem,12vw,4.4rem) !important;}
}


/* --- FINAL REQUEST PATCH: medium sets, saved menu colors, readable champagne gold, shine retained --- */
:root{
  --rose:#cc6f8a;
  --rose-deep:#8f4058;
  --rose-soft:#f6cfda;
  --blush:#f7dbe3;
  --cream:#fff8fa;
  --cream-card:rgba(255,250,252,.88);
  --gold:#d7a949;
  --gold-dark:#8f5f17;
  --gold-light:#fff0b8;
  --ink:#5d2f3b;
  --muted:#7d5862;
  --line:rgba(215,169,73,.42);
  --shadow:0 22px 55px rgba(93,38,54,.18);
  --radius:26px;
  --card-opaque:rgba(255,246,250,.985);
  --card-opaque-2:rgba(238,190,210,.965);
  --text-strong:#3f222c;
  --gold-readable:#6d4210;
  --champagne:#f8df9a;
  --champagne-light:#fff4ca;
  --champagne-mid:#d7a64a;
  --champagne-deep:#7a4a0d;
  --rose-brand:#c65f83;
  --rose-brand-dark:#8d3f58;
  --pink-card:#f7d7e2;
  --pink-card-deep:#e8aac1;
  --text-rose:#47242f;
  --pn-gold-light:#f3cf78;
  --pn-gold:#d5a13a;
  --pn-gold-deep:#7b4a0d;
  --pn-rose-shadow:#8b3f57;
  --champagne-gold:#b77a22;
  --deep-gold:#7b4a0d;
  --warm-gold:#d49d3e;
  --soft-gold:#f1cf7a;
  --rose-readable:#9f4e68;
}

/* Opaque readable cards, still pink/champagne luxury. */
.card-panel,.service-card,.policy-card,.gallery-card,.review-card,.cart-box,.gallery-section,.section-head{
  background:linear-gradient(155deg,var(--card-opaque),var(--card-opaque-2)) !important;
  border-color:rgba(215,169,73,.58) !important;
  box-shadow:var(--shadow) !important;
  color:var(--text-rose) !important;
}

/* Champagne-gold headers with subtle back-and-forth shine; bold and readable, not silver. */
.brand span,
.gold-text,
.section-head h2,
.featured-head h2,
.page-hero h1,
.hero-copy h1,
.hero-copy h2,
.gallery-section h2,
.footer h3{
  background:linear-gradient(90deg,
    var(--champagne-gold) 0%,
    var(--deep-gold) 22%,
    var(--warm-gold) 44%,
    var(--soft-gold) 52%,
    var(--deep-gold) 68%,
    var(--champagne-gold) 100%) !important;
  background-size:220% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 1px 0 rgba(255,235,170,.55),0 2px 5px rgba(88,46,8,.24),0 0 4px rgba(212,157,62,.20) !important;
  filter:none !important;
  animation:pnGoldSheen 7s ease-in-out infinite !important;
}
@keyframes pnGoldSheen{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}

/* Card titles solid readable gold. */
.service-card h3,
.gallery-card h3,
.review-card h3,
.policy-card h3,
.gallery-category-card span{
  background:none !important;
  color:#8f5f17 !important;
  -webkit-text-fill-color:#8f5f17 !important;
  text-shadow:0 1px 0 rgba(255,235,170,.55),0 2px 5px rgba(88,46,8,.18) !important;
  font-weight:700 !important;
}

/* Saved side-menu/nav color system. */
.nav{
  color:var(--text-rose) !important;
  box-sizing:border-box;
  bottom:0;
  justify-content:flex-start;
  overflow:auto;
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  left:auto !important;
  width:min(390px,88vw) !important;
  height:100dvh !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:.7rem !important;
  border-left:1px solid rgba(237,197,108,.55) !important;
  box-shadow:-24px 0 60px rgba(50,12,24,.28) !important;
  transition:transform .38s cubic-bezier(.2,.75,.2,1),opacity .38s ease !important;
  z-index:80 !important;
  padding:5.25rem 1rem 1.6rem !important;
  border-bottom:0 !important;
  background:linear-gradient(165deg,rgba(255,237,245,.995),rgba(216,150,178,.985)) !important;
  transform:translateX(112%) !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.nav.open{
  transform:translateX(0) !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.nav a:not(.btn){
  display:block !important;
  width:100% !important;
  text-align:center !important;
  padding:.9rem 1rem !important;
  border-radius:18px !important;
  background:rgba(255,248,251,.82) !important;
  border:1px solid rgba(215,169,73,.35) !important;
  color:var(--gold-readable) !important;
  -webkit-text-fill-color:var(--gold-readable) !important;
  font:800 .9rem Montserrat,Arial,sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.16em !important;
  text-shadow:0 1px 0 rgba(255,255,255,.58) !important;
}
.nav a:not(.btn):hover,
.nav a.active:not(.btn){
  background:linear-gradient(145deg,rgba(255,244,248,.95),rgba(244,210,222,.92)) !important;
  border-color:rgba(215,169,73,.55) !important;
}
.nav .header-icons{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:center !important;
  gap:.7rem !important;
  margin:.8rem 0 0 !important;
  padding:.5rem 0 !important;
}
.nav .btn{
  width:100% !important;
  margin-top:.75rem !important;
}
.mobile-toggle{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Image positioning fixes */
.service-card img[src*="pedi-002-red-heart-micro-french"],
.gallery-item img[src*="pedi-002-red-heart-micro-french"],
.gallery-category-card img[src*="pedi-002-red-heart-micro-french"]{
  object-position:center bottom !important;
}
.service-card img[src*="medium-set-005"],
.gallery-category-card img[src*="medium-set-005"],
.gallery-item img[src*="medium-set-005"]{
  object-position:center center !important;
}

/* Button shine remains active. */
.btn::before,.button::before{
  animation:shimmer 5.2s ease-in-out infinite !important;
}

/* --- USER APPROVED COLOR PATCH: rose menu + champagne-gold script, shine retained --- */
header.site-header{
  position:sticky !important;
  top:0 !important;
  z-index:50 !important;
  background:rgba(255,247,250,.86) !important;
  backdrop-filter:blur(20px) !important;
  -webkit-backdrop-filter:blur(20px) !important;
  border-bottom:1px solid var(--line) !important;
  box-shadow:0 10px 26px rgba(93,38,54,.1) !important;
}

.nav.open{
  background:linear-gradient(165deg,rgb(192 85 119),rgba(216,150,178,.985)) !important;
  transform:translateX(0) !important;
  opacity:1 !important;
  pointer-events:auto !important;
}

/* Champagne-gold cursive/logo words with the shimmer kept active. */
body .script,
body .hero-copy .script,
body .hero-copy h1 .script,
body .hero .script,
body .brand span,
body .footer .brand span,
body .section-head h2,
body .featured-head h2,
body .page-hero h1,
body .gallery-section h2{
  display:inline-block;
  background:linear-gradient(90deg,
    var(--champagne-gold) 0%,
    var(--deep-gold) 20%,
    var(--warm-gold) 42%,
    var(--soft-gold) 52%,
    var(--deep-gold) 68%,
    var(--champagne-gold) 100%) !important;
  background-size:220% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  text-shadow:0 1px 0 rgba(255,244,202,.62),0 3px 8px rgba(82,40,10,.26),0 0 10px rgba(241,207,122,.22) !important;
  animation:pnGoldSheen 7s ease-in-out infinite !important;
  filter:none !important;
}

/* Keep menu links readable against the darker rose menu. */
.nav.open a:not(.btn){
  background:rgba(255,248,251,.90) !important;
  border:1px solid rgba(215,169,73,.46) !important;
  color:var(--gold-readable) !important;
  -webkit-text-fill-color:var(--gold-readable) !important;
  text-shadow:0 1px 0 rgba(255,255,255,.62) !important;
}

.nav.open .btn{
  box-shadow:0 14px 30px rgba(83,29,49,.24),inset 0 1px 0 rgba(255,255,255,.45) !important;
}

/* --- FINAL STABILITY PATCH: stop header scroll glitch + remove scroll/card reveal transitions --- */
header.site-header{
  position:sticky !important;
  top:0 !important;
  z-index:90 !important;
  background:rgba(255,247,250,.97) !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
  backface-visibility:hidden !important;
  -webkit-backface-visibility:hidden !important;
  box-shadow:0 10px 26px rgba(93,38,54,.12) !important;
}
.site-header .nav-wrap,
.site-header .brand,
.site-header .mobile-toggle{
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
}
/* Keep the side menu slide animation, but remove scroll reveal effects from cards/sections. */
.reveal,
.reveal-left,
.reveal-right,
.service-card.reveal,
.gallery-card.reveal,
.gallery-item.reveal,
.gallery-category-card.reveal,
.review-card.reveal,
.policy-card.reveal,
.card-panel.reveal,
.cart-box.reveal,
.gallery-section.reveal{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  transition:none !important;
  animation:none !important;
  will-change:auto !important;
}
.reveal.revealed,
.reveal-left.revealed,
.reveal-right.revealed{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  transition:none !important;
}
@media(max-width:768px){
  header.site-header{
    background:rgba(255,247,250,.985) !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }
}
