:root{--black:#0b0b0b;--charcoal:#141414;--gold:#b88842;--gold2:#d1aa6a;--ivory:#f8f5ef;--paper:#fffdf9;--ink:#191714;--muted:#746f67;--line:rgba(25,23,20,.12);--radius:28px;--shell:1320px;--shadow:0 28px 90px rgba(0,0,0,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Noto Sans Arabic",sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}body[dir=ltr]{font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.site-shell{width:min(calc(100% - 64px),var(--shell));margin-inline:auto}.skip-link{position:fixed;inset-inline-start:1rem;top:-100px;z-index:9999;background:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;z-index:1000;top:0;left:0;right:0;color:#fff;transition:.35s ease;border-bottom:1px solid transparent}.site-header.is-scrolled{background:rgba(11,11,11,.94);backdrop-filter:blur(16px);border-color:rgba(255,255,255,.08)}.header-inner{height:92px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:42px;height:42px;border:1px solid rgba(209,170,106,.6);display:grid;place-items:center;border-radius:50%;color:var(--gold2);font-family:Georgia,serif;font-size:24px}.brand-copy{display:flex;flex-direction:column;line-height:1.12}.brand-copy strong{font-size:17px;font-family:Georgia,"Noto Serif Arabic",serif}.brand-copy small{font-size:8px;letter-spacing:.22em;margin-top:5px;color:rgba(255,255,255,.58)}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:22px;flex:1;font-size:13px}.desktop-nav a{position:relative;color:rgba(255,255,255,.82);transition:.2s}.desktop-nav a:after{content:"";position:absolute;inset-inline:0;bottom:-7px;height:1px;transform:scaleX(0);background:var(--gold2);transition:.2s}.desktop-nav a:hover{color:#fff}.desktop-nav a:hover:after{transform:scaleX(1)}.header-actions{display:flex;align-items:center;gap:10px}.lang-link{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;font-size:11px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid transparent;font-weight:700;font-size:13px;transition:.25s ease;cursor:pointer}.button-gold{background:linear-gradient(135deg,#c89a55,#e0c08a);color:#16120d;box-shadow:0 12px 30px rgba(184,136,66,.22)}.button-gold:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(184,136,66,.3)}.button-ghost{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.04)}.button-ghost:hover{background:#fff;color:#111}.button-dark{background:#111;color:#fff}.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px}.menu-toggle span{display:block;height:1px;background:#fff;margin:7px 0}.mobile-menu{position:fixed;z-index:990;inset:0;background:#0b0b0b;color:#fff;padding:120px 30px 40px}.mobile-menu-inner{display:flex;flex-direction:column;gap:20px;font-size:24px}.hero{position:relative;min-height:820px;background:#0b0b0b;color:#fff;overflow:hidden;display:flex;align-items:center;padding:150px 0 90px}.hero-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,rgba(184,136,66,.18),transparent 30%),linear-gradient(135deg,#0a0a0a 0%,#10100f 60%,#17130e 100%)}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:72px}.hero-copy{max-width:640px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#d8b474;letter-spacing:.16em;font-size:11px;font-weight:700;text-transform:uppercase}.eyebrow:before{content:"";width:34px;height:1px;background:currentColor}.eyebrow.dark{color:#9c6d2e}.hero h1,.section-heading h2,.experience-copy h2,.about-copy h2,.final-cta h2{font-family:Georgia,"Noto Serif Arabic",serif;font-weight:500;line-height:1.12;letter-spacing:-.02em}.hero h1{font-size:clamp(48px,5.7vw,88px);margin:24px 0 26px;max-width:820px}.hero-lead{font-size:18px;color:rgba(255,255,255,.67);max-width:570px;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:38px}.hero-visual{position:relative;min-height:600px}.hero-image-wrap{height:650px;margin:0;border-radius:260px 260px 28px 28px;overflow:hidden;box-shadow:0 50px 110px rgba(0,0,0,.4);position:relative}.hero-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.22),transparent 45%)}.hero-image-wrap img{width:100%;height:100%;object-fit:cover}.hero-art{height:650px;border:1px solid rgba(216,180,116,.3);border-radius:260px 260px 28px 28px;display:grid;place-items:center;position:relative;background:linear-gradient(145deg,#17130f,#0b0b0b);overflow:hidden}.hero-art:before,.hero-art:after{content:"";position:absolute;border:1px solid rgba(216,180,116,.15);border-radius:50%}.hero-art:before{width:480px;height:480px}.hero-art:after{width:310px;height:310px}.hero-art span{font-family:Georgia,serif;font-size:130px;color:rgba(216,180,116,.18)}.hero-art i{position:absolute;width:1px;height:45%;background:linear-gradient(transparent,#c99b56,transparent)}.hero-art b{position:absolute;bottom:42px;font-family:Georgia,"Noto Serif Arabic",serif;font-weight:500;color:#d8b474}.hero-seal{position:absolute;bottom:42px;inset-inline-start:-34px;width:126px;height:126px;border-radius:50%;background:#f6efe4;color:#111;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:var(--shadow);transform:rotate(-8deg)}.hero-seal span,.hero-seal small{font-size:8px;letter-spacing:.18em}.hero-seal strong{font-family:Georgia,serif;font-size:19px}.trust-strip{background:#111;color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.trust-grid{min-height:104px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.trust-item{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px;text-align:center;border-inline-end:1px solid rgba(255,255,255,.09)}.trust-item:last-child{border-inline-end:0}.trust-item span{width:5px;height:5px;border-radius:50%;background:var(--gold2)}.trust-item p{margin:0;color:rgba(255,255,255,.76);font-size:13px}.section{padding:126px 0}.services-section,.packages-section,.faq-section,.journal-section{background:var(--ivory)}.section-heading{max-width:730px;margin-bottom:58px}.section-heading h2{font-size:clamp(38px,4vw,62px);margin:16px 0 16px}.section-heading p{color:var(--muted);font-size:16px;max-width:620px;margin:0}.section-heading.light h2,.section-heading.light p{color:#fff}.section-heading.light p{color:rgba(255,255,255,.6)}.section-heading.compact{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:#fff;border:1px solid rgba(25,23,20,.08);border-radius:24px;overflow:hidden;transition:.35s ease}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:rgba(184,136,66,.28)}.media-frame{aspect-ratio:4/5;overflow:hidden;background:#e9e4da}.media-frame img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.service-card:hover .media-frame img{transform:scale(1.035)}.media-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(140deg,#17120d,#d1b17d);color:rgba(255,255,255,.38)}.media-placeholder span{font:72px Georgia,serif}.service-card-body{padding:28px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}.service-card h3{font:500 28px/1.3 Georgia,"Noto Serif Arabic",serif;margin:0 0 12px}.service-card p{color:var(--muted);font-size:14px;margin:0}.card-bottom{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:26px}.price-note{font-size:11px;color:var(--muted)}.price-note strong{display:block;font-size:14px;color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.text-link span{color:var(--gold);transition:.2s}.text-link:hover span{transform:translate(3px,-3px)}html[dir=rtl] .text-link:hover span{transform:translate(-3px,-3px)}.experience-section{background:#101010;color:#fff}.experience-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:86px;align-items:center}.experience-art{min-height:620px;border-radius:260px 260px 24px 24px;border:1px solid rgba(209,170,106,.28);display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,rgba(209,170,106,.11),transparent 58%);position:relative}.experience-monogram{font:110px Georgia,serif;color:rgba(209,170,106,.22)}.experience-caption{position:absolute;bottom:50px;text-align:center;font-size:10px;letter-spacing:.2em;color:#d8b474}.experience-caption span{color:rgba(255,255,255,.4)}.experience-copy h2{font-size:clamp(38px,4vw,62px);margin:18px 0 38px}.steps{display:flex;flex-direction:column}.step{display:grid;grid-template-columns:62px 1fr;gap:20px;padding:24px 0;border-top:1px solid rgba(255,255,255,.1)}.step-no{color:#d8b474;font:18px Georgia,serif}.step h3{font:500 22px Georgia,"Noto Serif Arabic",serif;margin:0 0 6px}.step p{margin:0;color:rgba(255,255,255,.56);font-size:14px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.package-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}.package-featured{background:#121212;color:#fff;transform:translateY(-16px)}.package-image{aspect-ratio:16/10;overflow:hidden}.package-image img{width:100%;height:100%;object-fit:cover}.package-content{padding:30px;display:flex;flex:1;flex-direction:column}.package-index{font:13px Georgia,serif;color:#b88842}.package-card h3{font:500 28px Georgia,"Noto Serif Arabic",serif;margin:10px 0}.package-card p{font-size:14px;color:var(--muted);margin:0}.package-featured p{color:rgba(255,255,255,.6)}.package-services{padding:22px 0;margin-top:18px;border-top:1px solid var(--line)}.package-featured .package-services{border-color:rgba(255,255,255,.1)}.package-services small{font-size:10px;letter-spacing:.1em;color:#9c6d2e}.package-services ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:5px;font-size:13px}.package-services li:before{content:"·";color:#b88842;margin-inline-end:8px}.package-price{margin:auto 0 22px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.package-price del{font-size:13px;color:#989188}.package-price strong{font:32px Georgia,serif}.package-price small{font:10px Arial,sans-serif}.package-featured .button-dark{background:#d6ac6f;color:#111}.empty-luxury{padding:48px;border:1px dashed rgba(25,23,20,.18);border-radius:22px;color:var(--muted);text-align:center}.brand-statement{min-height:520px;background:linear-gradient(115deg,rgba(9,9,9,.98),rgba(20,16,11,.94)),radial-gradient(circle at 20% 50%,#6a4b26,transparent 35%);display:grid;place-items:center;color:#fff;text-align:center;padding:80px 24px}.brand-statement-inner{max-width:800px}.brand-statement span{font-size:10px;letter-spacing:.28em;color:#d8b474}.brand-statement h2{font:500 clamp(52px,6vw,92px) Georgia,"Noto Serif Arabic",serif;margin:18px 0}.brand-statement p{max-width:560px;margin:auto;color:rgba(255,255,255,.58)}.areas-section{background:#101010;color:#fff}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.1);border-inline-start:1px solid rgba(255,255,255,.1)}.area-card{min-height:340px;padding:34px;border-inline-end:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column}.area-no{color:#d8b474;font:13px Georgia,serif}.area-card h3{font:500 34px Georgia,"Noto Serif Arabic",serif;margin:25px 0 10px}.area-card p{color:rgba(255,255,255,.48);font-size:13px}.area-card ul{list-style:none;padding:18px 0;margin:0;display:grid;gap:6px;font-size:13px;color:rgba(255,255,255,.74)}.area-card li:before{content:"—";color:#b88842;margin-inline-end:8px}.light-link{color:#fff;margin-top:auto}.dark-empty{color:rgba(255,255,255,.6);border-color:rgba(255,255,255,.14)}.about-section{background:#fff}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:84px;align-items:center}.about-media{min-height:620px;border-radius:24px;overflow:hidden;background:#17120d}.about-media img{width:100%;height:620px;object-fit:cover}.about-art{height:620px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#4b351d,transparent 48%),#10100f;color:#d8b474}.about-art span{font:120px Georgia,serif;color:rgba(216,180,116,.18)}.about-art em{font:normal 18px Georgia,"Noto Serif Arabic",serif}.about-copy h2{font-size:clamp(38px,4vw,62px);margin:18px 0}.about-copy p{color:var(--muted);font-size:16px;line-height:2;max-width:600px}.about-copy .text-link{margin-top:22px}.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;font:500 20px Georgia,"Noto Serif Arabic",serif}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary i{width:20px;height:20px;position:relative;flex:0 0 auto}.faq-item summary i:before,.faq-item summary i:after{content:"";position:absolute;top:50%;left:0;width:100%;height:1px;background:#9c6d2e;transition:.2s}.faq-item summary i:after{transform:rotate(90deg)}.faq-item[open] summary i:after{transform:rotate(0)}.faq-answer{padding:0 0 24px;color:var(--muted);font-size:14px;max-width:680px}.journal-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:1fr 1fr;gap:22px}.journal-card{background:#fff;border-radius:22px;overflow:hidden;display:grid;grid-template-columns:.48fr .52fr;min-height:260px}.journal-featured{grid-row:span 2;display:block}.journal-featured .journal-media{height:470px}.journal-media{min-height:220px;overflow:hidden}.journal-media img{width:100%;height:100%;object-fit:cover}.journal-copy{padding:26px}.journal-copy small{font-size:10px;color:#9c6d2e}.journal-copy h3{font:500 24px/1.35 Georgia,"Noto Serif Arabic",serif;margin:8px 0 10px}.journal-featured .journal-copy h3{font-size:34px}.journal-copy p{font-size:13px;color:var(--muted)}.final-cta{background:#0b0b0b;color:#fff;padding:125px 0}.final-cta-inner{text-align:center;max-width:900px}.final-cta h2{font-size:clamp(48px,5vw,78px);margin:18px auto}.final-cta p{color:rgba(255,255,255,.58);max-width:600px;margin:auto}.final-cta .hero-actions{justify-content:center}.site-footer{background:#090909;color:#fff;padding:76px 0 26px;border-top:1px solid rgba(255,255,255,.06)}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:70px;padding-bottom:52px}.footer-logo{margin-bottom:20px}.footer-brand p{max-width:430px;color:rgba(255,255,255,.46);font-size:13px}.footer-links{display:flex;flex-direction:column;gap:12px;font-size:13px;color:rgba(255,255,255,.67)}.footer-links a:hover{color:#d8b474}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;display:flex;justify-content:space-between;color:rgba(255,255,255,.38);font-size:11px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease;transition-delay:var(--delay,0ms)}.reveal.is-visible{opacity:1;transform:none}.reveal-delay{--delay:120ms}@media(max-width:1120px){.desktop-nav{display:none}.menu-toggle{display:block}.header-book{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:40px}.service-grid,.package-grid,.area-grid{grid-template-columns:repeat(2,1fr)}.experience-grid,.about-grid{gap:44px}.faq-grid{grid-template-columns:1fr}.journal-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.journal-featured{grid-column:span 2;grid-row:auto}}@media(max-width:760px){.site-shell{width:min(calc(100% - 36px),var(--shell))}.header-inner{height:74px}.brand-copy small{display:none}.hero{min-height:auto;padding:116px 0 62px}.hero-grid{grid-template-columns:1fr;gap:42px}.hero h1{font-size:46px}.hero-lead{font-size:16px}.hero-visual{min-height:460px}.hero-image-wrap,.hero-art{height:500px}.hero-seal{width:100px;height:100px;bottom:24px;inset-inline-start:-5px}.trust-grid{grid-template-columns:1fr 1fr}.trust-item{min-height:76px;border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:82px 0}.service-grid,.package-grid,.area-grid{grid-template-columns:1fr}.package-featured{transform:none}.experience-grid,.about-grid{grid-template-columns:1fr}.experience-art,.about-media,.about-media img,.about-art{min-height:480px;height:480px}.section-heading h2,.experience-copy h2,.about-copy h2{font-size:40px}.area-grid{border-inline-start:0}.journal-grid{display:block}.journal-card,.journal-featured{display:block;margin-bottom:18px}.journal-featured .journal-media,.journal-media{height:270px}.faq-item summary{font-size:18px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{gap:20px;flex-direction:column}.final-cta{padding:90px 0}.final-cta h2{font-size:45px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none}.service-card,.media-frame img,.button{transition:none}}

/* =========================================================
   Phase 3.1 — Luxury Visual Refinement
   ========================================================= */
.luxury-v31{
  --shell:1440px;
  --gold:#b48749;
  --gold2:#d8b77e;
  --paper:#fffdf9;
  --ivory:#f6f1e9;
  --ink:#171512;
  --muted:#746e65;
  --display-ar:"Noto Serif Arabic",serif;
  --body-ar:"Noto Sans Arabic",Tahoma,Arial,sans-serif;
  --display-en:"Cormorant Garamond",Georgia,serif;
  --body-en:"Manrope",Arial,sans-serif;
  font-family:var(--body-ar);
}
.luxury-v31[dir=ltr]{font-family:var(--body-en)}
.luxury-v31 .site-shell{width:min(calc(100% - 88px),var(--shell))}
.luxury-v31 .hero h1,
.luxury-v31 .section-heading h2,
.luxury-v31 .experience-copy h2,
.luxury-v31 .about-copy h2,
.luxury-v31 .final-cta h2,
.luxury-v31 .service-card h3,
.luxury-v31 .package-card h3,
.luxury-v31 .area-card h3,
.luxury-v31 .faq-item summary,
.luxury-v31 .journal-copy h3,
.luxury-v31 .brand-statement h2{font-family:var(--display-ar);font-weight:500}
.luxury-v31[dir=ltr] .hero h1,
.luxury-v31[dir=ltr] .section-heading h2,
.luxury-v31[dir=ltr] .experience-copy h2,
.luxury-v31[dir=ltr] .about-copy h2,
.luxury-v31[dir=ltr] .final-cta h2,
.luxury-v31[dir=ltr] .service-card h3,
.luxury-v31[dir=ltr] .package-card h3,
.luxury-v31[dir=ltr] .area-card h3,
.luxury-v31[dir=ltr] .faq-item summary,
.luxury-v31[dir=ltr] .journal-copy h3,
.luxury-v31[dir=ltr] .brand-statement h2{font-family:var(--display-en)}

/* Header: stronger brand presence */
.luxury-v31 .header-inner{height:104px;gap:34px}
.luxury-v31 .brand-mark{width:50px;height:50px;font-size:27px;border-color:rgba(216,183,126,.72);box-shadow:inset 0 0 0 7px rgba(216,183,126,.025)}
.luxury-v31 .brand-copy strong{font-family:var(--display-ar);font-size:20px;font-weight:500}
.luxury-v31 .brand-copy small{font-family:var(--body-en);font-size:8px;letter-spacing:.28em}
.luxury-v31 .desktop-nav{gap:26px;font-size:12px;letter-spacing:.01em}
.luxury-v31 .header-actions{gap:12px}
.luxury-v31 .header-book{min-height:44px;padding-inline:21px}
.luxury-v31 .site-header.is-scrolled{background:rgba(9,9,9,.9);box-shadow:0 12px 40px rgba(0,0,0,.16)}

/* Hero: editorial, asymmetrical, more cinematic */
.luxury-v31 .hero{min-height:940px;padding:174px 0 112px}
.luxury-v31 .hero-backdrop{
  background:
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/12.5% 100%,
    radial-gradient(circle at 72% 24%,rgba(184,135,73,.22),transparent 31%),
    radial-gradient(circle at 18% 78%,rgba(122,84,40,.10),transparent 26%),
    linear-gradient(135deg,#070707 0%,#0d0c0b 54%,#17120d 100%);
}
.luxury-v31 .hero-grid{grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:104px}
.luxury-v31 .hero-copy{max-width:720px;position:relative;z-index:2}
.luxury-v31 .eyebrow{font-family:var(--body-en);font-size:10px;letter-spacing:.24em;gap:14px}
.luxury-v31 .eyebrow:before{width:46px}
.luxury-v31 .hero h1{font-size:clamp(58px,5.65vw,94px);line-height:1.02;letter-spacing:-.035em;margin:28px 0 28px}
.luxury-v31[dir=rtl] .hero h1{font-size:clamp(54px,5.05vw,84px);line-height:1.22;letter-spacing:-.025em;max-width:690px}
.luxury-v31 .hero-lead{font-size:17px;line-height:2;max-width:590px;color:rgba(255,255,255,.64)}
.luxury-v31 .hero-actions{margin-top:42px;gap:14px}
.luxury-v31 .button{min-height:52px;padding-inline:28px;font-size:12px;letter-spacing:.01em}
.luxury-v31 .button-gold{background:linear-gradient(135deg,#bc8d4d 0%,#e1c28d 54%,#c99c5a 100%);box-shadow:0 18px 42px rgba(184,136,66,.2)}
.luxury-v31 .hero-visual{min-height:680px;isolation:isolate}
.luxury-v31 .hero-image-wrap,
.luxury-v31 .hero-art{height:720px;border-radius:320px 320px 24px 24px}
.luxury-v31 .hero-image-wrap{box-shadow:0 70px 140px rgba(0,0,0,.52);outline:1px solid rgba(216,183,126,.18);outline-offset:10px}
.luxury-v31 .hero-image-wrap:after{background:linear-gradient(to top,rgba(6,6,6,.42),transparent 44%),linear-gradient(110deg,rgba(0,0,0,.14),transparent 45%)}
.luxury-v31 .hero-art:before{width:540px;height:540px;border-color:rgba(216,183,126,.12)}
.luxury-v31 .hero-art:after{width:360px;height:360px;border-color:rgba(216,183,126,.16)}
.luxury-v31 .hero-art span{font-size:142px;color:rgba(216,183,126,.16)}
.luxury-v31 .hero-seal{width:136px;height:136px;bottom:58px;inset-inline-start:-50px;background:#fbf5ea;border:1px solid rgba(184,136,66,.22);box-shadow:0 32px 70px rgba(0,0,0,.28)}
.luxury-v31 .hero-seal:after{content:"";position:absolute;inset:8px;border:1px solid rgba(184,136,66,.22);border-radius:50%}

/* Trust strip */
.luxury-v31 .trust-grid{min-height:116px}
.luxury-v31 .trust-item{padding:22px 28px}
.luxury-v31 .trust-item p{font-size:12px;letter-spacing:.015em}

/* Editorial section rhythm */
.luxury-v31 .section{padding:154px 0}
.luxury-v31 .section-heading{max-width:850px;margin-bottom:72px;position:relative}
.luxury-v31 .section-heading:after{content:"";position:absolute;inset-inline-start:0;bottom:-28px;width:88px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.luxury-v31[dir=rtl] .section-heading:after{background:linear-gradient(270deg,var(--gold),transparent)}
.luxury-v31 .section-heading h2{font-size:clamp(48px,4.5vw,72px);line-height:1.12;letter-spacing:-.03em;margin:20px 0 18px}
.luxury-v31[dir=rtl] .section-heading h2{line-height:1.35;letter-spacing:-.02em}
.luxury-v31 .section-heading p{font-size:15px;line-height:2;max-width:690px}

/* Services: taller image, lighter copy, sharper luxury */
.luxury-v31 .service-grid{gap:28px}
.luxury-v31 .service-card{border-radius:20px;border-color:rgba(25,23,20,.075);box-shadow:0 1px 0 rgba(255,255,255,.8) inset;position:relative}
.luxury-v31 .service-card:after{content:"";position:absolute;inset:0;border:1px solid transparent;border-radius:20px;pointer-events:none;transition:.35s ease}
.luxury-v31 .service-card:hover:after{border-color:rgba(184,136,66,.36);inset:7px}
.luxury-v31 .media-frame{aspect-ratio:4/5.15}
.luxury-v31 .service-card-body{padding:30px 32px 32px;min-height:224px}
.luxury-v31 .service-card h3{font-size:31px;line-height:1.25;margin-bottom:10px}
.luxury-v31[dir=rtl] .service-card h3{font-size:27px;line-height:1.5}
.luxury-v31 .service-card p{font-size:13px;line-height:1.9}
.luxury-v31 .card-bottom{padding-top:22px;border-top:1px solid rgba(25,23,20,.08)}

/* Experience: stronger focal point */
.luxury-v31 .experience-grid{grid-template-columns:.82fr 1.18fr;gap:112px}
.luxury-v31 .experience-art{min-height:700px;border-radius:310px 310px 22px 22px;background:radial-gradient(circle at 50% 48%,rgba(209,170,106,.16),transparent 42%),#0d0d0d;box-shadow:inset 0 0 90px rgba(0,0,0,.55)}
.luxury-v31 .experience-art:before,.luxury-v31 .experience-art:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(216,183,126,.10)}
.luxury-v31 .experience-art:before{width:72%;aspect-ratio:1}
.luxury-v31 .experience-art:after{width:46%;aspect-ratio:1}
.luxury-v31 .experience-monogram{font-size:126px}
.luxury-v31 .experience-copy h2{font-size:clamp(48px,4.35vw,70px);line-height:1.1}
.luxury-v31[dir=rtl] .experience-copy h2{line-height:1.35}
.luxury-v31 .step{grid-template-columns:74px 1fr;padding:28px 0}
.luxury-v31 .step-no{font-size:15px;letter-spacing:.08em}
.luxury-v31 .step h3{font-size:23px}
.luxury-v31[dir=rtl] .step h3{font-size:21px;line-height:1.65}

/* Package cards */
.luxury-v31 .package-grid{gap:28px}
.luxury-v31 .package-card{border-radius:20px}
.luxury-v31 .package-image{aspect-ratio:16/9}
.luxury-v31 .package-content{padding:36px}
.luxury-v31 .package-card h3{font-size:32px}
.luxury-v31 .package-featured{transform:translateY(-22px);box-shadow:0 42px 80px rgba(0,0,0,.14)}

/* Brand statement */
.luxury-v31 .brand-statement{min-height:610px;position:relative;overflow:hidden}
.luxury-v31 .brand-statement:before{content:"MA";position:absolute;font:260px var(--display-en);color:rgba(216,183,126,.028);inset:auto 0 22px;text-align:center;letter-spacing:.12em}
.luxury-v31 .brand-statement-inner{position:relative;z-index:1}
.luxury-v31 .brand-statement h2{font-size:clamp(64px,7vw,108px);letter-spacing:-.04em}
.luxury-v31[dir=rtl] .brand-statement h2{font-size:clamp(52px,6vw,88px);line-height:1.35}

/* Areas */
.luxury-v31 .area-grid{grid-template-columns:repeat(3,1fr)}
.luxury-v31 .area-card{min-height:390px;padding:42px}
.luxury-v31 .area-card h3{font-size:40px;margin-top:32px}
.luxury-v31 .area-card:hover{background:linear-gradient(145deg,rgba(216,183,126,.07),rgba(255,255,255,.01))}

/* About: editorial offset */
.luxury-v31 .about-grid{grid-template-columns:1.08fr .92fr;gap:112px}
.luxury-v31 .about-media{min-height:690px;border-radius:14px 160px 14px 14px;box-shadow:0 40px 100px rgba(28,20,12,.13)}
.luxury-v31[dir=rtl] .about-media{border-radius:160px 14px 14px 14px}
.luxury-v31 .about-media img,.luxury-v31 .about-art{height:690px}
.luxury-v31 .about-copy{max-width:650px}
.luxury-v31 .about-copy h2{font-size:clamp(48px,4.25vw,68px);line-height:1.12}
.luxury-v31[dir=rtl] .about-copy h2{line-height:1.45}
.luxury-v31 .about-copy p{font-size:15px;line-height:2.15}

/* FAQ */
.luxury-v31 .faq-grid{grid-template-columns:.64fr 1.36fr;gap:118px}
.luxury-v31 .faq-item summary{font-size:23px;padding:29px 0}
.luxury-v31[dir=rtl] .faq-item summary{font-size:20px;line-height:1.7}

/* Journal */
.luxury-v31 .journal-grid{gap:28px}
.luxury-v31 .journal-card{border-radius:18px}
.luxury-v31 .journal-featured .journal-media{height:520px}
.luxury-v31 .journal-copy{padding:32px}
.luxury-v31 .journal-featured .journal-copy h3{font-size:40px}

/* CTA & footer */
.luxury-v31 .final-cta{padding:154px 0;background:radial-gradient(circle at 50% 0,rgba(184,136,66,.12),transparent 34%),#090909}
.luxury-v31 .final-cta h2{font-size:clamp(58px,5.7vw,88px);line-height:1.05}
.luxury-v31[dir=rtl] .final-cta h2{font-size:clamp(48px,5vw,72px);line-height:1.45}
.luxury-v31 .site-footer{padding:96px 0 30px}
.luxury-v31 .footer-grid{grid-template-columns:1.65fr .7fr .7fr;gap:90px;padding-bottom:68px}
.luxury-v31 .footer-brand p{font-size:13px;line-height:2;max-width:470px}

/* Reveal — softer and more premium */
.luxury-v31 .reveal{transform:translateY(28px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}

@media(max-width:1180px){
  .luxury-v31 .site-shell{width:min(calc(100% - 56px),var(--shell))}
  .luxury-v31 .hero-grid{gap:54px}
  .luxury-v31 .hero-image-wrap,.luxury-v31 .hero-art{height:650px}
  .luxury-v31 .experience-grid,.luxury-v31 .about-grid{gap:58px}
}

@media(max-width:760px){
  .luxury-v31 .site-shell{width:min(calc(100% - 32px),var(--shell))}
  .luxury-v31 .header-inner{height:78px}
  .luxury-v31 .brand-mark{width:42px;height:42px;font-size:23px}
  .luxury-v31 .brand-copy strong{font-size:17px}
  .luxury-v31 .hero{padding:124px 0 68px}
  .luxury-v31 .hero-grid{gap:36px}
  .luxury-v31 .hero-copy{max-width:none}
  .luxury-v31 .hero h1{font-size:47px;line-height:1.03;margin:22px 0 20px}
  .luxury-v31[dir=rtl] .hero h1{font-size:43px;line-height:1.4;letter-spacing:-.018em}
  .luxury-v31 .hero-lead{font-size:14px;line-height:1.9}
  .luxury-v31 .hero-actions{margin-top:30px}
  .luxury-v31 .button{min-height:48px;padding-inline:22px}
  .luxury-v31 .hero-visual{min-height:455px}
  .luxury-v31 .hero-image-wrap,.luxury-v31 .hero-art{height:475px;border-radius:220px 220px 20px 20px;outline-offset:5px}
  .luxury-v31 .hero-art:before{width:390px;height:390px}
  .luxury-v31 .hero-art:after{width:245px;height:245px}
  .luxury-v31 .hero-art span{font-size:104px}
  .luxury-v31 .hero-seal{width:92px;height:92px;inset-inline-start:2px;bottom:22px}
  .luxury-v31 .trust-grid{grid-template-columns:1fr 1fr}
  .luxury-v31 .trust-item{padding:15px 10px;min-height:72px}
  .luxury-v31 .section{padding:92px 0}
  .luxury-v31 .section-heading{margin-bottom:54px}
  .luxury-v31 .section-heading:after{bottom:-20px;width:64px}
  .luxury-v31 .section-heading h2{font-size:40px;line-height:1.15}
  .luxury-v31[dir=rtl] .section-heading h2{font-size:36px;line-height:1.5}
  .luxury-v31 .section-heading p{font-size:13px;line-height:1.9}
  .luxury-v31 .service-grid{gap:18px}
  .luxury-v31 .media-frame{aspect-ratio:4/4.65}
  .luxury-v31 .service-card-body{min-height:190px;padding:24px}
  .luxury-v31 .service-card h3{font-size:27px}
  .luxury-v31[dir=rtl] .service-card h3{font-size:24px;line-height:1.55}
  .luxury-v31 .experience-grid{display:flex;flex-direction:column;gap:54px}
  .luxury-v31 .experience-art{width:100%;min-height:460px;border-radius:220px 220px 20px 20px;order:0}
  .luxury-v31 .experience-copy{order:1}
  .luxury-v31 .experience-copy h2{font-size:39px}
  .luxury-v31[dir=rtl] .experience-copy h2{font-size:35px;line-height:1.5}
  .luxury-v31 .step{grid-template-columns:48px 1fr;padding:22px 0}
  .luxury-v31 .brand-statement{min-height:420px;padding:70px 22px}
  .luxury-v31 .brand-statement h2{font-size:56px}
  .luxury-v31[dir=rtl] .brand-statement h2{font-size:43px}
  .luxury-v31 .about-grid{gap:52px}
  .luxury-v31 .about-media,.luxury-v31 .about-media img,.luxury-v31 .about-art{min-height:430px;height:430px}
  .luxury-v31 .about-media{border-radius:12px 100px 12px 12px}
  .luxury-v31[dir=rtl] .about-media{border-radius:100px 12px 12px 12px}
  .luxury-v31 .about-copy h2{font-size:38px}
  .luxury-v31[dir=rtl] .about-copy h2{font-size:34px}
  .luxury-v31 .faq-grid{gap:42px}
  .luxury-v31 .faq-item summary{font-size:18px;padding:23px 0}
  .luxury-v31 .final-cta{padding:104px 0}
  .luxury-v31 .final-cta h2{font-size:44px}
  .luxury-v31[dir=rtl] .final-cta h2{font-size:39px}
  .luxury-v31 .site-footer{padding-top:78px}
}

/* =========================================================
   Phase 3.2 — Mobile & Arabic Luxury Polish
   ========================================================= */
.luxury-v32{
  --display-ar:"Noto Serif Arabic",serif;
  --body-ar:"Noto Sans Arabic",Tahoma,Arial,sans-serif;
}

/* Header refinement */
.luxury-v32 .brand{gap:14px}
.luxury-v32 .brand-mark{width:56px;height:56px;font-size:30px}
.luxury-v32 .brand-copy strong{font-size:22px}
.luxury-v32 .brand-copy small{font-size:8.5px}
.luxury-v32 .desktop-nav{gap:30px}

/* Arabic typographic tuning */
.luxury-v32[dir=rtl] .hero-copy{max-width:760px}
.luxury-v32[dir=rtl] .hero h1{font-size:clamp(52px,4.8vw,80px);line-height:1.28;letter-spacing:-.015em;max-width:720px}
.luxury-v32[dir=rtl] .hero-lead{max-width:620px;font-size:16px;line-height:2.05}
.luxury-v32[dir=rtl] .section-heading h2{line-height:1.42;letter-spacing:-.01em}
.luxury-v32[dir=rtl] .experience-copy h2,
.luxury-v32[dir=rtl] .about-copy h2,
.luxury-v32[dir=rtl] .final-cta h2{letter-spacing:-.01em}

/* Service cards — less generic, more editorial */
.luxury-v32 .service-card{border-radius:18px;overflow:hidden}
.luxury-v32 .media-frame{aspect-ratio:4/5.35}
.luxury-v32 .service-card-body{padding:28px 30px 30px;min-height:200px}
.luxury-v32 .service-card h3{font-size:32px;margin-bottom:8px}
.luxury-v32[dir=rtl] .service-card h3{font-size:28px;line-height:1.45}
.luxury-v32 .service-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:48px}
.luxury-v32 .card-bottom{margin-top:18px;padding-top:18px}
.luxury-v32 .text-link{font-size:12px;letter-spacing:.01em}

/* About — richer editorial feel */
.luxury-v32 .about-grid{align-items:center}
.luxury-v32 .about-copy{padding-inline:16px}
.luxury-v32 .about-copy .text-link{margin-top:12px}

/* Footer upgrade */
.luxury-v32 .site-footer{padding:112px 0 34px;background:#080808}
.luxury-v32 .footer-grid-v32{grid-template-columns:1.45fr .72fr .72fr .72fr;gap:64px;padding-bottom:74px}
.luxury-v32 .footer-logo .brand-mark{width:52px;height:52px}
.luxury-v32 .footer-brand p{max-width:430px;color:rgba(255,255,255,.52);margin-top:24px}
.luxury-v32 .footer-column>strong{display:block;color:#d8b77e;font-family:var(--body-en);font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px}
.luxury-v32 .footer-links{gap:12px}
.luxury-v32 .footer-links a{color:rgba(255,255,255,.63);font-size:12px;transition:.2s ease}
.luxury-v32 .footer-links a:hover{color:#fff;transform:translateX(2px)}
.luxury-v32[dir=rtl] .footer-links a:hover{transform:translateX(-2px)}
.luxury-v32 .footer-social{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.luxury-v32 .footer-social a{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 13px;font-size:10px;color:rgba(255,255,255,.72)}
.luxury-v32 .footer-bottom{padding-top:26px;border-top:1px solid rgba(255,255,255,.08)}
.luxury-v32 .footer-legal{display:flex;gap:18px;align-items:center}
.luxury-v32 .footer-legal a{color:rgba(255,255,255,.48);font-size:10px}

/* Mid-size refinement */
@media(max-width:980px){
  .luxury-v32 .header-book{display:none}
  .luxury-v32 .brand-mark{width:48px;height:48px;font-size:26px}
  .luxury-v32 .brand-copy strong{font-size:19px}
  .luxury-v32 .footer-grid-v32{grid-template-columns:1fr 1fr;gap:44px}
}

/* Mobile — decisive re-layout */
@media(max-width:760px){
  .luxury-v32 .site-shell{width:min(calc(100% - 36px),var(--shell))}
  .luxury-v32 .header-inner{height:82px;gap:12px}
  .luxury-v32 .brand-mark{width:46px;height:46px;font-size:25px}
  .luxury-v32 .brand-copy strong{font-size:18px}
  .luxury-v32 .brand-copy small{font-size:7.5px;letter-spacing:.2em}
  .luxury-v32 .lang-link{width:34px;height:34px}
  .luxury-v32 .menu-toggle{width:40px;height:40px}

  .luxury-v32 .hero{min-height:auto;padding:116px 0 58px;align-items:flex-start}
  .luxury-v32 .hero-grid{display:flex;flex-direction:column;gap:34px;align-items:stretch}
  .luxury-v32 .hero-copy{order:0;width:100%;max-width:none}
  .luxury-v32 .hero-visual{order:1;width:100%;min-height:0;margin-top:2px}
  .luxury-v32 .eyebrow{font-size:9px;letter-spacing:.19em;gap:9px}
  .luxury-v32 .eyebrow:before{width:28px}
  .luxury-v32 .hero h1{font-size:42px;line-height:1.08;margin:18px 0 16px;max-width:100%}
  .luxury-v32[dir=rtl] .hero h1{font-size:36px;line-height:1.48;letter-spacing:-.008em;max-width:100%;text-wrap:balance}
  .luxury-v32 .hero-lead{font-size:13px;line-height:1.85;max-width:100%}
  .luxury-v32[dir=rtl] .hero-lead{font-size:13px;line-height:2;max-width:100%}
  .luxury-v32 .hero-actions{margin-top:24px;gap:10px}
  .luxury-v32 .button{min-height:46px;padding-inline:19px;font-size:11px}
  .luxury-v32 .hero-image-wrap,.luxury-v32 .hero-art{height:430px;border-radius:210px 210px 18px 18px;outline-offset:4px}
  .luxury-v32 .hero-art:before{width:340px;height:340px}
  .luxury-v32 .hero-art:after{width:220px;height:220px}
  .luxury-v32 .hero-art span{font-size:88px}
  .luxury-v32 .hero-seal{width:82px;height:82px;inset-inline-start:8px;bottom:18px}
  .luxury-v32 .hero-seal strong{font-size:14px}
  .luxury-v32 .hero-seal span,.luxury-v32 .hero-seal small{font-size:6px}

  .luxury-v32 .trust-grid{grid-template-columns:1fr 1fr}
  .luxury-v32 .trust-item{min-height:68px;padding:13px 8px}
  .luxury-v32 .trust-item p{font-size:10px;line-height:1.55}

  .luxury-v32 .section{padding:82px 0}
  .luxury-v32 .section-heading{margin-bottom:46px}
  .luxury-v32 .section-heading h2{font-size:36px;line-height:1.18;margin-top:16px}
  .luxury-v32[dir=rtl] .section-heading h2{font-size:32px;line-height:1.52}
  .luxury-v32 .section-heading p{font-size:12.5px;line-height:1.85}

  .luxury-v32 .service-grid{gap:14px}
  .luxury-v32 .media-frame{aspect-ratio:4/4.45}
  .luxury-v32 .service-card-body{padding:22px 22px 24px;min-height:168px}
  .luxury-v32 .service-card h3{font-size:25px}
  .luxury-v32[dir=rtl] .service-card h3{font-size:22px;line-height:1.5}
  .luxury-v32 .service-card p{font-size:12px;line-height:1.75;min-height:42px}

  .luxury-v32 .experience-grid{gap:42px}
  .luxury-v32 .experience-art{min-height:390px;border-radius:190px 190px 18px 18px}
  .luxury-v32 .experience-monogram{font-size:92px}
  .luxury-v32 .experience-copy h2{font-size:34px;line-height:1.12}
  .luxury-v32[dir=rtl] .experience-copy h2{font-size:31px;line-height:1.55}
  .luxury-v32 .step{grid-template-columns:42px 1fr;padding:19px 0}
  .luxury-v32 .step h3{font-size:18px}
  .luxury-v32[dir=rtl] .step h3{font-size:17px;line-height:1.65}
  .luxury-v32 .step p{font-size:12px;line-height:1.75}

  .luxury-v32 .brand-statement{min-height:340px;padding:62px 20px}
  .luxury-v32 .brand-statement h2{font-size:48px}
  .luxury-v32[dir=rtl] .brand-statement h2{font-size:37px;line-height:1.5}

  .luxury-v32 .about-grid{display:flex;flex-direction:column;gap:34px}
  .luxury-v32 .about-media{order:0;width:100%;border-radius:12px 88px 12px 12px}
  .luxury-v32[dir=rtl] .about-media{border-radius:88px 12px 12px 12px}
  .luxury-v32 .about-media,.luxury-v32 .about-media img,.luxury-v32 .about-art{height:360px;min-height:360px}
  .luxury-v32 .about-copy{order:1;padding-inline:0;max-width:none}
  .luxury-v32 .about-copy h2{font-size:32px;line-height:1.2}
  .luxury-v32[dir=rtl] .about-copy h2{font-size:29px;line-height:1.58}
  .luxury-v32 .about-copy p{font-size:12.5px;line-height:2}

  .luxury-v32 .faq-grid{gap:28px}
  .luxury-v32 .faq-item summary{font-size:17px;padding:20px 0}
  .luxury-v32[dir=rtl] .faq-item summary{font-size:16px;line-height:1.75}

  .luxury-v32 .final-cta{padding:88px 0}
  .luxury-v32 .final-cta h2{font-size:39px;line-height:1.1}
  .luxury-v32[dir=rtl] .final-cta h2{font-size:34px;line-height:1.55}

  .luxury-v32 .site-footer{padding:74px 0 28px}
  .luxury-v32 .footer-grid-v32{grid-template-columns:1fr 1fr;gap:34px 24px;padding-bottom:48px}
  .luxury-v32 .footer-brand{grid-column:1/-1}
  .luxury-v32 .footer-brand p{font-size:12px;line-height:1.9;max-width:100%}
  .luxury-v32 .footer-column>strong{margin-bottom:16px}
  .luxury-v32 .footer-links{gap:9px}
  .luxury-v32 .footer-links a{font-size:11px}
  .luxury-v32 .footer-bottom{align-items:flex-start;gap:14px}
  .luxury-v32 .footer-legal{gap:12px;flex-wrap:wrap}
}

@media(max-width:420px){
  .luxury-v32 .hero h1{font-size:38px}
  .luxury-v32[dir=rtl] .hero h1{font-size:33px;line-height:1.5}
  .luxury-v32 .hero-image-wrap,.luxury-v32 .hero-art{height:395px}
  .luxury-v32 .service-card-body{min-height:158px}
  .luxury-v32 .footer-grid-v32{grid-template-columns:1fr}
  .luxury-v32 .footer-brand{grid-column:auto}
}

/* Phase 3.3 Homepage Manager */
.homepage-sections{display:flex;flex-direction:column}
.brand-logo-image{display:block;max-width:150px;max-height:58px;width:auto;height:auto;object-fit:contain}
.footer-logo .brand-logo-image{max-width:170px;max-height:68px}
.section-managed-image{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}

/* =========================================================
   Phase 3.4 — Services Frontend
   ========================================================= */
.luxury-internal{background:var(--paper)}
.luxury-internal .site-header.is-scrolled{position:fixed}
.luxury-internal .desktop-nav a.is-active{color:#fff}
.luxury-internal .desktop-nav a.is-active:after{transform:scaleX(1)}
.internal-hero{background:radial-gradient(circle at 78% 18%,rgba(184,136,66,.16),transparent 30%),#0b0b0b;color:#fff;padding:190px 0 118px;overflow:hidden}
.internal-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center}
.internal-hero h1{font:500 clamp(58px,6vw,96px)/1.05 Georgia,"Noto Serif Arabic",serif;letter-spacing:-.035em;margin:24px 0;max-width:900px}
[dir=rtl] .internal-hero h1{font-size:clamp(50px,5.3vw,82px);line-height:1.42;letter-spacing:-.015em}
.internal-hero p{max-width:660px;color:rgba(255,255,255,.64);font-size:17px;line-height:1.9}
.internal-monogram{height:430px;border:1px solid rgba(209,170,106,.25);border-radius:220px 220px 20px 20px;display:grid;place-items:center;position:relative;background:radial-gradient(circle,rgba(209,170,106,.11),transparent 55%)}
.internal-monogram:before,.internal-monogram:after{content:"";position:absolute;border:1px solid rgba(209,170,106,.11);border-radius:50%;width:65%;aspect-ratio:1}.internal-monogram:after{width:42%}.internal-monogram span{font:100px Georgia,serif;color:rgba(209,170,106,.23)}.internal-monogram small{position:absolute;bottom:40px;color:#d8b474;letter-spacing:.18em;font-size:9px}
.services-index-section{background:var(--ivory)}
.service-grid-index .service-card-link{display:block;height:100%}
.card-kicker{display:block;color:var(--gold);font:12px Georgia,serif;letter-spacing:.14em;margin-bottom:10px}
.empty-luxury-state{padding:70px;border:1px solid var(--line);text-align:center;color:var(--muted);border-radius:20px}
.service-editorial-band{background:#111;color:#fff;padding:145px 0;text-align:center;position:relative;overflow:hidden}.service-editorial-band:before{content:"MA";position:absolute;inset:10px 0 auto;font:250px Georgia,serif;color:rgba(209,170,106,.025);letter-spacing:.14em}.service-editorial-band .site-shell{position:relative}.service-editorial-band h2{font:500 clamp(54px,6vw,92px)/1.08 Georgia,"Noto Serif Arabic",serif;margin:24px auto 18px;max-width:950px}.service-editorial-band p{max-width:650px;margin:0 auto;color:rgba(255,255,255,.6)}
.service-detail-hero{background:#0b0b0b;color:#fff;padding:165px 0 90px;min-height:850px;display:flex;align-items:center}.service-detail-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px;align-items:center}.breadcrumb-link{display:inline-block;color:rgba(255,255,255,.55);font-size:12px;margin-bottom:34px}.service-detail-copy h1{font:500 clamp(60px,6vw,98px)/1.02 Georgia,"Noto Serif Arabic",serif;letter-spacing:-.04em;margin:25px 0 22px}.service-detail-copy p{max-width:620px;color:rgba(255,255,255,.68);font-size:17px;line-height:1.9}.service-detail-actions{display:flex;align-items:center;gap:26px;margin-top:40px;flex-wrap:wrap}.service-price-block{padding-inline-end:28px;border-inline-end:1px solid rgba(255,255,255,.14)}.service-price-block span{display:block;color:rgba(255,255,255,.45);font-size:10px;text-transform:uppercase;letter-spacing:.15em}.service-price-block strong{display:block;font:30px Georgia,serif;color:#d9b879;margin-top:5px}.service-detail-media{min-height:650px;border-radius:300px 300px 26px 26px;overflow:hidden;border:1px solid rgba(209,170,106,.25);box-shadow:0 50px 120px rgba(0,0,0,.35)}.service-detail-media img{width:100%;height:650px;object-fit:cover}.service-detail-placeholder{height:650px;display:grid;place-items:center;background:radial-gradient(circle,rgba(209,170,106,.15),transparent 45%),#111}.service-detail-placeholder span{font:130px Georgia,serif;color:rgba(209,170,106,.2)}
[dir=rtl] .service-detail-copy h1{font-size:clamp(50px,5.2vw,80px);line-height:1.42;letter-spacing:-.012em}
.service-rich-section{background:#fff}.service-rich-grid{display:grid;grid-template-columns:.42fr 1fr;gap:110px;align-items:start}.service-rich-grid aside{position:sticky;top:130px}.service-rich-grid aside h2{font:500 clamp(38px,3.8vw,58px)/1.18 Georgia,"Noto Serif Arabic",serif;margin:18px 0}.cms-rich-content{font-size:17px;line-height:2;color:#3c3934;max-width:850px}.cms-rich-content h2,.cms-rich-content h3,.cms-rich-content h4{font-family:Georgia,"Noto Serif Arabic",serif;font-weight:500;line-height:1.35;color:var(--ink);margin:1.8em 0 .7em}.cms-rich-content h2{font-size:38px}.cms-rich-content h3{font-size:30px}.cms-rich-content h4{font-size:24px}.cms-rich-content p{margin:0 0 1.25em}.cms-rich-content img{border-radius:18px;margin:34px 0;max-width:100%;height:auto}.cms-rich-content a{color:#9a6c2e;text-decoration:underline;text-underline-offset:4px}.cms-rich-content ul,.cms-rich-content ol{padding-inline-start:1.4em;margin:1.2em 0}.cms-rich-content blockquote{margin:38px 0;padding:24px 30px;border-inline-start:2px solid var(--gold);background:var(--ivory);font:24px Georgia,"Noto Serif Arabic",serif}
.service-related-packages .package-card{transform:none}.service-related-packages .package-content{min-height:240px}.package-price{display:flex;gap:12px;align-items:baseline;margin-top:auto;padding-top:20px}.package-price strong{font:26px Georgia,serif}.package-price del{color:var(--muted);font-size:13px}
.service-areas-section{background:#0e0e0e;color:#fff}.service-area-links{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.service-area-link{min-height:170px;border:1px solid rgba(255,255,255,.1);padding:30px 34px;display:grid;grid-template-columns:1fr auto;align-content:center;gap:7px;border-radius:16px;transition:.3s}.service-area-link span{grid-column:1;color:#d8b474;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.service-area-link strong{font:500 25px Georgia,"Noto Serif Arabic",serif}.service-area-link i{grid-column:2;grid-row:1/3;align-self:center;color:#d8b474;font-style:normal}.service-area-link:hover{background:rgba(216,180,116,.06);transform:translateY(-3px);border-color:rgba(216,180,116,.25)}
@media(max-width:900px){.internal-hero-grid,.service-detail-grid,.service-rich-grid{grid-template-columns:1fr;gap:52px}.internal-hero{padding:145px 0 80px}.internal-monogram{height:390px;max-width:520px}.service-detail-hero{padding:135px 0 70px}.service-detail-media,.service-detail-media img,.service-detail-placeholder{height:520px;min-height:520px}.service-detail-media{order:-1;border-radius:220px 220px 20px 20px}.service-rich-grid aside{position:static}.service-area-links{grid-template-columns:1fr}}
@media(max-width:760px){.internal-hero h1{font-size:44px;line-height:1.08}[dir=rtl] .internal-hero h1{font-size:38px;line-height:1.5}.internal-hero p{font-size:14px}.internal-monogram{height:330px;border-radius:180px 180px 18px 18px}.internal-monogram span{font-size:82px}.service-editorial-band{padding:92px 0}.service-editorial-band h2{font-size:46px}[dir=rtl] .service-editorial-band h2{font-size:39px;line-height:1.5}.service-detail-copy h1{font-size:44px}[dir=rtl] .service-detail-copy h1{font-size:39px;line-height:1.52}.service-detail-media,.service-detail-media img,.service-detail-placeholder{height:430px;min-height:430px}.service-detail-actions{align-items:stretch;flex-direction:column}.service-price-block{border-inline-end:0;border-bottom:1px solid rgba(255,255,255,.14);padding:0 0 18px}.service-rich-section{padding-top:88px}.service-rich-grid{gap:34px}.cms-rich-content{font-size:15px;line-height:2}.cms-rich-content h2{font-size:31px}.cms-rich-content h3{font-size:26px}.cms-rich-content blockquote{font-size:20px}.service-area-link{min-height:140px;padding:24px}.service-area-link strong{font-size:21px}}
/* Phase 3.4.1 */
.internal-monogram.has-image{overflow:hidden;background:#111}.internal-monogram.has-image img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:720px){.luxury-internal .site-footer .footer-grid{grid-template-columns:1fr;gap:28px}.luxury-internal .footer-links{display:flex;flex-wrap:wrap;gap:12px 18px}.internal-monogram.has-image{min-height:340px}}

/* Phase 3.4.2 — Rich content paragraph preservation */
.cms-rich-content > div,.cms-rich-content div.editor-paragraph{margin:0 0 1.25em;}
.cms-rich-content > div:empty{display:none;}


/* =========================================================
   Phase 3.4.3 — Service Content Typography Polish
   Purpose: editorial hierarchy, readable paragraphs, lists,
   inline media, links and better desktop/mobile rhythm.
   ========================================================= */
.service-rich-section{
  padding-block:clamp(92px,8vw,140px);
}
.service-rich-grid{
  grid-template-columns:minmax(260px,.38fr) minmax(0,1fr);
  gap:clamp(70px,8vw,132px);
}
.service-rich-grid aside{
  max-width:360px;
}
.service-rich-grid aside h2{
  font-size:clamp(38px,3.5vw,56px);
  line-height:1.24;
  text-wrap:balance;
}
.cms-rich-content{
  width:100%;
  max-width:920px;
  font-size:17px;
  line-height:2.05;
  color:#36322d;
  text-wrap:pretty;
}
[dir=rtl] .cms-rich-content{
  font-family:Arial,"Noto Sans Arabic",sans-serif;
  font-size:18px;
  line-height:2.15;
}
.cms-rich-content > *:first-child{margin-top:0!important}
.cms-rich-content > *:last-child{margin-bottom:0!important}
.cms-rich-content h2,
.cms-rich-content h3,
.cms-rich-content h4{
  font-family:Georgia,"Noto Serif Arabic",serif!important;
  font-weight:500!important;
  color:var(--ink);
  letter-spacing:-.015em;
  text-wrap:balance;
}
.cms-rich-content h2{
  font-size:clamp(34px,3vw,46px)!important;
  line-height:1.32!important;
  margin:0 0 .75em!important;
  padding-bottom:.38em;
  border-bottom:1px solid rgba(184,136,66,.22);
}
.cms-rich-content h2:not(:first-child){margin-top:2.2em!important}
.cms-rich-content h3{
  font-size:clamp(25px,2.15vw,32px)!important;
  line-height:1.42!important;
  margin:1.8em 0 .55em!important;
}
.cms-rich-content h4{
  font-size:clamp(20px,1.6vw,25px)!important;
  line-height:1.5!important;
  margin:1.55em 0 .45em!important;
}
[dir=rtl] .cms-rich-content h2{font-size:clamp(32px,2.8vw,43px);line-height:1.55}
[dir=rtl] .cms-rich-content h3{font-size:clamp(23px,2vw,30px);line-height:1.6}
[dir=rtl] .cms-rich-content h4{font-size:clamp(19px,1.55vw,24px);line-height:1.65}
.cms-rich-content p,
.cms-rich-content > div,
.cms-rich-content div.editor-paragraph{
  margin:0 0 1.35em!important;
}
.cms-rich-content p + p{margin-top:.15em!important}
.cms-rich-content strong{color:inherit;font-weight:700}
.cms-rich-content ul,
.cms-rich-content ol{
  margin:1.35em 0 1.65em!important;
  padding-inline-start:1.55em;
}
.cms-rich-content li{
  margin:.48em 0;
  padding-inline-start:.2em;
}
.cms-rich-content a{
  color:#8b5f27;
  text-decoration-thickness:1px;
  text-underline-offset:5px;
  transition:color .2s ease;
}
.cms-rich-content a:hover{color:#b88842}
.cms-rich-content blockquote{
  margin:2.2em 0!important;
  padding:1.15em 1.35em!important;
  border-inline-start:2px solid var(--gold)!important;
  background:#f8f5ef!important;
  border-radius:0 14px 14px 0;
  font-size:clamp(20px,1.7vw,25px)!important;
  line-height:1.75!important;
}
[dir=rtl] .cms-rich-content blockquote{border-radius:14px 0 0 14px}
.cms-rich-content img{
  width:auto;
  max-width:100%;
  height:auto;
  border-radius:22px!important;
  margin:2.2em auto!important;
  box-shadow:0 24px 60px rgba(0,0,0,.08);
}
.cms-rich-content figure{margin:2.2em 0}
.cms-rich-content figcaption{margin-top:.7em;color:var(--muted);font-size:13px;text-align:center}
.cms-rich-content hr{
  border:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,136,66,.38),transparent);
  margin:2.6em 0;
}
/* If an old editor entry used a single bold line as a visual subheading,
   give it hierarchy without changing stored HTML. */
.cms-rich-content p > strong:only-child{
  display:inline-block;
  font-family:Georgia,"Noto Serif Arabic",serif;
  font-size:1.22em;
  line-height:1.5;
  margin-top:.7em;
}
[dir=rtl] .cms-rich-content p > strong:only-child{line-height:1.7}

@media (max-width:1100px){
  .service-rich-grid{grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);gap:56px}
}
@media (max-width:900px){
  .service-rich-section{padding-block:82px}
  .service-rich-grid{grid-template-columns:1fr;gap:42px}
  .service-rich-grid aside{max-width:560px}
  .service-rich-grid aside h2{font-size:clamp(34px,7vw,46px)}
  .cms-rich-content{max-width:none;font-size:16px;line-height:2}
  [dir=rtl] .cms-rich-content{font-size:17px;line-height:2.12}
}
@media (max-width:620px){
  .service-rich-section{padding-block:68px}
  .service-rich-grid{gap:34px}
  .service-rich-grid aside h2{font-size:34px;line-height:1.32;margin-top:14px}
  [dir=rtl] .service-rich-grid aside h2{font-size:32px;line-height:1.55}
  .cms-rich-content{font-size:15.5px;line-height:1.95}
  [dir=rtl] .cms-rich-content{font-size:16.5px;line-height:2.08}
  .cms-rich-content h2{font-size:29px;margin-bottom:.7em}
  .cms-rich-content h3{font-size:23px;margin-top:1.55em}
  .cms-rich-content h4{font-size:20px}
  [dir=rtl] .cms-rich-content h2{font-size:28px;line-height:1.55}
  [dir=rtl] .cms-rich-content h3{font-size:22px;line-height:1.65}
  [dir=rtl] .cms-rich-content h4{font-size:19px;line-height:1.7}
  .cms-rich-content p,.cms-rich-content > div,.cms-rich-content div.editor-paragraph{margin-bottom:1.25em!important}
  .cms-rich-content img{border-radius:16px!important;margin:1.7em auto!important}
  .cms-rich-content blockquote{margin:1.8em 0;padding:1em 1.1em;font-size:19px}
}

/* =========================================================
   Phase 3.4.4 — Final Service Reading Polish
   Final refinement for service detail editorial content.
   ========================================================= */
.service-rich-grid{
  grid-template-columns:minmax(235px,.32fr) minmax(0,1fr);
  gap:clamp(64px,7vw,112px);
}
.service-rich-grid aside{
  max-width:315px;
}
.service-rich-grid aside h2{
  font-size:clamp(34px,3vw,49px);
  line-height:1.28;
}
[dir=rtl] .service-rich-grid aside h2{
  font-size:clamp(31px,2.8vw,44px);
  line-height:1.52;
}
.cms-rich-content{
  max-width:800px;
  font-size:17px;
  line-height:1.95;
}
[dir=rtl] .cms-rich-content{
  max-width:820px;
  font-size:18px;
  line-height:2.02;
  font-weight:400;
}
.cms-rich-content p,
.cms-rich-content > div,
.cms-rich-content div.editor-paragraph{
  margin-bottom:1.2em!important;
}
.cms-rich-content h2:not(:first-child){margin-top:2em!important}
.cms-rich-content h3{
  margin-top:1.62em!important;
  margin-bottom:.48em!important;
}
.cms-rich-content h4{
  margin-top:1.4em!important;
  margin-bottom:.4em!important;
}
[dir=rtl] .cms-rich-content h3{
  font-size:clamp(24px,1.95vw,29px)!important;
  line-height:1.52!important;
  font-weight:600!important;
}
[dir=rtl] .cms-rich-content h4{
  font-size:clamp(20px,1.5vw,23px)!important;
  line-height:1.58!important;
  font-weight:600!important;
}
[dir=rtl] .cms-rich-content p,
[dir=rtl] .cms-rich-content li{
  color:#2f2b27;
}

@media (max-width:900px){
  .service-rich-grid aside{max-width:520px}
  .service-rich-grid aside h2{font-size:clamp(32px,6.4vw,42px)}
  [dir=rtl] .service-rich-grid aside h2{font-size:clamp(29px,6vw,38px);line-height:1.5}
  .cms-rich-content,.cms-rich-content[dir=rtl]{max-width:none}
}

@media (max-width:620px){
  .service-rich-section{padding-block:58px}
  .service-rich-grid{gap:26px}
  .service-rich-grid aside h2{font-size:31px;line-height:1.28;margin-top:10px;margin-bottom:6px}
  [dir=rtl] .service-rich-grid aside h2{font-size:28px;line-height:1.48}
  .cms-rich-content{font-size:15.5px;line-height:1.9}
  [dir=rtl] .cms-rich-content{font-size:16.5px;line-height:1.96;font-weight:400}
  .cms-rich-content h2{font-size:27px;line-height:1.42;margin-bottom:.62em}
  .cms-rich-content h2:not(:first-child){margin-top:1.62em!important}
  .cms-rich-content h3{font-size:22px;line-height:1.48;margin-top:1.35em;margin-bottom:.42em}
  .cms-rich-content h4{font-size:19px;line-height:1.5;margin-top:1.25em}
  [dir=rtl] .cms-rich-content h2{font-size:26px;line-height:1.5}
  [dir=rtl] .cms-rich-content h3{font-size:21px;line-height:1.55;font-weight:600}
  [dir=rtl] .cms-rich-content h4{font-size:18px;line-height:1.6;font-weight:600}
  .cms-rich-content p,
  .cms-rich-content > div,
  .cms-rich-content div.editor-paragraph{margin-bottom:1.05em!important}
  .cms-rich-content ul,
  .cms-rich-content ol{margin:1.1em 0 1.3em!important}
}

/* =========================================================
   Phase 3.4.5 — Service Mobile Grid Regression Fix
   Ensure the editorial content becomes a single readable column
   on tablet/mobile after the final desktop typography overrides.
   ========================================================= */
@media (max-width:900px){
  .service-rich-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:38px!important;
  }
  .service-rich-grid aside{
    width:100%;
    max-width:100%!important;
    position:static!important;
  }
  .cms-rich-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}

@media (max-width:620px){
  .service-rich-grid{
    gap:28px!important;
  }
  .service-rich-grid aside h2{
    max-width:340px;
    margin-inline-start:auto;
  }
  [dir=rtl] .cms-rich-content{
    text-align:right;
  }
}

/* Phase 3.5 — Service Areas Frontend */
.areas-hero,.area-detail-hero{background:#0b0b0b;color:#fff;padding:clamp(110px,11vw,180px) 0 90px}.areas-hero-grid,.area-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);align-items:center;gap:clamp(52px,7vw,110px)}[dir="rtl"] .areas-hero-grid,[dir="rtl"] .area-detail-grid{direction:rtl}.areas-hero-copy h1,.area-detail-copy h1{font-size:clamp(3.2rem,6vw,6.9rem);line-height:.98;margin:18px 0 26px;max-width:850px}.areas-hero-copy p,.area-detail-copy p{max-width:680px;line-height:1.9;color:rgba(255,255,255,.68);font-size:1.05rem}.areas-hero-media img,.area-detail-media img,.areas-hero-placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:120px 120px 20px 20px;border:1px solid rgba(199,151,75,.3)}.areas-hero-placeholder{display:grid;place-items:center;background:radial-gradient(circle,#24190e,#0d0d0d 65%);color:#6e5230}.areas-hero-placeholder span{font-family:serif;font-size:6rem}.areas-hero-placeholder small{position:absolute;margin-top:210px;color:#c89a52;letter-spacing:.18em}.areas-list-section{background:#f4efe6}.areas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:42px}.area-card{display:block;color:#17130e;text-decoration:none;background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(76,52,25,.1);transition:transform .35s ease,box-shadow .35s ease}.area-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(40,25,10,.12)}.area-card-media{aspect-ratio:4/3;background:#17120c;overflow:hidden}.area-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.area-card:hover img{transform:scale(1.035)}.area-card-placeholder{height:100%;display:grid;place-items:center;color:#b9986c;font-family:serif;font-size:4rem;background:linear-gradient(135deg,#302414,#c6a167)}.area-card-body{padding:28px}.area-card-body>span,.local-service-body small{font-size:.7rem;letter-spacing:.17em;color:#a67838}.area-card-body h3{font-size:2.1rem;margin:10px 0 12px}.area-card-body p{color:#6b6257;line-height:1.75;min-height:54px}.area-card-meta{display:flex;align-items:center;gap:8px;border-top:1px solid #eee3d5;padding-top:18px;margin-top:22px;color:#86612f}.area-card-meta i{margin-inline-start:auto}.area-detail-hero{padding-bottom:100px}.area-services-section{background:#f7f2ea}.area-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:40px}.local-service-card{display:block;text-decoration:none;color:#17130e;background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(76,52,25,.1)}.local-service-media{aspect-ratio:4/5;background:#1a1510}.local-service-media img{width:100%;height:100%;object-fit:cover}.local-service-body{padding:24px}.local-service-body h3{font-size:1.8rem;margin:8px 0 12px}.local-service-body p{color:#6b6257;line-height:1.7}.local-service-body>span:last-child{display:inline-block;margin-top:14px;color:#9a6b2d;font-weight:700}.local-detail-hero .service-detail-media img{aspect-ratio:4/5}
@media(max-width:980px){.areas-hero-grid,.area-detail-grid{grid-template-columns:1fr;gap:44px}.areas-hero-copy h1,.area-detail-copy h1{font-size:clamp(3rem,9vw,5.4rem)}.areas-hero-media,.area-detail-media{max-width:620px}.areas-grid,.area-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.areas-hero,.area-detail-hero{padding:96px 0 58px}.areas-hero-grid,.area-detail-grid{gap:30px}.areas-hero-copy h1,.area-detail-copy h1{font-size:clamp(2.65rem,12.5vw,4.2rem);line-height:1.06}.areas-hero-copy p,.area-detail-copy p{font-size:.98rem}.areas-hero-media img,.area-detail-media img,.areas-hero-placeholder{border-radius:72px 72px 14px 14px}.areas-grid,.area-services-grid{grid-template-columns:1fr;gap:18px}.area-card-body h3{font-size:1.8rem}.area-card-body p{min-height:0}.local-service-body h3{font-size:1.65rem}}

/* Phase 3.5.1 — Local service layout refinement */
.local-service-page .local-detail-hero{padding-top:150px;padding-bottom:92px;min-height:780px}
.local-service-page .local-detail-hero .service-detail-grid{align-items:center}
.local-service-page .local-detail-hero .service-detail-media{min-height:620px;height:620px}
.local-service-page .local-detail-hero .service-detail-media img{height:620px;width:100%;object-fit:cover;object-position:center center}
.local-breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:28px;color:rgba(255,255,255,.5);font-size:12px}
.local-breadcrumb a{color:rgba(255,255,255,.62);text-decoration:none}.local-breadcrumb a:hover{color:#d6ad69}.local-breadcrumb span{opacity:.65}
.local-base-link{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:12px}.local-base-link>span{color:rgba(255,255,255,.42);text-transform:uppercase;letter-spacing:.14em}.local-base-link a{color:#d7b16d;text-decoration:none;font-weight:700}.local-base-link i{font-style:normal;margin-inline-start:4px}
.local-rich-section{padding-block:100px}
.local-related-section{background:#f5efe6}.local-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:42px}.local-related-card{display:block;background:#fff;border:1px solid rgba(75,52,27,.1);border-radius:18px;overflow:hidden;color:#17130e;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}.local-related-card:hover{transform:translateY(-5px);box-shadow:0 20px 46px rgba(42,27,12,.11)}.local-related-media{aspect-ratio:4/5;background:#18120d;overflow:hidden}.local-related-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.local-related-card:hover img{transform:scale(1.025)}.local-related-body{padding:24px}.local-related-body small{color:#a57737;letter-spacing:.13em;text-transform:uppercase}.local-related-body h3{font-size:1.8rem;margin:8px 0 12px}.local-related-body p{color:#6b6257;line-height:1.75;margin:0}.local-related-body>span{display:inline-block;color:#936529;margin-top:16px;font-weight:700}
@media(max-width:980px){.local-service-page .local-detail-hero{padding-top:130px;min-height:0}.local-service-page .local-detail-hero .service-detail-media{order:-1;height:520px;min-height:520px}.local-service-page .local-detail-hero .service-detail-media img{height:520px}.local-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.local-service-page .site-header{position:relative}.local-service-page .local-detail-hero{padding:26px 0 64px}.local-service-page .local-detail-hero .service-detail-grid{display:flex;flex-direction:column;gap:38px}.local-service-page .local-detail-hero .service-detail-media{order:-1;width:100%;height:auto;min-height:0;border-radius:150px 150px 20px 20px}.local-service-page .local-detail-hero .service-detail-media img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center center}.local-service-page .service-detail-copy{width:100%}.local-service-page .service-detail-copy h1{font-size:38px;line-height:1.45;margin:18px 0}.local-service-page .service-detail-copy p{font-size:15px;line-height:1.9}.local-breadcrumb{margin-bottom:18px;font-size:11px;gap:7px}.local-base-link{margin-top:20px;padding-top:18px}.local-rich-section{padding-block:66px}.local-rich-section .service-rich-grid{display:grid;grid-template-columns:1fr;gap:30px}.local-rich-section .service-rich-grid aside{position:static;max-width:none}.local-rich-section .cms-rich-content{width:100%;max-width:none}.local-related-grid{grid-template-columns:1fr;gap:18px}.local-related-body h3{font-size:1.55rem}.local-service-page .final-cta{padding-block:88px}}

/* =========================================================
   Phase 3.5.2 — Local Service Mobile Sticky Header Fix
   Keeps the local-service header anchored at the top without
   overlaying/intersecting the reading content on mobile.
   ========================================================= */
@media (max-width:760px){
  .local-service-page.luxury-internal .site-header,
  .local-service-page.luxury-internal .site-header.is-scrolled{
    position:sticky !important;
    top:0;
    left:auto;
    right:auto;
    width:100%;
    z-index:1200;
    transform:none !important;
    margin:0;
    background:rgba(11,11,11,.97);
    border-bottom:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 28px rgba(0,0,0,.16);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  .local-service-page .header-inner{
    min-height:74px;
    height:74px;
  }

  /* The hero no longer needs to compensate for a fixed header. */
  .local-service-page .local-detail-hero{
    padding-top:26px;
  }

  /* Keep the reading section clear and compact. */
  .local-service-page .local-rich-section{
    padding-top:60px;
    padding-bottom:64px;
  }
  .local-service-page .local-rich-section .service-rich-grid{
    gap:24px !important;
  }
  .local-service-page .local-rich-section .service-rich-grid aside{
    margin-bottom:2px;
  }
  .local-service-page .local-rich-section .cms-rich-content h2,
  .local-service-page .local-rich-section .cms-rich-content h3,
  .local-service-page .local-rich-section .cms-rich-content h4{
    margin-top:1.35em;
    margin-bottom:.55em;
  }
  .local-service-page .local-rich-section .cms-rich-content p{
    margin-bottom:1.05em;
  }
}

/* Phase 3.6 — Packages Frontend */
.package-page-hero .package-hero-media{min-height:460px;display:grid;place-items:center}.package-hero-media img{width:100%;height:100%;max-height:540px;object-fit:cover;border-radius:120px 120px 20px 20px;box-shadow:0 30px 80px rgba(0,0,0,.22)}.package-grid-premium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:44px}.package-card-premium{border:1px solid rgba(62,45,28,.13);border-radius:22px;overflow:hidden;background:#fff;min-width:0}.package-card-link{display:block;color:inherit;text-decoration:none}.package-card-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:linear-gradient(145deg,#332716,#c3a16b)}.package-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.package-card-premium:hover .package-card-media img{transform:scale(1.035)}.offer-badge{position:absolute;top:18px;inset-inline-start:18px;background:#d7aa62;color:#17120c;padding:8px 12px;border-radius:999px;font-size:.72rem;font-weight:700}.package-card-content{padding:26px;display:grid;gap:16px}.package-card-content h3{font-size:clamp(1.45rem,2vw,2rem);margin:0}.package-card-content p{margin:0;color:#6f665c;line-height:1.75}.package-card-meta{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;border-top:1px solid rgba(62,45,28,.11);padding-top:16px}.package-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.package-price strong{font-size:1.25rem}.package-price del{color:#9b9083;font-size:.88rem}.package-brand-band{background:radial-gradient(circle at 50% 40%,rgba(183,135,64,.09),transparent 34%),#0c0c0c}.package-detail-hero{background:#090909;color:#fff;padding:90px 0 84px}.package-detail-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:88px;align-items:center}.package-detail-media{min-height:590px}.package-detail-media img{width:100%;height:590px;object-fit:cover;border-radius:160px 160px 24px 24px}.package-detail-copy{display:grid;gap:20px}.package-detail-copy h1{font-size:clamp(3rem,5.6vw,6.4rem);line-height:1.02;margin:0;max-width:10ch}.package-detail-copy p{font-size:1.06rem;line-height:1.9;color:#d1ccc6;max-width:55ch}.breadcrumb-mini{display:flex;gap:10px;flex-wrap:wrap;color:#9d958b;font-size:.82rem}.breadcrumb-mini a{color:#d3ad6b}.package-hero-price{display:flex;gap:14px;align-items:baseline}.package-hero-price strong{font-size:2rem;color:#d9ae67}.package-hero-price del{color:#8e8880}.package-content-grid{display:grid;grid-template-columns:minmax(260px,.36fr) minmax(0,.64fr);gap:70px;align-items:start}.package-aside{position:sticky;top:125px}.package-aside h2{font-size:clamp(2rem,3vw,3.5rem);line-height:1.2}.included-services-section{background:#f5efe6}.included-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:36px}.included-service-card{background:#fff;border-radius:20px;overflow:hidden;color:inherit;text-decoration:none;border:1px solid rgba(62,45,28,.1)}.included-service-media{aspect-ratio:4/3;overflow:hidden}.included-service-media img{width:100%;height:100%;object-fit:cover}.included-service-card>div:last-child{padding:22px}.included-service-card h3{font-size:1.45rem;margin:.35rem 0 .65rem}.included-service-card p{color:#756b60;line-height:1.7;margin:0}.offer-end-note{color:#9b7a45}
@media(max-width:980px){.package-grid-premium,.included-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-detail-grid{gap:44px}.package-detail-media,.package-detail-media img{min-height:480px;height:480px}.package-content-grid{grid-template-columns:1fr}.package-aside{position:static}}
@media(max-width:640px){.package-page-hero .internal-hero-grid,.package-detail-grid{grid-template-columns:1fr}.package-page-hero .package-hero-media{min-height:0;order:2}.package-hero-media img{height:auto;aspect-ratio:4/5;border-radius:90px 90px 18px 18px}.package-grid-premium,.included-services-grid{grid-template-columns:1fr}.package-card-content{padding:21px}.package-card-media{aspect-ratio:4/4.6}.package-detail-hero{padding:46px 0 54px}.package-detail-media{order:1;min-height:0}.package-detail-media img{height:auto;aspect-ratio:4/5;border-radius:95px 95px 18px 18px}.package-detail-copy{order:2}.package-detail-copy h1{font-size:clamp(2.45rem,12vw,4rem);max-width:none}.package-detail-copy p{font-size:1rem}.package-content-grid{gap:30px}.package-aside h2{font-size:2rem}.package-card-meta{align-items:center}.package-price strong{font-size:1.15rem}}

/* ==========================================================
   Phase 3.6.1 — Package mobile header & spacing fix
   Scope: package detail pages only. Keeps the global header
   behavior unchanged elsewhere.
   ========================================================== */
@media (max-width:760px){
  .package-detail-page.luxury-internal .site-header,
  .package-detail-page.luxury-internal .site-header.is-scrolled{
    position:sticky !important;
    top:0;
    left:auto;
    right:auto;
    z-index:1200;
    width:100%;
    background:rgba(10,10,10,.97);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(255,255,255,.08);
    transform:none !important;
  }

  .package-detail-page .header-inner{
    min-height:78px;
    height:78px;
  }

  .package-detail-page .package-detail-hero{
    padding-top:38px;
  }

  .package-detail-page .package-detail-grid{
    gap:30px;
  }

  .package-detail-page .package-detail-copy{
    padding-top:4px;
    gap:18px;
  }

  .package-detail-page .package-detail-copy h1{
    margin-top:4px;
    margin-bottom:4px;
  }

  .package-detail-page .package-detail-copy p{
    margin:0;
    line-height:1.9;
  }

  .package-detail-page .package-hero-price{
    margin-top:2px;
    gap:10px;
  }

  .package-detail-page .package-detail-content{
    padding-top:72px;
    padding-bottom:74px;
  }

  .package-detail-page .package-content-grid{
    gap:34px;
  }

  .package-detail-page .package-aside{
    margin-bottom:2px;
  }

  .package-detail-page .package-aside h2{
    margin-top:14px;
    margin-bottom:12px;
    line-height:1.28;
  }

  .package-detail-page .service-rich-content{
    font-size:16px;
    line-height:1.95;
  }

  .package-detail-page .service-rich-content h2,
  .package-detail-page .service-rich-content h3,
  .package-detail-page .service-rich-content h4{
    margin-top:1.45em;
    margin-bottom:.55em;
  }

  .package-detail-page .included-services-section{
    padding-top:74px;
    padding-bottom:80px;
  }

  .package-detail-page .included-services-grid{
    gap:20px;
  }

  .package-detail-page .included-service-card{
    width:100%;
    max-width:none;
  }

  .package-detail-page .included-service-media{
    aspect-ratio:16/10;
  }

  .package-detail-page .included-service-card>div:last-child{
    padding:24px 22px 26px;
  }

  .package-detail-page .final-cta{
    padding-top:92px;
    padding-bottom:94px;
  }
}

/* Phase 3.7 — About + Blog Frontend */
.about-hero,.blog-hero,.article-hero{background:#0b0b0b;color:#fff;padding:clamp(90px,10vw,150px) 0 clamp(70px,8vw,120px);overflow:hidden}.about-hero-grid,.blog-hero-grid,.article-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:clamp(48px,7vw,110px);align-items:center}.about-hero-copy h1,.blog-hero-copy h1,.article-hero-copy h1{font-size:clamp(52px,5.3vw,92px);line-height:1.02;max-width:820px;margin:.5rem 0 1.25rem}.about-hero-copy p,.blog-hero-copy p,.article-lead{max-width:650px;color:rgba(255,255,255,.7);font-size:clamp(16px,1.4vw,20px);line-height:1.9}.about-hero-media,.blog-hero-media,.article-hero-media{min-height:520px;border-radius:130px 130px 24px 24px;overflow:hidden;border:1px solid rgba(201,153,76,.32);background:linear-gradient(145deg,#121212,#241b11)}.about-hero-media img,.blog-hero-media img,.article-hero-media img{width:100%;height:100%;min-height:520px;display:block;object-fit:cover}.about-story-grid,.article-content-grid{display:grid;grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);gap:clamp(55px,8vw,130px);align-items:start}.about-story-grid aside,.article-aside{position:sticky;top:118px}.about-story-grid aside h2{font-size:clamp(38px,4.2vw,68px);line-height:1.1;margin:1rem 0}.about-rich-content,.article-rich-content{max-width:850px}.about-rich-content p,.article-rich-content p{font-size:18px;line-height:2;margin:0 0 1.35em}.about-rich-content h2,.article-rich-content h2{font-size:clamp(32px,3vw,48px);margin:1.7em 0 .55em}.about-rich-content h3,.article-rich-content h3{font-size:clamp(24px,2.2vw,34px);margin:1.6em 0 .5em}.about-rich-content img,.article-rich-content img{width:100%;height:auto;border-radius:28px;margin:2.25rem 0}.editorial-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.editorial-post-card{background:#fff;border:1px solid rgba(24,20,16,.1);border-radius:24px;overflow:hidden}.editorial-post-card a{color:inherit;text-decoration:none;display:grid;height:100%}.editorial-post-card.is-featured{grid-column:1/-1}.editorial-post-card.is-featured a{grid-template-columns:1.25fr .75fr}.editorial-post-media{min-height:360px;background:#17120d}.editorial-post-card.is-featured .editorial-post-media{min-height:520px}.editorial-post-media img{width:100%;height:100%;object-fit:cover;display:block}.editorial-post-copy{padding:clamp(26px,3.2vw,48px);display:flex;flex-direction:column}.editorial-post-copy h3{font-size:clamp(30px,3vw,48px);line-height:1.1;margin:.65rem 0 1rem}.editorial-post-card:not(.is-featured) .editorial-post-copy h3{font-size:clamp(25px,2.2vw,34px)}.editorial-post-copy p{color:#6e675f;line-height:1.8}.post-meta-line{margin-top:auto;padding-top:2rem;border-top:1px solid rgba(24,20,16,.1);display:flex;justify-content:space-between;gap:20px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#8d6b34}.article-breadcrumb{display:flex;gap:10px;align-items:center;margin-bottom:2rem;color:rgba(255,255,255,.55);font-size:13px}.article-breadcrumb a{color:inherit;text-decoration:none}.article-meta{display:flex;gap:22px;margin-top:2rem;color:#c99a4f;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.article-aside{display:grid;gap:22px}.article-aside a{color:#7a5b2d;text-decoration:none}.related-posts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.related-post-card{color:inherit;text-decoration:none}.related-post-card>div:first-child{aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#17120d}.related-post-card img{width:100%;height:100%;object-fit:cover}.related-post-card h3{font-size:26px;line-height:1.2;margin:1rem 0 .6rem}.related-post-card p{color:#6d665d;line-height:1.7}.related-post-card span{color:#936f38;font-weight:700}.blog-index-section,.about-story-section,.article-content-section,.related-posts-section{background:#f7f1e8}
@media(max-width:820px){.about-hero,.blog-hero,.article-hero{padding:46px 0 58px}.about-hero-grid,.blog-hero-grid,.article-hero-grid{grid-template-columns:1fr;gap:34px}.about-hero-copy,.blog-hero-copy,.article-hero-copy{order:1}.about-hero-media,.blog-hero-media,.article-hero-media{order:2;min-height:390px;border-radius:86px 86px 20px 20px}.about-hero-media img,.blog-hero-media img,.article-hero-media img{min-height:390px}.about-hero-copy h1,.blog-hero-copy h1,.article-hero-copy h1{font-size:clamp(38px,11vw,56px)}.about-story-grid,.article-content-grid{grid-template-columns:1fr;gap:30px}.about-story-grid aside,.article-aside{position:static}.about-story-grid aside h2{font-size:38px}.about-rich-content p,.article-rich-content p{font-size:17px;line-height:1.95}.editorial-blog-grid{grid-template-columns:1fr}.editorial-post-card.is-featured{grid-column:auto}.editorial-post-card.is-featured a{grid-template-columns:1fr}.editorial-post-card.is-featured .editorial-post-media,.editorial-post-media{min-height:300px}.editorial-post-copy h3,.editorial-post-card:not(.is-featured) .editorial-post-copy h3{font-size:30px}.related-posts-grid{grid-template-columns:1fr}.article-meta{flex-wrap:wrap}.blog-frontend .site-header,.about-frontend .site-header,.blog-detail-page .site-header{position:sticky!important;top:0!important;z-index:1000!important}}


/* =========================================================
   Phase 3.7.2 — CMS Rich Editor Output Consistency
   Inline styles saved by the trusted editor must remain visible
   across Services, Areas, Packages, Pages/About and Blog.
   ========================================================= */
.cms-rich-content [style*="text-align"],
.rich-content [style*="text-align"]{text-align:inherit}
/* Inline style attributes themselves win over these normal declarations. */
.cms-rich-content h2,.cms-rich-content h3,.cms-rich-content h4,
.rich-content h2,.rich-content h3,.rich-content h4{color:var(--ink)}
.cms-rich-content figure,.rich-content figure{margin:2rem 0}
.cms-rich-content figcaption,.rich-content figcaption{margin-top:.65rem;color:#81786d;font-size:.88em;text-align:center;line-height:1.6}
.cms-rich-content hr,.rich-content hr{border:0;border-top:1px solid rgba(184,136,66,.28);margin:2.2rem 0}
.cms-rich-content table,.rich-content table{width:100%;border-collapse:collapse;margin:2rem 0;overflow:auto}
.cms-rich-content th,.cms-rich-content td,.rich-content th,.rich-content td{border:1px solid rgba(36,31,25,.13);padding:.75rem .9rem;vertical-align:top}
.cms-rich-content blockquote p:last-child,.rich-content blockquote p:last-child{margin-bottom:0}

/* Phase 3.7.3 — Blog & Article final polish */
.blog-frontend .blog-index-section{padding-top:clamp(80px,8vw,126px);padding-bottom:clamp(90px,9vw,140px)}
.blog-frontend .section-heading{max-width:820px;margin-bottom:clamp(42px,5vw,72px)}
.editorial-post-card{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.editorial-post-card:hover{transform:translateY(-5px);border-color:rgba(201,153,76,.32);box-shadow:0 20px 55px rgba(32,24,15,.08)}
.editorial-post-media img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.editorial-post-card:hover .editorial-post-media img{transform:scale(1.025)}
.blog-detail-page .article-content-section{padding-top:clamp(74px,8vw,120px);padding-bottom:clamp(90px,9vw,144px)}
.blog-detail-page .article-content-grid{grid-template-columns:minmax(210px,.30fr) minmax(0,800px);justify-content:center;gap:clamp(54px,7vw,110px)}
.blog-detail-page .article-rich-content{max-width:800px;min-width:0}
.blog-detail-page .article-rich-content p{font-size:clamp(17px,1.25vw,19px);line-height:2.05;margin:0 0 1.5em}
.blog-detail-page .article-rich-content h2{font-size:clamp(34px,3.2vw,52px);line-height:1.18;margin:1.8em 0 .6em}
.blog-detail-page .article-rich-content h3{font-size:clamp(25px,2.3vw,36px);line-height:1.25;margin:1.65em 0 .55em}
.blog-detail-page .article-rich-content h4{font-size:clamp(20px,1.7vw,27px);line-height:1.35;margin:1.5em 0 .5em}
.blog-detail-page .article-rich-content ul,.blog-detail-page .article-rich-content ol{margin:1.3em 0 1.8em;padding-inline-start:1.5em;line-height:1.9}
.blog-detail-page .article-rich-content li+li{margin-top:.5em}
.blog-detail-page .article-rich-content blockquote{margin:2.25rem 0;padding:1.25rem 1.5rem;border-inline-start:2px solid #c9994c;background:rgba(201,153,76,.07);font-size:1.08em;line-height:1.9}
.blog-detail-page .article-rich-content a{color:#8d642b;text-decoration-thickness:1px;text-underline-offset:3px}
.blog-detail-page .article-rich-content hr{border:0;border-top:1px solid rgba(24,20,16,.14);margin:2.6rem 0}
.blog-detail-page .article-rich-content img{box-shadow:0 20px 70px rgba(30,22,14,.10)}
.article-aside{align-self:start;padding-top:.35rem}
.article-aside:after{content:"";display:block;width:52px;border-top:1px solid rgba(201,153,76,.55);margin-top:8px}
.related-posts-section{padding-top:clamp(78px,8vw,120px);padding-bottom:clamp(88px,9vw,138px)}
.related-post-card>div:first-child{transition:transform .35s ease,box-shadow .35s ease}
.related-post-card:hover>div:first-child{transform:translateY(-4px);box-shadow:0 18px 46px rgba(32,24,15,.10)}
.blog-detail-page .site-footer{margin-top:0}
@media(max-width:820px){
  .blog-frontend .blog-index-section{padding-top:64px;padding-bottom:78px}
  .blog-frontend .section-heading{margin-bottom:34px}
  .editorial-post-card{border-radius:18px}
  .editorial-post-media,.editorial-post-card.is-featured .editorial-post-media{min-height:260px}
  .editorial-post-copy{padding:24px 22px 26px}
  .editorial-post-copy h3,.editorial-post-card:not(.is-featured) .editorial-post-copy h3{font-size:29px;line-height:1.15}
  .post-meta-line{gap:12px;align-items:center;font-size:11px;padding-top:1.25rem}
  .blog-detail-page .article-content-section{padding-top:58px;padding-bottom:76px}
  .blog-detail-page .article-content-grid{grid-template-columns:1fr;gap:28px}
  .blog-detail-page .article-aside{display:flex;justify-content:space-between;align-items:center;gap:16px;position:static;padding-bottom:16px;border-bottom:1px solid rgba(24,20,16,.12)}
  .blog-detail-page .article-aside:after{display:none}
  .blog-detail-page .article-rich-content{max-width:none;width:100%}
  .blog-detail-page .article-rich-content p{font-size:17px;line-height:1.95;margin-bottom:1.35em}
  .blog-detail-page .article-rich-content h2{font-size:32px;margin-top:1.55em}
  .blog-detail-page .article-rich-content h3{font-size:25px;margin-top:1.45em}
  .blog-detail-page .article-rich-content h4{font-size:21px}
  .blog-detail-page .article-rich-content img{border-radius:18px;margin:1.8rem 0}
  .article-meta{gap:12px 18px;font-size:10px}
  .related-posts-section{padding-top:64px;padding-bottom:80px}
}

/* =========================================================
   Phase 3.7.5 — Global Header + Article Reading Polish
   Keep the public navigation out of document flow on every
   frontend template and improve long-form article reading.
   ========================================================= */

/* Global public header: one consistent behavior everywhere. */
.site-header,
.blog-frontend .site-header,
.about-frontend .site-header,
.blog-detail-page .site-header,
.package-detail-page.luxury-internal .site-header,
.service-detail-page .site-header,
.service-area-page .site-header,
.service-area-detail-page .site-header,
.service-area-service-page .site-header,
.services-page .site-header,
.packages-page .site-header {
  position:fixed !important;
  top:0 !important;
  inset-inline:0 !important;
  width:100% !important;
  z-index:1200 !important;
  margin:0 !important;
}

.site-header.is-scrolled{
  background:rgba(11,11,11,.94) !important;
  -webkit-backdrop-filter:blur(16px);
  backdrop-filter:blur(16px);
  border-bottom-color:rgba(255,255,255,.08) !important;
  box-shadow:0 12px 36px rgba(0,0,0,.12);
}

/* Long-form article reading system. */
.blog-detail-page .article-rich-content{
  font-size:18px;
  line-height:2;
  text-wrap:pretty;
}
.blog-detail-page .article-rich-content p{
  font-size:inherit;
  line-height:inherit;
  margin:0 0 1.45em;
}
.blog-detail-page .article-rich-content li{
  font-size:inherit;
  line-height:1.9;
}
.blog-detail-page .article-rich-content h2,
.blog-detail-page .article-rich-content h3,
.blog-detail-page .article-rich-content h4{
  text-wrap:balance;
}
.blog-detail-page .article-rich-content h2{margin-top:1.9em;margin-bottom:.55em}
.blog-detail-page .article-rich-content h3{margin-top:1.65em;margin-bottom:.5em}
.blog-detail-page .article-rich-content h4{margin-top:1.45em;margin-bottom:.45em}
.blog-detail-page .article-rich-content ul,
.blog-detail-page .article-rich-content ol{
  margin-block:1.15em 1.7em;
  padding-inline-start:1.45em;
}
.blog-detail-page .article-rich-content figure,
.blog-detail-page .article-rich-content img{
  max-width:100%;
}
.blog-detail-page .article-rich-content figure{margin:2.1rem 0}
.blog-detail-page .article-rich-content img{margin:2rem 0}

/* The editor's safe inline styles remain authoritative.
   Do not use !important here: selected colors/sizes/alignment
   from the CMS must continue to win in the frontend. */
.blog-detail-page .article-rich-content [style]{max-width:100%}

@media(max-width:820px){
  /* Fixed header is intentionally outside normal flow; hero owns
     its own safe top spacing. */
  .site-header,
  .blog-frontend .site-header,
  .about-frontend .site-header,
  .blog-detail-page .site-header,
  .package-detail-page.luxury-internal .site-header,
  .service-detail-page .site-header,
  .service-area-page .site-header,
  .service-area-detail-page .site-header,
  .service-area-service-page .site-header,
  .services-page .site-header,
  .packages-page .site-header{
    position:fixed !important;
    top:0 !important;
    inset-inline:0 !important;
    z-index:1200 !important;
    transform:none !important;
  }

  .blog-detail-page .article-hero{
    padding-top:104px;
  }
  .blog-detail-page .article-hero-copy h1{
    font-size:clamp(34px,9.6vw,48px);
    line-height:1.08;
    letter-spacing:-.015em;
  }
  .blog-detail-page .article-lead{
    font-size:16px;
    line-height:1.75;
  }
  .blog-detail-page .article-content-section .site-shell{
    width:min(calc(100% - 36px),var(--shell));
  }
  .blog-detail-page .article-rich-content{
    width:100%;
    max-width:none;
    font-size:18px;
    line-height:2.02;
  }
  .blog-detail-page .article-rich-content p{
    font-size:inherit;
    line-height:inherit;
    margin-bottom:1.3em;
  }
  .blog-detail-page .article-rich-content h2{
    font-size:30px;
    line-height:1.22;
    margin-top:1.55em;
    margin-bottom:.5em;
  }
  .blog-detail-page .article-rich-content h3{
    font-size:24px;
    line-height:1.28;
    margin-top:1.45em;
    margin-bottom:.45em;
  }
  .blog-detail-page .article-rich-content h4{
    font-size:20px;
    line-height:1.35;
    margin-top:1.35em;
  }
  .blog-detail-page .article-rich-content ul,
  .blog-detail-page .article-rich-content ol{
    padding-inline-start:1.35em;
    margin-block:1em 1.55em;
  }
  .blog-detail-page .article-rich-content li+li{margin-top:.42em}
  .blog-detail-page .article-rich-content blockquote{
    margin:1.8rem 0;
    padding:1rem 1.15rem;
  }
  .blog-detail-page .article-rich-content img{
    width:100%;
    height:auto;
    border-radius:16px;
    margin:1.65rem 0;
  }
}

/* =========================================================
   Phase 3.8 — Booking Frontend
   ========================================================= */
.booking-page{background:#fffdf9}
.booking-hero{background:#0b0b0b;color:#fff;padding:150px 0 92px;overflow:hidden;position:relative}
.booking-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 16%,rgba(184,136,66,.15),transparent 29%)}
.booking-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:82px;align-items:center}
.booking-hero-copy h1{font:500 clamp(52px,5.5vw,86px)/1.1 Georgia,"Noto Serif Arabic",serif;letter-spacing:-.03em;margin:22px 0 24px;max-width:760px}
html[dir=rtl] .booking-hero-copy h1{line-height:1.35;letter-spacing:-.015em}
.booking-hero-copy>p{font-size:16px;line-height:2;color:rgba(255,255,255,.68);max-width:620px;margin:0}
.booking-assurance{margin-top:38px;padding-top:24px;border-top:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;max-width:590px}
.booking-assurance span{color:#d8b474;font-size:11px;letter-spacing:.14em}.booking-assurance p{margin:0;font-size:12px;color:rgba(255,255,255,.58);line-height:1.8}
.booking-hero-media{min-height:620px;border:1px solid rgba(216,180,116,.24);border-radius:300px 300px 24px 24px;overflow:hidden;background:#14110d;display:grid;place-items:center;box-shadow:0 50px 100px rgba(0,0,0,.35)}
.booking-hero-media img{width:100%;height:620px;object-fit:cover}.booking-hero-media .internal-monogram{width:100%;height:100%;min-height:620px}
.booking-form-section{background:#f8f5ef}.booking-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.booking-copy{position:sticky;top:130px}.booking-copy h2{font:500 clamp(40px,4.3vw,64px)/1.14 Georgia,"Noto Serif Arabic",serif;margin:18px 0}.booking-copy>p{color:#746f67;line-height:2;font-size:15px}.booking-whatsapp{margin-top:22px}
.booking-card{background:#fff;border:1px solid rgba(25,23,20,.09);border-radius:28px;padding:42px;box-shadow:0 30px 90px rgba(32,24,15,.07)}
.booking-form{display:grid;gap:24px}.booking-fields{display:grid;gap:18px}.booking-fields.two{grid-template-columns:1fr 1fr}.booking-form label,.booking-field-wide{display:grid;gap:9px;font-size:13px;font-weight:700}.booking-form input,.booking-form select,.booking-form textarea{width:100%;border:1px solid rgba(25,23,20,.14);background:#fffdf9;color:#191714;border-radius:14px;padding:14px 16px;outline:0;transition:.2s}.booking-form input,.booking-form select{min-height:54px}.booking-form textarea{resize:vertical;min-height:128px}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:#b88842;box-shadow:0 0 0 3px rgba(184,136,66,.09)}
.booking-submit-row{margin-top:8px;padding-top:26px;border-top:1px solid rgba(25,23,20,.09);display:flex;align-items:center;justify-content:space-between;gap:28px}.booking-submit-row p{margin:0;max-width:500px;color:#746f67;font-size:11px;line-height:1.8}.booking-submit-row .button{min-width:190px}.field-error{color:#a33b32;font-size:11px;font-weight:600}.booking-error-summary{padding:14px 18px;border-radius:12px;background:#fff0ee;color:#8b2d27;margin-bottom:22px;border:1px solid #f1c6c1}.booking-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.booking-success{text-align:center;padding:30px 12px}.booking-success h2{font:500 clamp(34px,4vw,52px)/1.25 Georgia,"Noto Serif Arabic",serif;margin:18px auto;max-width:720px}.booking-success p{color:#746f67;max-width:620px;margin:0 auto 26px;line-height:2}.booking-reference{margin:26px auto;padding:18px 24px;max-width:420px;border:1px solid rgba(184,136,66,.25);border-radius:14px;background:#fbf7ef;display:grid;gap:4px}.booking-reference small{color:#746f67}.booking-reference strong{font:700 19px/1.3 Arial,sans-serif;letter-spacing:.06em}
@media(max-width:900px){.booking-hero-grid,.booking-layout{grid-template-columns:1fr}.booking-hero-grid{gap:48px}.booking-hero-copy{order:0}.booking-hero-media{order:1;min-height:520px}.booking-hero-media img{height:520px}.booking-copy{position:static}.booking-layout{gap:44px}.booking-fields.two{grid-template-columns:1fr}}
@media(max-width:760px){.booking-hero{padding:112px 0 62px}.booking-hero-copy h1{font-size:42px;line-height:1.08;margin:18px 0}html[dir=rtl] .booking-hero-copy h1{font-size:38px;line-height:1.45}.booking-hero-copy>p{font-size:14px;line-height:1.9}.booking-assurance{margin-top:28px}.booking-hero-media{min-height:430px;border-radius:210px 210px 18px 18px}.booking-hero-media img{height:430px}.booking-form-section{padding-top:82px;padding-bottom:82px}.booking-card{padding:24px 18px;border-radius:20px}.booking-form{gap:18px}.booking-form input,.booking-form select{min-height:52px}.booking-submit-row{align-items:stretch;flex-direction:column}.booking-submit-row .button{width:100%}.booking-success{padding:16px 2px}.booking-success h2{font-size:34px} }


/* Phase 3.8.1 — Booking data integrity & overflow hardening */
html,body{max-width:100%;overflow-x:hidden}
.booking-page,.booking-page main,.booking-page section,.booking-page .site-shell,.booking-page .booking-layout,.booking-page .booking-card,.booking-page .booking-form,.booking-page .booking-fields,.booking-page label{min-width:0;max-width:100%}
.booking-hero-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.booking-layout{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
.booking-fields.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.booking-form input,.booking-form select,.booking-form textarea{min-width:0;max-width:100%}
.booking-form select:disabled{opacity:.55;cursor:not-allowed;background:#f1eee8}
@media(max-width:900px){.booking-layout,.booking-hero-grid,.booking-fields.two{grid-template-columns:minmax(0,1fr)}}

/* =========================================================
   Phase 3.9.5 — Booking mobile paint / horizontal-position hardening
   Fixes the booking page rendering off-canvas on real mobile devices.
   Scope is intentionally limited to booking-page.
   ========================================================= */
@media (max-width: 900px){
  html,
  body.booking-page,
  body.booking-page main{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding-inline:0 !important;
    transform:none !important;
    translate:none !important;
    overflow-x:clip !important;
  }

  body.booking-page .site-header{
    left:0 !important;
    right:0 !important;
    inset-inline:auto !important;
    width:100vw !important;
    max-width:100vw !important;
    min-width:0 !important;
    transform:none !important;
  }

  body.booking-page .header-inner,
  body.booking-page .mobile-menu-inner{
    width:min(calc(100% - 32px), var(--shell)) !important;
    max-width:calc(100% - 32px) !important;
    min-width:0 !important;
    margin-inline:auto !important;
  }

  body.booking-page .booking-hero,
  body.booking-page .booking-form-section{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    inset-inline:auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    translate:none !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  body.booking-page .booking-hero{
    display:block !important;
    background:#0b0b0b !important;
    color:#fff !important;
    overflow:hidden !important;
  }

  body.booking-page .booking-hero > .site-shell,
  body.booking-page .booking-form-section > .site-shell{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    inset-inline:auto !important;
    width:calc(100% - 32px) !important;
    max-width:calc(100% - 32px) !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
    transform:none !important;
    translate:none !important;
  }

  body.booking-page .booking-hero-grid,
  body.booking-page .booking-layout{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    transform:none !important;
    translate:none !important;
  }

  body.booking-page .booking-hero-copy,
  body.booking-page .booking-hero-media,
  body.booking-page .booking-copy,
  body.booking-page .booking-card{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    inset-inline:auto !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    transform:none !important;
    translate:none !important;
    visibility:visible !important;
    opacity:1 !important;
  }
}

@media (max-width: 760px){
  body.booking-page .booking-hero{
    padding:104px 0 58px !important;
  }
  body.booking-page .booking-hero-grid{
    gap:32px !important;
  }
  body.booking-page .booking-hero-copy h1{
    font-size:clamp(34px,10vw,42px) !important;
    line-height:1.45 !important;
    margin:16px 0 18px !important;
  }
  body.booking-page .booking-hero-copy > p{
    font-size:14px !important;
    line-height:1.9 !important;
  }
  body.booking-page .booking-hero-media,
  body.booking-page .booking-hero-media img{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
  }
  body.booking-page .booking-hero-media{
    aspect-ratio:4/5 !important;
    border-radius:180px 180px 18px 18px !important;
  }
  body.booking-page .booking-hero-media img{
    height:100% !important;
    object-fit:cover !important;
  }
  body.booking-page .booking-form-section{
    padding:72px 0 !important;
  }
}
/* =========================================================
   Booking Mobile — Copy / Form overlap fix
   ========================================================= */
@media (max-width: 900px) {

  .booking-page .booking-form-section .booking-layout {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 28px !important;
    align-items: stretch !important;
  }

  .booking-page .booking-copy {
    position: relative !important;
    top: auto !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 2px 4px !important;
    transform: none !important;
    z-index: 1 !important;
  }

  .booking-page .booking-copy h2 {
    margin-top: 14px !important;
    margin-bottom: 14px !important;
  }

  .booking-page .booking-copy > p {
    margin: 0 !important;
  }

  .booking-page .booking-whatsapp {
    display: inline-flex !important;
    margin-top: 18px !important;
  }

  .booking-page .booking-card {
    position: relative !important;
    top: auto !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
    z-index: 2 !important;
  }
}

@media (max-width: 760px) {

  .booking-page .booking-form-section {
    padding-top: 52px !important;
  }

  .booking-page .booking-form-section .booking-layout {
    gap: 24px !important;
  }

  .booking-page .booking-copy h2 {
    font-size: 32px !important;
    line-height: 1.35 !important;
  }

  .booking-page .booking-copy > p {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }
}
/* =========================================================
   Phase 3.9.6 — Homepage Service Areas Cards
   Restores compact premium cards on desktop and clean stacking
   on tablet/mobile. Scoped to homepage only.
   ========================================================= */

.home-areas-section{
  background:#101010;
  color:#fff;
}

.home-areas-section .section-heading{
  max-width:760px;
}

.home-area-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  width:100%;
  align-items:stretch;
}

.home-area-card{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:#151515;
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}

.home-area-card:hover{
  transform:translateY(-5px);
  border-color:rgba(216,183,126,.34);
  box-shadow:0 24px 60px rgba(0,0,0,.24);
}

.home-area-card-link{
  display:flex;
  flex-direction:column;
  height:100%;
  color:#fff;
  text-decoration:none;
}

.home-area-media{
  position:relative;
  width:100%;
  aspect-ratio:4 / 3;
  overflow:hidden;
  background:#17120d;
}

.home-area-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .65s cubic-bezier(.2,.7,.2,1);
}

.home-area-card:hover .home-area-media img{
  transform:scale(1.035);
}

.home-area-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.34),transparent 52%);
  pointer-events:none;
}

.home-area-no{
  position:absolute;
  top:16px;
  inset-inline-start:16px;
  z-index:2;
  display:grid;
  place-items:center;
  min-width:38px;
  height:30px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(10,10,10,.72);
  border:1px solid rgba(216,183,126,.35);
  color:#e0c18c;
  font:600 11px/1 Arial,sans-serif;
  letter-spacing:.08em;
  backdrop-filter:blur(8px);
}

.home-area-content{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:24px 24px 26px;
}

.home-area-content h3{
  margin:0 0 10px;
  color:#fff;
  font:500 30px/1.35 Georgia,"Noto Serif Arabic",serif;
}

[dir=rtl] .home-area-content h3{
  line-height:1.55;
}

.home-area-content p{
  margin:0;
  color:rgba(255,255,255,.58);
  font-size:13px;
  line-height:1.9;
}

.home-area-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:auto;
  padding-top:22px;
  color:#d8b77e;
  font-size:12px;
  font-weight:700;
}

.home-area-cta b{
  font-weight:400;
  transition:transform .2s ease;
}

.home-area-card:hover .home-area-cta b{
  transform:translate(3px,-3px);
}

[dir=rtl] .home-area-card:hover .home-area-cta b{
  transform:translate(-3px,-3px);
}

@media (max-width:1100px){
  .home-area-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px){
  .home-areas-section{
    padding-top:76px;
    padding-bottom:76px;
  }

  .home-area-grid{
    grid-template-columns:minmax(0,1fr);
    gap:18px;
  }

  .home-area-card{
    border-radius:18px;
  }

  .home-area-media{
    aspect-ratio:16 / 10;
  }

  .home-area-content{
    padding:20px 20px 22px;
  }

  .home-area-content h3{
    font-size:25px;
  }

  .home-area-content p{
    font-size:12.5px;
    line-height:1.8;
  }

  .home-area-cta{
    padding-top:18px;
  }
}
/* =========================================================
   Phase 3.9.7 — Homepage Action Links as Clear Buttons
   Scope: homepage action links only.
   Does NOT alter navigation, cards, typography, images, spacing
   outside the action links themselves.
   ========================================================= */

/* Plain action links on light sections:
   service details, about CTA, blog/read-more, etc. */
.homepage-sections .text-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:42px !important;
  padding:9px 17px !important;
  border:1px solid rgba(25,23,20,.22) !important;
  border-radius:999px !important;
  background:transparent !important;
  color:var(--ink) !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1 !important;
  transition:
    background-color .22s ease,
    color .22s ease,
    border-color .22s ease,
    transform .22s ease,
    box-shadow .22s ease !important;
}

.homepage-sections .text-link:hover{
  background:#111 !important;
  color:#fff !important;
  border-color:#111 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 10px 24px rgba(0,0,0,.10) !important;
}

.homepage-sections .text-link span{
  color:var(--gold) !important;
}

.homepage-sections .text-link:hover span{
  color:var(--gold2) !important;
}

/* Same treatment when the action sits on a dark section */
.homepage-sections .text-link.light-link{
  border-color:rgba(255,255,255,.34) !important;
  color:#fff !important;
  background:rgba(255,255,255,.035) !important;
}

.homepage-sections .text-link.light-link:hover{
  background:#fff !important;
  color:#111 !important;
  border-color:#fff !important;
}

/* CTA inside homepage service-area cards.
   The whole card remains clickable; this only gives the CTA a visible shape. */
.home-areas-section .home-area-cta{
  align-self:flex-start !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:40px !important;
  padding:9px 16px !important;
  margin-top:20px !important;
  border:1px solid rgba(216,183,126,.48) !important;
  border-radius:999px !important;
  background:rgba(216,183,126,.06) !important;
  color:#e1c28d !important;
  line-height:1 !important;
  transition:
    background-color .22s ease,
    color .22s ease,
    border-color .22s ease,
    transform .22s ease !important;
}

.home-area-card:hover .home-area-cta{
  background:linear-gradient(135deg,#bc8d4d,#e1c28d) !important;
  color:#15110c !important;
  border-color:transparent !important;
}

.home-area-card:hover .home-area-cta b{
  color:#15110c !important;
}

/* Mobile: preserve the same visual language without oversized controls */
@media (max-width:760px){
  .homepage-sections .text-link{
    min-height:40px !important;
    padding:8px 15px !important;
    font-size:11px !important;
  }

  .home-areas-section .home-area-cta{
    min-height:38px !important;
    padding:8px 14px !important;
    font-size:11px !important;
  }
}
