/* =========================================================
   Rashwan Zaza — static site
   Global values transplanted from the Elementor kit (post-5.css);
   per-page layout values (spacers, column widths, margins) are
   emitted into each page's own <style> block by the build script.
   ========================================================= */

:root{
  --e-global-color-primary:#000000;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#000000;--e-global-color-accent:#929292;
  --e-global-color-f5ea521:#FFFFFF00;--e-global-color-5d41906:#F4FF00;--e-global-color-2b1865d:#E000FF;--e-global-color-bcb51dc:#57573a;
  --e-global-color-fbca130:#8DD8C4;--e-global-color-3d105e5:#8593E8;--e-global-color-0e1b38a:#F2B22B40;--e-global-color-4927abe:#707D60;--e-global-color-b7dca95:#F2B22B;
  --e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-size:30px;--e-global-typography-primary-font-weight:bold;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:32px;
  --e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-size:23px;--e-global-typography-secondary-font-weight:200;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:32px;
  --e-global-typography-text-font-family:"Sora";--e-global-typography-text-font-size:14px;--e-global-typography-text-font-weight:normal;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:22px;
  --e-global-typography-accent-font-family:"Sora";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:bold;--e-global-typography-accent-font-style:italic;--e-global-typography-accent-text-decoration:underline;
  --e-global-typography-336752b-font-family:"Sora";--e-global-typography-336752b-font-size:14px;--e-global-typography-336752b-font-weight:200;--e-global-typography-336752b-text-transform:none;--e-global-typography-336752b-font-style:normal;--e-global-typography-336752b-text-decoration:none;--e-global-typography-336752b-line-height:27px;
  --e-global-typography-d3a3ce2-font-family:"Sora";--e-global-typography-d3a3ce2-font-size:13px;--e-global-typography-d3a3ce2-font-weight:300;--e-global-typography-d3a3ce2-text-transform:none;--e-global-typography-d3a3ce2-font-style:italic;--e-global-typography-d3a3ce2-text-decoration:none;--e-global-typography-d3a3ce2-line-height:22px;
  --e-global-typography-db4ee2a-font-family:"Sora";--e-global-typography-db4ee2a-font-size:23px;--e-global-typography-db4ee2a-font-weight:400;--e-global-typography-db4ee2a-text-transform:none;--e-global-typography-db4ee2a-font-style:normal;--e-global-typography-db4ee2a-text-decoration:none;--e-global-typography-db4ee2a-line-height:32px;
  --e-global-typography-c177c93-font-family:"Sora";--e-global-typography-c177c93-font-size:14px;--e-global-typography-c177c93-font-weight:600;--e-global-typography-c177c93-line-height:19px;
  --e-global-typography-52548c4-font-family:"Trebuchet MS";--e-global-typography-52548c4-font-size:54px;
  --ink:#000;--bg:#fff;--grey:#929292;
  --wrap:1080px;
}
@media(max-width:1023px){:root{--e-global-typography-primary-font-size:30px;--e-global-typography-primary-line-height:54px;--e-global-typography-secondary-font-size:23px;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-db4ee2a-font-size:23px;--e-global-typography-db4ee2a-line-height:1.2em;--wrap:768px}}
@media(max-width:767px){:root{--e-global-typography-primary-font-size:30px;--e-global-typography-primary-line-height:1.3em;--e-global-typography-secondary-font-size:23px;--e-global-typography-secondary-line-height:1em;--e-global-typography-db4ee2a-font-size:23px;--e-global-typography-db4ee2a-line-height:1.3em;--wrap:100%}}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--e-global-color-secondary);color:var(--e-global-color-text);
  font-family:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14px;font-weight:300;line-height:1.5;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,video{max-width:100%;display:block;height:auto}
