/* OSOOL Contact Page V1 - Tajawal, brand: olive / beige / muted red. */
.oscp-root{--oscp-olive:#494A27;--oscp-olive-2:#767450;--oscp-red:#9F3536;--oscp-cream:#F2ECE5;--oscp-sand:#E0D6C7;--oscp-paper:#FCF8F3;position:relative;isolation:isolate;width:100%;max-width:100%;overflow:hidden;direction:rtl;background:var(--oscp-cream);color:var(--oscp-olive);font-family:'Tajawal',Tahoma,Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}
.oscp-root,.oscp-root *,.oscp-root *::before,.oscp-root *::after{box-sizing:border-box}
.oscp-root a{text-decoration:none!important}
.oscp-root a:focus-visible{outline:3px solid #d4a8a8;outline-offset:4px}
.oscp-root section{scroll-margin-top:24px}
/* Full-width + Astra/Elementor spacing, strictly on this page. */
body.oscp-page,body.oscp-page #page,body.oscp-page #content,body.oscp-page .site-content,body.oscp-page .site-main{background:#F2ECE5!important}
body.oscp-page .site-content>.ast-container,body.oscp-page .site-content #primary,body.oscp-page .site-content .site-main{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;float:none!important}
body.oscp-page .site-content .entry-content,body.oscp-page .site-content article.page,body.oscp-page .site-content .ast-article-single{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;background:#F2ECE5!important}
body.oscp-page .elementor-widget-shortcode:has(.oscp-root),body.oscp-page .elementor-widget-container:has(>.oscp-root){padding:0!important;margin:0!important}
body.oscp-page .site-primary-footer-wrap,body.oscp-page .site-primary-footer-wrap .ast-builder-grid-row-container,body.oscp-page .site-primary-footer-wrap .ast-builder-grid-row{margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;background-color:#F2ECE5!important}
body.oscp-page .site-footer{margin-top:0!important;background-color:#F2ECE5!important}
/* Intro hero. */
.oscp-hero{position:relative;min-height:560px;overflow:hidden;background:linear-gradient(112deg,#3d4124 0%,#494A27 55%,#5a5c35 100%);color:var(--oscp-paper);padding:clamp(58px,7vw,112px) 0 clamp(55px,6.7vw,96px)}
.oscp-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 76% 17%,#e2d6bf1b,transparent 42%),radial-gradient(ellipse at 5% 95%,#9F35362e,transparent 40%);pointer-events:none}
.oscp-hero:after{content:"";position:absolute;inset:0;opacity:.12;pointer-events:none;background:repeating-linear-gradient(45deg,transparent 0 47px,#e4d5b5 48px,transparent 49px 98px),repeating-linear-gradient(-45deg,transparent 0 47px,#e4d5b5 48px,transparent 49px 98px);mask-image:linear-gradient(90deg,transparent 25%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 25%,#000 100%)}
.oscp-ring{position:absolute;width:650px;height:650px;border:1px solid #f7e9d222;border-radius:50%;pointer-events:none}.oscp-ring-a{left:-340px;top:-380px}.oscp-ring-b{left:-435px;top:-283px;width:825px;height:825px}
.oscp-heroinner{position:relative;z-index:2;max-width:1380px;margin:0 auto;padding:0 clamp(22px,5vw,72px);display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.82fr);align-items:center;gap:clamp(28px,5vw,80px)}
.oscp-copy{min-width:0}.oscp-overline{display:inline-flex;align-items:center;gap:11px;flex-wrap:wrap;font-size:clamp(12px,1.1vw,15px);font-weight:800;color:#f7e7cd;letter-spacing:.008em}.oscp-overline-mark{display:inline-block;width:29px;height:3px;background:#e4c8ae;border-radius:12px}.oscp-overline-split{opacity:.4}
.oscp-copy h1{color:#fff8ee!important;font-family:inherit!important;font-weight:900!important;font-size:clamp(56px,6.7vw,103px)!important;line-height:1.08!important;letter-spacing:-.075em!important;margin:22px 0!important;text-shadow:0 11px 24px #26291222}
.oscp-copy h1 span{display:block;font-size:clamp(26px,3.4vw,51px);letter-spacing:-.04em;color:#f1dfca;line-height:1.35;margin-top:8px;font-weight:800}
.oscp-copy>p{color:#f1e7dc;font-size:clamp(17px,1.65vw,22px);line-height:1.9;max-width:660px;margin:0 0 30px;font-weight:500}
.oscp-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.oscp-btn{min-height:57px;padding:14px 24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;font-size:17px;font-weight:900;transition:transform .23s,box-shadow .23s,background .23s;white-space:nowrap}
.oscp-btn:hover{transform:translateY(-3px)}.oscp-btn svg{height:20px;width:20px;flex:none}.oscp-btn-cream{background:#f2e8d9;color:var(--oscp-olive)!important;box-shadow:0 8px 0 #252a165a,0 16px 25px #23261430}.oscp-btn-cream:hover{background:#fff7ed;box-shadow:0 11px 0 #252a165a,0 19px 32px #23261440}.oscp-btn-outline{border:1px solid #f2e8d98c;background:#ffffff0d;color:#fff4e8!important}.oscp-btn-outline:hover{background:#ffffff1d}
.oscp-hero-details{margin-top:34px;display:flex;align-items:center;flex-wrap:wrap;gap:14px;color:#ecdfce;font-size:14px;font-weight:700}.oscp-hero-details b{font-size:19px;color:#fff}.oscp-hero-details i{width:5px;height:5px;border-radius:50%;background:#e4cbb4}
.oscp-visual{height:420px;position:relative;display:grid;place-items:center}.oscp-glow{position:absolute;width:350px;height:350px;background:radial-gradient(circle,#e7dbc733,transparent 66%);filter:blur(6px)}
.oscp-visualframe{width:clamp(270px,29vw,380px);height:360px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #e8d9c36b;border-radius:34px;background:linear-gradient(150deg,#f4e6d61a,#efe0cc08 40%,#fff4e81c);box-shadow:0 24px 75px #20241077,inset 0 1px 0 #ffffff44,0 0 0 9px #f5e7d009;transform:rotate(-3deg)}
.oscp-visualframe:before{content:"";position:absolute;inset:14px;border:1px solid #f4e3ca4f;border-radius:25px;pointer-events:none}
.oscp-vsmall{z-index:1;font-size:15px;color:#f4dfc9;font-weight:800}.oscp-medallion{margin:16px 0 10px;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;color:#e8c9b2;border:1px solid #e8c9b2a1;background:#f4e7d61a}.oscp-medallion svg{height:27px;width:27px}.oscp-visualframe strong{position:relative;z-index:1;font-size:clamp(52px,5vw,73px);font-weight:900;letter-spacing:-.055em;line-height:1.12;color:#fff5e8}.oscp-vdivider{width:98px;height:1px;background:linear-gradient(90deg,transparent,#d6b5aa,transparent);margin:24px 0 14px}.oscp-vend{font-size:16px;font-weight:800;color:#f0dcca}
.oscp-corner{position:absolute;width:27px;height:27px;transform:rotate(45deg);border:1px solid #d5c3a888}.oscp-corner-one{top:26px;right:27px}.oscp-corner-two{bottom:26px;left:27px}
.oscp-floating-chip{position:absolute;z-index:2;padding:10px 17px;border:1px solid #e4d2c7a1;border-radius:13px;background:#f5ebe1;color:var(--oscp-olive);font-weight:900;font-size:15px;box-shadow:0 14px 32px #20241055}.oscp-chip-one{right:-10px;top:58px;transform:rotate(4deg)}.oscp-chip-two{left:-10px;top:185px;transform:rotate(-4deg)}.oscp-chip-three{right:8px;bottom:30px;transform:rotate(4deg)}
.oscp-hero-edge{position:absolute;z-index:3;bottom:-1px;left:0;right:0;height:28px;background:var(--oscp-cream);clip-path:polygon(0 67%,15% 80%,33% 39%,54% 86%,75% 38%,100% 69%,100% 100%,0 100%)}
/* Reused existing contact cards and map - do not restyle individual cards. */
.oscp-branches{padding:0;margin:0;background:var(--oscp-cream)}.oscp-branches>.osool-contact-branches{margin:0 auto!important}
.oscp-locations{background:linear-gradient(180deg,#494A27 0,#494A27 76px,#F2ECE5 76px,#F2ECE5 100%);padding:28px clamp(14px,3.1vw,50px) clamp(44px,6vw,92px)}
.oscp-mapwrap{max-width:1600px;margin:0 auto}.oscp-mapwrap>.osbe3{max-width:1600px!important}.oscp-root .osbe3-eyebrow{display:none!important}
/* The existing map plugin has its own card UI, search, pins and Google map. */
.oscp-alert{margin:30px auto;padding:18px 23px;max-width:950px;border-radius:15px;border:1px solid #9f3536;color:#9f3536;background:#fff8f5;font-size:16px;font-weight:800;text-align:center}
/* Closing invitation. Footer stays global in Astra. */
.oscp-closing{background:#f2ece5;padding:0 clamp(18px,3vw,42px) clamp(16px,3vw,46px)}
.oscp-closing-inner{max-width:1510px;margin:0 auto;position:relative;overflow:hidden;min-height:230px;padding:42px clamp(26px,5vw,68px);border-radius:28px;background:linear-gradient(125deg,#494A27,#555833 58%,#494A27);display:flex;align-items:center;gap:25px;color:#faf1e9;box-shadow:0 17px 34px #494a271b}
.oscp-closing-inner:after{content:"";position:absolute;width:320px;height:320px;border:1px solid #eee0cf40;border-radius:50%;left:-80px;top:-190px;box-shadow:0 0 0 45px #eee0cf0a,0 0 0 95px #eee0cf08;pointer-events:none}
.oscp-closing-symbol{width:66px;height:66px;border:1px solid #eddccc6e;border-radius:20px;display:grid;place-items:center;flex:none;background:#f8f0e719}.oscp-closing-symbol svg{height:29px;width:29px}
.oscp-closing-text{position:relative;z-index:1;flex:1}.oscp-closing-text>span{font-weight:800;font-size:15px;color:#e9d2c0}.oscp-closing-text h2{font-family:inherit!important;color:#fff5e8!important;font-size:clamp(24px,3vw,38px)!important;line-height:1.35!important;margin:4px 0 8px!important;font-weight:900!important}.oscp-closing-text p{margin:0;font-size:16px;color:#f2e6dc}
.oscp-closing-link{z-index:1;flex:none;display:inline-flex;align-items:center;gap:11px;background:#f7efe4;color:#494A27!important;padding:14px 23px;min-height:54px;border-radius:14px;font-size:16px;font-weight:900;box-shadow:0 7px 0 #252b164f;transition:transform .2s}.oscp-closing-link:hover{transform:translateY(-3px)}
@media(max-width:1000px){.oscp-heroinner{grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:22px}.oscp-visual{height:360px}.oscp-visualframe{height:310px;width:280px}.oscp-chip-one{right:-20px}.oscp-chip-two{left:-10px}.oscp-chip-three{right:0}.oscp-copy h1{font-size:62px!important}}
@media(max-width:780px){.oscp-hero{padding:65px 0 55px}.oscp-heroinner{display:flex;flex-direction:column;gap:40px;padding:0 22px}.oscp-copy{width:100%;text-align:center}.oscp-overline,.oscp-actions,.oscp-hero-details{justify-content:center}.oscp-copy h1{font-size:clamp(49px,11vw,74px)!important}.oscp-copy h1 span{font-size:clamp(24px,5.7vw,35px)}.oscp-copy>p{margin:0 auto 26px;max-width:560px}.oscp-visual{width:100%;max-width:460px;height:345px}.oscp-visualframe{height:305px}.oscp-chip-one{right:0}.oscp-chip-two{left:0}.oscp-chip-three{right:18px}.oscp-closing-inner{flex-wrap:wrap;text-align:center;justify-content:center;gap:18px;padding:32px 25px}.oscp-closing-text{flex:1 1 100%}.oscp-closing-link{margin:4px auto 0}}
@media(max-width:480px){.oscp-heroinner{padding:0 17px}.oscp-copy h1{font-size:52px!important}.oscp-copy>p{font-size:16px}.oscp-btn{flex:1 1 100%;font-size:16px;min-height:52px}.oscp-hero-details{gap:8px;font-size:12px}.oscp-hero-details b{font-size:15px}.oscp-visual{height:315px}.oscp-visualframe{height:282px;width:250px}.oscp-visualframe strong{font-size:54px}.oscp-floating-chip{font-size:13px;padding:8px 12px}.oscp-chip-one{right:-2px;top:22px}.oscp-chip-two{left:-2px;top:140px}.oscp-chip-three{right:5px;bottom:10px}.oscp-locations{padding-left:9px;padding-right:9px}.oscp-closing{padding-left:12px;padding-right:12px}.oscp-closing-inner{border-radius:21px}.oscp-closing-link{font-size:15px}}
@media(prefers-reduced-motion:reduce){.oscp-root *{scroll-behavior:auto!important;transition:none!important}}


/* =============================================================
   Version 1.1 | About-page-proven viewport breakout + Astra reset.
   Applies ONLY when [osool_contact_page] is found on this page.
   Do not change the independent cards / Google map plugins.
   ============================================================= */
body.oscp-page #masthead,
body.oscp-page .entry-header,
body.oscp-page .ast-page-builder-template .entry-header {
    display: none !important;
}

body.oscp-page #content,
body.oscp-page .site-content,
body.oscp-page .site-content > .ast-container,
body.oscp-page #primary,
body.oscp-page .site-main,
body.oscp-page article.page,
body.oscp-page .ast-article-single,
body.oscp-page .entry-content,
body.oscp-page .entry-content > .elementor {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Break free from a fixed 800px Astra or Elementor column. */
.oscp-root {
    display: block !important;
    position: relative !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: 0 !important;
    left: 0 !important;
    overflow-x: clip !important;
}

/* Avoid clipping where Elementor uses a constraining container. */
body.oscp-page .elementor-widget-shortcode:has(.oscp-root),
body.oscp-page .e-con:has(.oscp-root),
body.oscp-page .elementor-section:has(.oscp-root) {
    overflow: visible !important;
}

/* Ensure that the reused branch explorer can shrink inside its frame. */
.oscp-root .oscp-mapwrap,
.oscp-root .osbe3,
.oscp-root .osbe3-explorer,
.oscp-root .osbe3-side,
.oscp-root .osbe3-map-panel {
    min-width: 0 !important;
}
.oscp-root .oscp-mapwrap { width:100%; }

/* Keep the global Astra footer once, without blank strips. */
body.oscp-page,
body.oscp-page #page,
body.oscp-page #content,
body.oscp-page .site-content,
body.oscp-page .site-main,
body.oscp-page .site-footer {
    background-color:#F2ECE5 !important;
}
body.oscp-page .site-footer,
body.oscp-page .site-primary-footer-wrap {
    padding-top:0 !important;
    margin-top:0 !important;
}
html:has(body.oscp-page) { background-color:#F2ECE5; }
@supports not (width: 100vw) { .oscp-root { width:100%!important; max-width:100%!important; } }


/* ================================================================
   V1.2 — Luxury navigation restored (without old Astra header).
   Mirrors the site's approved olive/beige navigation treatment.
   CSS scoped to the contact shortcode only.
   ================================================================ */
.oscp-root .oscp-page-header{
    position:relative;z-index:30;background:#F2ECE5;color:#494A27;
    padding:0 0 7px;
}
.oscp-root .oscp-utility-bar{background:#494A27;color:#fff7eb;min-height:35px;display:flex;align-items:center;}
.oscp-root .oscp-utility-inner{
    width:min(1330px,calc(100% - 40px));margin:auto;
    display:flex;align-items:center;justify-content:space-between;
    gap:14px;font-size:12px;font-weight:800;
}
.oscp-root .oscp-utility-contact{display:flex;align-items:center;gap:14px;direction:ltr;}
.oscp-root .oscp-utility-contact a,
.oscp-root .oscp-utility-contact span:not(.oscp-utility-separator){display:inline-flex;align-items:center;gap:7px;color:#fff7eb!important;white-space:nowrap;}
.oscp-root .oscp-utility-contact svg{width:14px;height:14px}
.oscp-root .oscp-utility-separator{width:1px;height:16px;background:#f1e5d17a}
.oscp-root .oscp-site-nav{
    position:relative;display:flex;align-items:center;
    width:min(1330px,calc(100% - 40px));
    min-height:66px;margin:0 auto;padding:8px 16px;
    border:1px solid #fffdf9; border-radius:0 0 30px 30px;
    background:linear-gradient(180deg,#fdf7f0,#eae0d5);
    box-shadow:0 13px 28px #494a2720,inset 0 1px 0 #fff;
    justify-content:space-between;gap:20px;direction:rtl;flex-direction:row-reverse;
}
.oscp-root .oscp-nav-desktop{display:flex;align-items:center;gap:clamp(24px,3.8vw,62px);direction:rtl;padding-inline:12px;}
.oscp-root .oscp-nav-desktop>a,
.oscp-root .oscp-food-menu>summary{
    font-family:inherit;font-size:clamp(15px,1.13vw,18px);
    font-weight:900;color:#494A27!important;white-space:nowrap;
    padding:8px 2px;cursor:pointer;list-style:none;
}
.oscp-root .oscp-nav-desktop>a:hover,
.oscp-root .oscp-food-menu>summary:hover{color:#9F3536!important}
.oscp-root .oscp-nav-desktop>a.oscp-nav-current{border-bottom:2px solid #494A27;}
.oscp-root .oscp-nav-book{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    padding:11px 19px;flex:none;border-radius:100px;background:#494A27;
    color:#fff9ed!important;font-size:15px;font-weight:900;
    box-shadow:0 5px 9px #494a2730;transition:transform .2s ease,background .2s ease;
}
.oscp-root .oscp-nav-book svg{width:18px;height:18px}
.oscp-root .oscp-nav-book:hover{background:#5d6036;transform:translateY(-2px)}
.oscp-root .oscp-food-menu{position:relative}
.oscp-root .oscp-food-menu>summary{display:flex;align-items:center;gap:7px}
.oscp-root .oscp-food-menu>summary::-webkit-details-marker{display:none}
.oscp-root .oscp-food-menu>summary::marker{content:""}
.oscp-root .oscp-food-popup{
    position:absolute;z-index:100;right:-20px;top:calc(100% + 5px);
    min-width:185px;background:#fbf5ed;border:1px solid #ded1be;
    box-shadow:0 15px 40px #282a1f3d;border-radius:17px;padding:7px;
}
.oscp-root .oscp-food-popup a{display:block;padding:12px 13px;border-radius:10px;color:#494A27!important;font-weight:900;font-size:15px;}
.oscp-root .oscp-food-popup a:hover{background:#eee3d5;}
.oscp-root .oscp-mobile-menu{display:none}
@media(max-width:900px){
    .oscp-root .oscp-utility-inner,.oscp-root .oscp-site-nav{width:calc(100% - 24px);}
    .oscp-root .oscp-nav-desktop{gap:16px}
    .oscp-root .oscp-nav-desktop>a,.oscp-root .oscp-food-menu>summary{font-size:14px}
}
@media(max-width:700px){
    .oscp-root .oscp-utility-inner{font-size:11px;gap:6px}
    .oscp-root .oscp-utility-contact{gap:7px}
    .oscp-root .oscp-utility-contact span:not(.oscp-utility-separator),
    .oscp-root .oscp-utility-separator{display:none}
    .oscp-root .oscp-nav-desktop{display:none}
    .oscp-root .oscp-site-nav{min-height:63px;padding:8px 13px}
    .oscp-root .oscp-nav-book{padding:10px 13px;font-size:13px}
    .oscp-root .oscp-mobile-menu{display:block;position:relative;order:0}
    .oscp-root .oscp-mobile-menu>summary{
        cursor:pointer;display:flex;align-items:center;gap:8px;
        border-radius:12px;color:#494A27;font-size:16px;font-weight:900;
        padding:8px;list-style:none;
    }
    .oscp-root .oscp-mobile-menu>summary::-webkit-details-marker{display:none}
    .oscp-root .oscp-mobile-menu>summary::marker{content:""}
    .oscp-root .oscp-mobile-burger{font-size:23px;line-height:1;}
    .oscp-root .oscp-mobile-links{
        position:absolute;right:0;top:calc(100% + 9px);z-index:100;
        width:min(310px,calc(100vw - 42px));padding:12px;
        background:#fff8f0;border:1px solid #eadaca;border-radius:18px;
        box-shadow:0 18px 50px #26271552;
    }
    .oscp-root .oscp-mobile-links>a,
    .oscp-root .oscp-mobile-food>summary,
    .oscp-root .oscp-mobile-food>a{
        display:block;color:#494A27!important;font-size:16px;
        font-weight:900;text-align:right;padding:11px 13px;border-radius:10px;
        list-style:none;
    }
    .oscp-root .oscp-mobile-links>a:hover,
    .oscp-root .oscp-mobile-food>summary:hover,
    .oscp-root .oscp-mobile-food>a:hover{background:#efe5da}
    .oscp-root .oscp-mobile-links>a[aria-current="page"]{background:#ebe1d5;}
    .oscp-root .oscp-mobile-food>summary{cursor:pointer}
    .oscp-root .oscp-mobile-food>summary::-webkit-details-marker{display:none}
    .oscp-root .oscp-mobile-food>summary::marker{content:""}
    .oscp-root .oscp-mobile-food>a{font-size:14px;padding-right:29px;color:#646946!important}
}
