:root{--forest:#193b32;--forest-deep:#112e27;--green:#2d5848;--sage:#8eaa94;--cream:#f8f6f0;--cream-dark:#f0eee5;--white:#fffefa;--gold:#c8a970;--gold-light:#e7d2a6;--ink:#27352f;--muted:#6f7a72;--border:#e6e4da;--font-display:'Playfair Display',Georgia,serif;--font-body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.section{padding:118px 0}h1,h2,h3,p,blockquote{margin-top:0}h1,h2,h3{font-family:var(--font-display);font-weight:500}h2{font-size:clamp(39px,4.25vw,62px);line-height:1.15;letter-spacing:-1.8px}h2 em,h1 em{font-weight:400;color:var(--gold);font-style:italic}p{line-height:1.75}.eyebrow{color:#a1814d;font-size:10px;letter-spacing:.24em;font-weight:700;display:flex;align-items:center;gap:12px;text-transform:uppercase;margin:0 0 26px}.eyebrow-line{height:1px;width:26px;background:currentColor;display:inline-block;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:12px;letter-spacing:.025em;font-weight:700;padding:17px 24px;min-height:53px;transition:background .25s,transform .25s,color .25s,border-color .25s;white-space:nowrap;border:1px solid transparent}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:#285546}.btn-light{background:var(--cream);color:var(--forest)}.btn-light:hover{background:#fff}.btn-outline{border-color:#bdc8bd;color:var(--forest);background:transparent}.btn-outline:hover{background:var(--forest);color:#fff;border-color:var(--forest)}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid currentColor;padding:10px 0;display:inline-flex;gap:12px;align-items:center}.text-link-light{color:#f5efe0}.topbar{height:34px;background:var(--forest-deep);color:#e0d9c3;text-align:center;display:flex;align-items:center;justify-content:center;gap:20px;font-size:10px;letter-spacing:.1em}.arabic{font-size:15px;letter-spacing:normal}.topbar-sep{color:var(--gold)}.site-header{position:sticky;top:0;z-index:20;background:rgba(248,246,240,.97);backdrop-filter:blur(18px);border-bottom:1px solid rgba(25,59,50,.1)}.nav-row{height:86px;display:flex;justify-content:space-between;align-items:center;gap:30px}.logo{display:flex;align-items:center;gap:12px;flex-shrink:0}.logo-symbol{display:inline-grid;place-items:center;width:46px;height:46px;color:var(--gold);font-size:33px}.logo-symbol svg{width:42px;height:42px;fill:none;stroke:var(--gold);stroke-width:1.65}.logo-symbol svg circle{stroke-width:1.2}.logo-text{display:flex;flex-direction:column}.logo-text strong{font:600 26px/1.05 var(--font-display);color:var(--forest);letter-spacing:-1.2px}.logo-text small{font-size:8px;letter-spacing:.25em;color:#a3875b;margin-top:8px;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:31px}.desktop-nav a{font-size:12px;color:#4b594e;transition:color .2s}.desktop-nav a:hover{color:#b28b4d}.nav-cta{padding:14px 20px;min-height:45px;font-size:11px;gap:17px}.menu-toggle{display:none;width:43px;height:43px;border:1px solid var(--border);background:none;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-toggle span{width:19px;height:1.5px;background:var(--forest)}.mobile-nav{display:none}.hero{min-height:645px;display:grid;grid-template-columns:50.4% 49.6%;background:var(--forest)}.hero-left{position:relative;overflow:hidden;padding:92px max(44px,calc((100vw - 1200px)/2)) 47px max(32px,calc((100vw - 1200px)/2));color:#f7f5e9;display:flex;flex-direction:column;align-items:flex-start}.hero-left:before{position:absolute;content:"";inset:0;background:radial-gradient(circle at 5% 90%,rgba(143,171,147,.13),transparent 37%),linear-gradient(110deg,rgba(3,33,21,.15),transparent 68%);pointer-events:none}.hero-motif{position:absolute;right:-100px;bottom:12px;color:rgba(212,194,144,.06);font-size:560px;line-height:1;transform:rotate(15deg)}.eyebrow-gold{color:#dcc599}.hero h1{position:relative;z-index:1;font-size:clamp(52px,5vw,78px);line-height:1.14;letter-spacing:-2.8px;margin:0 0 27px;white-space:nowrap}.hero-intro{position:relative;z-index:1;max-width:460px;font-size:14px;line-height:1.95;color:#d5ded3;margin:0 0 35px}.hero-buttons{position:relative;z-index:1;display:flex;align-items:center;gap:32px}.hero-bottom{margin-top:auto;position:relative;z-index:1;display:flex;align-items:center;gap:16px;color:#d2c29f;font-size:9px;letter-spacing:.21em;padding-top:55px}.tiny-sun{font-size:31px}.hero-photo{position:relative;background:url('images/hero.webp') center center/cover no-repeat;min-height:630px}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(14,35,25,.38),transparent 42%)}.hero-photo-label{position:absolute;right:47px;bottom:42px;z-index:1;display:flex;align-items:center;gap:14px;color:white;font-family:var(--font-display);font-size:20px;line-height:1.45;text-shadow:0 2px 10px #2d342a80}.hero-photo-label em{font-size:17px}.gold-star{font-family:var(--font-body);font-size:36px;color:#f5dba8}.virtues{background:#eae9de}.virtues-grid{display:grid;grid-template-columns:repeat(3,1fr)}.virtue{display:flex;align-items:center;justify-content:center;padding:27px 25px;border-right:1px solid #d9d9ce;gap:19px}.virtue:last-child{border-right:0}.virtue-icon{font:40px var(--font-display);color:#aa965f}.virtue strong,.virtue span{display:block}.virtue strong{font-size:12px;font-weight:700;color:var(--forest);margin-bottom:4px}.virtue span{font-size:11px;color:#849083}.about{background:var(--cream)}.about-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:min(9vw,115px)}.about-images{position:relative;height:560px}.about-image-large{position:absolute;top:0;left:0;width:77%;height:88%;overflow:hidden}.about-image-large img{width:100%;height:100%;object-fit:cover}.about-image-small{position:absolute;bottom:0;right:0;width:45%;height:51%;overflow:hidden;border:9px solid var(--cream)}.about-image-small img{width:100%;height:100%;object-fit:cover}.about-seal{position:absolute;top:6%;right:1%;width:128px;height:128px;border-radius:50%;border:1px solid #b9a472;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);background:var(--cream);color:var(--forest)}.seal-flower{font-size:39px;color:#bea46c;line-height:1}.about-seal small{font-size:8px;letter-spacing:.13em;line-height:1.8;text-align:center;margin-top:6px}.about-copy h2{color:var(--forest);margin:0 0 25px}.about-copy>p:not(.eyebrow){max-width:470px;font-size:13px;color:#707a70;margin-bottom:17px;line-height:2}.about-signoff{display:flex;align-items:center;gap:15px;margin:28px 0 35px;color:#7b6c50;font:italic 18px var(--font-display)}.signoff-sparkle{font-style:normal;color:#bd9a5a;font-size:25px}.services{background:var(--cream-dark)}.section-heading{max-width:710px;margin:0 auto 55px}.centered{text-align:center}.centered-eyebrow{justify-content:center}.section-heading h2{color:var(--forest);margin:0 0 17px}.section-heading>p:last-child{font-size:13px;color:var(--muted);line-height:1.9}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.service-card{min-width:0;background:#fffefa;border:1px solid #e3e1d6;transition:box-shadow .3s,transform .3s}.service-card:hover{box-shadow:0 17px 34px #364a3620;transform:translateY(-5px)}.service-img-wrap{height:215px;position:relative;overflow:hidden;background:#dee2d6}.service-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-card:hover .service-img-wrap img{transform:scale(1.055)}.service-no{position:absolute;top:16px;left:18px;width:35px;height:35px;border-radius:100%;display:grid;place-items:center;color:var(--forest);font:600 11px var(--font-body);background:#f9f7edeb}.service-info{padding:29px 28px 30px}.service-subtitle{font-size:9px!important;letter-spacing:.17em;color:#b5965e!important;text-transform:uppercase;font-weight:700;margin:0 0 12px!important;line-height:1.4!important}.service-info h3{font-size:27px;line-height:1.2;letter-spacing:-.4px;color:var(--forest);margin:0 0 13px}.service-info>p:not(.service-subtitle){font-size:12px;color:#7e837b;line-height:1.8;min-height:66px;margin:0 0 21px}.service-link{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid #bbc8b9;padding-bottom:6px;font-size:11px;font-weight:700;color:var(--forest)}.service-link:hover{color:#ad8a54;border-color:#ad8a54}.service-disclaimer{max-width:960px;margin:35px auto 0;font-size:10px;line-height:1.85;color:#888c81;text-align:center}.sunnah-section{position:relative;overflow:hidden;background:var(--forest);color:#f6f2e7;text-align:center;padding:114px 0 105px}.sunnah-content{position:relative;z-index:1;max-width:820px}.sunnah-pattern{position:absolute;color:#fff;opacity:.04;font-size:750px;left:50%;top:50%;line-height:1;transform:translate(-50%,-50%)}.eyebrow-sunnah{color:#d8bd88;justify-content:center;margin-bottom:37px}.arabic-hadith{font-size:clamp(30px,4.5vw,55px);line-height:1.8;color:#e6d3aa;font-family:serif;margin:0 0 12px}.sunnah-section blockquote{font:italic 400 clamp(30px,4vw,49px)/1.4 var(--font-display);margin:0 auto 25px}.hadith-credit{font-size:11px;color:#d1bd92;letter-spacing:.035em}.hadith-credit span{margin:0 11px}.hadith-credit a{text-decoration:underline;text-underline-offset:4px}.hadith-context{font-size:12px;line-height:2;max-width:600px;margin:36px auto 0;color:#bbc8ba}.gallery{background:var(--cream)}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px}.gallery-heading h2{margin:0;color:var(--forest)}.gallery-heading>p{font-size:12px;max-width:320px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:18px}.gallery-item{height:275px;overflow:hidden;background:#d6dfd3}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.045)}.gallery-note{text-align:right;font-size:10px;color:#92978e;margin:14px 0 0}.reviews{background:#eeede4}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-card{background:#fffcf6;padding:37px 34px 34px;min-height:270px;display:flex;flex-direction:column;border:1px solid #e1e0d4}.review-stars{font-size:17px;letter-spacing:4px;color:#b39452;margin-bottom:22px}.empty-stars{color:#c6c6bd}.review-text{font:italic 19px/1.65 var(--font-display);color:#3d4d42;margin:0 0 29px;flex:1}.review-bottom{border-top:1px solid #e5e4db;padding-top:22px;display:flex;align-items:center;gap:12px}.review-avatar{width:38px;height:38px;border-radius:50%;background:#e6ecdf;display:grid;place-items:center;color:#6d927b;font-size:21px}.review-bottom strong,.review-bottom div span{display:block}.review-bottom strong{font-size:11px;color:var(--forest);margin-bottom:4px}.review-bottom div span{font-size:9px;color:#989990}.faq{background:var(--cream)}.faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.faq-copy h2{color:var(--forest);margin-bottom:20px}.faq-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:380px;margin-bottom:30px}.faq-items{border-top:1px solid #d7dbd1}.faq-items details{border-bottom:1px solid #d7dbd1}.faq-items summary{cursor:pointer;list-style:none;padding:22px 0;font-size:13px;font-weight:700;color:#34473a;display:flex;justify-content:space-between;align-items:center;gap:25px}.faq-items summary::-webkit-details-marker{display:none}.faq-plus{font-size:21px;font-weight:400;color:#9b895e;transition:transform .25s}.faq-items details[open] .faq-plus{transform:rotate(45deg)}.faq-items details p{padding:0 24px 22px 0;margin:0;color:#6f7a71;font-size:12px;line-height:1.95}.booking{background:var(--forest);color:#f7f1e3;position:relative;overflow:hidden;padding:95px 0}.booking-pattern{position:absolute;font-size:650px;line-height:1;left:-230px;bottom:-260px;opacity:.035}.booking-grid{display:grid;grid-template-columns:1fr .95fr;gap:100px;align-items:center;position:relative}.booking-copy h2{font-size:clamp(44px,4.5vw,68px);line-height:1.2;margin:0 0 28px}.booking-copy>p:not(.eyebrow){font-size:13px;color:#ced8cb;max-width:430px}.booking-location{border-top:1px solid #527162;padding-top:24px;margin-top:45px;display:flex;align-items:center;gap:16px;font-size:12px;color:#e3dbb9}.booking-location span{font-size:25px;color:var(--gold)}.booking-card{background:#faf9f2;color:var(--forest);padding:45px 45px 35px;box-shadow:0 20px 50px #041a1328}.booking-card-caption{font-size:10px;letter-spacing:.22em;color:#b79b69;font-weight:700}.booking-card h3{font-size:36px;letter-spacing:-1px;margin:12px 0 9px}.booking-card>p{font-size:12px;color:#81887e;line-height:1.7;margin:0 0 24px}.booking-card form label{display:block;font-size:11px;font-weight:700;margin-bottom:8px}.booking-card form label small{font-size:10px;font-weight:400;color:#a9ada4}.booking-card input,.booking-card select,.booking-card textarea{width:100%;border:1px solid #e0e3d8;background:#fff;color:#263c30;border-radius:0;outline:none;padding:13px 14px;font-size:12px;margin-bottom:18px;min-height:47px}.booking-card input:focus,.booking-card select:focus,.booking-card textarea:focus{border-color:#89a18c;box-shadow:0 0 0 3px #89a18c24}.booking-card textarea{resize:vertical;min-height:65px}.btn-whatsapp{width:100%;color:#fff;background:#24794f;border:0;justify-content:center;font-size:12px;padding:15px 17px;gap:11px}.btn-whatsapp:hover{background:#1d6843}.form-footnote{font-size:9px;color:#999f92;line-height:1.8;text-align:center;margin:13px 0 0}.form-feedback{font-size:11px;line-height:1.6;margin:0;color:#aa563e;min-height:0}.form-feedback:not(:empty){margin-top:12px}.site-footer{background:var(--forest-deep);color:#bac9b9;padding:68px 0 0}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.3fr 1.15fr;gap:50px;padding-bottom:55px}.footer-logo .logo-text strong{color:#f4f0e3}.footer-brand p{font-size:11px;max-width:250px;line-height:2;margin:22px 0 0}.footer-column h4{color:#e9e5d9;font-size:12px;margin:8px 0 22px}.footer-column a,.footer-column>span{display:block;color:#b4c1b4;font-size:11px;margin-bottom:15px}.footer-column a:hover{color:#e8c98c}.footer-dua{border-left:1px solid #2b4c40;padding-left:35px;text-align:center;align-self:start}.footer-dua span{font-family:serif;font-size:28px;color:#d8bb82}.footer-dua p{font:italic 13px/1.8 var(--font-display);margin:12px 0 0}.footer-bottom{border-top:1px solid #2b4b40;display:flex;justify-content:space-between;gap:15px;padding:23px 0;font-size:10px;color:#8fa296}.floating-wa{position:fixed;z-index:18;bottom:24px;right:24px;border-radius:50%;background:#238658;color:#fff;width:56px;height:56px;display:grid;place-items:center;box-shadow:0 8px 28px #0d3e2380;transition:transform .2s}.floating-wa:hover{transform:translateY(-4px)}
@media(max-width:1200px){.desktop-nav{gap:19px}.nav-cta{font-size:10px}.hero-left{padding-left:45px;padding-right:25px}.hero h1{font-size:clamp(50px,5.2vw,68px)}}
@media(max-width:990px){.container{width:min(100% - 44px,800px)}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:flex}.mobile-nav:not([hidden]){display:flex;flex-direction:column;background:var(--cream);padding:12px 22px 24px;border-top:1px solid var(--border)}.mobile-nav a{padding:12px 6px;border-bottom:1px solid #e8e6dc;font-size:13px}.hero{grid-template-columns:1fr 1fr;min-height:585px}.hero-left{padding:68px 25px 30px 35px}.hero h1{font-size:51px;letter-spacing:-1.7px}.hero-intro{font-size:12px}.hero-buttons{flex-wrap:wrap;gap:13px}.hero-photo{min-height:570px}.virtue{padding:22px 10px;gap:11px}.virtue-icon{font-size:30px}.virtue span{font-size:10px}.about-grid{gap:35px}.about-images{height:470px}.about-seal{width:105px;height:105px}.about-copy h2{font-size:44px}.services-grid{grid-template-columns:repeat(2,1fr)}.faq-grid{gap:50px}.booking-grid{gap:40px}.booking-card{padding:30px}.footer-main{grid-template-columns:2fr 1fr 1.3fr;gap:25px}.footer-dua{display:none}}
@media(max-width:680px){.container{width:calc(100% - 36px)}.topbar{gap:10px;font-size:9px}.topbar .arabic{font-size:12px}.nav-row{height:73px}.logo-text strong{font-size:23px}.logo-symbol{width:36px}.logo-symbol svg{width:34px}.logo-text small{font-size:7px}.section{padding:74px 0}.eyebrow{font-size:9px;letter-spacing:.19em}.hero{display:flex;flex-direction:column-reverse}.hero-photo{min-height:320px;background-position:center 53%}.hero-photo-label{right:22px;bottom:21px;font-size:15px}.hero-photo-label em{font-size:13px}.gold-star{font-size:24px}.hero-left{padding:53px 23px 30px}.hero h1{font-size:clamp(43px,12vw,64px);line-height:1.16;white-space:normal}.hero-intro{font-size:13px;max-width:430px}.hero-buttons{gap:21px}.hero-bottom{padding-top:35px}.virtues-grid{grid-template-columns:1fr}.virtue{justify-content:flex-start;padding:16px 24px;border-right:0;border-bottom:1px solid #d9d9ce}.virtue:last-child{border-bottom:0}.about-grid{grid-template-columns:1fr;gap:45px}.about-images{height:380px;max-width:470px;width:100%;margin:0 auto}.about-copy h2{font-size:clamp(39px,9vw,51px)}.about-copy>p:not(.eyebrow){font-size:13px}.section-heading{margin-bottom:38px}.section-heading h2{font-size:clamp(39px,9vw,52px)}.services-grid{grid-template-columns:1fr;gap:18px;max-width:460px;margin-inline:auto}.service-img-wrap{height:235px}.service-info>p:not(.service-subtitle){min-height:unset}.service-disclaimer{text-align:left}.sunnah-section{padding:80px 0}.sunnah-section blockquote{font-size:32px}.arabic-hadith{font-size:39px}.hadith-credit{line-height:2}.gallery-heading{display:block}.gallery-heading h2{font-size:42px}.gallery-heading>p{margin:18px 0 0}.gallery-grid{grid-template-columns:1fr 1fr;gap:11px}.gallery-wide{grid-column:span 2}.gallery-item{height:190px}.gallery-wide{height:250px}.reviews-grid{grid-template-columns:1fr;gap:15px;max-width:460px;margin-inline:auto}.review-card{min-height:230px}.faq-grid{grid-template-columns:1fr;gap:35px}.faq-copy h2{font-size:45px}.booking{padding:72px 0}.booking-grid{grid-template-columns:1fr;gap:38px}.booking-copy h2{font-size:50px}.booking-location{margin-top:25px}.booking-card{padding:32px 22px}.footer-main{grid-template-columns:1fr 1fr;gap:45px 20px}.footer-brand{grid-column:span 2}.footer-bottom{display:block;line-height:2}.footer-bottom span{display:block}.floating-wa{bottom:16px;right:16px;width:52px;height:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