a{color:var(--e-global-color-primary);text-decoration:none;font-size:var(--e-global-typography-text-font-size);line-height:var(--e-global-typography-text-line-height);font-weight:var(--e-global-typography-text-font-weight)}
.text a:hover{text-decoration:underline;font-style:italic}
button{font:inherit;color:inherit}
strong{font-weight:600}
em{font-style:italic}
ul{padding-left:1.4em}
p{margin-bottom:9px}
h1{color:var(--e-global-color-text);font-family:var(--e-global-typography-primary-font-family),sans-serif;font-size:var(--e-global-typography-primary-font-size);font-weight:var(--e-global-typography-primary-font-weight);text-transform:var(--e-global-typography-primary-text-transform);font-style:var(--e-global-typography-primary-font-style);line-height:var(--e-global-typography-primary-line-height)}
h2{color:var(--e-global-color-text);font-size:40px;font-weight:200;line-height:54px}
h3{color:var(--e-global-color-text);font-size:25px}
h4{color:var(--e-global-color-primary);font-size:23px;font-weight:300;margin-bottom:15px}
h5{color:var(--e-global-color-text);font-size:16px;font-weight:200;line-height:24px;margin-bottom:7px}
h6{color:var(--e-global-color-text);font-size:14px;font-weight:500;line-height:27px;margin-bottom:5px}
@media(max-width:1023px){h2{font-size:33px;line-height:1.4em}h4{font-size:23px;line-height:1.2em}}
@media(max-width:767px){p{margin-bottom:18px}h2{font-size:26px;line-height:1.4em}h3{font-size:25px;line-height:1.4em}h4{font-size:23px;line-height:1.3em}h5{font-size:13px}h6{font-size:13px}}

/* ---------------- Elementor layout model ---------------- */
.wrap{width:100%;max-width:var(--wrap);margin:0 auto}
.sec{position:relative}
.sec > .con{display:flex;margin:0 auto;position:relative;max-width:1283px}
.sec.mid > .con{align-items:center}
.col{display:flex;min-height:1px;position:relative}
.colin{display:flex;flex-wrap:wrap;align-content:flex-start;width:100%;position:relative}
.colin.gapd{padding:10px}
.w,.colin > .sec{width:100%;position:relative}
.w.elementor-widget__width-auto{width:auto}
.w.elementor-widget__width-inherit{width:100%}
.w .spacer{height:50px}
.ht{margin:0;padding:0}
.text p:empty,.text p.blank{height:21px;margin-bottom:9px}
.text ul,.text ol{margin-bottom:0}
.text li{line-height:21px}
@media(max-width:1023px){.sec > .con{max-width:1024px}}
@media(max-width:767px){
  .sec > .con{max-width:767px;flex-wrap:wrap}
  .col{width:100% !important}
  .elementor-hidden-mobile,.elementor-hidden-phone{display:none !important}
}
@media(min-width:768px) and (max-width:1023px){.elementor-hidden-tablet{display:none !important}}
@media(min-width:1024px){.elementor-hidden-desktop{display:none !important}}

/* dividers */
.divider{padding-block-start:15px;padding-block-end:15px;--divider-border-style:solid;--divider-color:var(--e-global-color-text);--divider-border-width:1px;--divider-element-spacing:16px}
.divider-line{display:block;width:100%;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}
.divider-line.has-text{display:flex;align-items:center;border-top:0}
.divider-line.has-text::after{content:"";flex:1 1 auto;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}
.divider-line.has-text .divider-text{margin-right:var(--divider-element-spacing);white-space:nowrap}
.divider-line.has-text.center::before{content:"";flex:1 1 auto;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}
.divider-line.has-text.center .divider-text{margin-left:var(--divider-element-spacing)}

/* images */
figure{margin:0;text-align:center;font-size:0;line-height:0}
figure img{display:inline-block;vertical-align:middle;max-width:100%;height:auto}
figure a{display:inline-block;cursor:zoom-in;max-width:100%}

