:root{--green:#183f38;--deep:#102e28;--gold:#dfbd78;--paper:#faf8f2;--ink:#1d322c;--muted:#64716a;--line:#dce1d8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:"IBM Plex Sans Arabic",Tahoma,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ae7e2c;outline-offset:5px}.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.topbar{background:var(--green);color:#eee5d2;text-align:center;padding:7px 16px;font-size:12px;letter-spacing:.2px}.topbar span{color:var(--gold);padding:0 16px}header{position:sticky;top:0;z-index:20;background:#faf8f2f5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:91px}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;font-size:27px;line-height:1.3;font-weight:700}.brand small{display:block;font-size:10px;color:var(--muted)}nav{display:flex;gap:30px;font-size:14px}nav a:hover,.text-link:hover{color:#946a23}.button{display:inline-flex;justify-content:center;align-items:center;gap:26px;background:var(--green);color:#fff;padding:13px 24px;border:1px solid var(--green);border-radius:6px;font-weight:500;transition:background .2s,transform .2s}.button:hover{background:var(--deep);transform:translateY(-2px)}.nav-cta{font-size:14px;padding:9px 20px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-block:55px 65px}.eyebrow{font-size:13px;font-weight:500;color:#6b775e;margin:0 0 19px;display:flex;align-items:center;gap:10px}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:#a8894c}.hero h1{font-size:clamp(40px,4.4vw,65px);line-height:1.45;letter-spacing:-2px;font-weight:600;margin:0 0 20px}.hero h1 em{font-style:normal;color:#a08043;position:relative}.hero h1 em:after{content:"";position:absolute;bottom:-1px;right:0;width:100%;height:5px;border-bottom:2px solid var(--gold);border-radius:50%}.intro{color:var(--muted);font-size:17px;max-width:460px;margin:0 0 30px}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:500;display:inline-flex;gap:12px;align-items:center}.hero-notes{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:12px;margin-top:35px}.hero-notes i{width:4px;height:4px;background:#a8894c;border-radius:50%}.hero-visual{position:relative;padding:12px 12px 28px 0}.hero-visual:before{content:"";position:absolute;inset:0 0 12px 25px;border:1px solid #c9b98d;border-radius:160px 160px 12px 12px}.photo-frame{height:525px;overflow:hidden;border-radius:150px 150px 8px 8px;background:var(--green)}.photo-frame img{width:100%;height:100%;object-fit:cover}.photo-caption{position:absolute;bottom:0;right:40px;left:40px;background:var(--green);color:#fff;padding:19px 28px;border-radius:5px;box-shadow:0 8px 24px #102e2826}.photo-caption span{font-size:11px;color:var(--gold);display:block}.photo-caption strong{font-size:19px;font-weight:500}.visual-label{position:absolute;left:-21px;top:54%;writing-mode:vertical-rl;font-size:10px;color:var(--muted);letter-spacing:1px}.service-strip{background:var(--green);color:#f0eadc}.service-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:21px;font-size:16px}.service-strip b{font-size:14px;color:var(--gold);font-weight:400}.section{padding-block:85px}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.about p:not(.eyebrow){margin:0 0 16px;color:var(--muted);font-size:16px}h2{font-size:clamp(28px,3vw,40px);font-weight:600;line-height:1.5;margin:0;letter-spacing:-.8px}.about .text-link{margin-top:10px}.services{background:#eef0e8}.section-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:35px}.section-heading>p{font-size:14px;color:var(--muted);margin:0}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{position:relative;background:var(--paper);border:1px solid #dde2d7;border-radius:8px;padding:30px}.number{position:absolute;left:26px;top:25px;font-family:Arial,sans-serif;font-size:12px;color:#7c897e}.service-icon{font-size:37px;color:#927038;line-height:1.3;display:block;margin-bottom:22px}.service h3{font-size:19px;font-weight:600;margin:0 0 10px}.service p{color:var(--muted);font-size:14px;margin:0 0 24px}.service a{font-size:12px;font-weight:500;border-top:1px solid var(--line);padding-top:14px;display:block}.service a:hover{color:#946a23}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:25px}.filters button{padding:7px 19px;border:1px solid var(--line);border-radius:30px;color:var(--green);background:transparent;font-size:13px}.filters button[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-item{border:0;background:transparent;text-align:right;padding:0;color:var(--ink)}.gallery-item .image-wrap{overflow:hidden;aspect-ratio:1;border-radius:8px;position:relative;background:#e7e8dd}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item span{display:block;font-size:12px;margin-top:9px}.load-more{display:flex;margin:34px auto 0}.outline{background:transparent;color:var(--green)}.outline:hover{color:#fff}.steps{background:#f0ede4;text-align:center}.steps .eyebrow{justify-content:center}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}.steps-grid article{position:relative}.steps-grid article+article:before{content:"";position:absolute;right:-25px;top:10px;height:100px;border-right:1px solid #d8d5c8}.steps-grid span{display:grid;place-items:center;margin-inline:auto;background:#e2d9c4;color:#705222;width:45px;height:45px;border-radius:50%;font-size:20px}.steps h3{font-weight:600;font-size:19px;margin:17px 0 7px}.steps p{font-size:14px;color:var(--muted);margin:0}.contact-panel{background:var(--green);padding:55px 65px;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.contact-panel:after{content:"";position:absolute;left:-120px;top:-100px;width:400px;height:400px;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.contact-panel .eyebrow{color:var(--gold)}.contact-panel p:last-child{color:#d1dad4;font-size:14px;margin-bottom:0}.contact-actions{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:15px;flex-shrink:0}.gold{background:var(--gold);color:var(--deep);border-color:var(--gold)}.gold:hover{background:#e8cc95}.phone{font-family:Arial,sans-serif;font-size:28px;letter-spacing:2px}.contact-actions>span{font-size:11px;color:#d1dad4}.faq{max-width:850px;padding-bottom:85px}.faq h2{text-align:center;font-size:28px;margin-bottom:25px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-size:16px;font-weight:500}details p{font-size:14px;color:var(--muted);margin:12px 0 0}footer{border-top:1px solid var(--line);padding-block:30px;display:flex;justify-content:space-between;align-items:center;gap:24px}footer p,footer>small{font-size:12px;color:var(--muted)}.floating-wa{position:fixed;left:24px;bottom:24px;z-index:25;border-radius:50px;background:var(--green);color:#fff;padding:12px 17px;display:flex;align-items:center;gap:8px;box-shadow:0 5px 20px #102e2833;font-size:13px;border:1px solid #ffffff40}.floating-wa svg{width:25px;height:25px}.skip{position:fixed;top:-100px;right:20px;z-index:100;background:#fff;padding:10px 20px}.skip:focus{top:10px}dialog{padding:45px 60px 20px;background:#10211eee;color:white;border:1px solid #ffffff30;border-radius:12px;width:min(950px,95vw);max-height:95vh}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog figure{margin:0;text-align:center}dialog img{max-height:74vh;width:auto;margin:auto;object-fit:contain}dialog figcaption{font-size:14px;margin-top:10px}dialog button{background:#ffffff20;color:#fff;border:0;border-radius:50%;width:38px;height:38px;font-size:25px;position:absolute}dialog .close{top:8px;right:10px}dialog .prev{right:10px;top:50%}dialog .next{left:10px;top:50%}[hidden]{display:none!important}@media(min-width:1500px){.hero{padding-block:80px}}@media(max-width:1000px){.container{width:calc(100% - 40px)}nav{gap:18px}.hero{gap:32px}.photo-frame{height:475px}.about{gap:45px}.service{padding:24px}.contact-panel{padding:40px}.gallery-grid{grid-template-columns:repeat(3,1fr)}footer p{display:none}}@media(max-width:760px){.container{width:calc(100% - 32px)}.nav{min-height:77px;gap:12px}.brand img{width:44px;height:44px}.brand strong{font-size:24px}.nav-cta{display:none}.menu-toggle{display:block;border:1px solid var(--line);background:transparent;border-radius:5px;padding:4px 12px;font-size:23px;color:var(--green)}nav{display:none;position:absolute;top:77px;left:0;right:0;background:var(--paper);padding:20px;border-bottom:1px solid var(--line);flex-direction:column;text-align:center}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-block:35px 45px;gap:35px}.hero h1{font-size:45px;letter-spacing:-1px}.intro{font-size:16px;max-width:none}.hero-notes{margin-top:23px}.hero-visual{max-width:500px;width:100%;margin-inline:auto}.photo-frame{height:430px}.photo-caption{right:28px;left:28px;padding:15px 20px}.visual-label{left:-8px}.service-strip .container{justify-content:center;flex-wrap:wrap;gap:10px 18px;font-size:13px;padding-block:17px}.service-strip b{display:none}.service-strip span:before{content:"✦";color:var(--gold);margin-left:8px;font-size:10px}.section{padding-block:55px}.about{grid-template-columns:1fr;gap:25px}.about h2 br{display:none}.section-heading{display:block}.section-heading>p{margin-top:18px}.services-grid{grid-template-columns:repeat(2,1fr);gap:12px}.service{padding:20px 17px}.service h3{font-size:17px}.service p{font-size:13px}.service-icon{font-size:30px;margin-bottom:17px}.number{left:17px;top:21px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:18px 12px}.filters{gap:7px}.filters button{padding:6px 13px;font-size:12px}.steps-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.steps-grid article+article:before{display:none}.steps h3{margin-top:10px}.contact-panel{padding:32px 23px;display:block}.contact-actions{margin-top:30px;align-items:flex-start;text-align:right}.contact-panel h2{font-size:31px}.faq{padding-bottom:55px}.faq h2{text-align:right}footer{flex-wrap:wrap;gap:16px;padding-bottom:90px}footer>small{width:100%}.floating-wa{left:16px;bottom:16px}.photo-caption strong{font-size:17px}.actions{gap:20px}.actions .button{padding:12px 18px}dialog{padding:45px 43px 20px}.topbar{font-size:11px}}@media(max-width:380px){.hero h1{font-size:39px}.services-grid{grid-template-columns:1fr}.photo-frame{height:370px}.brand small{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Compact, RTL carousel and persistent contact actions. */
.gallery-grid{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:5px 0 14px;cursor:grab;direction:rtl}
.gallery-grid::-webkit-scrollbar{display:none}
.gallery-grid:after{content:"";flex:0 0 calc(100% - 350px);pointer-events:none}
.gallery-item{flex:0 0 350px;min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;user-select:none}
.gallery-item img{pointer-events:none}
.gallery-item .image-wrap{aspect-ratio:1.12;border-radius:12px}
.gallery-item span{font-size:13px;margin-top:12px}
.gallery-grid.dragging{scroll-snap-type:none;cursor:grabbing}
.gallery-grid.dragging .gallery-item{cursor:grabbing}
.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;margin-top:8px}
.swipe-hint{color:var(--muted);font-size:13px}.swipe-hint span{margin-right:9px;font-size:19px}
.gallery-navigation{display:flex;align-items:center;gap:13px}
.gallery-navigation button{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;border:1px solid var(--line);color:var(--green);background:transparent;font-size:21px}
.gallery-navigation button:hover{background:var(--green);color:white}
#gallery-play{font-size:15px;width:36px;height:36px;margin-right:5px}
#gallery-counter{min-width:54px;text-align:center;font-family:Arial,sans-serif;font-size:12px;color:var(--muted)}
.floating-contact{position:fixed;left:24px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:25}
.contact-float{display:flex;align-items:center;justify-content:center;gap:10px;min-width:140px;min-height:49px;padding:12px 19px;border-radius:50px;color:#fff;box-shadow:0 4px 18px #102e2826;font-size:14px;font-weight:500;border:1px solid #ffffff50;transition:transform .2s,background .2s}
.contact-float svg{width:24px;height:24px;flex-shrink:0}.whatsapp{background:#167a43}.whatsapp:hover{background:#126438}.call{background:var(--green)}.call:hover{background:var(--deep)}.contact-float:hover{transform:translateY(-2px)}
.footer-credit{font-size:11px;line-height:1.9;text-align:left;color:var(--muted)}.footer-credit small{font-size:11px;display:block;margin-bottom:5px}.footer-credit a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:3px}.footer-credit a:hover{color:#946a23}
@media(max-width:1000px){.gallery-item{flex-basis:310px}.gallery-grid:after{flex-basis:calc(100% - 310px)}}
@media(max-width:760px){.gallery-grid{gap:14px}.gallery-item{flex-basis:78%}.gallery-grid:after{flex-basis:22%}.gallery-item .image-wrap{aspect-ratio:1}.gallery-controls{gap:8px}.swipe-hint{font-size:11px}.gallery-navigation{gap:8px}.gallery-navigation button{width:36px;height:36px}.floating-contact{left:12px;right:12px;bottom:12px;flex-direction:row;gap:8px;padding:6px;background:#faf8f2ed;border:1px solid var(--line);border-radius:40px;backdrop-filter:blur(10px);box-shadow:0 5px 25px #102e281a}.contact-float{flex:1;min-width:0;min-height:46px;box-shadow:none;padding:9px 16px;font-size:14px}.footer-credit{width:100%;text-align:right}footer{padding-bottom:115px}}
@media(prefers-reduced-motion:reduce){.contact-float{transition:none}}

html{overflow-x:clip}

@media(min-width:761px){.gallery-controls{padding-inline-end:170px}}

/* Centered coverflow, inspired by the Sawaed gallery. */
.gallery-carousel{--slide-width:330px}
.gallery-grid{position:relative;perspective:1100px;perspective-origin:center;gap:18px;padding-block:32px 28px;padding-inline:max(0px,calc((100% - var(--slide-width))/2));scroll-padding-inline:max(0px,calc((100% - var(--slide-width))/2));align-items:center;isolation:isolate}
.gallery-grid:after{display:none}
.gallery-item{flex:0 0 var(--slide-width);scroll-snap-align:center;transform-origin:center;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;position:relative}
.gallery-item .image-wrap{aspect-ratio:330/370;border-radius:14px;box-shadow:0 14px 26px #102e2826;border:3px solid var(--paper)}
.gallery-item span{text-align:center;white-space:normal;margin:12px 4px 0;font-size:12px}
.gallery-item:hover img{transform:none}
.gallery-controls{margin-top:0}
@media(max-width:1000px){.gallery-carousel{--slide-width:300px}.gallery-item{flex-basis:var(--slide-width)}}
@media(max-width:760px){.gallery-carousel{--slide-width:min(250px,74vw)}.gallery-grid{gap:10px;padding-block:24px 20px;perspective:800px}.gallery-item{flex-basis:var(--slide-width)}.gallery-item .image-wrap{aspect-ratio:250/290}.gallery-item span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gallery-item{will-change:auto}}
.gallery-grid{overflow-y:hidden;scroll-snap-type:none}

.gallery-item{margin:0;cursor:inherit}.gallery-item .image-wrap{aspect-ratio:1}.gallery-item figcaption{text-align:center;font-size:12px;margin:12px 4px 0;line-height:1.8}.gallery-item img{object-fit:cover}

.gallery-item{margin:0;cursor:inherit}.gallery-item .image-wrap{aspect-ratio:1}.gallery-item figcaption{text-align:center;font-size:12px;margin:12px 4px 0;line-height:1.8}.gallery-item img{object-fit:cover}
