@font-face{font-family:'Tajawal';src:url('../fonts/tajawal/Tajawal-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('../fonts/tajawal/Tajawal-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('../fonts/tajawal/Tajawal-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Tajawal';src:url('../fonts/tajawal/Tajawal-ExtraBold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Reem Kufi';src:url('../fonts/reemkufi/ReemKufi-Variable.ttf') format('truetype-variations');font-weight:400 700;font-style:normal;font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Tajawal,system-ui,sans-serif;color:#211a2d;background:#fbfafc}.site-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 max(18px,5vw);background:rgba(255,255,255,.91);backdrop-filter:blur(14px);border-bottom:1px solid #e9e4ee;position:sticky;top:0;z-index:20}.site-brand{display:flex;align-items:center;gap:9px;color:#211a2d;text-decoration:none}.site-brand span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#7040e7;color:#fff;font-family:"Reem Kufi";font-size:24px}.site-header nav{display:flex;gap:15px}.site-header nav a{color:#5e5568;text-decoration:none;font-weight:700}.hero-home{padding:75px max(18px,7vw);background:radial-gradient(circle at 85% 20%,#dcd0ff,transparent 35%),radial-gradient(circle at 10% 100%,#ffe3e8,transparent 35%),#f9f6ff;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;min-height:550px}.hero-home h1{font-family:"Reem Kufi";font-size:clamp(42px,7vw,76px);line-height:1.2;margin:0 0 15px}.hero-home p{font-size:19px;color:#6e6577;line-height:1.8;max-width:650px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.hero-actions a{padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:800}.hero-actions .primary{background:#6e3fe6;color:#fff}.hero-actions .secondary{background:#fff;color:#392763;border:1px solid #e3dcf0}.hero-visual{display:grid;grid-template-columns:1fr 1fr;gap:12px;transform:rotate(-2deg)}.hero-visual img{width:100%;height:410px;object-fit:cover;border-radius:28px;box-shadow:0 25px 50px rgba(42,26,66,.18)}.hero-visual img:last-child{transform:translateY(30px)}.section{padding:65px max(18px,5vw)}.section-head{text-align:center;max-width:680px;margin:0 auto 32px}.section-head h2{font-family:"Reem Kufi";font-size:42px;margin:0}.section-head p{color:#776e80}.filters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filters button{border:1px solid #e4dfea;background:#fff;border-radius:999px;padding:9px 15px;font-family:inherit;font-weight:800;cursor:pointer}.filters button.active{background:#6e3fe6;color:#fff;border-color:#6e3fe6}.public-theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1450px;margin:auto}.public-theme{background:#fff;border:1px solid #e8e3ed;border-radius:22px;overflow:hidden;box-shadow:0 14px 40px rgba(43,26,67,.07)}.public-theme-images{display:grid;grid-template-columns:1fr 1fr;height:250px;padding:5px;gap:5px;background:#eee}.public-theme-images img{width:100%;height:100%;object-fit:cover;border-radius:16px}.public-theme-body{padding:16px}.public-theme h3{margin:0 0 7px}.public-theme p{color:#766e7d;font-size:13px;line-height:1.7;height:44px;overflow:hidden}.public-theme-footer{display:flex;gap:8px;margin-top:12px}.public-theme-footer a{flex:1;text-align:center;text-decoration:none;padding:9px;border-radius:11px;font-weight:800;font-size:13px;background:#6e3fe6;color:#fff}.public-theme-footer a:last-child{background:#f0ecf9;color:#5c3bb4}.site-footer{text-align:center;background:#21192d;color:#fff;padding:45px 20px}.site-footer p{opacity:.65}.setup-callout{padding:13px;text-align:center;background:#fff2c9;color:#75570a;font-weight:800}.not-found{min-height:70vh;display:grid;place-items:center;text-align:center;padding:30px}
@media(max-width:1100px){.public-theme-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:780px){.hero-home{grid-template-columns:1fr;padding-top:55px}.hero-visual{display:none}.public-theme-grid{grid-template-columns:repeat(2,1fr)}.site-header nav a:first-child{display:none}}@media(max-width:520px){.public-theme-grid{grid-template-columns:1fr}.public-theme-images{height:310px}.section-head h2{font-size:34px}}

/* Dawati Pro v6 — customer order flow */
.public-theme-footer .request-theme{background:#6d3ee8;color:#fff;border-color:#6d3ee8}
.order-page{width:min(1180px,calc(100% - 32px));margin:38px auto 70px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:start}
.order-summary,.order-form-card,.order-status-card{background:#fff;border:1px solid #e9e4ee;border-radius:24px;box-shadow:0 18px 55px rgba(42,27,67,.08)}
.order-summary{padding:18px;position:sticky;top:90px}.order-summary img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px}.order-summary p{color:#81788d;margin:18px 0 2px}.order-summary h1{margin:0 0 7px;font-size:25px}.order-summary span{display:block;color:#81788d;margin-bottom:14px}.order-summary a{display:flex;justify-content:center;text-decoration:none;font-weight:800;color:#292526;border:1px solid #E8DEDA;border-radius:13px;padding:11px}
.order-form-card{padding:26px}.order-form{display:grid;gap:20px}.order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.order-grid label{display:grid;gap:7px;font-weight:800;font-size:13px}.order-grid label.full{grid-column:1/-1}.order-grid input,.order-grid select,.order-grid textarea{width:100%;border:1px solid #ded8e7;border-radius:13px;padding:12px 13px;font:inherit;color:#211a2d;background:#fff;outline:none}.order-grid input:focus,.order-grid select:focus,.order-grid textarea:focus{border-color:#6d3ee8;box-shadow:0 0 0 3px rgba(109,62,232,.1)}.order-grid small{font-weight:400;color:#81788d}.order-sections{border:1px solid #e5dfeb;border-radius:17px;padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.order-sections legend{font-weight:800;padding:0 8px}.order-sections label{display:flex;align-items:center;gap:7px;padding:10px;border:1px solid #eee9f2;border-radius:11px;background:#fcfbfd}.order-sections input{accent-color:#292526}.order-submit{display:flex;width:100%;justify-content:center;align-items:center;text-decoration:none;border:0;border-radius:14px;padding:14px 18px;background:#6d3ee8;color:#fff;font:inherit;font-weight:800;cursor:pointer}.order-alert,.order-success,.order-note{padding:13px 15px;border-radius:13px}.order-alert{background:#fff0f1;color:#9b2736}.order-success{background:#e8f7f0;color:#176647;font-weight:800}.order-note{background:#F2ECE8;color:#786F72;line-height:1.8}.order-honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.order-status-page{min-height:calc(100vh - 170px);display:grid;place-items:center;padding:40px 16px}.order-status-card{width:min(100%,600px);padding:30px;text-align:center}.order-status-card h1{font-size:35px;margin:3px 0 14px}.order-status-card .status{margin-bottom:20px}.order-status-card dl{display:grid;gap:9px;margin:22px 0;text-align:right}.order-status-card dl div{display:flex;justify-content:space-between;gap:16px;padding:12px;border-bottom:1px solid #eee9f2}.order-status-card dt{color:#81788d}.order-status-card dd{margin:0;font-weight:800}.order-copy{width:100%;margin-top:10px;border:1px solid #ded8e7;background:#fff;border-radius:13px;padding:12px;font:inherit;font-weight:800;cursor:pointer}.status.new{background:#fff3d8;color:#7b570b}.status.in_progress{background:#eef2ff;color:#3a4b9b}.status.awaiting_approval{background:#F5E9D1;color:#765A27}.status.completed{background:#e3f5ed;color:#126e4f}.status.cancelled{background:#fff0f1;color:#9b2736}
@media(max-width:850px){.order-page{grid-template-columns:1fr}.order-summary{position:static;display:grid;grid-template-columns:120px 1fr;gap:15px;align-items:center}.order-summary img{aspect-ratio:4/5}.order-summary p{margin-top:0}.order-grid{grid-template-columns:1fr}.order-grid label.full{grid-column:auto}.order-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.order-page{width:min(100% - 20px,1180px);margin-top:18px}.order-summary{grid-template-columns:90px 1fr;padding:12px}.order-form-card{padding:18px}.order-sections{grid-template-columns:1fr}}

/* Dawati Pro v6 commercial order flow */
.compact-order{max-width:1050px}.selected-theme-note{border:1px dashed #DAB8BE;border-radius:16px;padding:16px;text-align:center;font-weight:800;margin-bottom:18px;background:#FBF3F4}.package-picker{border:0;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.package-picker legend{font-weight:800;margin-bottom:10px}.package-card{cursor:pointer}.package-card input{position:absolute;opacity:0}.package-card span{display:flex;min-height:105px;box-sizing:border-box;border:2px solid #eadfd7;border-radius:18px;padding:14px;align-items:center;justify-content:center;text-align:center;flex-direction:column;gap:5px;background:#fff}.package-card input:checked+span{border-color:#DAB8BE;background:#FBF3F4;box-shadow:0 8px 22px rgba(218,184,190,.25)}.package-card strong{font-size:17px}.package-card em{font-style:normal;color:#784D56;font-weight:800}.package-card small{font-size:11px;color:#777}.discount-box{margin:18px 0}.discount-row{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:7px}.discount-row input{min-width:0}.discount-ok{color:#0a8c55;font-weight:700}.discount-error{color:#b42338;font-weight:700}.price-summary{display:flex;justify-content:space-between;align-items:center;padding:18px;border-radius:16px;background:#fff8f0;margin:16px 0;font-size:19px}.price-summary b{color:#784D56}.price-summary del{color:#8d8592;font-size:14px;margin-left:8px}.whatsapp-submit{display:block;text-align:center;background:#25D366!important;margin-top:10px}
@media(max-width:700px){.package-picker{grid-template-columns:1fr}.package-card span{min-height:82px}.discount-row{grid-template-columns:1fr}.compact-order .order-summary{position:static}}

/* Dawati Pro v7 — واجهة تجارية مبسطة */
.site-header{height:auto;min-height:72px;gap:24px}.site-header nav{align-items:center}.site-menu{display:none;border:0;background:#E8DEDA;color:#292526;width:42px;height:42px;border-radius:13px;font-size:22px;cursor:pointer}.nav-whatsapp{background:#25D366!important;color:#fff!important;padding:9px 15px;border-radius:999px}.hero-home{min-height:610px}.hero-kicker,.section-kicker{display:inline-flex;align-items:center;gap:7px;color:#765A27;background:#F5E9D1;border-radius:999px;padding:7px 12px;font-weight:800;font-size:13px}.hero-home h1{margin-top:18px}.hero-actions .whatsapp{background:#25D366;color:#fff}.hero-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px;color:#685e73;font-size:13px;font-weight:700}.steps-section{background:#fff}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1100px;margin:auto}.steps-grid article{border:1px solid #ece7f1;border-radius:24px;padding:25px;background:linear-gradient(180deg,#fff,#fbf9ff)}.steps-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#292526;color:#fff;font-weight:800}.steps-grid h3{margin:18px 0 7px;font-size:20px}.steps-grid p{margin:0;color:#746b7c;line-height:1.8}.packages-section{background:#f8f5fd}.public-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;max-width:1150px;margin:auto;align-items:stretch}.public-package{position:relative;background:#fff;border:1px solid #e7e1ed;border-radius:26px;padding:25px;box-shadow:0 15px 40px rgba(45,28,70,.06);display:flex;flex-direction:column}.public-package.highlighted{border:2px solid #C4A36B;transform:translateY(-7px);box-shadow:0 20px 50px rgba(41,37,38,.12)}.package-badge{position:absolute;top:-13px;right:22px;background:#F5E9D1;color:#765A27;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:800}.public-package h3{margin:5px 0 13px;font-size:23px}.package-price{display:flex;align-items:baseline;gap:7px;margin-bottom:14px}.package-price strong{font-size:38px;color:#292526}.package-price span{color:#6f6678;font-weight:700}.package-price del{color:#a49ba9}.public-package p{color:#756c7d;line-height:1.7;min-height:52px}.public-package ul{list-style:none;padding:0;margin:8px 0 22px;display:grid;gap:10px;color:#4e4656}.public-package a{margin-top:auto;text-align:center;text-decoration:none;background:#292526;color:#fff;padding:12px;border-radius:14px;font-weight:800}.template-toolbar{max-width:1450px;margin:0 auto 16px;display:grid;grid-template-columns:minmax(240px,1fr) 190px auto;gap:10px;align-items:center}.template-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e3dfea;border-radius:14px;padding:0 13px}.template-search input{border:0;outline:0;background:transparent;width:100%;padding:12px 0;font:inherit}.template-toolbar select{border:1px solid #e3dfea;border-radius:14px;padding:12px;background:#fff;font:inherit}.results-count{color:#746b7d;font-weight:700;white-space:nowrap}.filters button small{opacity:.7;margin-inline-start:3px}.public-theme[hidden]{display:none!important}.chips{display:flex;gap:5px;flex-wrap:wrap;min-height:23px}.occasion-badge,.theme-badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.occasion-badge{background:#F2ECE8;color:#786F72}.theme-badge.featured{background:#fff0c9;color:#8a6300}.theme-badge.new{background:#e4f8ee;color:#16724c}.theme-start-price{margin-top:10px;color:#776e80;font-size:12px}.theme-start-price strong{color:#292526}.theme-empty{max-width:900px;margin:20px auto}.final-cta{margin:30px max(18px,5vw) 65px;padding:42px;border-radius:30px;background:linear-gradient(135deg,#211d1e,#3d3739);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:24px}.final-cta h2{font-size:35px;margin:12px 0}.final-cta p{opacity:.8;max-width:650px}.final-cta>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.final-cta a{padding:12px 20px;border-radius:999px;text-decoration:none;font-weight:800}.final-cta .primary{background:#25D366;color:#fff}.final-cta .secondary{background:#fff;color:#292526}.site-footer{text-align:initial;padding:50px max(18px,5vw) 20px}.footer-inner{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:35px;max-width:1250px;margin:auto}.footer-brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none}.footer-brand span{width:40px;height:40px;border-radius:13px;background:#7040e7;display:grid;place-items:center;font-size:23px}.footer-inner p{max-width:440px;line-height:1.8}.footer-links,.footer-contact{display:grid;align-content:start;gap:9px}.footer-links a{color:#DDD1CA;text-decoration:none}.social-links{display:flex;gap:9px}.social-links a{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:13px;color:#fff}.social-links svg,.floating-whatsapp svg{width:22px;height:22px}.footer-copy{max-width:1250px;margin:35px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);color:#B7ACA3;font-size:12px}.floating-whatsapp{position:fixed;left:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:8px;background:#25D366;color:#fff;text-decoration:none;padding:12px 16px;border-radius:999px;font-weight:800;box-shadow:0 14px 35px rgba(16,130,70,.28)}
.order-payment-note{background:#f4f1fa;border:1px solid #e5dff0;border-radius:14px;padding:13px 15px;color:#655b70;line-height:1.7}.package-card{position:relative}.package-card .package-public-badge{position:absolute;top:-8px;right:12px;background:#F5E9D1;color:#765A27;padding:4px 8px;border-radius:999px;font-size:10px;z-index:2}.package-card ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:4px;color:#675e70;font-size:11px}.package-card del{font-size:11px;color:#958d9c;margin-left:5px}
@media(max-width:900px){.site-menu{display:grid;place-items:center}.site-header nav{display:none;position:absolute;top:65px;left:16px;right:16px;background:#fff;border:1px solid #e8e3ee;border-radius:18px;padding:12px;box-shadow:0 20px 50px rgba(36,23,53,.16);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{padding:10px 12px;border-radius:10px}.steps-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}.footer-inner>div:first-child{grid-column:1/-1}.template-toolbar{grid-template-columns:1fr 160px}.results-count{grid-column:1/-1}.final-cta{align-items:flex-start;flex-direction:column}.public-package.highlighted{transform:none}}
@media(max-width:600px){.hero-home{min-height:auto}.hero-trust{display:grid;gap:8px}.public-package-grid{grid-template-columns:1fr}.template-toolbar{grid-template-columns:1fr}.template-toolbar select,.results-count{grid-column:auto}.footer-inner{grid-template-columns:1fr}.footer-inner>div:first-child{grid-column:auto}.floating-whatsapp span{display:none}.floating-whatsapp{width:50px;height:50px;padding:0;justify-content:center}.final-cta{margin-inline:10px;padding:28px 20px}.final-cta h2{font-size:29px}}


/* Lahzatna v8 RC — soft ivory brand shell (public site only) */
:root{--lh-bg:#FAF7F2;--lh-card:#FFFFFF;--lh-ink:#292526;--lh-muted:#786F72;--lh-line:#E8DEDA;--lh-gold:#C4A36B;--lh-rose:#DAB8BE}
body{color:var(--lh-ink);background:var(--lh-bg)}
.site-header{background:rgba(250,247,242,.94);border-color:var(--lh-line)}
.site-brand,.site-header nav a{color:var(--lh-ink)}
.site-brand span,.footer-brand span{background:var(--lh-ink);color:#fff}
.hero-home{background:radial-gradient(circle at 84% 16%,rgba(218,184,190,.35),transparent 34%),radial-gradient(circle at 8% 95%,rgba(196,163,107,.18),transparent 38%),var(--lh-bg)}
.hero-actions .primary,.filters button.active,.public-theme-footer a,.request-theme,.order-submit{background:var(--lh-ink)!important;border-color:var(--lh-ink)!important;color:#fff!important}
.hero-actions .secondary,.public-theme-footer a:last-child{background:#fff;color:var(--lh-ink);border-color:var(--lh-gold)}
.public-theme,.order-summary,.order-form-card,.order-status-card{border-color:var(--lh-line);box-shadow:0 14px 38px rgba(41,37,38,.07)}
.filters button,.order-grid input,.order-grid select,.order-grid textarea{border-color:var(--lh-line)}
.order-grid input:focus,.order-grid select:focus,.order-grid textarea:focus{border-color:var(--lh-gold);box-shadow:0 0 0 3px rgba(196,163,107,.16)}
.site-footer{background:var(--lh-ink)}
.theme-badge.featured,.package-public-badge{background:#F5E9D1;color:#765A27}.theme-badge.new{background:#F4E4E7;color:#784D56}

/* Lahzatna v8 Phase 2.1 — visual alignment with approved reference (rose/gold balance, softer composition) */
.site-header{border-color:var(--lh-line)}
.site-brand{gap:8px}
.brand-heart{width:22px;height:22px;color:var(--lh-rose);flex:0 0 auto}
.site-brand{min-width:0;flex:1 1 auto}
.site-brand strong{font-family:'Reem Kufi';font-weight:400;font-size:21px;overflow-wrap:anywhere;min-width:0;flex:1 1 auto}
.footer-brand{min-width:0}
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:520px){.site-brand strong{font-size:16px}}
.footer-brand .brand-heart{color:var(--lh-rose)}
.nav-cta{background:var(--lh-rose)!important;color:var(--lh-ink)!important;padding:9px 16px;border-radius:999px;font-weight:800;text-decoration:none}
.filters button{border-color:var(--lh-line)}
.public-theme{border-color:var(--lh-line)}
.public-package{border-color:#EAD9BE}
.steps-grid article{border-color:var(--lh-line);background:linear-gradient(180deg,#fff,#FBF3F4)}
.packages-section{background:#FCF1EF}
.template-search,.template-toolbar select{border-color:var(--lh-line)}
.order-grid input,.order-grid select,.order-grid textarea,.order-copy{border-color:var(--lh-line)}
.order-sections{border-color:var(--lh-line)}
.order-sections label{border-color:var(--lh-line);background:#fff}
.order-status-card dl div{border-color:var(--lh-line)}
.order-payment-note{background:#FBF3F4;border-color:var(--lh-rose);color:var(--lh-muted)}

.hero-actions .primary{background:var(--lh-rose)!important;border-color:var(--lh-rose)!important;color:var(--lh-ink)!important}
.filters button.active{background:var(--lh-rose)!important;border-color:var(--lh-rose)!important;color:var(--lh-ink)!important}
.public-theme-footer a{background:var(--lh-rose)!important;border-color:var(--lh-rose)!important;color:var(--lh-ink)!important}
.public-package a{background:var(--lh-rose);color:var(--lh-ink)}
.public-package.highlighted a{background:var(--lh-ink);color:#fff}
.steps-grid article>span{background:#F4E4E7;color:#784D56;border-radius:50%}

@media(min-width:781px){
.hero-visual{display:flex;align-items:center;justify-content:center;position:relative;min-height:420px;transform:none;overflow:hidden}
.hero-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,rgba(218,184,190,.4),transparent 60%),radial-gradient(circle at 85% 85%,rgba(196,163,107,.32),transparent 55%);filter:blur(6px);z-index:0}
.hero-phone{position:relative;z-index:1;width:270px;max-width:100%;border-radius:40px;background:var(--lh-ink);padding:12px;box-shadow:0 35px 70px rgba(41,37,38,.28)}
.hero-phone img{display:block;width:100%;aspect-ratio:9/18.5;object-fit:cover;border-radius:28px}
}

.hero-home{padding:56px max(18px,7vw)}
.section{padding:52px max(18px,5vw)}
.hero-home h1{font-size:clamp(38px,6vw,60px);line-height:1.28}
.hero-home p,.section-head p{color:var(--lh-muted)}

/* Lahzatna v8 Phase 2.2A — Arabic font fix (headings) + header/hero rebuild */

/* Reem Kufi is a Kufic-revival display face with deliberately minimal letter joining;
   combined with the tight line-height below it read as broken/overlapping Arabic.
   Headings move to Tajawal (already proven correct for body copy) with generous line-height. */
.hero-home h1,.section-head h2,.site-brand strong{font-family:'Tajawal',system-ui,sans-serif}
.hero-home h1{font-weight:800;line-height:1.45;margin-top:0}
.section-head h2{font-weight:800;line-height:1.45}
.site-brand strong{font-weight:800;font-size:22px}

/* --- Header: 3-column grid, nav right / brand center / actions left (RTL) --- */
.site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px}
.site-brand{grid-column:2;justify-self:center}

/* Phase 2.2B — stronger brand presence in the header (heart intentionally kept small) */
.site-header{min-height:88px}
.site-brand{align-items:center}
.brand-heart{width:26px;height:26px}
/* neutralizes the legacy ".site-brand span" mark rule (38px ink rounded box from the old boxed
   logo) which this new wrapper span would otherwise inherit and paint over the wordmark */
.site-brand span.brand-text{width:auto;height:auto;background:none;color:inherit;border-radius:0;font-family:inherit;font-size:inherit;
  display:flex;flex-direction:column;align-items:center;place-items:center;min-width:0;line-height:1.18}
.site-brand strong{font-size:clamp(26px,2.2vw,32px)}
.brand-text small{color:var(--lh-muted);font-size:12px;font-weight:700;white-space:nowrap}
.site-header-actions{grid-column:3;justify-self:end;display:flex;align-items:center;gap:10px}
.header-social{display:flex;align-items:center;gap:8px}
.header-social a{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid var(--lh-line);color:var(--lh-ink);flex:0 0 auto}
.header-social a.nav-whatsapp{background:#fff!important;color:#25D366!important;padding:0}
.header-social a:hover{border-color:var(--lh-gold)}
.header-social svg{width:16px;height:16px}
.site-header-actions .nav-cta{white-space:nowrap}

/* nav[data-site-nav] layout is intentionally scoped to desktop only (min-width:901px) so it
   never fights the existing ≤900px ".site-header nav{display:none}" collapse rule on specificity */
@media(min-width:901px){
.site-header nav[data-site-nav]{grid-column:1;justify-self:start;display:flex;gap:18px}
.site-header nav[data-site-nav] a{font-size:15px}
}

@media(max-width:900px){
/* Phase 2.2B bugfix: this used to hide nth-child(1)+(2), assuming three icons in the order
   instagram/facebook/whatsapp. When only WhatsApp is configured it IS nth-child(1), so the
   single icon vanished on mobile. Hide by class instead — WhatsApp always survives. */
.header-social a:not(.nav-whatsapp){display:none}
/* cancels a pre-hamburger-era rule (≤780px) that hid the first nav link even inside the dropdown */
.site-header nav[data-site-nav] a:first-child{display:inline}
/* dropdown must clear the taller (88px) header */
.site-header nav[data-site-nav]{top:84px}
}
@media(max-width:560px){
.site-header{gap:8px;min-height:76px}
.site-header-actions{gap:6px}
.site-header-actions .nav-cta{padding:9px 12px;font-size:13px}
.site-brand strong{font-size:21px}
.brand-heart{width:20px;height:20px}
.brand-text small{font-size:10px}
.site-header nav[data-site-nav]{top:72px}
}

/* --- Hero rebuild --- */
.hero-home{grid-template-columns:1fr .9fr;gap:32px}
.hero-copy h1{display:flex;align-items:center;gap:10px}
.hero-heart-icon{width:.62em;height:.62em;color:var(--lh-rose);flex:0 0 auto}
.hero-title-text{min-width:0;flex:1 1 auto;overflow-wrap:break-word}
.hero-actions .secondary{border-width:1px;border-style:solid}
.hero-features{display:flex;gap:22px;flex-wrap:wrap;margin-top:26px}
.hero-features>div{display:flex;align-items:center;gap:9px;font-weight:800;font-size:14px;color:var(--lh-ink)}
.hero-features svg{width:34px;height:34px;padding:8px;border-radius:12px;background:linear-gradient(135deg,#FBF3F4,#F5E9D1);color:var(--lh-gold);flex:0 0 auto}

.hero-visual{position:relative}

/* Phase 2.2B — the six small CSS blooms/dots/candles were replaced by a real local photo.
   Source: themes/builtin/blush/assets/mem3.jpg (pink roses, lit candles, ivory bokeh, no text).
   Read-only reference to a theme asset — the same thing index.php already does for the phone
   preview. It sits ON TOP of the existing ivory gradient, so if that theme is ever removed the
   hero degrades to the plain ivory wash instead of breaking. */
.hero-scene{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero-scene::before{content:"";position:absolute;inset:-3%;
  background-image:url('../../themes/builtin/blush/assets/mem3.jpg');
  background-size:cover;background-position:center;
  filter:blur(1.5px) saturate(1.04)}
/* dissolves the photo toward the copy side (right in RTL) and into the section edges,
   so the headline and buttons always sit on calm ivory, with no hard cut line */
.hero-scene::after{content:"";position:absolute;inset:0;background:
  linear-gradient(to right,rgba(250,247,242,0) 30%,rgba(250,247,242,.72) 76%,var(--lh-bg) 100%),
  linear-gradient(to bottom,var(--lh-bg) 0%,rgba(250,247,242,0) 16%,rgba(250,247,242,0) 84%,var(--lh-bg) 100%)}

@media(max-width:780px){
.hero-home{display:flex;flex-direction:column;padding-top:32px}
/* The visual must be meaningfully TALLER than the phone. The vivid roses/candlesticks sit in the
   centre of the source frame — exactly where the phone lands — so on a narrow screen the only
   photo left visible either side is the pale outer edge. Extra height puts a real band of the
   scene above and below the device instead. */
.hero-visual{display:flex;align-items:center;justify-content:center;min-height:560px;order:-1;margin-bottom:26px;overflow:hidden;border-radius:26px}
.hero-visual::before{filter:blur(10px)}
.hero-phone{width:180px;margin:0 auto;transform:rotate(-5deg)}
.hero-phone::before{width:48px;height:13px;top:16px}
/* At this width "cover" maps the photo's FULL width onto the viewport, so the vivid rose cluster
   in the centre of the frame sits permanently behind the phone and only the pale outer thirds
   show. Zooming to 175% crops into that rose/candlestick cluster so it fills the sides instead. */
.hero-scene::before{background-size:175%;background-position:50% 58%;filter:blur(1.2px) saturate(1.06)}
.hero-scene::after{background:linear-gradient(to bottom,rgba(250,247,242,.32) 0%,rgba(250,247,242,0) 26%,rgba(250,247,242,0) 74%,rgba(250,247,242,.32) 100%)}
}
@media(max-width:520px){
.hero-features{gap:14px}
.hero-features>div{font-size:12px}
.hero-features svg{width:28px;height:28px;padding:6px}
.hero-visual{min-height:520px}
.hero-phone{width:165px}
}

/* Phase 2.2B — desktop hero composition: scene bleeds to the section edge, bigger tilted phone.
   Placed after the Phase 2.1 min-width:781px block so these win on equal specificity. */
@media(min-width:781px){
/* min-height must clear the rotated phone's bounding box: at 275px wide and a 9/19.5 screen the
   device is ~596px tall, and rotating it -6deg grows that to ~621px. 680px leaves real breathing
   room so the phone never gets clipped by the overflow:hidden bleed. */
.hero-home{grid-template-columns:1fr 1.05fr;gap:28px;align-items:center;min-height:680px;overflow:hidden}
.hero-visual{align-self:stretch;display:flex;align-items:center;justify-content:center;min-height:680px;overflow:hidden;
  margin-block:-56px;margin-inline-end:calc(-1 * max(18px,7vw))}
/* warm ivory halo directly behind the phone, above the photo, below the device */
.hero-visual::before{z-index:1;background:radial-gradient(circle at 50% 50%,rgba(255,248,238,.62),rgba(250,247,242,0) 62%);filter:blur(12px)}

.hero-phone{width:clamp(230px,19vw,275px);transform:rotate(-6deg)}
}

/* Device styling is deliberately NOT inside a media query — only its size/tilt varies by
   breakpoint. Declared after the Phase 2.1 min-width:781px block so it wins on equal specificity
   at desktop, while still applying on mobile (where 2.1 left the phone flat and bezel-less). */
.hero-phone{position:relative;z-index:2;padding:11px;border-radius:46px;
  background:linear-gradient(155deg,#413a3c 0%,#191516 42%,#322d2e 100%);
  box-shadow:0 44px 84px rgba(41,37,38,.36),0 14px 30px rgba(41,37,38,.24),inset 0 0 0 1px rgba(255,255,255,.17)}
.hero-phone img{display:block;width:100%;border-radius:36px;aspect-ratio:9/19.5;object-fit:cover}
/* speaker / dynamic-island pill */
.hero-phone::before{content:"";position:absolute;top:22px;left:50%;transform:translateX(-50%);width:64px;height:17px;border-radius:99px;background:#100d0e;z-index:3}
/* soft diagonal screen reflection */
.hero-phone::after{content:"";position:absolute;inset:11px;border-radius:36px;pointer-events:none;z-index:2;
  background:linear-gradient(115deg,rgba(255,255,255,.17) 0%,rgba(255,255,255,.05) 24%,rgba(255,255,255,0) 50%)}
/* Lahzatna v9 — client preparation portal */
.prepare-page{max-width:860px;margin:0 auto;padding:42px 18px 90px}.prepare-hero{text-align:center;background:linear-gradient(135deg,#fff,#fbf0f1);border:1px solid #ead9d4;border-radius:28px;padding:34px;box-shadow:0 18px 50px rgba(41,37,38,.08)}.prepare-hero h1{font-family:Tajawal,sans-serif;font-size:clamp(30px,5vw,48px);margin:8px 0}.prepare-hero p{color:#786f72;line-height:1.9}.prepare-hero small{display:block;color:#8b7075;margin-top:8px}.progress-line{height:10px;background:#f0e4e2;border-radius:99px;overflow:hidden;margin:22px auto 10px;max-width:560px}.progress-line span{display:block;height:100%;background:linear-gradient(90deg,#dab8be,#c4a36b)}.prepare-alert,.prepare-locked{margin:18px 0;padding:18px 22px;border-radius:18px;background:#fff;border:1px solid #e8deda}.prepare-alert.success{border-color:#addbc2}.prepare-alert.error{border-color:#dfaaa9}.prepare-card{background:#fff;border:1px solid #e8deda;border-radius:24px;padding:26px;margin:18px 0;box-shadow:0 12px 34px rgba(41,37,38,.05)}.prepare-card h2{font-family:Tajawal,sans-serif;color:#292526;margin:0 0 20px}.prepare-card label{display:block;font-weight:700;margin:14px 0 7px}.prepare-card input,.prepare-card textarea,.prepare-card select{width:100%;box-sizing:border-box;border:1px solid #dfd2ce;border-radius:14px;padding:13px 15px;background:#fff;font:inherit}.prepare-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.feature-pills{display:flex;gap:10px;flex-wrap:wrap}.feature-pills span{background:#f7ecee;border:1px solid #e7cfd4;border-radius:999px;padding:9px 13px}.prepare-actions{position:sticky;bottom:12px;background:rgba(250,247,242,.94);backdrop-filter:blur(12px);padding:12px;border:1px solid #e8deda;border-radius:18px;display:flex;gap:10px;justify-content:center}.prepare-actions .btn{min-width:190px}.prepare-locked{text-align:center;padding:35px}@media(max-width:620px){.prepare-page{padding:20px 12px 80px}.prepare-hero,.prepare-card{border-radius:20px;padding:20px}.prepare-grid{grid-template-columns:1fr}.prepare-actions{flex-direction:column}.prepare-actions .btn{width:100%}}

/* ========================================================================== 
   Lahzatna premium homepage — approved rose / ivory hero direction
   Scope: public header + homepage hero only. Other public and admin screens
   keep their existing component rules.
   ========================================================================== */
:root{
  --home-ivory:#fffaf6;
  --home-paper:#fffdfb;
  --home-ink:#282326;
  --home-muted:#84797d;
  --home-rose:#c79a57;
  --home-rose-deep:#a66d22;
  --home-rose-soft:#ead7b7;
  --home-gold:#c79a57;
  --home-gold-soft:#ead7b7;
  --home-line:rgba(177,139,102,.26);
  --home-shadow:0 24px 75px rgba(77,55,47,.12);
}
body{background:linear-gradient(180deg,#fff 0,#fcfaf8 38%,#fbfaf8 100%);color:var(--home-ink)}

/* Premium glass header */
.site-header{
  width:min(1540px,calc(100% - 32px));
  min-height:92px;height:auto;
  margin:16px auto 0;padding:0 clamp(20px,3vw,46px);
  position:sticky;top:12px;z-index:100;
  border:1px solid var(--home-line);border-radius:24px;
  background:rgba(255,252,249,.9);
  box-shadow:0 12px 42px rgba(77,55,47,.08);
  backdrop-filter:blur(18px) saturate(1.15);
  -webkit-backdrop-filter:blur(18px) saturate(1.15)
}
.site-header nav[data-site-nav]{gap:clamp(16px,2vw,30px)}
.site-header nav[data-site-nav] a{position:relative;color:#3f373a;font-weight:700;font-size:14px;transition:color .2s ease}
.site-header nav[data-site-nav] a:hover,.site-header nav[data-site-nav] a:first-child{color:var(--home-rose-deep)}
.site-header nav[data-site-nav] a:first-child::after{content:"";position:absolute;right:0;left:0;bottom:-13px;height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--home-rose),transparent)}
.site-brand{gap:10px}
.site-brand .brand-heart{width:22px;height:22px;color:#c79a57;filter:drop-shadow(0 3px 6px rgba(166,109,34,.2))}
.site-brand strong{color:#704b2d;font-size:clamp(27px,2.1vw,34px);letter-spacing:-.04em}
.site-brand .brand-text small{color:#736a6d;font-size:11px;letter-spacing:.01em}
.site-header-actions{gap:10px}
.site-header-actions .nav-cta{
  padding:12px 21px;border:1px solid rgba(166,109,34,.2);
  background:linear-gradient(135deg,#d2a653,#a66d22)!important;color:#fff!important;
  box-shadow:0 10px 24px rgba(166,109,34,.24);transition:transform .2s ease,box-shadow .2s ease
}
.site-header-actions .nav-cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(166,109,34,.3)}
.header-social a,.header-social a.nav-whatsapp{
  width:40px;height:40px;border-color:rgba(199,154,87,.34)!important;background:#fffdfb!important;
  color:#25b866!important;box-shadow:0 6px 18px rgba(77,55,47,.07)
}
.site-menu{width:44px;height:44px;border-radius:14px;background:#f3e9e4;color:var(--home-ink)}

/* Main premium hero card */
.hero-home.hero-home-premium{
  direction:ltr;
  width:min(1540px,calc(100% - 32px));min-height:680px;
  margin:18px auto 0;padding:0;
  display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);
  grid-template-areas:"visual copy";gap:0;align-items:stretch;
  position:relative;isolation:isolate;overflow:hidden;
  border:1px solid var(--home-line);border-radius:30px;
  background:
    radial-gradient(circle at 89% 10%,rgba(234,215,183,.72),transparent 28%),
    radial-gradient(circle at 52% 100%,rgba(234,215,183,.24),transparent 35%),
    var(--home-ivory);
  box-shadow:var(--home-shadow)
}
.hero-home.hero-home-premium::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:4;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.62)}
.hero-home-premium .hero-copy{
  grid-area:copy;direction:rtl;z-index:5;
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  padding:clamp(58px,6vw,96px) clamp(44px,6vw,98px) clamp(48px,5vw,82px) clamp(28px,4vw,66px)
}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  margin-bottom:24px;padding:9px 15px;border:1px solid rgba(199,154,87,.32);border-radius:999px;
  background:rgba(255,253,250,.78);color:#8b6740;font-size:13px;font-weight:800;
  box-shadow:0 8px 22px rgba(108,75,47,.05);backdrop-filter:blur(8px)
}
.hero-eyebrow svg{width:17px;height:17px;color:var(--home-gold)}
.hero-home-premium .hero-copy h1{
  width:100%;margin:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;
  color:var(--home-ink);font-family:'Tajawal',system-ui,sans-serif;font-size:clamp(48px,4.7vw,74px);font-weight:800;line-height:1.22;letter-spacing:-.045em
}
.hero-home-premium .hero-title-text{flex:0 1 auto}
.hero-home-premium .hero-title-accent{color:var(--home-rose);text-shadow:0 7px 24px rgba(185,101,118,.13)}
.hero-home-premium .hero-heart-icon{width:.48em;height:.48em;color:#c79a57;flex:0 0 auto;margin-top:7px}
.hero-home-premium .hero-copy>p{max-width:650px;margin:24px 0 0;color:var(--home-muted);font-size:clamp(17px,1.35vw,21px);font-weight:500;line-height:1.95}
.hero-home-premium .hero-actions{display:flex;gap:14px;margin-top:32px}
.hero-home-premium .hero-actions a{
  min-width:190px;min-height:58px;padding:10px 18px 10px 11px;
  display:inline-flex;align-items:center;justify-content:center;gap:16px;
  border-radius:18px;font-size:16px;font-weight:800;transition:transform .22s ease,box-shadow .22s ease,background .22s ease
}
.hero-home-premium .hero-actions a i{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-style:normal;font-size:19px;transition:transform .22s ease}
.hero-home-premium .hero-actions .primary{
  background:linear-gradient(135deg,#d2a653,#a66d22)!important;border:1px solid rgba(166,109,34,.22)!important;color:#fff!important;
  box-shadow:0 15px 32px rgba(166,109,34,.28)
}
.hero-home-premium .hero-actions .primary i{background:rgba(255,255,255,.94);color:var(--home-rose-deep)}
.hero-home-premium .hero-actions .secondary{background:rgba(255,253,250,.88);border:1px solid rgba(199,154,87,.55);color:var(--home-ink);box-shadow:0 10px 28px rgba(77,55,47,.06)}
.hero-home-premium .hero-actions .secondary i{background:#fbf4e8;color:var(--home-gold)}
.hero-home-premium .hero-actions a:hover{transform:translateY(-3px)}
.hero-home-premium .hero-actions .primary:hover{box-shadow:0 18px 38px rgba(166,109,34,.34)}
.hero-home-premium .hero-actions a:hover i{transform:translateX(-2px)}

.hero-home-premium .hero-features{
  width:min(100%,670px);margin-top:34px;padding:14px 12px;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
  border:1px solid rgba(199,154,87,.25);border-radius:22px;
  background:rgba(255,253,250,.72);box-shadow:0 16px 34px rgba(77,55,47,.06);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.hero-home-premium .hero-features>div{min-width:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:4px 12px;color:var(--home-ink)}
.hero-home-premium .hero-features>div:not(:last-child){border-left:1px solid rgba(199,154,87,.22)}
.hero-feature-icon{width:39px;height:39px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:linear-gradient(145deg,#fff,#f6ecdf);border:1px solid rgba(199,154,87,.26);color:var(--home-gold)}
.hero-feature-icon svg{width:20px;height:20px;padding:0!important;border-radius:0!important;background:none!important;color:inherit!important}
.hero-home-premium .hero-features strong,.hero-home-premium .hero-features small{display:block}
.hero-home-premium .hero-features strong{font-size:13px;white-space:nowrap}
.hero-home-premium .hero-features small{margin-top:3px;color:#a09598;font-size:10px;line-height:1.45;white-space:nowrap}

/* Editorial photo scene + real invitation preview inside a device */
.hero-home-premium .hero-visual{
  grid-area:visual;direction:rtl;position:relative;min-height:680px;margin:0;align-self:stretch;
  display:flex;align-items:center;justify-content:center;overflow:hidden;transform:none
}
.hero-home-premium .hero-visual::before{
  content:"";position:absolute;z-index:1;inset:13% 12% 9% 7%;
  border-radius:50%;background:radial-gradient(circle,rgba(255,249,240,.72),rgba(255,249,240,0) 68%);filter:blur(18px)
}
.hero-home-premium .hero-scene{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-home-premium .hero-scene::before{
  content:"";position:absolute;inset:-2%;
  background-image:url('../img/home-hero-scene.jpg');background-size:cover;background-position:52% 64%;
  filter:saturate(.92) contrast(.96) brightness(1.04);transform:scale(1.03)
}
.hero-home-premium .hero-scene::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(to right,rgba(255,250,246,0) 46%,rgba(255,250,246,.48) 75%,rgba(255,250,246,.97) 100%),
    linear-gradient(to bottom,rgba(255,255,255,.2),transparent 26%,transparent 78%,rgba(255,250,246,.3)),
    radial-gradient(circle at 24% 30%,rgba(255,255,255,.34),transparent 30%)
}
.hero-glow{position:absolute;z-index:1;width:10px;height:10px;border-radius:50%;background:#fff6ce;box-shadow:0 0 22px 9px rgba(255,237,176,.6)}
.hero-glow-one{top:18%;left:17%}.hero-glow-two{right:18%;bottom:20%;width:7px;height:7px}
.hero-home-premium .hero-phone{
  position:relative;z-index:3;width:clamp(245px,19vw,292px);max-width:42%;padding:10px;
  margin-inline-start:-3%;border-radius:48px;
  background:linear-gradient(150deg,#4b4849 0%,#1e1b1c 47%,#3d393a 100%);
  box-shadow:0 48px 100px rgba(45,34,31,.34),0 16px 34px rgba(45,34,31,.25),inset 0 0 0 1px rgba(255,255,255,.28);
  transform:rotate(-7deg);transform-origin:center
}
.hero-home-premium .hero-phone img{display:block;width:100%;aspect-ratio:9/19.5;object-fit:cover;object-position:center;border-radius:38px}
.hero-home-premium .hero-phone::before{content:"";position:absolute;z-index:5;top:20px;left:50%;transform:translateX(-50%);width:66px;height:18px;border-radius:99px;background:#111;box-shadow:inset 0 1px 1px rgba(255,255,255,.08)}
.hero-home-premium .hero-phone::after{content:"";position:absolute;z-index:4;inset:10px;border-radius:38px;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.18),rgba(255,255,255,.04) 27%,transparent 51%)}

@media (prefers-reduced-motion:no-preference){
  .hero-home-premium .hero-phone{animation:lahzatnaPhoneFloat 5.5s ease-in-out infinite}
  .hero-glow{animation:lahzatnaGlow 3.8s ease-in-out infinite alternate}
}
@keyframes lahzatnaPhoneFloat{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-9px) rotate(-6.3deg)}}
@keyframes lahzatnaGlow{to{opacity:.45;transform:scale(.78)}}

/* Tablet */
@media(max-width:1100px) and (min-width:781px){
  .site-header{padding-inline:24px}.site-header nav[data-site-nav]{gap:14px}.site-header nav[data-site-nav] a{font-size:13px}
  .hero-home-premium .hero-copy{padding:58px 44px 52px 28px}
  .hero-home-premium .hero-copy h1{font-size:clamp(44px,5.2vw,60px)}
  .hero-home-premium .hero-actions a{min-width:165px}
  .hero-home-premium .hero-features small{display:none}
  .hero-home-premium .hero-phone{max-width:52%}
}

/* Mobile composition follows the approved reference: copy, actions, visual, feature strip */
@media(max-width:780px){
  .site-header{
    width:calc(100% - 20px);min-height:76px;margin:10px auto 0;padding:0 12px;top:8px;
    grid-template-columns:minmax(0,1fr) auto;border-radius:19px;gap:8px
  }
  .site-brand{grid-column:1;justify-self:end}.site-header-actions{grid-column:2;justify-self:start;gap:6px;direction:ltr}
  .site-brand strong{font-size:24px}.site-brand .brand-heart{width:18px;height:18px}.site-brand .brand-text small{font-size:9px}
  .site-header-actions .nav-cta{padding:10px 14px;font-size:12px}.header-social a,.header-social a.nav-whatsapp{width:38px;height:38px}
  .site-menu{display:grid;place-items:center;order:-1}
  .site-header nav[data-site-nav]{top:calc(100% + 9px);left:0;right:0;border-radius:18px;border-color:var(--home-line);box-shadow:0 18px 50px rgba(77,55,47,.15)}

  .hero-home.hero-home-premium{
    direction:rtl;width:calc(100% - 20px);min-height:0;margin:10px auto 0;padding:0 20px 16px;
    display:flex;flex-direction:column;align-items:center;overflow:hidden;border-radius:25px;
    background:radial-gradient(circle at 70% 4%,rgba(234,215,183,.78),transparent 29%),var(--home-ivory)
  }
  .hero-home-premium .hero-copy{display:contents}
  .hero-home-premium .hero-eyebrow{order:2;margin:24px auto 18px;padding:8px 12px;font-size:11px}
  .hero-home-premium .hero-copy h1{order:3;width:100%;justify-content:center;text-align:center;gap:8px;font-size:clamp(37px,10vw,48px);line-height:1.3}
  .hero-home-premium .hero-heart-icon{width:.42em;height:.42em}
  .hero-home-premium .hero-copy>p{order:4;width:100%;max-width:500px;margin:14px auto 0;text-align:center;font-size:15px;line-height:1.85}
  .hero-home-premium .hero-actions{order:5;width:100%;margin:22px 0 0;display:grid;grid-template-columns:1fr;gap:10px}
  .hero-home-premium .hero-actions a{width:100%;min-width:0;min-height:52px;border-radius:16px;font-size:14px}
  .hero-home-premium .hero-actions a i{width:33px;height:33px}

  .hero-home-premium .hero-visual{
    order:1;width:calc(100% + 40px);min-height:460px;margin:0 -20px;align-self:auto;border-radius:0 0 24px 24px;overflow:hidden
  }
  .hero-home-premium .hero-scene::before{inset:-5%;background-size:cover;background-position:52% 64%;filter:saturate(.91) brightness(1.04)}
  .hero-home-premium .hero-scene::after{background:linear-gradient(to bottom,rgba(255,250,246,.48) 0%,rgba(255,250,246,0) 19%,rgba(255,250,246,0) 80%,rgba(255,250,246,.32) 100%),radial-gradient(circle at 50% 48%,rgba(255,255,255,.1),transparent 48%)}
  .hero-home-premium .hero-visual::before{inset:15% 10% 8%}
  .hero-home-premium .hero-phone{width:190px;max-width:none;margin:0;padding:8px;border-radius:40px;transform:rotate(-5deg)}
  .hero-home-premium .hero-phone img{border-radius:32px}.hero-home-premium .hero-phone::before{top:16px;width:52px;height:14px}
  .hero-home-premium .hero-phone::after{inset:8px;border-radius:32px}
  @keyframes lahzatnaPhoneFloat{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-7px) rotate(-4.4deg)}}

  .hero-home-premium .hero-features{
    order:6;position:relative;z-index:8;width:100%;margin:20px 0 0;padding:10px 4px;border-radius:19px;background:rgba(255,253,250,.93);
    box-shadow:0 18px 42px rgba(77,55,47,.13)
  }
  .hero-home-premium .hero-features>div{gap:6px;padding:4px 5px;flex-direction:column;text-align:center}
  .hero-home-premium .hero-features>div:not(:last-child){border-left:1px solid rgba(199,154,87,.2)}
  .hero-feature-icon{width:34px;height:34px}.hero-feature-icon svg{width:17px;height:17px}
  .hero-home-premium .hero-features strong{font-size:10px}.hero-home-premium .hero-features small{display:none}
}

@media(max-width:520px){
  .site-header{padding-inline:10px}.site-header-actions{gap:5px}.site-header-actions .nav-cta{padding:9px 11px;font-size:11px}
  .header-social a,.header-social a.nav-whatsapp{width:36px;height:36px}.site-menu{width:40px;height:40px}
  .site-brand strong{font-size:21px}.site-brand .brand-text small{font-size:8px}
  .hero-home.hero-home-premium{padding:0 14px 13px}
  .hero-home-premium .hero-copy h1{font-size:clamp(34px,10vw,43px)}
  .hero-home-premium .hero-copy>p{font-size:14px}
  .hero-home-premium .hero-visual{width:calc(100% + 28px);margin:0 -14px;min-height:430px}
  .hero-home-premium .hero-phone{width:176px}
}

@media(max-width:390px){
  .header-social{display:none}.site-header-actions .nav-cta{padding-inline:10px}
  .site-brand strong{font-size:20px}
  .hero-home-premium .hero-copy h1{font-size:33px}
  .hero-home-premium .hero-visual{min-height:405px}.hero-home-premium .hero-phone{width:164px}
}

/* Desktop title alignment with the approved luxury reference. */
@media(min-width:1101px){.hero-home-premium .hero-copy h1{font-size:clamp(52px,4.1vw,66px)}.hero-home-premium .hero-title-text{white-space:nowrap}}

/* =========================================================
   LAHZATNA MERGED LUXURY HERO ASSETS
   Uses the seven generated assets under assets/img/home/
   ========================================================= */
.hero-home.hero-home-premium{
  background-image:
    linear-gradient(to left,rgba(255,251,247,.98) 0%,rgba(255,251,247,.90) 29%,rgba(255,251,247,.36) 49%,rgba(255,251,247,0) 66%),
    url('../img/home/hero-desktop-background.png');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.hero-home-premium .hero-copy{position:relative}
.hero-title-ornament{
  display:block;width:min(100%,470px);height:34px;object-fit:contain;object-position:center;
  opacity:.72;filter:saturate(.85) sepia(.08);pointer-events:none
}
.hero-title-ornament-top{margin:0 0 12px}
.hero-title-ornament-bottom{margin:11px 0 0;transform:rotate(180deg)}
.hero-home-premium .hero-scene{display:none}
.hero-home-premium .hero-visual{isolation:isolate}
.hero-light-overlay{
  position:absolute;z-index:1;inset:2% -10% -4% -12%;width:122%;height:108%;object-fit:cover;
  opacity:.30;mix-blend-mode:screen;pointer-events:none
}
.hero-ribbon{
  position:absolute;z-index:2;left:3%;bottom:3%;width:min(90%,650px);height:auto;
  opacity:.78;transform:rotate(-4deg);filter:drop-shadow(0 20px 18px rgba(96,62,24,.15));pointer-events:none
}
.hero-phone-shadow{
  position:absolute;z-index:2;left:10%;bottom:4%;width:min(62%,460px);height:auto;
  opacity:.58;filter:blur(.2px);transform:scaleX(1.12) rotate(-2deg);pointer-events:none
}
.hero-device{
  position:relative;z-index:4;width:min(820px,112%);aspect-ratio:3/2;
  margin-inline-start:-8%;transform:translateY(0);transform-origin:center;pointer-events:none
}
.hero-device-frame{position:absolute;z-index:3;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.hero-device-screen{
  position:absolute;z-index:2;
  left:34.18%;top:6.15%;width:33.79%;height:84.67%;
  object-fit:cover;object-position:center;
  -webkit-mask-image:url('../img/home/phone-screen-mask.png');
  mask-image:url('../img/home/phone-screen-mask.png');
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  filter:saturate(.94) contrast(.99) brightness(1.02)
}
.hero-home-premium .hero-phone,.hero-glow{display:none!important}
@media (prefers-reduced-motion:no-preference){
  .hero-device{animation:lahzatnaDeviceFloat 5.8s ease-in-out infinite}
  .hero-light-overlay{animation:lahzatnaLightBreath 5s ease-in-out infinite alternate}
}
@keyframes lahzatnaDeviceFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes lahzatnaLightBreath{to{opacity:.42}}

@media(max-width:1100px) and (min-width:781px){
  .hero-device{width:min(720px,126%);margin-inline-start:-16%}
  .hero-ribbon{left:-2%;width:95%}
}

@media(max-width:780px){
  .hero-home.hero-home-premium{
    background-image:none;background-color:#fffaf6;
  }
  .hero-title-ornament{width:min(100%,340px);height:26px;margin-inline:auto}
  .hero-title-ornament-top{order:3;margin-top:0;margin-bottom:4px}
  .hero-home-premium .hero-copy h1{order:4}
  .hero-title-ornament-bottom{order:5;margin:3px auto 0}
  .hero-home-premium .hero-copy>p{order:6}
  .hero-home-premium .hero-actions{order:7}
  .hero-home-premium .hero-features{order:8}
  .hero-home-premium .hero-eyebrow{order:2}
  .hero-home-premium .hero-visual{order:1;min-height:520px}
  .hero-home-premium .hero-scene{display:block;position:absolute;inset:0;z-index:0}
  .hero-home-premium .hero-scene::before{
    content:"";position:absolute;inset:0;
    background-image:url('../img/home/hero-mobile-background.png');
    background-size:cover;background-position:center top;background-repeat:no-repeat;
    filter:saturate(.96) contrast(.98) brightness(1.02);transform:none
  }
  .hero-home-premium .hero-scene::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(to bottom,rgba(255,250,246,.02) 0%,rgba(255,250,246,0) 72%,rgba(255,250,246,.92) 100%)
  }
  .hero-light-overlay{inset:3% -20% -8% -20%;width:140%;height:110%;opacity:.22}
  .hero-device{width:660px;max-width:none;margin:0;transform:translateY(-8px)}
  .hero-ribbon{left:-9%;bottom:0;width:118%;opacity:.65}
  .hero-phone-shadow{left:6%;bottom:3%;width:76%;opacity:.46}
  @keyframes lahzatnaDeviceFloat{0%,100%{transform:translateY(-8px)}50%{transform:translateY(-14px)}}
}

@media(max-width:520px){
  .hero-home-premium .hero-visual{min-height:470px}
  .hero-device{width:590px}
  .hero-ribbon{width:124%;left:-12%;bottom:-2%}
  .hero-phone-shadow{width:84%;left:1%;bottom:1%}
}

@media(max-width:390px){
  .hero-home-premium .hero-visual{min-height:435px}
  .hero-device{width:535px}
  .hero-title-ornament{width:300px}
}


/* =========================================================
   LAHZATNA HERO FIX 4
   One precomposed phone asset: no screen rectangle or bad mask.
   ========================================================= */
.hero-device-screen,
.hero-device-frame,
.hero-phone-shadow{
  display:none!important;
}

.hero-device{
  position:relative;
  z-index:5;
  width:min(780px,108%);
  max-width:none;
  aspect-ratio:3/2;
  margin:0;
  transform:none;
  pointer-events:none;
}

.hero-device-composite{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:
    drop-shadow(0 30px 35px rgba(79,52,24,.20))
    drop-shadow(0 10px 15px rgba(54,36,25,.14));
}

.hero-title-ornament{
  width:min(100%,440px);
  height:auto;
  max-height:54px;
  object-fit:contain;
  opacity:.72;
}

.hero-title-ornament-top{margin-bottom:8px}
.hero-title-ornament-bottom{margin-top:7px}

.hero-ribbon{
  left:0;
  bottom:2%;
  width:min(93%,650px);
  opacity:.68;
  z-index:3;
}

@media (prefers-reduced-motion:no-preference){
  .hero-device{
    animation:lahzatnaCompositePhoneFloat 5.8s ease-in-out infinite;
  }
}

/* Keep the spam trap inside the layout box so RTL pages never gain horizontal scroll. */
.order-honeypot{
  position:absolute!important;
  inset:auto!important;
  left:auto!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  border:0!important;
  white-space:nowrap!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

@keyframes lahzatnaCompositePhoneFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

@media(max-width:1100px) and (min-width:781px){
  .hero-device{width:min(735px,116%)}
}

@media(max-width:780px){
  .hero-home-premium .hero-visual{
    min-height:500px;
  }

  .hero-device{
    width:700px;
    max-width:none;
    margin-top:-6px;
  }

  .hero-ribbon{
    width:104%;
    left:-2%;
    bottom:1%;
    opacity:.52;
  }

  .hero-title-ornament{
    width:min(82%,330px);
    max-height:43px;
  }

  @keyframes lahzatnaCompositePhoneFloat{
    0%,100%{transform:translateY(-2px)}
    50%{transform:translateY(-8px)}
  }
}

@media(max-width:520px){
  .hero-home-premium .hero-visual{
    min-height:445px;
  }

  .hero-device{
    width:620px;
    margin-top:-10px;
  }

  .hero-ribbon{
    width:110%;
    left:-5%;
    bottom:0;
  }
}

@media(max-width:390px){
  .hero-home-premium .hero-visual{
    min-height:420px;
  }

  .hero-device{
    width:570px;
  }
}


/* =========================================================
   LAHZATNA HERO FIX 5
   Correct phone screen fit + richer, less faded palette.
   ========================================================= */
:root{
  --home-ivory:#fff8f1;
  --home-paper:#fffaf5;
  --home-ink:#21191b;
  --home-muted:#6f6265;
  --home-rose:#b77a22;
  --home-rose-deep:#8d5312;
  --home-rose-soft:#dfc08b;
  --home-gold:#b77a22;
  --home-gold-soft:#dfc08b;
  --home-line:rgba(151,101,48,.32);
  --home-shadow:0 26px 82px rgba(70,43,25,.16);
}

.site-brand strong{
  color:#603719;
}

.site-header nav[data-site-nav] a{
  color:#31292b;
}

.hero-home.hero-home-premium{
  background-image:
    linear-gradient(
      to left,
      rgba(255,249,243,.95) 0%,
      rgba(255,249,243,.82) 29%,
      rgba(255,249,243,.22) 50%,
      rgba(255,249,243,0) 67%
    ),
    url('../img/home/hero-desktop-background.png');
}

.hero-home-premium .hero-title-accent{
  color:#b77a22;
  text-shadow:0 8px 24px rgba(142,83,18,.18);
}

.hero-home-premium .hero-copy>p{
  color:#6f6265;
  font-weight:600;
}

.hero-eyebrow{
  color:#754a20;
  border-color:rgba(151,101,48,.40);
  background:rgba(255,250,245,.90);
}

.hero-title-ornament{
  opacity:.92;
  filter:saturate(1.12) contrast(1.06);
}

.hero-home-premium .hero-actions .primary,
.site-header-actions .nav-cta{
  background:linear-gradient(135deg,#c99235,#925713)!important;
  box-shadow:0 16px 34px rgba(111,65,17,.30);
}

.hero-home-premium .hero-actions .secondary{
  border-color:rgba(151,101,48,.58);
  background:rgba(255,250,245,.94);
}

.hero-home-premium .hero-features{
  border-color:rgba(151,101,48,.34);
  background:rgba(255,250,245,.82);
}

.hero-feature-icon{
  color:#a86718;
  border-color:rgba(151,101,48,.36);
}

.hero-device-composite{
  filter:
    saturate(1.04)
    contrast(1.025)
    drop-shadow(0 32px 38px rgba(65,40,21,.25))
    drop-shadow(0 11px 17px rgba(45,29,19,.18));
}

@media(max-width:780px){
  .hero-home-premium .hero-scene::before{
    filter:saturate(1.06) contrast(1.04) brightness(.96);
  }

  .hero-home-premium .hero-scene::after{
    background:
      linear-gradient(
        to bottom,
        rgba(255,248,241,.01) 0%,
        rgba(255,248,241,0) 72%,
        rgba(255,248,241,.88) 100%
      );
  }
}


/* =====================================================================
   LAHZATNA — LUXURY HOMEPAGE CONTINUATION
   Steps, packages, live templates, CTA and footer
   ===================================================================== */
.home-continuation{
  --lux-ink:#24191b;
  --lux-ink-soft:#4a3c40;
  --lux-gold:#b87922;
  --lux-gold-deep:#875112;
  --lux-gold-light:#e6c57f;
  --lux-blush:#e2bfc4;
  --lux-blush-soft:#f8e9e8;
  --lux-ivory:#fffaf5;
  --lux-paper:#fffdf9;
  --lux-line:rgba(175,115,39,.28);
  --lux-shadow:0 24px 60px rgba(71,42,24,.10);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,253,249,.88),rgba(255,249,244,.95)),
    url('../img/home/continuation/luxury-light-desktop.webp') center top/cover no-repeat;
}

.home-continuation::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.7;
  background:
    radial-gradient(circle at 12% 18%,rgba(218,169,86,.15),transparent 28%),
    radial-gradient(circle at 88% 50%,rgba(218,181,178,.16),transparent 31%),
    repeating-linear-gradient(45deg,rgba(181,126,48,.025) 0 1px,transparent 1px 13px);
}

.home-continuation .section{
  position:relative;
  padding:92px max(24px,5vw);
}

.home-continuation .section-head{
  max-width:860px;
  margin:0 auto 44px;
  text-align:center;
}

.home-continuation .section-kicker{
  color:#75491d;
  background:linear-gradient(135deg,#fff8e9,#f1dfb6);
  border:1px solid rgba(175,115,39,.18);
  box-shadow:0 8px 22px rgba(113,68,22,.08);
  padding:7px 16px;
  font-size:13px;
  letter-spacing:.01em;
}

.home-continuation .section-head h2{
  margin:16px 0 10px;
  color:var(--lux-ink);
  font-size:clamp(32px,3vw,49px);
  font-weight:900;
  letter-spacing:-.035em;
}

.home-continuation .section-head p{
  max-width:700px;
  margin-inline:auto;
  color:#756a6d;
  font-size:16px;
  line-height:1.9;
}

.luxury-head-divider{
  display:block;
  width:250px;
  height:26px;
  margin:15px auto 0;
  background:url('../img/home/continuation/gold-divider.svg') center/contain no-repeat;
  opacity:.9;
}

/* ---------- reveal motion ---------- */
.home-continuation .reveal-ready{
  opacity:0;
  transform:translateY(24px);
  transition:
    opacity .72s cubic-bezier(.2,.8,.2,1),
    transform .72s cubic-bezier(.2,.8,.2,1);
}

.home-continuation .reveal-ready.is-visible{
  opacity:1;
  transform:none;
}

/* ---------- steps ---------- */
.luxury-steps-section{
  padding-top:88px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,250,246,.50));
}

.luxury-steps-grid{
  position:relative;
  max-width:1160px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px;
}

.luxury-steps-grid::before{
  content:"";
  position:absolute;
  top:50%;
  left:14%;
  right:14%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--lux-gold-light),var(--lux-gold),var(--lux-gold-light),transparent);
  z-index:0;
}

.luxury-steps-grid article{
  position:relative;
  z-index:1;
  min-height:260px;
  padding:34px 30px 30px;
  text-align:center;
  border:1px solid rgba(175,115,39,.30);
  border-radius:26px;
  background:
    linear-gradient(150deg,rgba(255,255,255,.98),rgba(255,248,241,.94));
  box-shadow:
    0 22px 48px rgba(92,57,26,.09),
    inset 0 1px 0 rgba(255,255,255,.94);
  overflow:hidden;
}

.luxury-steps-grid article::after{
  content:"";
  position:absolute;
  inset:auto -25% -60% -25%;
  height:160px;
  background:radial-gradient(ellipse,rgba(226,191,196,.26),transparent 68%);
}

.luxury-steps-grid article:hover{
  transform:translateY(-8px);
  border-color:rgba(175,115,39,.52);
  box-shadow:0 30px 65px rgba(92,57,26,.15);
}

.step-number{
  position:absolute;
  top:18px;
  right:18px;
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(145deg,#d4a349,#8c5412)!important;
  box-shadow:0 8px 18px rgba(128,77,15,.28);
  font-weight:900;
}

.step-icon{
  width:74px;
  height:74px;
  margin:12px auto 19px;
  display:grid;
  place-items:center;
  border:1px solid rgba(175,115,39,.28);
  border-radius:23px;
  color:#a86819;
  background:linear-gradient(145deg,#fffdf8,#f8ead4);
  box-shadow:0 12px 25px rgba(120,77,25,.10);
}

.step-icon svg{
  width:43px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luxury-steps-grid h3{
  position:relative;
  z-index:1;
  margin:0 0 9px;
  color:var(--lux-ink);
  font-size:22px;
  font-weight:900;
}

.luxury-steps-grid p{
  position:relative;
  z-index:1;
  color:#776c70;
  font-size:14px;
  line-height:1.9;
}

/* ---------- packages ---------- */
.luxury-packages-section{
  background:
    linear-gradient(180deg,rgba(249,231,230,.67),rgba(255,248,243,.86)),
    radial-gradient(circle at 50% 45%,rgba(255,255,255,.96),transparent 47%);
  border-block:1px solid rgba(175,115,39,.16);
}

.luxury-package-grid{
  max-width:1140px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}

.luxury-package{
  position:relative;
  min-height:540px;
  padding:34px 30px 28px;
  text-align:center;
  border:1px solid rgba(175,115,39,.36);
  border-radius:30px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.99),rgba(255,250,245,.97));
  box-shadow:
    0 25px 62px rgba(68,39,22,.11),
    inset 0 1px 0 rgba(255,255,255,.95);
  overflow:visible;
}

.luxury-package::before{
  content:"";
  position:absolute;
  inset:9px;
  border:1px solid rgba(211,169,98,.19);
  border-radius:23px;
  pointer-events:none;
}

.luxury-package.highlighted{
  transform:translateY(-14px);
  border:2px solid #bd8732;
  box-shadow:
    0 34px 76px rgba(68,39,22,.17),
    0 0 0 7px rgba(229,197,127,.10);
}

.luxury-package:hover{
  transform:translateY(-8px);
  box-shadow:0 35px 76px rgba(68,39,22,.17);
}

.luxury-package.highlighted:hover{
  transform:translateY(-20px);
}

.package-badge{
  top:-16px;
  right:50%;
  transform:translateX(50%);
  padding:8px 20px;
  color:#fff;
  background:linear-gradient(135deg,#d4a14b,#925711);
  box-shadow:0 10px 25px rgba(117,70,17,.27);
  border:1px solid rgba(255,244,211,.52);
}

.package-emblem{
  width:78px;
  height:78px;
  margin:5px auto 14px;
  display:grid;
  place-items:center;
  color:#af711f;
  border:1px solid rgba(175,115,39,.24);
  border-radius:50%;
  background:
    radial-gradient(circle at 35% 25%,#fff,#f7e7ca 73%);
  box-shadow:0 14px 32px rgba(117,70,17,.12);
}

.package-emblem svg{
  width:47px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luxury-package h3{
  margin:0 0 10px;
  color:var(--lux-ink);
  font-size:27px;
  font-weight:900;
}

.luxury-package .package-price{
  justify-content:center;
  margin:2px 0 17px;
}

.luxury-package .package-price strong{
  color:var(--lux-ink);
  font-size:48px;
  line-height:1;
}

.luxury-package .package-price span{
  color:#786c70;
}

.luxury-package>p{
  min-height:72px;
  color:#786c70;
  line-height:1.85;
}

.luxury-package ul{
  position:relative;
  z-index:1;
  margin:10px 0 25px;
  gap:11px;
  text-align:right;
  color:#4c4245;
}

.luxury-package li{
  display:flex;
  align-items:center;
  gap:9px;
}

.luxury-package li i{
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#9a6118;
  border:1px solid rgba(175,115,39,.24);
  border-radius:50%;
  font-style:normal;
  font-size:11px;
  background:#fff9ec;
}

.luxury-package>a{
  position:relative;
  z-index:1;
  padding:14px 18px;
  border:1px solid rgba(137,82,18,.5);
  border-radius:16px;
  color:#fff!important;
  background:linear-gradient(135deg,#c58c32,#8b5212)!important;
  box-shadow:0 13px 30px rgba(112,64,16,.24);
  transition:transform .24s ease,filter .24s ease,box-shadow .24s ease;
}

.luxury-package>a:hover{
  transform:translateY(-2px);
  filter:saturate(1.1) brightness(1.04);
  box-shadow:0 18px 35px rgba(112,64,16,.32);
}

.luxury-package.package-tier-1>a{
  color:var(--lux-ink)!important;
  background:linear-gradient(135deg,#f5dfd9,#d8aeb4)!important;
  border-color:rgba(143,76,88,.22);
}

.luxury-package.highlighted>a{
  background:linear-gradient(135deg,#312629,#151112)!important;
  border-color:#171112;
}

/* ---------- template gallery ---------- */
.luxury-templates-section{
  padding-bottom:110px!important;
  background:
    linear-gradient(180deg,rgba(255,252,248,.94),rgba(255,249,244,.95));
}

.luxury-template-toolbar{
  max-width:1420px;
  grid-template-columns:minmax(300px,1fr) 220px auto;
  gap:13px;
  margin-bottom:18px;
}

.luxury-template-toolbar .template-search,
.luxury-template-toolbar select{
  min-height:54px;
  border:1px solid rgba(175,115,39,.24);
  border-radius:17px;
  background:rgba(255,255,255,.86);
  box-shadow:0 10px 30px rgba(85,49,25,.06);
}

.luxury-template-toolbar .template-search span{
  width:30px;
  color:#a2661b;
}

.luxury-template-toolbar .template-search svg{
  width:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
}

.luxury-template-toolbar select{
  color:#55494d;
  padding-inline:17px;
}

.luxury-template-toolbar .results-count{
  padding:10px 15px;
  color:#6d6064;
  border:1px solid rgba(175,115,39,.17);
  border-radius:999px;
  background:#fff9f1;
}

.luxury-filters{
  max-width:1420px;
  margin:0 auto 32px;
  justify-content:center;
  gap:9px;
}

.luxury-filters button{
  min-height:41px;
  padding:9px 17px;
  color:#4d4246;
  border:1px solid rgba(175,115,39,.22);
  border-radius:999px;
  background:rgba(255,255,255,.87);
  box-shadow:0 7px 18px rgba(85,49,25,.05);
}

.luxury-filters button.active{
  color:#fff!important;
  border-color:#8c5212!important;
  background:linear-gradient(135deg,#bf8430,#7c4710)!important;
  box-shadow:0 11px 25px rgba(116,66,16,.24);
}

.luxury-filters button:hover{
  transform:translateY(-2px);
}

.luxury-theme-grid{
  max-width:1500px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:22px;
  align-items:start;
}

.luxury-theme-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(175,115,39,.25);
  border-radius:25px;
  background:rgba(255,253,249,.97);
  box-shadow:
    0 18px 44px rgba(70,40,22,.09),
    inset 0 1px 0 rgba(255,255,255,.95);
  transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,border-color .3s ease;
}

.luxury-theme-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(125deg,transparent 25%,rgba(255,255,255,.55) 47%,transparent 67%);
  transform:translateX(-120%);
  transition:transform .7s ease;
}

.luxury-theme-card:hover{
  transform:translateY(-10px);
  border-color:rgba(175,115,39,.48);
  box-shadow:0 30px 65px rgba(70,40,22,.16);
}

.luxury-theme-card:hover::after{
  transform:translateX(120%);
}

.theme-favorite{
  position:absolute;
  top:13px;
  left:13px;
  z-index:5;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  color:#8d5517;
  border:1px solid rgba(175,115,39,.24);
  border-radius:50%;
  background:rgba(255,252,247,.93);
  box-shadow:0 7px 18px rgba(61,36,22,.13);
  font-size:21px;
}

.luxury-theme-card .public-theme-images{
  position:relative;
  height:315px;
  overflow:hidden;
  border-radius:23px 23px 15px 15px;
  background:#f2ece7;
}

.luxury-theme-card .public-theme-images img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:opacity .55s ease,transform .8s cubic-bezier(.2,.8,.2,1);
}

.luxury-theme-card .public-theme-images img:first-child{
  opacity:1;
  z-index:1;
}

.luxury-theme-card .public-theme-images img:nth-child(2){
  opacity:0;
  z-index:2;
}

.luxury-theme-card:hover .public-theme-images img:first-child{
  opacity:0;
  transform:scale(1.05);
}

.luxury-theme-card:hover .public-theme-images img:nth-child(2){
  opacity:1;
  transform:scale(1.035);
}

.theme-preview-orb{
  position:absolute;
  z-index:4;
  top:50%;
  left:50%;
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  color:#fff;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  background:rgba(35,25,27,.64);
  box-shadow:0 10px 25px rgba(0,0,0,.22);
  transform:translate(-50%,-50%) scale(.82);
  opacity:0;
  transition:opacity .28s ease,transform .28s ease;
}

.luxury-theme-card:hover .theme-preview-orb{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
}

.luxury-theme-card .public-theme-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:18px 17px 17px;
  background:linear-gradient(180deg,#fffdf9,#fff9f3);
}

.luxury-theme-card .chips{
  min-height:25px;
}

.luxury-theme-card .occasion-badge,
.luxury-theme-card .theme-badge{
  padding:5px 9px;
  border:1px solid rgba(175,115,39,.14);
}

.luxury-theme-card h3{
  margin:12px 0 7px;
  color:var(--lux-ink);
  font-size:20px;
  font-weight:900;
}

.luxury-theme-card p{
  min-height:48px;
  margin:0;
  overflow:hidden;
  color:#796d71;
  line-height:1.65;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.luxury-theme-card .theme-start-price{
  margin:14px 0 12px;
  color:#74676b;
  font-size:13px;
}

.luxury-theme-card .theme-start-price strong{
  color:var(--lux-ink);
  font-size:14px;
}

.luxury-theme-card .public-theme-footer{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:auto;
}

.luxury-theme-card .public-theme-footer a{
  min-width:0;
  padding:11px 8px;
  text-align:center;
  border-radius:13px;
  font-size:12px;
  font-weight:900;
}

.luxury-theme-card .public-theme-footer a:first-child{
  color:var(--lux-ink)!important;
  border:1px solid rgba(175,115,39,.35)!important;
  background:#fffaf1!important;
}

.luxury-theme-card .public-theme-footer .request-theme,
.luxury-theme-card .public-theme-footer a:last-child{
  color:#fff!important;
  border-color:#8e5212!important;
  background:linear-gradient(135deg,#c28a32,#8a5011)!important;
}

/* ---------- final CTA ---------- */
.luxury-final-cta{
  position:relative;
  max-width:1560px;
  margin:0 auto 0!important;
  min-height:330px;
  padding:68px 8vw!important;
  overflow:hidden;
  border:1px solid rgba(221,177,93,.54);
  border-radius:38px 38px 0 0!important;
  color:#fff;
  background:
    linear-gradient(100deg,rgba(24,17,18,.90),rgba(32,23,25,.82)),
    url('../img/home/continuation/luxury-dark-desktop.webp') center/cover no-repeat!important;
  box-shadow:0 -18px 65px rgba(44,28,20,.16);
}

.luxury-final-cta::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 16% 38%,rgba(218,164,66,.18),transparent 24%),
    radial-gradient(circle at 86% 35%,rgba(218,164,66,.14),transparent 25%);
}

.luxury-final-cta::after{
  content:"";
  position:absolute;
  inset:13px;
  pointer-events:none;
  border:1px solid rgba(224,181,96,.22);
  border-radius:28px 28px 0 0;
}

.luxury-final-cta .cta-copy,
.luxury-final-cta .cta-actions{
  position:relative;
  z-index:2;
}

.luxury-final-cta .cta-copy{
  max-width:760px;
}

.luxury-final-cta .section-kicker{
  color:#f0cf91;
  border-color:rgba(222,181,96,.37);
  background:rgba(51,35,27,.68);
}

.luxury-final-cta h2{
  margin:15px 0 12px;
  color:#f2d69a;
  font-size:clamp(34px,3.3vw,54px);
  font-weight:900;
}

.luxury-final-cta p{
  max-width:700px;
  color:#ddd3d0;
  font-size:16px;
  line-height:1.9;
}

.luxury-final-cta .cta-actions{
  display:flex;
  gap:13px;
  flex-wrap:wrap;
}

.luxury-final-cta a{
  min-width:205px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 23px;
  border:1px solid rgba(224,181,96,.55);
  border-radius:15px;
  font-weight:900;
  box-shadow:0 13px 28px rgba(0,0,0,.24);
  transition:transform .25s ease,filter .25s ease;
}

.luxury-final-cta a:hover{
  transform:translateY(-3px);
  filter:brightness(1.06);
}

.luxury-final-cta a svg{
  width:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luxury-final-cta .primary{
  color:#fff!important;
  border-color:#2aa85c;
  background:linear-gradient(135deg,#30cb71,#158b49)!important;
}

.luxury-final-cta .secondary{
  color:#2c2022!important;
  background:linear-gradient(135deg,#f6dfaa,#be8030)!important;
}

/* ---------- global public footer refinement ---------- */
.site-footer{
  position:relative;
  overflow:hidden;
  border-top:1px solid rgba(224,181,96,.48);
  background:
    linear-gradient(100deg,rgba(19,14,15,.95),rgba(31,23,25,.91)),
    url('../img/home/continuation/luxury-dark-desktop.webp') center bottom/cover no-repeat!important;
}

.site-footer::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 8% 35%,rgba(202,145,49,.12),transparent 24%),
    radial-gradient(circle at 93% 28%,rgba(202,145,49,.11),transparent 25%);
}

.site-footer .footer-inner,
.site-footer .footer-copy{
  position:relative;
  z-index:1;
}

.site-footer .footer-inner{
  max-width:1320px;
  padding-top:14px;
  grid-template-columns:1.35fr .75fr .75fr;
  gap:55px;
}

.site-footer .footer-brand{
  color:#e6c27d;
}

.site-footer .footer-brand .brand-heart{
  color:#dcaab2;
}

.site-footer .footer-brand strong{
  font-size:25px;
}

.site-footer .footer-inner p{
  color:#cfc4c2;
}

.site-footer .footer-links strong,
.site-footer .footer-contact strong{
  color:#e6c27d;
  margin-bottom:7px;
}

.site-footer .footer-links a{
  color:#d9cfcc;
  padding-block:3px;
}

.site-footer .footer-links a:hover{
  color:#e8c985;
}

.site-footer .social-links a{
  color:#e3bf75;
  border-color:rgba(224,181,96,.34);
  background:rgba(255,255,255,.025);
  border-radius:50%;
}

.site-footer .social-links a:hover{
  transform:translateY(-3px);
  color:#fff;
  background:rgba(181,119,34,.24);
}

.site-footer .footer-copy{
  color:#a99d9a;
  border-top-color:rgba(224,181,96,.18);
}

.floating-whatsapp{
  box-shadow:
    0 15px 40px rgba(16,130,70,.34),
    0 0 0 7px rgba(37,211,102,.10);
}

/* ---------- responsive ---------- */
@media(max-width:1100px){
  .luxury-package-grid{
    max-width:860px;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .luxury-package:last-child{
    grid-column:1/-1;
    max-width:420px;
    width:100%;
    margin-inline:auto;
  }

  .luxury-theme-grid{
    grid-template-columns:repeat(auto-fill,minmax(205px,1fr));
  }
}

@media(max-width:900px){
  .home-continuation .section{
    padding:78px 24px;
  }

  .luxury-steps-grid{
    max-width:650px;
    grid-template-columns:1fr;
  }

  .luxury-steps-grid::before{
    top:9%;
    bottom:9%;
    right:50%;
    left:auto;
    width:1px;
    height:auto;
    background:linear-gradient(transparent,var(--lux-gold-light),var(--lux-gold),var(--lux-gold-light),transparent);
  }

  .luxury-package-grid{
    max-width:620px;
    grid-template-columns:1fr;
  }

  .luxury-package,
  .luxury-package:last-child{
    grid-column:auto;
      width:100%;
    max-width:none;
      margin-inline:0;

  }

  .luxury-package.highlighted,
  .luxury-package.highlighted:hover{
    transform:none;
  }

  .luxury-template-toolbar{
    grid-template-columns:1fr 190px;
  }

  .luxury-template-toolbar .results-count{
    grid-column:1/-1;
    justify-self:center;
  }

  .luxury-final-cta{
    margin-inline:18px!important;
    border-radius:34px!important;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .luxury-final-cta::after{
    border-radius:25px;
  }

  .luxury-final-cta .cta-copy{
    margin-inline:auto;
  }

  .luxury-final-cta .cta-actions{
    justify-content:center;
  }

  .site-footer .footer-inner{
    grid-template-columns:1fr 1fr;
  }

  .site-footer .footer-inner>div:first-child{
    grid-column:1/-1;
  }
}

@media(max-width:600px){
  .home-continuation{
    background:
      linear-gradient(180deg,rgba(255,252,247,.91),rgba(255,248,242,.95)),
      url('../img/home/continuation/luxury-light-mobile.webp') center top/cover no-repeat;
  }

  .home-continuation .section{
  padding: 54px 18px;
  }

  .home-continuation .section-head{
    margin-bottom:31px;
  }

  .home-continuation .section-head h2{
    font-size:34px;
    line-height:1.35;
  }

  .home-continuation .section-head p{
    font-size:15px;
  }

  .luxury-head-divider{
    width:210px;
  }

  .luxury-steps-grid{
    gap:16px;
  }

  .luxury-steps-grid article{
    min-height:210px;
    padding:26px 22px 24px;
    border-radius:24px;
  }

  .step-icon{
    width:66px;
    height:66px;
  }

  .luxury-package{
    min-height:auto;
    padding:33px 25px 25px;
    border-radius:27px;
  }

  .luxury-package .package-price strong{
    font-size:44px;
  }

  .luxury-template-toolbar{
    grid-template-columns:1fr;
  }

  .luxury-template-toolbar select,
  .luxury-template-toolbar .results-count{
    grid-column:auto;
  }

  .luxury-template-toolbar .results-count{
    justify-self:start;
  }

  .luxury-filters{
    justify-content:flex-start;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:7px;
    scrollbar-width:none;
  }

  .luxury-filters::-webkit-scrollbar{
    display:none;
  }

  .luxury-filters button{
    flex:0 0 auto;
  }

  .luxury-theme-grid{
    grid-template-columns:1fr;
    gap:22px;
  }

  .luxury-theme-card{
    max-width:520px;
    width:100%;
    margin-inline:auto;
  }

  .luxury-theme-card .public-theme-images{
    height:410px;
  }

  .luxury-theme-card .public-theme-body{
    padding:19px;
  }

  .luxury-theme-card h3{
    font-size:22px;
  }

  .luxury-theme-card p{
    min-height:auto;
  }

  .luxury-theme-card .public-theme-footer a{
    min-height:48px;
    display:grid;
    place-items:center;
    font-size:14px;
  }

  .luxury-final-cta{
    min-height:480px;
    margin-inline:12px!important;
    padding:58px 24px!important;
    border-radius:31px!important;
    background:
      linear-gradient(180deg,rgba(22,16,18,.84),rgba(23,17,19,.93)),
      url('../img/home/continuation/luxury-dark-mobile.webp') center/cover no-repeat!important;
  }

  .luxury-final-cta h2{
    font-size:38px;
  }

  .luxury-final-cta p{
    font-size:15px;
  }

  .luxury-final-cta .cta-actions{
    width:100%;
    flex-direction:column;
  }

  .luxury-final-cta a{
    width:100%;
  }

  .site-footer{
    background:
      linear-gradient(180deg,rgba(20,15,16,.94),rgba(20,15,16,.97)),
      url('../img/home/continuation/luxury-dark-mobile.webp') center bottom/cover no-repeat!important;
  }

  .site-footer .footer-inner{
    grid-template-columns:1fr;
    gap:34px;
    text-align:center;
  }

  .site-footer .footer-inner>div:first-child{
    grid-column:auto;
  }

  .site-footer .footer-brand,
  .site-footer .social-links{
    justify-content:center;
  }

  .site-footer .footer-inner p{
    margin-inline:auto;
  }

  .site-footer .footer-links,
  .site-footer .footer-contact{
    justify-items:center;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-continuation *,
  .home-continuation *::before,
  .home-continuation *::after{
    animation:none!important;
    transition:none!important;
  }

  .home-continuation .reveal-ready{
    opacity:1!important;
    transform:none!important;
  }
}


/* =====================================================================
   LAHZATNA — FINAL DUAL PREVIEW CARDS v3
   Precise RTL ordering, refined ornaments and balanced buttons.
   ===================================================================== */

.luxury-theme-grid{
  max-width:1440px;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:32px;
  align-items:start;
}

/* Main ivory card with a quiet double-gold frame. */
.luxury-theme-card{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(177,111,25,.44);
  border-radius:38px;
  background:
    radial-gradient(circle at 50% -8%,rgba(255,255,255,.98),transparent 30%),
    linear-gradient(180deg,#fffdf9 0%,#fff9f0 100%);
  box-shadow:
    0 30px 75px rgba(76,45,22,.13),
    0 0 0 8px rgba(230,197,135,.06),
    inset 0 1px 0 rgba(255,255,255,.98);
  transition:
    transform .34s cubic-bezier(.2,.8,.2,1),
    box-shadow .34s ease,
    border-color .34s ease;
}

.luxury-theme-card::before{
  content:"";
  position:absolute;
  inset:11px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(204,145,55,.34);
  border-radius:29px;
}

.luxury-theme-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:10;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(120deg,transparent 27%,rgba(255,255,255,.38) 47%,transparent 66%);
  transform:translateX(-120%);
  transition:transform .85s ease;
}

.luxury-theme-card:hover{
  transform:translateY(-8px);
  border-color:rgba(177,111,25,.62);
  box-shadow:
    0 38px 90px rgba(76,45,22,.18),
    0 0 0 8px rgba(230,197,135,.08);
}

.luxury-theme-card:hover::after{
  transform:translateX(120%);
}

/* LTR is intentional here:
   first DOM item (cover) appears on the LEFT,
   second DOM item (opened/details) appears on the RIGHT. */
.dual-preview-stage{
  position:relative;
  z-index:2;
  direction:rtl;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:start;
  gap:24px;
  padding:34px 30px 4px;
  background:
    radial-gradient(circle at 50% 32%,rgba(235,194,118,.16),transparent 47%);
}

.card-star{
  display:none!important;
}

.theme-preview-face{
  position:relative;
  direction:rtl;
  min-width:0;
  margin:0;
  text-align:center;
}

.theme-preview-frame{
  position:relative;
  width:100%;
  height:auto;
  aspect-ratio:9/16;
  overflow:hidden;
  border:2px solid rgba(177,111,25,.82);
  border-radius:28px;
  background:#eee5da;
  box-shadow:
    0 20px 42px rgba(64,38,21,.17),
    inset 0 0 0 5px rgba(255,248,235,.78);
}

.theme-preview-frame::before{
  content:"";
  position:absolute;
  inset:7px;
  z-index:4;
  pointer-events:none;
  border:1px solid rgba(241,208,142,.65);
  border-radius:20px;
}

.theme-preview-frame::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,248,234,.05),transparent 67%,rgba(36,20,14,.12)),
    radial-gradient(circle at 78% 12%,rgba(255,233,180,.20),transparent 26%);
}

.theme-preview-frame img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center top!important;
  background:#f4eee6;
  transition:
    transform .9s cubic-bezier(.2,.8,.2,1),
    filter .4s ease;
}

.theme-preview-face:hover .theme-preview-frame img{
  transform:scale(1.035);
  filter:saturate(1.07) contrast(1.025);
}

.preview-glass{
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
  background:
    linear-gradient(122deg,transparent 22%,rgba(255,255,255,.22) 44%,transparent 62%);
  transform:translateX(-115%);
  transition:transform .82s ease;
}

.theme-preview-face:hover .preview-glass{
  transform:translateX(115%);
}

/* Favorite heart now belongs to the cover itself. */
.theme-preview-frame .theme-favorite{
  position:absolute;
  top:17px;
  left:17px;
  z-index:8;
  width:48px;
  height:48px;
  display:grid!important;
  place-items:center!important;
  color:#a86617;
  border:1px solid rgba(177,111,25,.42);
  border-radius:50%;
  background:rgba(255,253,247,.95);
  box-shadow:
    0 10px 24px rgba(74,43,19,.18),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.theme-preview-frame .theme-favorite svg{
  width:24px!important;
  height:24px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Elegant labels attached to the lower edge of each image. */
.theme-preview-face figcaption{
  position:relative;
  z-index:8;
  width:max-content;
  max-width:94%;
  min-height:44px;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px;
  margin:-22px auto 0;
  padding:9px 18px;
  color:#744716;
  border:1px solid rgba(177,111,25,.38);
  border-radius:999px;
  background:rgba(255,251,244,.98);
  box-shadow:
    0 11px 26px rgba(76,44,20,.14),
    inset 0 1px 0 rgba(255,255,255,.98);
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
}

.theme-preview-face figcaption svg{
  width:18px!important;
  height:18px!important;
  max-width:18px!important;
  display:block!important;
  flex:0 0 18px!important;
  fill:none!important;
  stroke:#b67521!important;
  stroke-width:1.65!important;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Center jewel between preview and information. */
.theme-card-jewel{
  position:relative;
  z-index:5;
  width:128px;
  height:50px;
  display:block;
  margin:-2px auto -2px;
  pointer-events:none;
}

.theme-card-jewel img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Information area. */
.luxury-theme-card .public-theme-body{
  position:relative;
  z-index:2;
  display:flex;
  flex:1;
  flex-direction:column;
  padding:18px 34px 30px;
  text-align:center;
  background:transparent;
}

.luxury-theme-card .public-theme-body::before{
  content:none!important;
}

.luxury-theme-card .public-theme-body::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:4px;
  z-index:0;
  height:38px;
  pointer-events:none;
  background:url('../img/home/cards/card-corner-stars.svg') center bottom/100% 100% no-repeat;
  opacity:.88;
}

.luxury-theme-card .chips{
  position:relative;
  z-index:2;
  min-height:30px;
  justify-content:center;
  gap:7px;
}

.luxury-theme-card .occasion-badge,
.luxury-theme-card .theme-badge{
  min-height:29px;
  padding:6px 12px;
  border:1px solid rgba(177,111,25,.17);
  color:#756a68;
  background:linear-gradient(180deg,#fbf7f2,#f4ede7);
  font-size:11px;
  box-shadow:0 5px 14px rgba(77,46,25,.045);
}

.theme-card-title-row{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(36px,1fr) auto minmax(36px,1fr);
  align-items:center;
  gap:12px;
  width:100%;
  margin:13px 0 8px;
}

.theme-card-title-row h3{
  margin:0!important;
  color:#684017!important;
  font-size:clamp(27px,2.35vw,38px)!important;
  font-weight:900!important;
  line-height:1.25;
  letter-spacing:-.03em;
  white-space:nowrap;
}

.theme-card-title-flourish{
  display:block;
  height:28px;
  background:url('../img/home/cards/card-title-flourish.svg') center/contain no-repeat;
  opacity:.92;
}

.theme-card-title-flourish-reverse{
  transform:scaleX(-1);
}

.luxury-theme-card p{
  position:relative;
  z-index:2;
  max-width:620px;
  min-height:auto!important;
  margin:0 auto!important;
  color:#796d6d!important;
  font-size:15px!important;
  line-height:1.9!important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.luxury-theme-card .theme-start-price{
  position:relative;
  z-index:2;
  margin:18px 0 20px;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:7px;
  color:#81746e;
  font-size:15px;
}

.luxury-theme-card .theme-start-price strong{
  color:#a76312!important;
  font-size:24px!important;
  font-weight:900;
}

/* Button order is also forced LTR:
   preview on the LEFT, order on the RIGHT. */
.luxury-theme-card .public-theme-footer{
  position:relative;
  z-index:3;
  direction:ltr;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.22fr)!important;
  gap:13px;
  margin-top:auto;
}

.luxury-theme-card .public-theme-footer a{
  direction:rtl;
  min-width:0;
  min-height:58px;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px;
  padding:13px 12px;
  border-radius:18px;
  font-size:14px;
  font-weight:900;
  line-height:1.2;
  overflow:hidden;
  transition:
    transform .24s ease,
    filter .24s ease,
    box-shadow .24s ease;
}

.luxury-theme-card .public-theme-footer a:only-child{
  grid-column:1/-1;
}

.luxury-theme-card .public-theme-footer a svg{
  width:23px!important;
  height:23px!important;
  max-width:23px!important;
  display:block!important;
  flex:0 0 23px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.luxury-theme-card .public-theme-footer a span{
  display:inline!important;
  white-space:nowrap;
}

.luxury-theme-card .public-theme-footer .theme-live-preview{
  order:1;
  color:#7c4a16!important;
  border:1px solid rgba(177,111,25,.50)!important;
  background:
    linear-gradient(180deg,#fffdf9,#fff6e8)!important;
  box-shadow:
    0 11px 27px rgba(91,54,22,.08),
    inset 0 1px 0 rgba(255,255,255,.98);
}

.luxury-theme-card .public-theme-footer .request-theme{
  order:2;
  color:#fff!important;
  border:1px solid #95570f!important;
  background:
    linear-gradient(135deg,#d39b3d 0%,#a86612 55%,#8d4f0c 100%)!important;
  box-shadow:
    0 16px 32px rgba(137,77,12,.28),
    inset 0 1px 0 rgba(255,240,205,.25);
}

.luxury-theme-card .public-theme-footer a:hover{
  transform:translateY(-3px);
  filter:brightness(1.04) saturate(1.04);
}

.luxury-theme-card .public-theme-footer .request-theme:hover{
  box-shadow:
    0 20px 38px rgba(137,77,12,.35),
    inset 0 1px 0 rgba(255,240,205,.28);
}

@media(max-width:1050px){
  .luxury-theme-grid{
    grid-template-columns:1fr;
    max-width:760px;
  }
}

@media(max-width:700px){
  .luxury-theme-card{
    width:100%;
    max-width:620px;
    border-radius:31px;
  }

  .luxury-theme-card::before{
    inset:8px;
    border-radius:24px;
  }

  .dual-preview-stage{
    gap:12px;
    padding:22px 15px 2px;
  }

  .theme-preview-frame{
    border-radius:22px;
  }

  .theme-preview-frame::before{
    inset:5px;
    border-radius:16px;
  }

  .theme-preview-frame .theme-favorite{
    top:12px;
    left:12px;
    width:42px;
    height:42px;
  }

  .theme-preview-frame .theme-favorite svg{
    width:21px!important;
    height:21px!important;
  }

  .theme-preview-face figcaption{
    min-height:39px;
    margin-top:-19px;
    padding:8px 12px;
    font-size:11px;
  }

  .theme-card-jewel{
    width:108px;
    height:43px;
  }

  .luxury-theme-card .public-theme-body{
    padding:14px 20px 25px;
  }

  .theme-card-title-row{
    gap:8px;
  }

  .theme-card-title-row h3{
    font-size:30px!important;
  }

  .theme-card-title-flourish{
    height:23px;
  }

  .luxury-theme-card p{
    font-size:14px!important;
  }

  .luxury-theme-card .theme-start-price{
    margin:16px 0 18px;
  }

  .luxury-theme-card .public-theme-footer{
    grid-template-columns:minmax(0,.93fr) minmax(0,1.18fr)!important;
    gap:10px;
  }

  .luxury-theme-card .public-theme-footer a{
    min-height:54px;
    gap:7px;
    padding:11px 8px;
    font-size:12px;
  }

  .luxury-theme-card .public-theme-footer a svg{
    width:20px!important;
    height:20px!important;
    max-width:20px!important;
    flex-basis:20px!important;
  }
}

@media(max-width:430px){
  .dual-preview-stage{
    gap:8px;
    padding-inline:11px;
  }

  .theme-preview-frame{
    border-width:1.5px;
    border-radius:18px;
  }

  .theme-preview-frame .theme-favorite{
    width:37px;
    height:37px;
    top:9px;
    left:9px;
  }

  .theme-preview-face figcaption{
    max-width:98%;
    min-height:35px;
    gap:5px;
    padding:7px 8px;
    font-size:9.5px;
  }

  .theme-preview-face figcaption svg{
    width:15px!important;
    height:15px!important;
    max-width:15px!important;
    flex-basis:15px!important;
  }

  .theme-card-title-row{
    grid-template-columns:minmax(24px,1fr) auto minmax(24px,1fr);
  }

  .theme-card-title-row h3{
    font-size:27px!important;
  }

  .luxury-theme-card .public-theme-footer a{
    font-size:11px;
  }
}

/* إصلاح ترتيب الهيدر على الهاتف */
@media(max-width:780px){

  .site-header{
    min-height:82px;
    padding:10px 14px;

    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:10px;
    direction:rtl;
  }

  /* يجعل زر القائمة وزر الطلب يدخلان في أعمدة الهيدر */
  .site-header-actions{
    display:contents;
  }

  /* زر القائمة على اليمين */
  .site-menu{
    display:grid;
    grid-column:1;
    justify-self:start;
    place-items:center;

    width:48px;
    height:48px;
    order:initial;
  }

  /* الشعار في المنتصف تمامًا */
  .site-brand{
    grid-column:2;
    justify-self:center;
    text-align:center;
    gap:5px;
  }

  .site-brand strong{
    font-size:25px;
  }

  .site-brand .brand-heart{
    width:18px;
    height:18px;
  }

  .site-brand .brand-text small{
    font-size:10px;
  }

  /* زر اطلب دعوة الآن على اليسار */
  .site-header-actions .nav-cta{
    grid-column:3;
    justify-self:end;

    width:125px;
    max-width:100%;
    min-height:46px;
    padding:0 9px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:12px;
    text-align:center;
  }

  /* إخفاء أيقونات السوشال من الهيدر على الهاتف */
  .header-social{
    display:none;
  }
}

@media(max-width:520px){

  .site-header{
    padding:9px 12px;
  }

  .site-menu{
    width:46px;
    height:46px;
  }

  .site-brand strong{
    font-size:23px;
  }

  .site-brand .brand-text small{
    font-size:9px;
  }

  .site-header-actions .nav-cta{
    width:115px;
    min-height:44px;
    font-size:11px;
  }
}
/* تثبيت عناصر الهيدر في سطر واحد على الهاتف */
@media(max-width:780px){

  .site-menu,
  .site-brand,
  .site-header-actions .nav-cta{
    grid-row:1;
  }

  .site-header{
    min-height:82px;
    height:82px;
  }
}
