html { scroll-behavior: smooth; }
html, body, #root { margin: 0; min-height: 100%; }
body { background: var(--ds-page); color: #171717; }
* { box-sizing: border-box; }
a { color: inherit; }
:root { --nibble-yellow: #F9C122; --ink: #171717; --cream: #fff9e9; --muted: #66615b; }
.hero { position: relative; min-height: 780px; margin: -24px -24px 0; overflow: hidden; color: #fff; display: flex; flex-direction: column; }
.hero-image, .hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-image { object-fit: cover; object-position: center; }
.hero-shade { background: linear-gradient(90deg, rgba(16,15,13,.86) 0%, rgba(16,15,13,.62) 46%, rgba(16,15,13,.10) 82%), linear-gradient(0deg, rgba(16,15,13,.42), transparent 45%); }
.nav { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding: 26px 30px; border-bottom: 1px solid rgba(255,255,255,.22); }
.brand { display: inline-flex; gap: 10px; align-items: center; font-weight: 700; text-decoration: none; letter-spacing: -.01em; }
.brand-mark { width: 33px; height: 33px; display: grid; place-items: center; background: var(--nibble-yellow); color: var(--ink); border-radius: 50% 50% 44% 44%; font-family: Georgia, serif; font-style: italic; }
.nav-links { display: flex; gap: 28px; }
.nav-links a { text-decoration: none; font-size: 14px; color: #fff; }
.hero .brand { color: #fff; }
.language-button { border: 1px solid rgba(255,255,255,.55); background: transparent; color: #fff; min-height: 34px; padding: 0 12px; font: inherit; font-size: 13px; cursor: pointer; }
.hero-copy { position: relative; z-index: 1; max-width: 750px; padding: 112px 38px 78px; margin-top: auto; }
.eyebrow, .section-kicker { margin: 0 0 16px; text-transform: uppercase; letter-spacing: .14em; font-size: 12px; font-weight: 700; }
.tagline { display: inline-block; margin: 0 0 25px; background: var(--nibble-yellow); color: var(--ink); padding: 8px 12px 7px; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
h1, h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.035em; margin: 0; }
h1 { font-size: clamp(50px, 7vw, 80px); line-height: .98; }
h2 { font-size: clamp(38px, 5vw, 59px); line-height: 1.02; }
.lead { font-size: 19px; line-height: 1.55; max-width: 640px; margin: 26px 0 30px; color: rgba(255,255,255,.9); }
.actions, .contact-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 22px; border: 1px solid transparent; text-decoration: none; font-weight: 750; font-size: 14px; }
.primary { background: var(--nibble-yellow); color: var(--ink); }
.secondary { border-color: rgba(255,255,255,.62); color: #fff; }
.image-note { position: absolute; z-index: 2; right: 18px; bottom: 12px; font-size: 10px; color: rgba(255,255,255,.62); }
.intro-band, .section, .specialty-band { padding: 90px 38px; }
.intro-band { background: var(--nibble-yellow); display: grid; grid-template-columns: 1.15fr 1fr; gap: 52px; align-items: end; }
.intro-band p:last-child { max-width: 620px; font-size: 18px; line-height: 1.65; margin: 0; }
.section-heading { max-width: 720px; margin-bottom: 48px; }
.service-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #dedbd7; }
.service-card { padding: 34px 28px 36px 0; border-bottom: 1px solid #dedbd7; }
.service-card:nth-child(odd) { border-right: 1px solid #dedbd7; padding-right: 36px; }
.service-card:nth-child(even) { padding-left: 36px; }
.number { color: #987109; font-size: 12px; letter-spacing: .1em; font-weight: 700; }
h3 { margin: 20px 0 8px; font-size: 21px; }
.service-card p, .step p { color: var(--muted); line-height: 1.58; margin: 0; }
.specialty-band { background: var(--cream); text-align: center; }
.specialty-band h2 { max-width: 700px; margin: 0 auto; }
.specialty-band > p:last-child { font-size: 18px; line-height: 1.65; color: var(--muted); max-width: 700px; margin: 25px auto 0; }
.step-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.step { background: #f5f3f0; padding: 30px 26px; min-height: 240px; }
.step > span { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--nibble-yellow); font-size: 12px; font-weight: 800; }
.work { background: var(--ink); color: #fff; margin: 0 -24px; padding-left: 62px; padding-right: 62px; display: grid; grid-template-columns: 1.05fr .8fr; gap: 55px; align-items: center; }
.work-copy > p:not(.section-kicker) { color: rgba(255,255,255,.72); font-size: 17px; line-height: 1.65; }
.light { color: var(--nibble-yellow); }
.work ul { padding-left: 20px; line-height: 1.8; color: rgba(255,255,255,.8); }
.work-photo { margin: 0; }
.work-photo img { width: 100%; aspect-ratio: .78; object-fit: cover; object-position: center; display: block; }
.work-photo figcaption { color: rgba(255,255,255,.58); font-size: 11px; margin-top: 10px; }
.social-row { display: flex; gap: 24px; margin-top: 28px; }
.social-row a { color: #fff; }
.coverage { text-align: center; }
.city-list { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 40px; }
.city-list span { border: 1px solid #d8d0cf; padding: 12px 18px; border-radius: 99px; }
.contact { background: var(--nibble-yellow); color: var(--ink); margin: 0 -24px; padding-left: 62px; padding-right: 62px; }
.contact > p:not(.section-kicker) { font-size: 18px; line-height: 1.6; max-width: 670px; }
.contact-actions { margin-top: 28px; }
.dark-button { background: var(--ink); color: #fff; }
.email { margin-left: 8px; font-weight: 650; }
footer { display: grid; grid-template-columns: 1fr auto auto; gap: 28px; align-items: center; padding: 34px 14px 10px; color: #625a5c; font-size: 12px; }
.dark { color: var(--ink); }
@media (min-width: 768px) { .hero { margin-left: -36px; margin-right: -36px; } .work, .contact { margin-left: -36px; margin-right: -36px; padding-left: 74px; padding-right: 74px; } }
@media (max-width: 700px) {
  .hero { min-height: 760px; }
  .nav { padding: 20px; }
  .nav-links a:not(:last-child) { display: none; }
  .hero-copy { padding: 90px 22px 58px; }
  h1 { font-size: 49px; }
  .lead { font-size: 17px; }
  .intro-band, .section, .specialty-band { padding: 66px 22px; }
  .intro-band, .work, .step-grid { grid-template-columns: 1fr; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card:nth-child(odd), .service-card:nth-child(even) { border-right: 0; padding: 29px 0; }
  .work, .contact { margin-left: -24px; margin-right: -24px; padding-left: 46px; padding-right: 46px; }
  .work { gap: 36px; }
  .work-photo img { aspect-ratio: 1 / 1.1; }
  footer { grid-template-columns: 1fr; gap: 8px; padding: 28px 0 5px; }
  footer p { margin: 0; }
  .email { margin: 8px 0 0; width: 100%; overflow-wrap: anywhere; }
}

.page-ar { direction: rtl; font-family: Arial, Tahoma, sans-serif; }
.page-ar h1, .page-ar h2 { font-family: Georgia, Tahoma, serif; }
.page-ar .hero-copy, .page-ar .section-heading, .page-ar .work-copy { text-align: right; }
.page-ar .service-card:nth-child(odd) { border-right: 0; border-left: 1px solid #dedbd7; padding-right: 0; padding-left: 36px; }
.page-ar .service-card:nth-child(even) { padding-left: 0; padding-right: 36px; }
@media (max-width: 700px) { .language-button { padding: 0 9px; } .page-ar .service-card:nth-child(odd), .page-ar .service-card:nth-child(even) { border-left: 0; padding: 29px 0; } }
.photo-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; max-width: 900px; margin: 40px auto 0; text-align: left; }
.photo-strip figure { margin: 0; }
.photo-strip img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.photo-strip figcaption { margin-top: 8px; font-size: 12px; color: var(--muted); }
.page-ar .photo-strip { text-align: right; }
@media (max-width: 700px) { .photo-strip { grid-template-columns: 1fr; gap: 24px; } }
.page-ar, .page-ar * { letter-spacing: 0; }
.page-ar { font-family: Tahoma, Arial, sans-serif; }
.page-ar h1, .page-ar h2, .page-ar h3 { font-family: Tahoma, Arial, sans-serif; font-weight: 700; line-height: 1.25; }
.page-ar .eyebrow, .page-ar .section-kicker { letter-spacing: 0; }

body.nibble-landing { margin:0; } .nibble-landing .site-header,.nibble-landing .site-footer,.nibble-landing #wpadminbar{display:none!important}.nibble-landing{padding-top:0!important}.nibble-page{max-width:1200px;margin:0 auto;background:#fff}.lang-hidden{display:none!important}
/* WordPress/Astra specificity fixes for landing templates */
.nibble-page .hero h1 { color: #fff; }
.nibble-page .hero .lead { color: rgba(255,255,255,.9); }
.nibble-page .button.primary { background: var(--nibble-yellow); color: var(--ink); }
.nibble-page .button.secondary { color: #fff; border-color: rgba(255,255,255,.62); background: transparent; }
.nibble-page .work h2 { color: #fff; }
.nibble-page .contact h2 { color: var(--ink); }
/* v3 inner-page system */
.site-chrome { background:#171717; color:#fff; position:relative; z-index:10; }
.chrome-nav { max-width:1200px; margin:auto; min-height:78px; padding:0 38px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.chrome-links,.service-subnav,.footer-links,.footer-contact,.footer-social { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.chrome-links a,.service-subnav a,.nibble-footer a { color:inherit; text-decoration:none; }
.chrome-links a { font-size:14px; }
.chrome-nav .language-button { display:inline-flex;align-items:center; }
.service-subnav { max-width:1200px; margin:auto; padding:12px 38px; border-top:1px solid rgba(255,255,255,.15); font-size:13px; color:rgba(255,255,255,.75); }
.chrome-ar .chrome-links { direction:rtl; }
.inner-page { max-width:1200px; margin:0 auto; background:#fff; }
.inner-hero { background:#f9c122; padding:86px 60px 74px; }
.inner-hero h1 { max-width:900px; font-size:clamp(42px,6vw,72px); color:#171717; }
.inner-hero > p:last-child { max-width:760px; font-size:19px; line-height:1.65; margin:24px 0 0; }
/* Unify retained Elementor content without rewriting its verified copy. */
.inner-page + .elementor, .site-chrome + .elementor { max-width:1200px; margin:0 auto; }
body:not(.home) .elementor > .e-con { --container-max-width:1080px; }
body:not(.home) .elementor h1, body:not(.home) .elementor h2 { color:#171717; }
body:not(.home) .elementor .elementor-button { background:#171717!important; color:#fff!important; border-radius:0!important; min-height:48px; padding:15px 22px!important; }
body:not(.home) .elementor img { border-radius:0!important; }
.verified-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; padding:70px 38px; }
.verified-gallery figure { margin:0; background:#f5f3f0; }
.verified-gallery img { width:100%; aspect-ratio:1; object-fit:cover; display:block; }
.verified-gallery figcaption { padding:14px 16px 18px; font-size:14px; }
.inner-cta { margin:0 38px 70px; padding:60px; background:#f9c122; }
.inner-cta p { font-size:18px; }
.quote-layout { display:grid; grid-template-columns:1.4fr .75fr; gap:40px; padding:70px 38px; }
.quote-form,.contact-card { padding:36px; background:#f5f3f0; }
.contact-card { background:#171717; color:#fff; display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.contact-card h2 { color:#fff; }.contact-card a{color:#f9c122;font-weight:700}.contact-card p{line-height:1.6}
.quote-form input,.quote-form textarea,.quote-form select { border:1px solid #d8d0cf!important; border-radius:0!important; background:#fff!important; }
.quote-form button { background:#171717!important; color:#fff!important; border-radius:0!important; padding:14px 24px!important; }
.nibble-footer { max-width:1200px; margin:auto; padding:46px 38px; display:grid; grid-template-columns:1.4fr 1fr 1.2fr; gap:28px; background:#171717; color:#fff; }
.nibble-footer p { color:rgba(255,255,255,.7); max-width:360px; }.footer-links,.footer-contact{flex-direction:column;align-items:flex-start;gap:9px}.footer-social{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;font-size:13px;color:rgba(255,255,255,.7)}
body.home .nibble-footer { margin-top:0; }
body:not(.home) .site-header, body:not(.home) .site-footer, body:not(.home) #masthead { display:none!important; }
.rtl .inner-page, .rtl .site-chrome, .rtl .nibble-footer { font-family:Tahoma,Arial,sans-serif; }
@media(max-width:800px){.chrome-nav{padding:18px 20px;align-items:flex-start}.chrome-links a:not(.language-button):not(:nth-last-child(2)){display:none}.service-subnav{padding:11px 20px;overflow-x:auto;flex-wrap:nowrap}.service-subnav a{white-space:nowrap}.inner-hero{padding:62px 22px}.verified-gallery{grid-template-columns:1fr;padding:46px 22px}.inner-cta{margin:0 22px 48px;padding:38px 24px}.quote-layout{grid-template-columns:1fr;padding:46px 22px}.quote-form,.contact-card{padding:25px}.nibble-footer{grid-template-columns:1fr;padding:38px 22px}.footer-social{grid-column:auto}.nav-links{gap:12px}.nav-links a:not(.language-button):not(:nth-last-child(2)){display:none}}
/* v4 dual-journey homepage */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-logo img{width:74px;height:74px;object-fit:cover;display:block;border-radius:50%;border:2px solid rgba(255,255,255,.78)}.chrome-nav .brand-logo img{width:58px;height:58px}.journey-hero .hero-image{object-position:center 45%}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#171717;color:#fff;padding:22px 38px;gap:1px}.trust-strip span{padding:8px 20px;border-right:1px solid rgba(255,255,255,.18);font-size:13px;color:rgba(255,255,255,.75)}.trust-strip span:last-child{border:0}.trust-strip strong{font-family:Georgia,serif;font-size:25px;color:#f9c122;margin-right:7px}.journey-section{position:relative;overflow:hidden;background:#fff9e9}.journey-section .section-heading>p:last-child,.service-map .section-heading>p:last-child{font-size:17px;line-height:1.6;color:#66615b;max-width:690px}.cheese-field:after{content:"";position:absolute;right:-90px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 35% 36%,#fff9e9 0 14px,transparent 15px),radial-gradient(circle at 70% 58%,#fff9e9 0 23px,transparent 24px),radial-gradient(circle at 45% 76%,#fff9e9 0 10px,transparent 11px),#f9c122;opacity:.16;pointer-events:none}.journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.journey-card{padding:40px;background:#fff;border:1px solid #e1ddd6;display:flex;flex-direction:column;align-items:flex-start}.journey-card.corporate-card{background:#171717;color:#fff;border-color:#171717}.journey-card h3{font-family:Georgia,serif;font-size:31px;line-height:1.12;margin:10px 0 15px}.journey-card p:not(.persona),.journey-card li{line-height:1.6;color:#66615b}.corporate-card p:not(.persona),.corporate-card li{color:rgba(255,255,255,.74)}.persona{margin:0;color:#987109;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.12em}.corporate-card .persona{color:#f9c122}.journey-card ul{padding-left:20px;margin:8px 0 25px}.page-ar .journey-card ul{padding-left:0;padding-right:20px}.text-link{font-weight:750;margin:auto 0 17px;text-decoration:none;border-bottom:1px solid}.corporate-card .text-link{color:#f9c122}.proof-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;background:#171717;padding:16px;gap:16px}.proof{margin:0;position:relative;min-height:410px;overflow:hidden}.proof img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.proof-birthday img{object-position:center 45%}.proof:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.78))}.proof figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;color:#fff;display:flex;flex-direction:column;gap:4px}.page-ar .proof figcaption{left:20px;right:20px;text-align:right}.proof figcaption strong{font-size:17px}.proof figcaption span{font-size:11px;color:rgba(255,255,255,.72)}.service-map{text-align:center}.service-map .section-heading{margin-left:auto;margin-right:auto}.service-pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.service-pills a{text-decoration:none;border:1px solid #d8d0cf;padding:15px 20px;border-radius:99px;background:#fff}.service-pills a:hover{background:#f9c122;border-color:#f9c122}.delivery-note{color:#66615b;margin-top:27px}.process-dark{background:#171717;color:#fff;margin:0 -24px;padding-left:62px;padding-right:62px}.step-grid.four{grid-template-columns:repeat(4,1fr)}.process-dark .step{background:#262626}.process-dark .step h3{color:#fff}.process-dark .step p{color:rgba(255,255,255,.68)}.reviews{position:relative;overflow:hidden;background:#fff9e9}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative;z-index:1}.review-grid blockquote{margin:0;background:#fff;padding:33px;border:1px solid #e4ded4;min-height:260px;display:flex;flex-direction:column}.review-grid blockquote p{font-family:Georgia,serif;font-size:21px;line-height:1.45}.page-ar .review-grid blockquote p{font-family:Tahoma,Arial,sans-serif;font-size:18px}.stars{color:#987109;letter-spacing:.1em}.review-grid cite{margin-top:auto;font-style:normal;font-size:12px;color:#66615b}.review-note{font-size:12px;color:#66615b;margin:20px 0 0}.final-cta{position:relative;overflow:hidden}.outline-dark{border-color:#171717;color:#171717;background:transparent}.mouse-mark{position:absolute;right:70px;bottom:-85px;width:245px;height:245px;border:22px solid rgba(255,255,255,.35);border-radius:52% 48% 44% 56%;transform:rotate(-25deg)}.mouse-mark:after{content:"";position:absolute;width:155px;height:155px;border:17px solid rgba(255,255,255,.35);border-left-color:transparent;border-top-color:transparent;border-radius:50%;right:-135px;top:-30px}.nibble-footer .footer-logo{width:92px;height:92px;border-radius:50%;object-fit:cover;display:block;margin-bottom:14px}link[rel="icon"]{color:#f9c122}
@media(min-width:768px){.process-dark{margin-left:-36px;margin-right:-36px;padding-left:74px;padding-right:74px}}
@media(max-width:900px){.proof-grid{grid-template-columns:1fr 1fr}.proof{min-height:360px}.step-grid.four{grid-template-columns:1fr 1fr}.trust-strip{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.brand-logo img{width:56px;height:56px}.hero{min-height:800px}.journey-hero .hero-image{object-position:54% center}.trust-strip{padding:18px 10px}.trust-strip span{padding:8px 12px}.trust-strip strong{display:block}.journey-grid,.review-grid,.proof-grid,.step-grid.four{grid-template-columns:1fr}.journey-card{padding:30px 24px}.proof{min-height:420px}.process-dark{margin-left:-24px;margin-right:-24px;padding-left:46px;padding-right:46px}.mouse-mark{right:-70px}.final-cta{padding-bottom:120px}.nav{align-items:flex-start}.nav-links{align-items:center}.nav-links a:not(.language-button):not(:nth-last-child(2)){display:none}}
/* Arabic hero legibility and mobile trust rhythm */
.page-ar .hero-copy{max-width:800px}.page-ar .hero-copy .eyebrow,.page-ar .hero-copy .lead{text-shadow:0 1px 14px rgba(0,0,0,.75)}.page-ar .hero h1{font-size:clamp(46px,6.2vw,72px);line-height:1.38}.page-ar .hero-shade{background:linear-gradient(270deg,rgba(16,15,13,.88) 0%,rgba(16,15,13,.54) 48%,rgba(16,15,13,.14) 82%),linear-gradient(0deg,rgba(16,15,13,.44),transparent 45%)}
@media(max-width:700px){.page-ar .hero-copy{padding-top:118px}.page-ar .hero h1{font-size:42px;line-height:1.42}.page-ar .lead{font-size:16px}.page-ar .hero-shade{background:linear-gradient(0deg,rgba(16,15,13,.9) 0%,rgba(16,15,13,.5) 72%,rgba(16,15,15,.35) 100%)}.trust-strip span{font-size:11px}.trust-strip strong{font-size:22px}}
@media(max-width:700px){.page-ar .hero h1{font-size:36px;line-height:1.5}.page-ar .hero-copy{padding-right:18px;padding-left:18px}.page-ar .hero-copy .lead{line-height:1.9}}
/* Keep full-bleed sections inside the mobile viewport. */
@media(max-width:700px){.nibble-page .hero,.nibble-page .work,.nibble-page .contact,.nibble-page .process-dark{margin-left:0;margin-right:0}.nibble-page{width:100%;overflow:hidden}.cookieadmin_law_container{max-width:calc(100vw - 30px)!important}}
/* v4.4: locally hosted Arabic type for readability and privacy. */
@font-face{font-family:'Tajawal';src:url('assets/fonts/tajawal-400.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('assets/fonts/tajawal-500.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('assets/fonts/tajawal-700.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
.page-ar,.page-ar *,.rtl .inner-page,.rtl .site-chrome,.rtl .nibble-footer,.rtl .elementor{font-family:'Tajawal',Tahoma,Arial,sans-serif}.page-ar h1,.page-ar h2,.page-ar h3,.rtl .inner-page h1,.rtl .inner-page h2,.rtl .inner-page h3,.rtl .elementor h1,.rtl .elementor h2,.rtl .elementor h3{font-family:'Tajawal',Tahoma,Arial,sans-serif;font-weight:700;line-height:1.45}.page-ar p,.page-ar li,.rtl .inner-page p,.rtl .inner-page li,.rtl .elementor p,.rtl .elementor li{line-height:1.9}.page-ar .hero h1{font-weight:700}.page-ar .button,.rtl .inner-page .button,.rtl .elementor-button{font-weight:700}

/* === v45 mega menu === */
.v45-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative}
.v45-menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.v45-item{position:relative}
.v45-item>a{display:block;padding:10px 12px;color:#1a1a1a;text-decoration:none;font-weight:600;font-size:15px;border-radius:8px;white-space:nowrap}
.v45-item>a:hover{background:rgba(249,193,34,.18)}
.v45-item .caret{font-size:11px;opacity:.7}
.v45-drop{position:absolute;top:100%;inset-inline-start:0;min-width:230px;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);list-style:none;margin:6px 0 0;padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease;z-index:60}

.v45-item:hover>.v45-drop,.v45-item:focus-within>.v45-drop,.v45-item.open>.v45-drop{opacity:1;visibility:visible;transform:translateY(0)}
.v45-drop li a{display:block;padding:9px 12px;color:#333;text-decoration:none;font-size:14px;border-radius:8px}
.v45-drop li a:hover{background:rgba(249,193,34,.18);color:#000}
.v45-mega{position:absolute;top:100%;inset-inline-start:50%;transform:translate(-50%,8px);display:flex;gap:28px;background:#fff;border:1px solid #eee;border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.14);padding:20px 24px;margin-top:6px;opacity:0;visibility:hidden;transition:.18s ease;z-index:60}
[dir="rtl"] .v45-mega{transform:translate(50%,8px)}
.v45-item:hover>.v45-mega,.v45-item:focus-within>.v45-mega,.v45-item.open>.v45-mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
[dir="rtl"] .v45-item:hover>.v45-mega,[dir="rtl"] .v45-item:focus-within>.v45-mega,[dir="rtl"] .v45-item.open>.v45-mega{transform:translate(50%,0)}
.v45-mega-col{min-width:180px}
.v45-mega-title{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#b8890a}
.v45-mega-col ul{list-style:none;margin:0;padding:0}
.v45-mega-col li a{display:block;padding:6px 0;color:#333;text-decoration:none;font-size:14px}
.v45-mega-col li a:hover{color:#000;text-decoration:underline;text-decoration-color:#F9C122;text-underline-offset:3px}
.v45-cta .button{padding:8px 18px;white-space:nowrap}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer}
.nav-toggle span:not(.sr-only){width:24px;height:2px;background:#1a1a1a;display:block}
@media (max-width:1020px){
  .nav-toggle{display:flex}
  .v45-menu{position:absolute;top:100%;inset-inline:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px;border-radius:0 0 14px 14px;box-shadow:0 16px 40px rgba(0,0,0,.14);display:none;max-height:80vh;overflow:auto}
  .v45-menu.open{display:flex}
  .v45-item>a{padding:12px 14px}
  .v45-drop,.v45-mega{position:static;opacity:1;visibility:visible;transform:none!important;box-shadow:none;border:0;border-inline-start:3px solid #F9C122;border-radius:0;margin:0 12px 8px;padding:4px 12px;display:none}
  .v45-mega{flex-direction:column;gap:8px}
  .v45-item.open>.v45-drop,.v45-item.open>.v45-mega{display:block}
  .v45-cta{margin:8px 12px}
}
/* === v45 shared bits === */
.same-day-strip{display:flex;align-items:center;justify-content:center;gap:10px;background:#F9C122;color:#1a1a1a;font-weight:700;padding:10px 16px;font-size:15px;text-align:center}
.same-day-strip a{color:#1a1a1a;text-decoration:underline}
.occasion-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:18px 0}
.occasion-chips a{display:inline-block;padding:9px 18px;border:2px solid #F9C122;border-radius:999px;color:#1a1a1a;text-decoration:none;font-weight:600;font-size:14px;background:#fff}
.occasion-chips a:hover{background:#F9C122}
.catalogue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin:24px 0}
.product-card{background:#fff;border:1px solid #eee;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.18s ease}
.product-card:hover{box-shadow:0 12px 28px rgba(0,0,0,.10);transform:translateY(-2px)}
.product-card .ph{aspect-ratio:1/1;background:#f6f6f6 center/cover no-repeat;display:block;position:relative}
.product-card .ph .badge{position:absolute;top:10px;inset-inline-start:10px;background:#F9C122;color:#1a1a1a;font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.product-card .body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.product-card h3{margin:0;font-size:16px}
.product-card .price{color:#777;font-size:13px;margin:0}
.product-card .wa-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#25D366;color:#fff;font-weight:700;padding:10px 14px;border-radius:10px;text-decoration:none;font-size:14px}
.product-card .wa-cta:hover{background:#1eb855}

/* v45 contrast fix - dark chrome bar */
.site-chrome .v45-menu>.v45-item>a{color:#fff}
.site-chrome .v45-menu>.v45-item>a:hover{background:rgba(249,193,34,.25);color:#fff}
.site-chrome .v45-menu .language-button{color:#fff;border-color:#fff}
.site-chrome .nav-toggle span:not(.sr-only){background:#fff}
.v45-menu>.v45-item>a{color:#fff}
.v45-menu>.v45-item>a:hover{background:rgba(249,193,34,.25);color:#fff}
.v45-menu .language-button{color:#fff;border-color:#fff}
.nav-toggle span:not(.sr-only){background:#fff}

/* v45 zindex fix - mega panel above page hero */
.site-chrome{z-index:200}
.v45-mega,.v45-drop{z-index:210}

/* v45 mobile menu colors - white panel needs dark text */
@media (max-width:1020px){
  .site-chrome .v45-menu>.v45-item>a{color:#1a1a1a}
  .site-chrome .v45-menu>.v45-item>a:hover{color:#000;background:rgba(249,193,34,.25)}
  .site-chrome .v45-menu .language-button{color:#1a1a1a;border-color:#1a1a1a}
  .nav-toggle,.nav-toggle:focus,.nav-toggle:active,.nav-toggle:hover{background:none!important;border:0!important;outline:none}
}
@media (min-width:1021px){
.v45-mega{position:fixed;inset-inline-start:auto;left:50%;top:78px;transform:translate(-50%,8px);}
[dir="rtl"] .v45-mega{transform:translate(-50%,8px);}
.v45-item:hover>.v45-mega,.v45-item:focus-within>.v45-mega,.v45-item.open>.v45-mega{transform:translate(-50%,0);}
[dir="rtl"] .v45-item:hover>.v45-mega,[dir="rtl"] .v45-item:focus-within>.v45-mega,[dir="rtl"] .v45-item.open>.v45-mega{transform:translate(-50%,0);}
.v45-mega:has(.v45-mega-col:nth-child(4)){width:min(1160px,94vw);flex-wrap:wrap;gap:20px 24px;}
}
/* astra-rendered pages: readable white content area + dark title */
.content-area.primary{background:#fff!important}
.ast-page-builder-template .entry-header .entry-title,.entry-header .entry-title{color:#1a1a1a!important}
.content-area.primary .site-main{padding:18px 0}
/* hub cards: no link underline inside cards */
.nb-card,.nb-card span,.nb-card:hover{text-decoration:none!important}

/* Album originals, EN and AR home gallery */
.album-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.album-gallery-grid figure{margin:0;background:#fff;border-radius:14px;overflow:hidden}.album-gallery-grid img{display:block;width:100%;height:245px;object-fit:cover}.album-gallery-grid figcaption{padding:12px 14px;font-weight:700;color:#202020}@media(max-width:800px){.album-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-gallery-grid img{height:185px}}
