*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-en);line-height:1.7;transition:background .25s,color .25s}.lang-ar{font-family:var(--font-ar)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:var(--header-bg);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;font-weight:700;font-size:24px;color:var(--text)}.brand img{width:48px;height:48px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:28px;font-size:15px}.main-nav a{position:relative}.main-nav>a:not(.btn):after{content:'';position:absolute;inset-inline:0;bottom:-7px;height:1px;background:var(--secondary);transform:scaleX(0);transition:.25s}.main-nav>a:hover:after{transform:scaleX(1)}.lang-switch{border:1px solid var(--border);padding:5px 11px;border-radius:50px}.menu-toggle{display:none;background:transparent;border:0;color:var(--text);font-size:25px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;padding:13px 25px;border-radius:999px;border:1px solid var(--primary);font-weight:700;cursor:pointer;transition:.25s}.theme-black_gold .btn{color:#0b0b0b}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 30%,transparent)}.btn-sm{padding:9px 18px}.btn-ghost{background:transparent;border-color:#fff;color:#fff}.hero{height:720px;position:relative;display:flex;align-items:center;overflow:hidden;background:var(--dark)}.hero-media{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.02)}.hero:after{content:'';position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,var(--bg))}.hero-content{position:relative;z-index:2;color:#fff;max-width:780px;margin-inline-start:max(0px,calc((100vw - 1180px)/2));margin-inline-end:auto}.hero h1{font-size:clamp(45px,7vw,88px);line-height:1.02;margin:14px 0 20px;max-width:900px;font-weight:600}.lang-ar .hero h1{font-size:clamp(40px,6vw,76px);line-height:1.25}.hero p{font-size:20px;max-width:670px;color:#fffdf9}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.2em;font-size:13px;font-weight:700;color:var(--secondary)}.hero .eyebrow{color:var(--secondary)}.hero-actions{display:flex;gap:12px;margin-top:28px}.section{padding:105px 0}.muted{background:var(--surface-alt)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.two-col h2,.section-head h2,.promise-copy h2,.cta-box h2{font-size:clamp(34px,4vw,58px);line-height:1.15;margin:10px 0;font-weight:600}.lang-ar .two-col h2,.lang-ar .section-head h2,.lang-ar .promise-copy h2,.lang-ar .cta-box h2{line-height:1.4}.two-col p{font-size:19px;color:var(--muted-text)}.services-section{background:var(--surface)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.section-head>a{color:var(--primary);font-weight:700}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.service-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:0 18px 55px color-mix(in srgb,var(--dark) 10%,transparent);transition:.3s}.service-card:hover{transform:translateY(-7px);border-color:var(--secondary)}.card-image{height:340px;background-size:cover;background-position:center}.card-body{padding:25px}.card-body h2,.card-body h3{font-size:30px;margin:0 0 10px}.card-body p{color:var(--muted-text);min-height:60px}.card-body span{color:var(--primary);font-weight:700}.card-body small{display:block;margin:12px 0;color:var(--muted-text)}.promise-section{background:var(--dark);color:#fff}.promise-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:center}.promise-copy p{color:#d8d1c5;font-size:18px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats div{border:1px solid color-mix(in srgb,var(--secondary) 35%,transparent);padding:28px 18px;text-align:center;border-radius:18px;background:color-mix(in srgb,var(--surface) 25%,transparent)}.stats strong{display:block;font-size:40px;color:var(--secondary)}.stats span{font-size:13px;color:#d6cec3}.masonry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.album-card{position:relative;min-height:420px;border-radius:22px;overflow:hidden;background:var(--surface-alt);border:1px solid var(--border)}.album-card:nth-child(2n){transform:translateY(30px)}.album-card img{width:100%;height:100%;object-fit:cover;transition:.4s}.album-card:hover img{transform:scale(1.04)}.album-card:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(8,8,8,.86))}.album-card>div{position:absolute;z-index:2;inset:auto 25px 22px;color:#fff}.album-card h3{font-size:29px;margin:0}.album-card span{font-size:13px;color:var(--secondary)}.cta-box{background:var(--soft);border:1px solid var(--border);border-radius:28px;padding:55px;display:flex;justify-content:space-between;align-items:center}.page-hero{padding:120px 0 70px;background:linear-gradient(135deg,var(--surface-alt),var(--bg))}.page-hero.compact{padding-bottom:55px}.page-hero h1{font-size:clamp(42px,6vw,72px);margin:10px 0;line-height:1.1}.lang-ar .page-hero h1{line-height:1.35}.page-hero p{max-width:700px;font-size:19px;color:var(--muted-text)}.service-hero{height:650px;position:relative;display:flex;align-items:end;background:var(--dark)}.service-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.service-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(7,7,7,.85))}.service-hero-copy{position:relative;z-index:2;color:#fff;padding-bottom:70px}.service-hero h1{font-size:70px;margin:10px 0}.service-hero p{font-size:20px;max-width:650px}.service-layout{display:grid;grid-template-columns:1fr 350px;gap:80px}.rich-copy h2{font-size:46px}.rich-copy{font-size:18px;color:var(--text)}.booking-side{background:var(--surface-alt);border:1px solid var(--border);padding:30px;border-radius:22px;height:max-content;position:sticky;top:110px}.booking-side .price{font-size:34px;color:var(--primary)}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package-card{background:var(--surface);border:1px solid var(--border);padding:30px;border-radius:20px}.package-card strong{font-size:28px;color:var(--primary)}.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.image-grid img{width:100%;height:340px;object-fit:cover;border-radius:18px;border:1px solid var(--border)}.gallery-full figure{margin:0}.gallery-full figcaption{padding:8px;color:var(--muted-text)}.booking-wrap{max-width:980px}.booking-form{background:var(--surface);padding:38px;border:1px solid var(--border);border-radius:26px;box-shadow:0 20px 60px color-mix(in srgb,var(--dark) 10%,transparent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-form label,.booking-form legend{font-weight:700;font-size:14px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid var(--border);color:var(--text);border-radius:12px;padding:13px 14px;background:var(--bg);margin-top:7px;font:inherit}.booking-form fieldset{border:1px solid var(--border);border-radius:16px;margin:22px 0;padding:20px}.checks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.checks label{background:var(--surface-alt);border-radius:11px;padding:12px}.checks input{width:auto;margin:0 6px}.full-label{display:block;margin:20px 0}.success-box{background:#e9f6ec;border:1px solid #c8e6cf;color:#214f2b;padding:38px;border-radius:20px;text-align:center}.alert{padding:14px 18px;border-radius:12px;margin-bottom:18px}.alert.error{background:#ffeaea;color:#8a2a2a}.back-link{display:inline-block;margin-bottom:20px;color:var(--primary)}.site-footer{background:var(--footer-bg);color:#eee2de;padding:70px 0 25px;border-top:1px solid var(--border)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.site-footer h3{font-size:38px;margin-top:0;color:#fff}.site-footer a{color:var(--secondary)}.copyright{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;margin-top:45px;color:#a99591}.whatsapp-float{position:fixed;z-index:20;bottom:22px;inset-inline-end:22px;background:#1faa59;color:#fff;padding:12px 18px;border-radius:999px;font-weight:700;box-shadow:0 10px 30px #0003}.contact-layout{display:grid;grid-template-columns:360px 1fr;gap:40px;align-items:start}.contact-card{background:var(--dark);color:#fff;padding:35px;border-radius:24px;position:sticky;top:110px;border:1px solid var(--border)}.contact-card h2{font-size:42px;margin:0 0 12px}.contact-card>div{border-top:1px solid #ffffff22;padding:16px 0}.contact-card strong,.contact-card a{display:block}.contact-card a{color:var(--secondary);margin-top:5px}
.theme-black_gold .site-header{box-shadow:0 8px 28px rgba(0,0,0,.35)}.theme-black_gold .brand span,.theme-black_gold .section-head>a,.theme-black_gold .card-body span{color:var(--secondary)}.theme-black_gold .intro-section{background:radial-gradient(circle at 80% 0,color-mix(in srgb,var(--primary) 9%,transparent),transparent 42%)}.theme-black_gold .service-card,.theme-black_gold .booking-form,.theme-black_gold .package-card{box-shadow:0 22px 60px rgba(0,0,0,.38)}.theme-black_gold .cta-box{background:linear-gradient(135deg,#18130b,#0c0c0c)}.theme-black_gold .page-hero{background:radial-gradient(circle at 20% 20%,#2a2112,transparent 45%),var(--bg)}.theme-black_gold input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:82px;inset-inline:20px;background:var(--surface);border:1px solid var(--border);padding:22px;border-radius:16px;flex-direction:column;box-shadow:0 15px 40px #0003}.main-nav.open{display:flex}.menu-toggle{display:block}.hero{height:650px}.card-grid,.masonry-grid,.package-grid{grid-template-columns:1fr 1fr}.promise-grid,.two-col,.service-layout{grid-template-columns:1fr}.stats{margin-top:10px}.booking-side{position:static}.footer-grid{grid-template-columns:1fr 1fr}.album-card:nth-child(2n){transform:none}}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr}.contact-card{position:static}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.section{padding:70px 0}.hero{height:670px}.hero-content{margin:0 auto}.hero-actions{flex-direction:column;align-items:flex-start}.card-grid,.masonry-grid,.image-grid,.package-grid,.form-grid,.checks,.stats{grid-template-columns:1fr}.card-image{height:300px}.album-card{min-height:360px}.cta-box{padding:32px;display:block}.cta-box .btn{margin-top:20px}.service-hero{height:540px}.service-hero h1{font-size:48px}.booking-form{padding:20px}.footer-grid{grid-template-columns:1fr}.section-head{align-items:start}.image-grid img{height:280px}}
/* Preset-specific visual personalities */
.theme-ivory_rose .service-card,.theme-ivory_rose .album-card,.theme-ivory_rose .booking-form{border-radius:28px}.theme-ivory_rose .hero-media{filter:saturate(.82) brightness(1.03)}
.theme-emerald_gold .btn{border-radius:8px}.theme-emerald_gold .service-card,.theme-emerald_gold .album-card,.theme-emerald_gold .package-card,.theme-emerald_gold .booking-form{border-radius:10px}.theme-emerald_gold .eyebrow{letter-spacing:.12em}.theme-emerald_gold .card-image{filter:saturate(.86)}
.theme-burgundy_gold .hero-content{margin-inline:auto;text-align:center}.theme-burgundy_gold .hero-content p{margin-inline:auto}.theme-burgundy_gold .hero-actions{justify-content:center}.theme-burgundy_gold .service-card{border-radius:40px 8px 40px 8px}.theme-burgundy_gold .album-card{border-radius:8px 40px 8px 40px}
.theme-pearl_blue .btn{border-radius:7px}.theme-pearl_blue .service-card,.theme-pearl_blue .album-card,.theme-pearl_blue .booking-form,.theme-pearl_blue .package-card{border-radius:7px}.theme-pearl_blue .card-image{filter:brightness(1.05) saturate(.72)}.theme-pearl_blue .site-header{box-shadow:0 8px 24px rgba(48,75,90,.08)}
.theme-desert_champagne .service-card,.theme-desert_champagne .album-card,.theme-desert_champagne .booking-form{border-radius:34px}.theme-desert_champagne .hero-media{filter:sepia(.12) saturate(.88)}.theme-desert_champagne .cta-box{border-radius:50px 12px 50px 12px}
.required-mark{color:#d6a94c;font-weight:900}.required-note{border:1px solid var(--border);background:var(--surface-alt);padding:13px 16px;border-radius:12px;margin-bottom:16px;color:var(--muted-text);font-size:14px}.booking-form small{display:inline-block;color:var(--muted-text);font-weight:400;margin-inline-start:5px}.booking-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:30px}.booking-progress button{border:1px solid var(--border);background:var(--bg);color:var(--muted-text);border-radius:14px;padding:12px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:start}.booking-progress b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--surface-alt);color:var(--muted-text)}.booking-progress button.active{border-color:var(--primary);color:var(--text)}.booking-progress button.active b,.booking-progress button.done b{background:var(--primary);color:#090909}.booking-progress button.done{border-color:color-mix(in srgb,var(--primary) 55%,var(--border))}.js .booking-step{display:none}.js .booking-step.active{display:block;animation:stepFade .25s ease}.step-heading{display:flex;gap:18px;align-items:flex-start;margin-bottom:24px}.step-heading>span{font-size:42px;color:var(--secondary);line-height:1}.step-heading h2{margin:0;font-size:30px}.step-heading p{margin:5px 0;color:var(--muted-text)}.step-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.btn-secondary{background:transparent;color:var(--text);border-color:var(--border)}.consent-box{display:flex!important;align-items:flex-start;gap:12px;background:var(--surface-alt);border:1px solid var(--border);padding:16px;border-radius:14px;margin-top:18px}.consent-box input{width:auto!important;margin-top:4px!important}.option-checks{grid-template-columns:repeat(2,1fr)}.faq-section{background:var(--surface)}.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.faq-list details{border:1px solid var(--border);border-radius:16px;background:var(--bg);padding:18px 20px}.faq-list summary{cursor:pointer;font-weight:700;font-size:18px}.faq-list p{color:var(--muted-text);margin:14px 0 0}.full{width:100%}@keyframes stepFade{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:700px){.booking-progress span{display:none}.booking-progress button{justify-content:center}.booking-form{padding:22px}.step-heading>span{font-size:30px}.step-heading h2{font-size:24px}.step-actions{flex-direction:column-reverse}.step-actions .btn{width:100%}.faq-list,.option-checks{grid-template-columns:1fr}}
.map-section iframe{display:block;width:100%;height:440px;border:0;filter:saturate(.8)}

.dynamic-question-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.question-field{display:block;margin:0}.question-field.full-width,.dynamic-question-grid fieldset.full-width{grid-column:1/-1}.dynamic-question-grid fieldset{margin:0}.radio-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.radio-options label{background:var(--surface-alt);padding:11px 14px;border-radius:10px}.radio-options input{width:auto;margin:0 0 0 7px}.checkbox-question{grid-column:1/-1;display:flex!important;flex-direction:row!important;gap:12px;align-items:flex-start;background:var(--surface-alt);border:1px solid var(--border);padding:16px;border-radius:14px}.checkbox-question input{width:auto!important;margin:3px 0 0!important}.alert ul{margin:8px 0 0;padding-inline-start:22px}@media(max-width:620px){.dynamic-question-grid{grid-template-columns:1fr}.question-field.full-width,.dynamic-question-grid fieldset.full-width{grid-column:auto}}

/* v1.8 women-only privacy positioning */
.experience-strip{background:var(--dark);color:#fff;border-top:1px solid color-mix(in srgb,var(--secondary) 32%,transparent);border-bottom:1px solid color-mix(in srgb,var(--secondary) 22%,transparent)}
.experience-strip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:color-mix(in srgb,var(--secondary) 25%,transparent)}
.experience-strip-grid>div{background:var(--dark);padding:25px 28px;text-align:center}
.experience-strip strong{display:block;color:var(--secondary);font-size:18px;margin-bottom:3px}
.experience-strip span{display:block;color:#d8d1c5;font-size:14px}
@media(max-width:760px){.experience-strip-grid{grid-template-columns:1fr}.experience-strip-grid>div{padding:18px 20px}.card-grid{grid-template-columns:1fr}}


/* v2.0 black & gold readability and booking polish */
.theme-black_gold{color:#F8F3E8}
.theme-black_gold .intro-section,
.theme-black_gold .services-section,
.theme-black_gold .gallery-preview,
.theme-black_gold .faq-section,
.theme-black_gold .cta-section{color:#F8F3E8}
.theme-black_gold .intro-section h1,.theme-black_gold .intro-section h2,.theme-black_gold .intro-section h3,
.theme-black_gold .services-section h1,.theme-black_gold .services-section h2,.theme-black_gold .services-section h3,
.theme-black_gold .gallery-preview h1,.theme-black_gold .gallery-preview h2,.theme-black_gold .gallery-preview h3,
.theme-black_gold .faq-section h1,.theme-black_gold .faq-section h2,.theme-black_gold .faq-section h3,
.theme-black_gold .cta-section h1,.theme-black_gold .cta-section h2,.theme-black_gold .cta-section h3{color:#FFF9EC}
.theme-black_gold .intro-section p,.theme-black_gold .services-section p,.theme-black_gold .gallery-preview p,
.theme-black_gold .faq-section p,.theme-black_gold .cta-section p,.theme-black_gold .page-hero p{color:#D8D0C2}
.theme-black_gold .card-body p,.theme-black_gold .rich-copy,.theme-black_gold .gallery-full figcaption{color:#D8D0C2}
.theme-black_gold .service-card,.theme-black_gold .faq-list details{background:#121212;color:#F8F3E8}
.theme-black_gold .cta-box{color:#F8F3E8}
.theme-black_gold .booking-form input::placeholder,.theme-black_gold .booking-form textarea::placeholder{color:#AFA796;opacity:1}
.form-submit-note{text-align:center;color:var(--muted-text);font-size:14px;margin:12px 0 0}


/* v2.0.5 hero CTA alignment and black-gold secondary button */
.hero-actions .btn{
  min-width:184px;
  min-height:56px;
  padding:14px 28px;
  line-height:1.2;
  font-size:16px;
  white-space:nowrap;
}
.hero-actions .hero-work-btn,
.theme-black_gold .hero-actions .hero-work-btn{
  color:#fff9ec !important;
  background:rgba(8,8,8,.54);
  border-color:rgba(214,169,76,.92);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 10px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.hero-actions .hero-work-btn:hover,
.theme-black_gold .hero-actions .hero-work-btn:hover{
  color:#0b0b0b !important;
  background:var(--secondary);
  border-color:var(--secondary);
  box-shadow:0 12px 30px color-mix(in srgb,var(--secondary) 32%,transparent);
}
@media(max-width:620px){
  .hero-actions{width:100%;align-items:stretch}
  .hero-actions .btn{width:min(100%,280px);min-width:0}
}


/* v2.0.11 — gallery album lightbox */
.gallery-album-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.gallery-album-toolbar>span{font-size:13px;color:var(--muted-text)}.gallery-lightbox-grid figure{position:relative}.gallery-lightbox-trigger{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:18px;overflow:hidden}.gallery-lightbox-trigger img{width:100%;transition:transform .35s ease}.gallery-lightbox-trigger:hover img{transform:scale(1.025)}.gallery-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:30px}.gallery-lightbox.open{display:flex}.lightbox-open{overflow:hidden}.gl-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:min(1200px,calc(100vw - 120px));max-height:calc(100vh - 60px)}.gl-stage img{max-width:100%;max-height:calc(100vh - 150px);object-fit:contain;border-radius:8px;box-shadow:0 20px 70px #0008}.gl-stage p{color:#fff;margin:12px 0 0;text-align:center;max-width:800px}.gl-stage span{color:#aaa;font-size:12px;margin-top:3px}.gl-close,.gl-nav{position:absolute;border:1px solid #ffffff33;background:#111a;color:#fff;cursor:pointer;display:grid;place-items:center}.gl-close{top:18px;right:18px;width:44px;height:44px;border-radius:50%;font-size:30px}.gl-nav{top:50%;transform:translateY(-50%);width:48px;height:70px;border-radius:12px;font-size:42px}.gl-prev{left:18px}.gl-next{right:18px}.album-card small{display:block;margin-top:4px;opacity:.72;font-size:12px}
@media(max-width:700px){.gallery-lightbox{padding:16px}.gl-stage{max-width:100%;}.gl-stage img{max-height:calc(100vh - 180px)}.gl-nav{width:40px;height:58px;font-size:34px}.gl-prev{left:8px}.gl-next{right:8px}.gl-close{top:10px;right:10px}.gallery-album-toolbar{align-items:flex-start}}