/* videos */
.embed{position:relative;width:100%;background:#000;aspect-ratio:16/9;overflow:hidden}
.embed iframe,.embed video{position:absolute;inset:0;width:100%;height:100%;border:0}
.embed video{object-fit:cover;background:#000}

/* galleries (Elementor Pro gallery widget) */
.gallery{display:grid;gap:var(--ggap,10px);width:100%}
.gallery.grid{grid-template-columns:repeat(var(--cols,1),1fr)}
.gallery.masonry{grid-template-columns:repeat(var(--cols,1),1fr);align-items:start}
.gallery.masonry .col{display:flex;flex-direction:column;gap:var(--ggap,10px);width:100%}
.gallery a{display:block;cursor:zoom-in;overflow:hidden;position:relative}
.gallery img{width:100%}
.gallery.ratio-16-9 img{aspect-ratio:16/9;object-fit:cover}
.gallery.ratio-21-9 img{aspect-ratio:21/9;object-fit:cover}
.gallery a::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .8s}
.gallery a:hover::after{opacity:1}

/* portfolio grids (Elementor Pro portfolio widget) */
.portfolio{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;width:100%}
.p-item{display:block;position:relative;overflow:hidden;background:rgba(0,0,0,.1)}
.p-item .thumb{display:block;position:relative;padding-bottom:56.25%}
.p-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.p-item .cap{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;
  padding:15px;background:var(--e-global-color-text);color:var(--e-global-color-secondary);
  font-size:var(--e-global-typography-text-font-size);line-height:var(--e-global-typography-text-line-height);font-weight:var(--e-global-typography-text-font-weight);
  opacity:0;transition:opacity 1s;
}
.p-item:hover .cap{opacity:1;transition:opacity .5s}

/* ---------------- header ---------------- */
.site-header{min-height:96px;display:flex;align-items:center}
.site-header .wrap{display:flex;align-items:center;gap:0}
.hd-rule{flex:0 0 15%;height:1px;background:var(--ink);position:relative}
.hd-rule.l{flex-basis:15%}
.hd-rule.l::after{content:"";position:absolute;right:0;top:0;width:25%;height:1px;background:var(--bg)}
.hd-rule.m{flex-basis:7%}
.hd-rule.r{flex-basis:2%;margin-left:auto}
.site-title{flex:0 0 15%;padding-left:0;font-size:15px;line-height:23px;font-weight:400;letter-spacing:0}
.nav{flex:0 0 52%;display:flex;align-items:center;list-style:none;gap:0;padding-left:43px}
.nav a{display:block;padding:0 5px;margin:0 5px;font-size:13px;line-height:62px;font-weight:400;white-space:nowrap}
.nav li:first-child a{margin-left:0;padding-left:0}
.nav .horns{width:17px;height:17px;display:inline-block;vertical-align:-4px}
.socials{flex:0 0 7%;display:flex;align-items:center;justify-content:flex-start;gap:15px;padding-left:11px}
.socials a{display:grid;place-items:center;line-height:0}
.socials svg{width:17px;height:17px;fill:currentColor}
.burger{display:none;margin-left:auto;background:none;border:0;cursor:pointer;padding:8px}
.burger span{display:block;width:22px;height:2px;background:var(--ink);transition:transform .25s,opacity .2s}
.burger span + span{margin-top:5px}
.burger[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}

/* ---------------- footer ---------------- */
.site-footer{min-height:116px;display:flex;align-items:center;padding-bottom:20px}
.site-footer .wrap{display:flex;align-items:center}
.ft-rule{height:1px;background:var(--ink)}
.ft-rule.l{flex:0 0 15%;position:relative}
.ft-rule.l::after{content:"";position:absolute;right:0;top:0;width:23%;height:1px;background:var(--bg)}
.ft-rule.r{flex:1 1 auto;margin-left:15px}
.copy{flex:0 0 27%;padding-right:15px;font-family:"Space Grotesk","Sora",sans-serif;font-size:12px;line-height:16px;font-weight:400}

/* ---------------- contact form ---------------- */
.form{width:100%}
.field{margin-bottom:19px;padding:0 5px}
.field label{display:block;font-size:14px;line-height:14px;padding-bottom:16px}
.field label .req{color:#f00;margin-left:4px}
.field input,.field textarea{
  width:100%;border:1px solid var(--e-global-color-text);border-radius:0;background:#fff;
  padding:10px 15px;font-family:inherit;font-size:15px;line-height:23px;font-weight:300;color:var(--ink);
}
.field textarea{height:106px;min-height:106px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:var(--grey)}
.field input:focus,.field textarea:focus{outline:none;box-shadow:0 0 0 1px var(--ink)}
.field.invalid input,.field.invalid textarea{border-color:#b00020}
.field.invalid input::placeholder,.field.invalid textarea::placeholder{color:#b00020}
/* hCaptcha renders a fixed 303x78 iframe; give it the field rhythm */
.h-captcha{margin:8px 5px 20px}
.submit{
  display:inline-block;background:var(--e-global-color-text);color:#fff;border:0;border-radius:3px;
  padding:9px 44px;font-size:15px;line-height:22px;font-weight:400;cursor:pointer;margin:0 5px;
}
.form-note{margin:20px 5px 0;font-size:14px;line-height:22px}
.form-note:empty{display:none}
.form-note.err{color:#b00020}
.form-note.ok{color:var(--ink)}

/* icon widget */
.w-icon{text-align:left}
.icon{display:inline-block;font-size:25px;line-height:1;color:var(--e-global-color-text)}
.icon svg{width:1em;height:1em;fill:currentColor;display:block}

/* ---------------- music page embeds ---------------- */
.html iframe{width:100%;border:0;display:block;max-width:100%}

/* ---------------- 404 ---------------- */
.simple{padding:133px 0 120px}
.simple .narrow{width:69.332%;margin-left:15%}
.simple h1{margin-bottom:24px}
.simple a{border-bottom:1px solid var(--ink)}

/* ---------------- lightbox ---------------- */
.lb{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center;padding:70px 90px}
.lb.open{display:flex}
.lb-slot{max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center}
.lb-slot img{max-width:100%;max-height:calc(100vh - 140px);width:auto;height:auto}
.lb button{position:absolute;background:none;border:0;color:#fff;cursor:pointer;line-height:1;padding:12px}
.lb .lb-close{top:18px;right:24px;font-size:40px}
.lb .lb-prev,.lb .lb-next{top:50%;transform:translateY(-50%);font-size:52px}
.lb .lb-prev{left:16px}
.lb .lb-next{right:16px}
.lb .lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#fff;font-size:13px;font-weight:300;letter-spacing:.06em}
.lb[data-single="1"] .lb-prev,.lb[data-single="1"] .lb-next,.lb[data-single="1"] .lb-count{display:none}

/* ---------------- responsive header/footer ---------------- */
@media(max-width:1023px){
  .site-header .wrap,.site-footer .wrap{padding:0 25px}
  .hd-rule.l{flex-basis:8%}
  .hd-rule.l::after{display:none}
  .site-title{flex-basis:18%;font-size:14px;line-height:20px}
  .hd-rule.m{flex-basis:4%}
  .nav{flex:1 1 auto;padding-left:20px}
  .nav a{font-size:12px;padding:0 4px;margin:0 3px}
  .copy{flex-basis:37%;line-height:15px}
  .simple .narrow{width:77%}
}
@media(max-width:767px){
  .site-header{min-height:123px}
  .site-header .wrap{flex-wrap:wrap;position:relative}
  .hd-rule,.socials{display:none}
  .site-title{flex:1 1 auto}
  .burger{display:block}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:10;flex-direction:column;align-items:stretch;background:var(--ink);padding:0}
  .nav.open{display:flex}
  .nav li{border-bottom:1px solid #fff}
  .nav li:last-child{border-bottom:0}
  .nav a,.nav li:first-child a{color:#fff;padding:13px 33px;margin:0;font-size:14px;line-height:1.4;text-transform:capitalize}
  .nav .horns{width:19px;height:19px;vertical-align:-4px}
  .nav li:hover{background:#343434}
  .site-footer .wrap{flex-wrap:wrap}
  .ft-rule{display:none}
  .copy{flex:1 1 100%;padding:0}
  .simple{padding:99px 25px 60px}
  .simple .narrow{width:100%;margin:0}
  .lb{padding:60px 16px}
  .lb .lb-prev,.lb .lb-next{font-size:38px}
}
