*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--cream:#fffaf7;--white:#fff;--rose:#bd626b;--pink:#efb5b1;--brown:#4a302b;--muted:#806d67;--line:#eadbd4;--dark:#35221f}body{margin:0;background:var(--cream);color:var(--brown);font-family:"DM Sans",sans-serif;line-height:1.6}a{text-decoration:none;color:inherit}.header{height:82px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;background:#fffaf7ee;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font:700 27px "Playfair Display",serif}.brand i,.footer-brand i{font-style:italic;color:var(--rose)}.brand-photo{width:45px;height:45px;border-radius:50%;overflow:hidden;border:2px solid var(--pink);display:block}.brand-photo img{width:100%;height:100%;object-fit:cover}nav{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:600}nav a:hover{color:var(--rose)}.nav-order{background:var(--brown);color:#fff!important;padding:11px 18px;border-radius:50px}.menu-btn{display:none;border:0;background:none;font-size:25px}.hero{min-height:700px;padding:75px 8%;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;background:radial-gradient(circle at 85% 40%,#f8ded8 0 20%,transparent 20.5%)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--rose);margin-bottom:15px}.hero h1,.intro h2,.section-head h2,.feature h2,.about h2,.contact h2{font:700 clamp(47px,5.8vw,77px)/.98 "Playfair Display",serif;letter-spacing:-2px;margin:0}.hero h1 em,.intro em,.section-head em,.feature em,.about em,.contact em{color:var(--rose);font-style:italic}.hero-copy>p{font-size:18px;color:var(--muted);max-width:600px;margin:24px 0}.buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;border-radius:50px;padding:14px 21px;font:700 14px "DM Sans",sans-serif;border:0;cursor:pointer}.primary{background:var(--brown);color:#fff}.light{background:#fff;border:1px solid var(--line)}.hero-details{display:flex;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:13px;margin-top:25px}.hero-visual{height:520px;position:relative;display:grid;place-items:center}.hero-visual .blob{position:absolute;width:440px;height:480px;border-radius:48% 52% 42% 58%;background:#f0c1bc;transform:rotate(-7deg)}.hero-visual img{position:relative;width:330px;height:440px;object-fit:cover;border-radius:170px 170px 25px 25px;box-shadow:0 25px 50px #633f3822}.floating-card{position:absolute;bottom:35px;right:3%;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:0 15px 40px #603e361c;display:flex;flex-direction:column}.floating-card b{font:700 18px "Playfair Display",serif}.floating-card span{font-size:12px;color:var(--muted)}.intro{text-align:center;background:#fff;padding:105px 20px}.intro h2{font-size:55px}.intro p{max-width:680px;color:var(--muted);margin:25px auto 0}.section{padding:105px 8%}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.section-head>p{max-width:360px;color:var(--muted);margin:0}.section-head h2{font-size:55px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.service{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;min-height:275px;transition:.25s}.service:hover{transform:translateY(-5px);box-shadow:0 18px 45px #744b4218}.service-icon{font-size:40px;margin-bottom:15px}.service h3{font:700 27px "Playfair Display",serif;margin:0 0 8px}.service p{color:var(--muted);min-height:105px}.service a{color:var(--rose);font-weight:700;font-size:14px}.feature{padding:100px 8%;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:#f6e8e3}.feature-image{height:520px;border-radius:25px;overflow:hidden;box-shadow:0 25px 50px #68413a22}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy p{color:var(--muted);max-width:560px;margin:25px 0}.feature h2{font-size:58px}.gallery-section{padding:105px 8%;background:#fff}.gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:260px;gap:15px;margin-top:45px}.gallery figure{margin:0;position:relative;border-radius:20px;overflow:hidden;background:#eee}.gallery figure.wide{grid-row:span 2}.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s}.gallery figure:hover img{transform:scale(1.04)}figcaption{position:absolute;left:15px;bottom:15px;background:#fffdf9e8;padding:8px 12px;border-radius:50px;font-size:12px;font-weight:700}.instagram-strip{display:block;text-align:center;margin-top:30px;color:var(--rose);font-size:14px}.instagram-strip b{margin-left:5px}.about{padding:120px 10%;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.about-art{height:450px;border-radius:30px;overflow:hidden;box-shadow:0 25px 55px #68413a22}.about-art img{width:100%;height:100%;object-fit:cover}.about h2{font-size:56px}.about p{max-width:650px;color:var(--muted);margin-top:23px}.text-link{color:var(--rose);font-weight:700;display:inline-block;margin-top:15px}.contact{padding:105px 8%;display:grid;grid-template-columns:1fr 1fr;gap:80px;background:var(--brown);color:#fff}.contact .eyebrow{color:#efb2ae}.contact h2 em{color:#efb2ae}.contact-copy>p{color:#e5d2cd;max-width:570px;margin:25px 0}.contact-items{display:grid;gap:10px;margin-top:30px}.contact-items a,.contact-items>div{padding:14px 16px;border:1px solid #ffffff22;border-radius:13px;display:flex;flex-direction:column}.contact-items a:hover{background:#ffffff0d}.contact-items span{font-size:12px;color:#cdbab4}.contact-items b{font-size:14px}form{background:var(--cream);color:var(--brown);padding:30px;border-radius:22px;display:grid;gap:13px}form h3{font:700 29px "Playfair Display",serif;margin:0 0 5px}label{font-size:12px;font-weight:700}input,select,textarea{display:block;width:100%;margin-top:5px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--brown);font:14px "DM Sans",sans-serif;outline:0}textarea{resize:vertical}form button{margin-top:4px}#status{color:var(--rose);font-weight:700}footer{text-align:center;background:var(--dark);color:#d8c5bf;padding:55px 20px}.footer-brand{font:700 29px "Playfair Display",serif;color:#fff}.footer-links{display:flex;justify-content:center;gap:25px;margin:18px}.footer-links a:hover{color:#fff}footer small{font-size:12px;color:#9f8982}@media(max-width:900px){nav{gap:14px}.service-grid{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr}.hero-visual{order:-1;height:450px}.feature,.about,.contact{grid-template-columns:1fr}.feature{gap:45px}.about{gap:45px}}@media(max-width:650px){.header{padding:0 5%}.menu-btn{display:block}nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--cream);padding:22px;flex-direction:column;box-shadow:0 18px 30px #4a302b18}nav.open{display:flex}.hero{padding:60px 7%}.hero h1{font-size:52px}.hero-visual{height:390px}.hero-visual .blob{width:330px;height:350px}.hero-visual img{width:250px;height:340px}.section,.gallery-section{padding:80px 7%}.section-head{display:block}.section-head>p{margin-top:15px}.service-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.gallery .wide{grid-row:span 1}.feature,.about,.contact{padding:80px 7%}.feature-image{height:400px}.about-art{height:380px}.contact{gap:40px}}@media(max-width:450px){.gallery{grid-template-columns:1fr}.gallery figure{height:280px}.hero-details{display:block}.hero-details span{display:block;margin:7px 0}}
/* Supplied Vanyscakes and Events logo */
.brand{height:62px;min-width:180px}
.brand-logo{display:block;width:190px;height:58px;object-fit:contain;object-position:center;border-radius:8px}
.hero-logo{width:min(390px,100%);margin-bottom:24px;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 14px 35px #00000018}
.hero-logo img{display:block;width:100%;height:auto}
.footer-brand{display:flex;align-items:center}
.footer-brand img{display:block;width:190px;height:auto;max-height:75px;object-fit:contain;background:#000;border-radius:8px}
@media(max-width:850px){
  .brand{min-width:150px;height:54px}
  .brand-logo{width:155px;height:50px}
  .hero-logo{width:min(330px,100%)}
}

/* Version 4: menu, booking, filters, payments */
.menu-section,.booking-section{padding:90px 7%;background:#fff9fb}.booking-section{background:#fff}.menu-tabs,.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.menu-tabs button,.filter{border:1px solid #ead7de;background:white;padding:10px 16px;border-radius:999px;cursor:pointer;font:inherit}.menu-tabs button.active,.filter.active{background:#171316;color:white;border-color:#171316}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.menu-group{display:contents}.menu-item,.booking-card,.payment-card{background:white;border:1px solid #eadde2;border-radius:22px;padding:24px;box-shadow:0 12px 30px rgba(40,15,25,.06)}.menu-item h3{margin:0 0 8px}.menu-item p{margin:0 0 16px;color:#6c5d64}.menu-note{font-weight:700;font-size:.9rem}.menu-item .mini-book{display:inline-block;margin-top:15px}.booking-layout{display:grid;grid-template-columns:1.5fr .8fr;gap:28px}.booking-form{background:#fff9fb;border:1px solid #eadde2;border-radius:24px;padding:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-form label{display:block;font-weight:700;margin:0 0 16px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;margin-top:8px;padding:13px 14px;border:1px solid #d9cbd1;border-radius:12px;font:inherit;background:#fff;box-sizing:border-box}.booking-form textarea{resize:vertical}.check{display:flex!important;gap:10px;align-items:flex-start;font-weight:500!important}.check input{width:auto;margin-top:4px}.booking-form small,.payment-card small{display:block;margin-top:12px;color:#6c5d64}.booking-card ol{padding-left:22px;line-height:1.8}.big-icon{font-size:2rem}.payment-card{align-self:start;margin-top:0}.payment-card h3{font-size:1.5rem}.gallery figure{transition:opacity .2s,transform .2s}.gallery figure.hidden{display:none}.gallery-filters{margin-bottom:24px}.gallery-filters .filter{font-weight:700}.nav-order{white-space:nowrap}
@media(max-width:900px){.menu-grid{grid-template-columns:1fr 1fr}.booking-layout{grid-template-columns:1fr}.form-row{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.menu-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.menu-section,.booking-section{padding:65px 5%}.booking-form{padding:20px}.gallery-filters{gap:7px}.filter{padding:9px 12px}}

/* Dedicated menu + checkout pages */
.page-hero{padding:85px 7% 55px;background:linear-gradient(135deg,#fff9fb,#f7e6e2);text-align:center}.page-hero h1{font:700 clamp(45px,6vw,72px)/1 "Playfair Display",serif;margin:0}.page-hero h1 em{color:var(--rose)}.page-hero p{max-width:700px;margin:20px auto;color:var(--muted)}
.page-content{padding:70px 7%;background:#fff}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1100px;margin:0 auto}.option-card{border:1px solid #eadde2;border-radius:22px;padding:26px;background:#fff9fb;box-shadow:0 12px 30px rgba(40,15,25,.06)}.option-card h2{font:700 30px "Playfair Display",serif;margin:0 0 14px}.option-card h3{margin:0 0 10px}.option-card ul{margin:0;padding-left:20px;color:#5f5056}.option-card li{margin:7px 0}.price-note{color:var(--rose);font-weight:700;margin-top:15px}.page-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:40px auto 0}.payment-options{max-width:1050px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pay-box{border:1px solid #eadde2;border-radius:22px;padding:28px;background:#fff9fb;text-align:center}.pay-box h3{font:700 27px "Playfair Display",serif;margin:8px 0}.pay-box p{color:var(--muted);min-height:55px}.pay-box .btn{margin-top:10px}.amount-form{max-width:700px;margin:40px auto 0;background:#fff9fb;border:1px solid #eadde2;border-radius:24px;padding:28px}.amount-form label{display:block;margin-bottom:14px}.amount-form .btn{width:100%;margin-top:8px}.pay-status{text-align:center;color:var(--rose);font-weight:700;margin-top:15px}.booking-page-form{max-width:1050px;margin:0 auto}.booking-page-form .form-row{grid-template-columns:repeat(2,1fr)}.booking-page-form .form-row.three{grid-template-columns:repeat(3,1fr)}.booking-page-form .cake-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.booking-payment{max-width:1050px;margin:30px auto 0;padding:28px;border:1px solid #eadde2;border-radius:24px;background:#fff9fb}.booking-payment[hidden]{display:none}.booking-payment h2{font:700 32px "Playfair Display",serif;margin-top:0}.booking-payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.booking-payment-grid a,.booking-payment-grid button{padding:20px;border:1px solid #ddd;border-radius:16px;background:#fff;text-align:left;font:inherit;cursor:pointer}.booking-payment-grid strong,.booking-payment-grid span{display:block}.booking-payment-grid span{margin-top:5px;color:var(--muted)}.site-footer-cta{padding:60px 7%;text-align:center;background:#fff9fb}.site-footer-cta h2{font:700 42px "Playfair Display",serif;margin:0 0 18px}
@media(max-width:850px){.option-grid,.payment-options{grid-template-columns:1fr}.booking-page-form .form-row.three,.booking-page-form .cake-options-grid,.booking-payment-grid{grid-template-columns:1fr}.booking-page-form .form-row{grid-template-columns:1fr}}

/* Shared header layout for all dedicated pages */
header{height:82px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;background:#fffaf7ee;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}

/* Menu dropdown + order/payment enhancements */
.nav-dropdown{position:relative;display:inline-block}
.nav-dropdown>a{display:inline-flex;align-items:center;gap:5px}
.nav-dropdown .dropdown-menu{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);min-width:230px;background:#111;border:1px solid #333;border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(0,0,0,.18);display:none;z-index:1000}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:block}
.nav-dropdown .dropdown-menu a{display:block;padding:10px 12px;border-radius:9px;color:#fff!important;white-space:nowrap}
.nav-dropdown .dropdown-menu a:hover{background:#d98aa7;color:#fff!important}
.option-card .order-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.option-card .order-actions .btn{font-size:.9rem;padding:10px 14px}
.menu-subpage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.menu-item-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid #e4d9dd;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.menu-item-card h3{margin:0 0 5px;font-family:'Playfair Display',serif}
.menu-item-card p{margin:0;color:#666;font-size:.92rem}
.menu-item-card .btn{white-space:nowrap}
@media(max-width:760px){.menu-subpage-grid{grid-template-columns:1fr}.menu-dropdown .dropdown-menu{position:static;transform:none;box-shadow:none}.nav-dropdown{width:100%}.nav-dropdown .dropdown-menu{width:100%;margin-top:5px}.menu-item-card{align-items:flex-start;flex-direction:column}.menu-item-card .btn{width:100%;text-align:center}}

.approved-order-banner{max-width:850px;margin:0 auto 18px;padding:14px 18px;border:1px solid #e5b8c8;border-radius:14px;background:#fff3f7;color:#6b3047;font-weight:700}


/* Reference-inspired menu pages */
.menu-reference-page { background:#fffdfc; }
.menu-topbar { background:#fff0f3; color:#6c3044; text-align:center; padding:9px 16px; font-size:13px; border-bottom:1px solid #f3d6de; }
.menu-reference-header { background:linear-gradient(135deg,#fffafa 0%,#fff5f7 55%,#fce8ee 100%); }
.menu-brand-row { min-height:132px; display:flex; align-items:center; justify-content:center; position:relative; padding:16px 6%; }
.menu-brand-row .brand-logo { width:190px; height:105px; object-fit:contain; }
.menu-social { position:absolute; left:6%; display:flex; gap:9px; }
.menu-social span { width:32px; height:32px; border-radius:50%; background:#111; color:#fff; display:grid; place-items:center; font-size:13px; font-weight:700; }
.menu-phone { position:absolute; right:6%; background:#f3a7c1; color:#111; border-radius:30px; padding:10px 18px; font-weight:700; }
.menu-black-nav { background:#080808; color:#fff; display:flex; justify-content:center; align-items:center; gap:28px; padding:13px 18px; position:sticky; top:0; z-index:50; }
.menu-black-nav a { color:#fff; font-size:15px; }
.menu-black-nav a:hover,.menu-black-nav a.active { color:#f49bbb; }
.menu-black-nav .nav-dropdown { position:relative; }
.menu-black-nav .dropdown-menu { background:#080808; border-top:2px solid #f49bbb; min-width:225px; }
.menu-black-nav .dropdown-menu a { display:block; padding:10px 14px; }
.menu-black-nav .dropdown-menu a:hover { background:#1c1c1c; }
.menu-page-hero { padding:58px 7%; background:radial-gradient(circle at 8% 20%,rgba(247,181,199,.30),transparent 28%),radial-gradient(circle at 92% 80%,rgba(240,194,202,.35),transparent 30%),linear-gradient(100deg,#fff7f8,#fff,#fff5f7); display:grid; grid-template-columns:1fr 1fr; gap:30px; align-items:center; border-bottom:1px solid #f0d9df; }
.menu-page-hero .eyebrow { color:#b23e64; }
.menu-page-hero h1 { font:700 clamp(45px,6vw,78px)/.95 "Playfair Display",serif; margin:0; color:#151515; }
.menu-page-hero h1 em { color:#c44d73; font-style:italic; }
.menu-page-hero p { max-width:620px; color:#65575a; font-size:17px; }
.menu-hero-photo { min-height:290px; border-radius:140px 30px 140px 30px; overflow:hidden; box-shadow:0 18px 45px rgba(103,45,60,.12); border:7px solid #fff; }
.menu-hero-photo img { width:100%; height:100%; min-height:290px; object-fit:cover; display:block; }
.menu-layout { max-width:1240px; margin:0 auto; padding:48px 5%; display:grid; grid-template-columns:245px 1fr; gap:44px; }
.menu-sidebar { background:#fff7fa; border:1px solid #f0d4dc; border-radius:20px; padding:18px; height:max-content; position:sticky; top:78px; }
.menu-sidebar h3 { font:700 25px "Playfair Display",serif; margin:4px 8px 16px; color:#222; }
.menu-sidebar a { display:block; padding:12px 13px; border-radius:12px; color:#333; font-weight:600; }
.menu-sidebar a:hover,.menu-sidebar a.active { background:#f5c4d4; color:#7e2345; }
.menu-content h2 { font:700 38px "Playfair Display",serif; color:#222; margin:0 0 7px; }
.menu-content .menu-intro { color:#75666a; margin:0 0 25px; }
.menu-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.menu-card { background:#fff; border:1px solid #efd9df; border-radius:18px; padding:22px; box-shadow:0 8px 24px rgba(82,35,51,.06); display:flex; flex-direction:column; justify-content:space-between; min-height:175px; }
.menu-card .menu-icon { width:44px; height:44px; border-radius:50%; background:#f7c4d3; display:grid; place-items:center; margin-bottom:12px; font-size:21px; }
.menu-card h3 { margin:0 0 7px; color:#222; font:700 21px "Playfair Display",serif; }
.menu-card p { margin:0 0 15px; color:#76686b; font-size:14px; }
.menu-card .order-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:auto; }
.menu-card .btn { padding:10px 14px; font-size:12px; }
.menu-note { margin-top:24px; padding:16px 18px; background:#fff4f7; border-left:4px solid #d45c82; border-radius:10px; color:#654e55; }
.menu-bottom-cta { margin-top:28px; padding:25px; border-radius:20px; background:linear-gradient(100deg,#f9d8e3,#fff0f4); display:flex; justify-content:space-between; gap:18px; align-items:center; flex-wrap:wrap; }
.menu-bottom-cta h3 { margin:0; font:700 27px "Playfair Display",serif; color:#222; }
@media(max-width:800px){
  .menu-brand-row { min-height:96px; }
  .menu-brand-row .brand-logo { width:145px; height:80px; }
  .menu-social { left:3%; }
  .menu-phone { right:3%; font-size:12px; padding:8px 12px; }
  .menu-black-nav { gap:12px; flex-wrap:wrap; }
  .menu-page-hero { grid-template-columns:1fr; padding:38px 6%; }
  .menu-hero-photo { min-height:220px; }
  .menu-layout { grid-template-columns:1fr; padding:32px 5%; }
  .menu-sidebar { position:static; }
  .menu-card-grid { grid-template-columns:1fr; }
}


/* =========================================================
   V14 REFERENCE STYLE — Vany's Cakes & Events
   ========================================================= */
:root{
  --vany-pink:#f19abb;
  --vany-pink-dark:#b73f69;
  --vany-soft:#fff1f5;
  --vany-pale:#fff9fb;
  --vany-black:#090909;
  --vany-text:#181418;
  --vany-muted:#6f6267;
  --vany-line:#efd4dd;
}

body{font-family:"Montserrat",Arial,sans-serif!important;background:#fff!important;color:var(--vany-text)!important}
h1,h2,h3,h4,.page-hero h1,.page-content h2,.option-card h2,.menu-content h2,.menu-card h3,.menu-sidebar h3,.menu-bottom-cta h3{font-family:"Cormorant Garamond",Georgia,serif!important}
.hero h1 em,.intro h2 em,.section-head h2 em,.feature h2 em,.about h2 em,.contact h2 em,.page-hero h1 em,.menu-page-hero h1 em{font-family:"Great Vibes",cursive!important;font-weight:400!important;color:var(--vany-pink-dark)!important;font-style:normal!important}

/* top brand area */
body:not(.menu-reference-page) header{
  min-height:178px!important;height:auto!important;padding:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-end!important;position:relative!important;top:auto!important;
  background:radial-gradient(circle at 5% 30%,rgba(244,171,193,.24),transparent 23%),radial-gradient(circle at 92% 20%,rgba(244,171,193,.22),transparent 25%),linear-gradient(135deg,#fff 0%,#fff8fa 55%,#fdebf1 100%)!important;border-bottom:0!important;backdrop-filter:none!important
}
body:not(.menu-reference-page) header .brand{width:100%!important;height:122px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;position:relative!important}
body:not(.menu-reference-page) header .brand-logo{width:340px!important;max-width:58vw!important;height:auto!important;max-height:110px!important;object-fit:contain!important}
body:not(.menu-reference-page) header .brand:before{content:"f   ◎   ♪   p";position:absolute;left:8%;top:47px;background:#090909;color:#fff;border-radius:24px;padding:8px 13px;font:700 12px Arial,sans-serif;letter-spacing:4px;white-space:pre}
body:not(.menu-reference-page) header .brand:after{content:"☎   352-223-1188";position:absolute;right:8%;top:39px;background:#f2a0bd;color:#111;border-radius:28px;padding:11px 20px;font:700 13px "Montserrat",Arial,sans-serif;white-space:nowrap}

/* black navigation */
body:not(.menu-reference-page) header nav{width:100%!important;min-height:56px!important;padding:0 6%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;background:#090909!important;color:#fff!important;border:0!important;box-shadow:0 4px 15px rgba(0,0,0,.12)!important;position:relative!important}
body:not(.menu-reference-page) header nav>a,body:not(.menu-reference-page) header nav .nav-dropdown>a{position:relative!important;color:#fff!important;padding:18px 17px!important;font:500 14px "Montserrat",Arial,sans-serif!important;text-decoration:none!important}
body:not(.menu-reference-page) header nav>a:hover,body:not(.menu-reference-page) header nav .nav-dropdown>a:hover{color:#f39abb!important}
body:not(.menu-reference-page) header nav>a:not(:last-child)::after{content:"♥";position:absolute;right:-4px;top:50%;transform:translateY(-50%);color:#f39abb;font-size:10px}
body:not(.menu-reference-page) header .nav-order{background:#f19abb!important;color:#111!important;border-radius:0!important;padding:11px 17px!important;margin-left:5px}
body:not(.menu-reference-page) .nav-dropdown .dropdown-menu{top:100%!important;left:50%!important;transform:translateX(-50%)!important;min-width:225px!important;padding:7px!important;border:0!important;border-top:2px solid #f19abb!important;border-radius:0 0 10px 10px!important;background:#090909!important;box-shadow:0 15px 30px rgba(0,0,0,.25)!important}
body:not(.menu-reference-page) .nav-dropdown .dropdown-menu a{color:#fff!important;padding:10px 12px!important;font-family:"Montserrat",Arial,sans-serif!important}
body:not(.menu-reference-page) .nav-dropdown .dropdown-menu a:hover{background:#202020!important;color:#f19abb!important}

/* reference-inspired hero */
.hero{min-height:540px!important;padding:45px 6%!important;grid-template-columns:1fr 1fr!important;gap:25px!important;background:radial-gradient(circle at 6% 20%,rgba(244,171,193,.23),transparent 27%),radial-gradient(circle at 94% 75%,rgba(245,196,207,.28),transparent 30%),linear-gradient(100deg,#fff7f9,#fff,#fff5f7)!important;color:#111!important}
.hero h1{font:600 clamp(50px,6vw,78px)/.93 "Cormorant Garamond",Georgia,serif!important;letter-spacing:-1px!important;color:#161616!important}
.hero .eyebrow{color:#b63f68!important;font:700 12px "Montserrat",Arial,sans-serif!important;letter-spacing:3px}
.hero-copy>p{color:#62585c!important;font-size:16px!important}
.hero-visual img{border-radius:180px 30px 180px 30px!important;box-shadow:0 20px 45px rgba(76,36,49,.14)!important}

.btn{font-family:"Montserrat",Arial,sans-serif!important;border-radius:4px!important}
.btn.primary{background:#f19abb!important;color:#111!important;border-color:#f19abb!important}
.btn.light{background:#fff!important;color:#222!important;border-color:#e3b7c4!important}

/* cards and forms */
.card,.menu-card,.option-card,.payment-card,.pay-box,.booking-payment-panel,.review-card,.review-form,.idea-form{background:#fff!important;border:1px solid var(--vany-line)!important;border-radius:16px!important;box-shadow:0 8px 25px rgba(90,40,55,.06)!important}
.booking-form,.booking-page-form{background:#fff4f7!important;border:1px solid #efcbd7!important;border-radius:18px!important;box-shadow:0 10px 30px rgba(90,40,55,.06)!important}
input,select,textarea{font-family:"Montserrat",Arial,sans-serif!important;background:#fff!important;border:1px solid #ddb8c5!important;border-radius:5px!important;color:#111!important}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(242,154,184,.28)!important;border-color:#e88ba9!important}

/* all dedicated menu pages */
.menu-reference-page{font-family:"Montserrat",Arial,sans-serif!important;background:#fff!important}
.menu-reference-page .menu-topbar{background:#fff0f3!important;color:#6c3044!important}
.menu-reference-page .menu-reference-header{background:radial-gradient(circle at 5% 30%,rgba(244,171,193,.24),transparent 23%),radial-gradient(circle at 92% 20%,rgba(244,171,193,.22),transparent 25%),linear-gradient(135deg,#fff 0%,#fff8fa 55%,#fdebf1 100%)!important}
.menu-reference-page .menu-brand-row .brand-logo{width:330px!important;height:110px!important;max-width:58vw!important}
.menu-reference-page .menu-black-nav{background:#090909!important;gap:0!important;padding:0 6%!important;min-height:56px!important}
.menu-reference-page .menu-black-nav>a,.menu-reference-page .menu-black-nav .nav-dropdown>a{position:relative;padding:18px 17px!important;font:500 14px "Montserrat",Arial,sans-serif!important;color:#fff!important}
.menu-reference-page .menu-black-nav>a:not(:last-child)::after{content:"♥";position:absolute;right:-4px;top:50%;transform:translateY(-50%);color:#f39abb;font-size:10px}
.menu-reference-page .menu-page-hero{background:radial-gradient(circle at 6% 20%,rgba(244,171,193,.23),transparent 27%),radial-gradient(circle at 94% 75%,rgba(245,196,207,.28),transparent 30%),linear-gradient(100deg,#fff7f9,#fff,#fff5f7)!important}
.menu-reference-page .menu-page-hero h1{font-family:"Cormorant Garamond",Georgia,serif!important}
.menu-reference-page .menu-page-hero h1 em{font-family:"Great Vibes",cursive!important;font-style:normal!important;font-weight:400!important;color:#bd416b!important}
.menu-reference-page .menu-sidebar a.active{background:#f5c4d4!important;color:#7e2345!important}
.menu-reference-page .menu-card .menu-icon{background:#f7c4d3!important}
.menu-reference-page .menu-note{background:#fff4f7!important;border-left-color:#d45c82!important}

/* footer */
footer{background:#090909!important;color:#fff!important}
footer a{color:#fff!important}

@media(max-width:850px){
  body:not(.menu-reference-page) header{min-height:140px!important}
  body:not(.menu-reference-page) header .brand{height:90px!important}
  body:not(.menu-reference-page) header .brand-logo{width:220px!important;max-width:48vw!important}
  body:not(.menu-reference-page) header .brand:before{left:3%;top:34px;padding:6px 8px;font-size:9px;letter-spacing:2px}
  body:not(.menu-reference-page) header .brand:after{right:3%;top:31px;padding:8px 10px;font-size:9px}
  body:not(.menu-reference-page) header nav{overflow-x:auto!important;justify-content:flex-start!important;white-space:nowrap!important}
  body:not(.menu-reference-page) header nav>a,body:not(.menu-reference-page) header nav .nav-dropdown>a{padding:15px 10px!important;font-size:11px!important}
  body:not(.menu-reference-page) header nav>a:not(:last-child)::after{display:none!important}
  .hero{grid-template-columns:1fr!important;padding:42px 6%!important}
  .menu-reference-page .menu-brand-row .brand-logo{width:220px!important;max-width:48vw!important}
  .menu-reference-page .menu-black-nav{overflow-x:auto!important;justify-content:flex-start!important;white-space:nowrap!important}
  .menu-reference-page .menu-black-nav>a,.menu-reference-page .menu-black-nav .nav-dropdown>a{padding:15px 10px!important;font-size:11px!important}
  .menu-reference-page .menu-black-nav>a:not(:last-child)::after{display:none!important}
}

/* Food Order Policy */
.food-policy-section{padding:75px 7%;background:linear-gradient(135deg,#fff9fb,#fff,#fff1f5);border-top:1px solid #f1d8e0}
.food-policy-wrap{max-width:1180px;margin:auto}.food-policy-section .section-head{text-align:center;max-width:760px;margin:0 auto 34px}
.food-policy-section .eyebrow{color:#b63f68;font-size:12px;font-weight:700;letter-spacing:2.4px}
.food-policy-section .section-head h2{margin:7px 0 10px;font:600 clamp(42px,5vw,62px)/1 "Cormorant Garamond",Georgia,serif}
.food-policy-section .section-head h2 em{font-family:"Great Vibes",cursive;font-weight:400;color:#b63f68}
.food-policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.food-policy-card{background:#fff;border:1px solid #efd5de;border-radius:18px;padding:25px;box-shadow:0 8px 25px rgba(90,40,55,.06)}
.food-policy-card h3{margin:0 0 14px;color:#b63f68;font:600 25px "Cormorant Garamond",Georgia,serif}
.food-policy-card ul{margin:0;padding-left:20px;color:#5f5559}.food-policy-card li{margin-bottom:9px;line-height:1.6}
.food-policy-payment{margin:22px 0 12px;padding:16px 20px;text-align:center;background:#f7cfdb;border:1px solid #edb7c7;border-radius:14px;color:#4c3039}
.food-policy-agreement{text-align:center;color:#6a585e;max-width:850px;margin:14px auto 0;line-height:1.6}
@media(max-width:760px){.food-policy-section{padding:50px 5%}.food-policy-grid{grid-template-columns:1fr}}


/* Booking service-specific fields */
.cake-only-fields[hidden]{display:none !important}
.cake-only-fields{
  display:grid;
  gap:13px;
  padding:16px;
  border:1px solid #efd5de;
  border-radius:15px;
  background:#fff8fa;
}

/* Empanada flavor list */
.empanada-flavors{margin:8px 0 8px 12px;padding-left:18px;color:#6f6267}
.empanada-flavors li{margin:5px 0}

/* Food, sweets and rental booking dropdowns */
.service-specific-fields[hidden]{display:none !important}
.service-specific-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
  padding:16px;
  border:1px solid #efd5de;
  border-radius:15px;
  background:#fff8fa;
}
@media(max-width:650px){.service-specific-fields{grid-template-columns:1fr}}

/* Customer gallery */
.customer-gallery-section{padding:72px 6%;background:#fff}
.customer-gallery-wrap{max-width:1250px;margin:auto}
.customer-gallery-section .section-head{text-align:center;max-width:720px;margin:0 auto 32px}
.customer-gallery-section .eyebrow{color:#b63f68;font-size:12px;font-weight:700;letter-spacing:2.4px}
.customer-gallery-section h2{margin:7px 0 8px;font:600 clamp(42px,5vw,62px)/1 "Cormorant Garamond",Georgia,serif}
.customer-gallery-section h2 em{font-family:"Great Vibes",cursive;font-weight:400;color:#b63f68}
.customer-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.customer-gallery-grid img{width:100%;height:300px;display:block;object-fit:cover;border-radius:16px;box-shadow:0 7px 20px rgba(60,30,40,.10)}
.customer-gallery-grid img:nth-child(1),.customer-gallery-grid img:nth-child(4),.customer-gallery-grid img:nth-child(9){grid-column:span 2}
@media(max-width:900px){.customer-gallery-grid{grid-template-columns:repeat(2,1fr)}.customer-gallery-grid img{height:270px}}
@media(max-width:560px){.customer-gallery-section{padding:50px 5%}.customer-gallery-grid{grid-template-columns:1fr}.customer-gallery-grid img,.customer-gallery-grid img:nth-child(1),.customer-gallery-grid img:nth-child(4),.customer-gallery-grid img:nth-child(9){grid-column:span 1;height:300px}}


/* Professional Sweets Portfolio */
.portfolio-showcase{padding:78px 6%;background:linear-gradient(180deg,#fff,#fff8fa)}
.portfolio-wrap{max-width:1240px;margin:0 auto}
.portfolio-heading{text-align:center;max-width:780px;margin:0 auto 28px}
.portfolio-heading .eyebrow{color:#b63f68;font-size:12px;font-weight:700;letter-spacing:2.2px}
.portfolio-heading h2{margin:8px 0 10px;font:600 clamp(42px,5vw,64px)/.95 "Cormorant Garamond",Georgia,serif}
.portfolio-heading h2 em{font-family:"Great Vibes",cursive;font-weight:400;color:#b63f68}
.portfolio-heading p{color:#6c5e63;margin:0}
.portfolio-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:0 auto 28px}
.portfolio-filter{border:1px solid #e8bdca;background:#fff;color:#613347;padding:10px 15px;border-radius:999px;font:700 12px "Montserrat",Arial,sans-serif;cursor:pointer}
.portfolio-filter:hover,.portfolio-filter.active{background:#ef9ab8;color:#111;border-color:#ef9ab8}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.portfolio-card{margin:0;position:relative;overflow:hidden;border-radius:18px;background:#f5eef1;box-shadow:0 10px 28px rgba(66,30,42,.09);aspect-ratio:4/5}
.portfolio-card[hidden]{display:none!important}
.portfolio-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.portfolio-card:hover img{transform:scale(1.035)}
.portfolio-card figcaption{position:absolute;left:12px;right:12px;bottom:12px;background:rgba(255,255,255,.93);backdrop-filter:blur(8px);padding:11px 13px;border-radius:13px;display:flex;flex-direction:column;gap:2px}
.portfolio-card figcaption span{font:700 10px "Montserrat",Arial,sans-serif;text-transform:uppercase;letter-spacing:1.2px;color:#b63f68}
.portfolio-card figcaption strong{font:600 19px "Cormorant Garamond",Georgia,serif;color:#1b1719}
.portfolio-cta{margin-top:28px;padding:25px 28px;border-radius:18px;background:#f7d2de;display:flex;align-items:center;justify-content:space-between;gap:20px}
.portfolio-cta h3{margin:0 0 3px;font:600 28px "Cormorant Garamond",Georgia,serif}
.portfolio-cta p{margin:0;color:#67555c}
@media(max-width:950px){.portfolio-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.portfolio-showcase{padding:52px 5%}.portfolio-grid{grid-template-columns:1fr 1fr;gap:10px}.portfolio-card{border-radius:14px}.portfolio-card figcaption{left:8px;right:8px;bottom:8px;padding:9px}.portfolio-card figcaption strong{font-size:16px}.portfolio-filter{font-size:11px;padding:9px 12px}}
