@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/plex-ar-arabic-400.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/plex-ar-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/plex-ar-arabic-500.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/plex-ar-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/plex-ar-arabic-600.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/plex-ar-latin-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/plex-ar-arabic-700.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'IBM Plex Sans Arabic';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/plex-ar-latin-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Aref Ruqaa';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/aref-ruqaa-arabic-700.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}

/* ===== عام العقارية — طابع سعودي نجدي: مثلثات، معيّنات، نجمة ثمانية ===== */
:root{
  --navy:#112238; --ink:#112238; --muted:#112238;
  --gold:#BC9460; --gold-2:#D8B684; --gold-text:#7E5A2C;
  --paper:#FFFBF3; --sand:#F4EBDA; --sand-2:#EADBBF; --line:#E1D3B7;
  --ease:cubic-bezier(.2,.7,.2,1);
  --pad:clamp(20px,5vw,56px);
  --sec:clamp(56px,8vw,100px);
  --notch:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);
  --zig:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14'%3E%3Cpath d='M0 14 7 0l7 14zM14 0h14l-7 14z' fill='%23BC9460'/%3E%3C/svg%3E");
  --band:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14'%3E%3Cpath d='M0 14 7 0l7 14zM14 0h14l-7 14z' fill='%23BC9460'/%3E%3C/svg%3E");
  --lattice:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cg fill='none' stroke='%23BC9460' stroke-opacity='.3'%3E%3Cpath d='M28 0 56 28 28 56 0 28Z'/%3E%3Cpath d='M28 14 42 28 28 42 14 28Z'/%3E%3C/g%3E%3C/svg%3E");
  --lattice-soft:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cg fill='none' stroke='%23BC9460' stroke-opacity='.2'%3E%3Cpath d='M28 0 56 28 28 56 0 28Z'/%3E%3Cpath d='M28 14 42 28 28 42 14 28Z'/%3E%3C/g%3E%3C/svg%3E");
  --lattice-navy:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Cg fill='none' stroke='%23112238' stroke-opacity='.1'%3E%3Cpath d='M28 0 56 28 28 56 0 28Z'/%3E%3Cpath d='M28 14 42 28 28 42 14 28Z'/%3E%3C/g%3E%3C/svg%3E");
  --star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='none' stroke='%23BC9460' stroke-width='1.8'%3E%3Crect x='6' y='6' width='28' height='28'/%3E%3Crect x='6' y='6' width='28' height='28' transform='rotate(45 20 20)'/%3E%3C/g%3E%3Cg fill='%23112238'%3E%3Crect x='13.5' y='13.5' width='13' height='13'/%3E%3Crect x='13.5' y='13.5' width='13' height='13' transform='rotate(45 20 20)'/%3E%3C/g%3E%3Ccircle cx='20' cy='20' r='3.2' fill='%23BC9460'/%3E%3C/svg%3E");
  font-family:'IBM Plex Sans Arabic',system-ui,sans-serif;
  --hand:'Aref Ruqaa','IBM Plex Sans Arabic',serif;
  --swash:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 14' preserveAspectRatio='none'%3E%3Cpath d='M2 9C28 2 50 12 80 6s52-5 78 2' fill='none' stroke='%23BC9460' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E");
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{background:var(--paper);color:var(--ink);font-weight:500;line-height:1.95;font-size:clamp(16px,1.1vw,18px);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none;padding:0}
:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.site-header :focus-visible,.footer :focus-visible,.dock :focus-visible,.nav :focus-visible{outline-color:var(--gold-2)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;inset-inline-start:12px;top:-60px;background:var(--navy);color:#fff;padding:8px 16px;z-index:300}
.skip:focus{top:12px}
.container{width:100%;max-width:1100px;margin-inline:auto;padding-inline:var(--pad)}

/* ---------- Header ---------- */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;background:var(--lattice-soft) 50% 0/56px 56px,var(--navy)}
.site-header::after{content:"";position:absolute;inset:100% 0 auto 0;height:18px;background:linear-gradient(rgba(17,34,56,.75),rgba(17,34,56,.75)) 0 100%/100% 1px no-repeat,var(--band) 0 0/28px 14px repeat-x}
.header__bar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:72px}
.brand img{height:50px;width:auto}
.nav ul{display:flex;gap:clamp(14px,1.8vw,28px)}
.nav a{display:inline-flex;align-items:center;min-height:44px;color:#E5DCC8;font-size:16px;font-weight:500;padding:4px 0;border-bottom:2px solid transparent;transition:color .3s,border-color .3s}
.nav a:hover,.nav a.is-active{color:#fff;border-color:var(--gold)}
.burger{display:none;width:44px;height:44px;background:none;border:0;cursor:pointer;position:relative}
.burger span{position:absolute;inset-inline:10px;height:1.5px;background:#fff;transition:transform .3s,top .3s}
.burger span:first-child{top:18px}.burger span:last-child{top:26px}
.burger[aria-expanded=true] span:first-child{top:22px;transform:rotate(45deg)}
.burger[aria-expanded=true] span:last-child{top:22px;transform:rotate(-45deg)}
@media(max-width:1000px){
  .burger{display:block}
  .nav{position:fixed;inset:72px 0 0 0;background:var(--navy);padding:24px var(--pad);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
  .nav.is-open{opacity:1;visibility:visible}
  .nav ul{flex-direction:column;gap:0}
  .nav a{display:block;font-size:20px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}
}

/* ---------- Buttons: notched corners ---------- */
.btn{position:relative;isolation:isolate;display:inline-block;padding:15px 34px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.4;cursor:pointer;border:0;clip-path:var(--notch);transition:color .3s,background .3s}
.btn::before{content:"";position:absolute;inset:1.5px;clip-path:var(--notch);z-index:-1;transition:background .3s}
.btn:focus-visible{outline:none}
.btn:focus-visible::before{inset:4px}
.btn--solid{background:var(--gold);color:#fff}
.btn--solid::before{background:var(--navy)}
.btn--solid:hover{color:var(--gold-2)}
.btn--line{background:var(--navy);color:var(--navy)}
.btn--line::before{background:var(--paper)}
.btn--line:hover{color:#fff}
.btn--line:hover::before{background:var(--navy)}

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--sand) var(--lattice-navy)}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:18px;z-index:2;background:linear-gradient(rgba(17,34,56,.75),rgba(17,34,56,.75)) 0 100%/100% 1px no-repeat,var(--band) 0 0/28px 14px repeat-x}
/* نص على جهة، ولوحة كحلية بالشعار على الجهة الأخرى تمتد حتى حافة الشاشة */
.clip-defs{position:absolute;width:0;height:0;overflow:hidden}
.hero__grid{display:grid;grid-template-columns:1fr minmax(300px,36%);min-height:100svh}
.hero__copy{align-self:center;padding-block:clamp(150px,16vw,200px) clamp(80px,9vw,110px);padding-inline:max(var(--pad),calc((100% - 1100px) / 2 + var(--pad))) var(--pad)}
.hero h1{font-family:var(--hand);font-size:clamp(50px,7.6vw,112px);line-height:1.45;font-weight:700;color:var(--navy)}
.hero__text{margin-block:28px 40px;max-width:56ch;color:var(--navy);font-weight:600;font-size:clamp(17px,1.3vw,19px)}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px}
.hero__logo{--slant:clamp(60px,8vw,120px);display:grid;place-items:center;padding:110px calc(32px + var(--slant) / 2) 60px 32px;background:var(--lattice-soft) 50% 50%/56px 56px,var(--navy);clip-path:url(#clip-hero)}
.hero__logo img{width:min(100%,300px);height:auto}
@media(max-width:860px){
  .hero__grid{grid-template-columns:1fr;min-height:0}
  .hero__logo{order:-1;--slant:46px;padding:104px 24px calc(36px + var(--slant));clip-path:url(#clip-hero-m)}
  .hero__logo img{width:min(60%,210px)}
  .hero__copy{padding:28px var(--pad) 90px}
}

/* ---------- Sections ---------- */
.section{position:relative;padding-block:var(--sec)}
.section--tint{background:var(--sand)}
.section--tint::before,.section--tint::after{content:"";position:absolute;inset-inline:0;height:18px;background:linear-gradient(rgba(17,34,56,.75),rgba(17,34,56,.75)) 0 100%/100% 1px no-repeat,var(--band) 0 0/28px 14px repeat-x}
.section--tint::before{top:0;transform:scaleY(-1)}
.section--tint::after{bottom:0}
.split{display:grid;grid-template-columns:1fr;gap:clamp(20px,3vw,36px)}
.split__head:empty{display:none}
.title{font-family:var(--hand);font-size:clamp(38px,5vw,70px);line-height:1.55;text-wrap:balance;font-weight:700;color:var(--navy)}
.title::before{content:"";display:inline-block;width:.62em;height:.62em;vertical-align:.04em;margin-inline-end:.28em;background:var(--star) center/contain no-repeat}
.title--md{font-size:clamp(30px,3.4vw,46px);line-height:1.7}
.sub{margin-top:10px;color:var(--gold-text);font-weight:600;font-size:clamp(18px,1.7vw,23px)}
.label{color:var(--gold-text);font-size:18px;font-weight:600;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.label::before{content:"";width:1.4em;height:1.4em;background:var(--star) center/contain no-repeat}
.text{font-weight:600;color:var(--muted);max-width:68ch;margin-bottom:8px}
.text--navy{color:var(--navy);font-weight:600}
.text--end{margin:16px 0 36px;color:var(--navy);font-weight:600}

/* ---------- بطاقات: نجمة ثمانية بحافتين (ذهبية من الخارج، فراغ فاتح، ثم كحلية)، والمنتصف فاتح بنقش كحلي خفيف ---------- */
.rows{--gap:clamp(14px,2vw,26px);--hex:polygon(50.00% 0.00%,64.65% 14.64%,85.36% 14.64%,85.36% 35.35%,100.00% 50.00%,85.36% 64.65%,85.36% 85.36%,64.65% 85.36%,50.00% 100.00%,35.35% 85.36%,14.64% 85.36%,14.64% 64.65%,0.00% 50.00%,14.64% 35.35%,14.64% 14.64%,35.35% 14.64%);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.row{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:1;width:100%;justify-self:center;width:min(100%,320px);clip-path:var(--hex);background:var(--gold);padding:70px 80px;display:flex;flex-direction:column;justify-content:center;gap:8px;transition:transform .5s var(--ease)}
.row::before{content:"";position:absolute;inset:2.5px;clip-path:var(--hex);background:#FFFDF8;z-index:-1}
.row .hex-ring{position:absolute;inset:7px;clip-path:var(--hex);background:var(--navy);z-index:-1}
.row::after{content:"";position:absolute;inset:10.5px;clip-path:var(--hex);background:var(--lattice-navy) 50% 50%/56px 56px,var(--paper);z-index:-1}
.section--tint .row::after{background:var(--lattice-navy) 50% 50%/56px 56px,#FFFDF8}
.row h3{font-size:clamp(18px,1.5vw,20px);font-weight:700;color:var(--navy);line-height:1.5;text-align:center;white-space:nowrap;margin-inline:-36px;transition:color .3s}
.row p{color:var(--muted);font-weight:600;font-size:14.5px;line-height:1.65;text-align:center}
.row:hover{transform:translateY(-5px)}
.row:hover h3{color:var(--gold-text)}
#why .row p{font-size:14px;line-height:1.55}
#why .row{padding:64px 70px}
/* توزيع: ثلاثة في الصف، والصف الأخير الناقص في المنتصف */
@media(min-width:1001px){.rows{grid-template-columns:repeat(6,1fr)}.rows>*{grid-column:span 2}.rows>:nth-child(4):nth-last-child(2){grid-column:2 / span 2}.rows>:first-child:nth-last-child(2){grid-column:2 / span 2}}
@media(max-width:1000px){.rows{grid-template-columns:repeat(2,1fr)}.rows>:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:560px){.rows{grid-template-columns:1fr}.rows>:last-child:nth-child(odd){grid-column:auto}}

/* ---------- Mission ---------- */
.mission{background:var(--sand-2) var(--lattice-navy);padding-block:clamp(72px,10vw,130px);text-align:center}
.mission .label{justify-content:center}
.mission blockquote{font-family:var(--hand);font-size:clamp(38px,6vw,84px);line-height:1.6;font-weight:700;color:var(--navy);max-width:18ch;margin-inline:auto}
.mission::before,.mission::after{content:"";position:absolute;inset-inline:0;height:18px;background:linear-gradient(rgba(17,34,56,.75),rgba(17,34,56,.75)) 0 100%/100% 1px no-repeat,var(--band) 0 0/28px 14px repeat-x}
.mission::before{top:0;transform:scaleY(-1)}
.mission::after{bottom:0}

/* ---------- Contact ---------- */
.cta-line{text-align:center;font-family:var(--hand);font-size:clamp(40px,5.8vw,80px);line-height:1.6;font-weight:700;color:var(--navy)}
.methods{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 36px;margin-block:28px clamp(40px,6vw,72px)}
.methods a{display:inline-flex;align-items:center;min-height:44px;color:var(--gold-text);font-weight:600;padding:8px 0;border-bottom:2px solid var(--gold);transition:color .3s}
.methods a:hover{color:var(--navy)}
.contact__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,6vw,88px);align-items:start}
@media(max-width:860px){.contact__grid{grid-template-columns:1fr}}
.info h3{font-family:var(--hand);font-weight:700;font-size:clamp(30px,3.4vw,44px);line-height:1.7;color:var(--gold-text);margin-bottom:14px}
.form h3{font-weight:600;font-size:clamp(20px,1.8vw,24px);color:var(--navy);margin-bottom:18px}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.field label{font-size:16px;color:var(--navy);font-weight:500}
.field input,.field select,.field textarea{font:inherit;font-weight:500;font-family:inherit;padding:12px 14px;border:1.5px solid #8A7A5C;background:#FFFDF8;color:var(--ink);border-radius:0;width:100%;transition:border-color .3s,box-shadow .3s}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--navy);outline-offset:2px;border-color:var(--navy)}
.field .invalid{border-color:#b3402f;border-width:2.5px;background:#FFF3F0}
.info p{font-weight:600;color:var(--navy);margin-bottom:24px}
.info dl{border-top:1px solid var(--gold)}
.info dl>div{padding-block:14px;border-bottom:1px solid var(--line)}
.info dt{font-family:var(--hand);font-size:clamp(20px,1.8vw,24px);line-height:1.8;color:var(--gold-text);font-weight:700}
.info dd{color:var(--navy);font-weight:600}
.tel{display:inline-block;padding:8px 0;min-height:44px}
.social{display:flex;gap:20px;flex-wrap:wrap}
.social a,.social span{display:inline-flex;align-items:center;min-height:44px;font-size:clamp(18px,1.6vw,21px);font-weight:600}
.social a:hover{color:var(--gold-text);text-decoration:underline}

/* ---------- Footer ---------- */
.footer{position:relative;background:var(--lattice-soft) 50% 50%/56px 56px,var(--navy);color:#CDD3DE;padding-block:40px}
.footer__in{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}
.footer img{height:72px;width:auto}
.footer p{font-size:15px;line-height:1.4;margin-top:-4px}

/* ---------- Floating ---------- */
.sound{position:fixed;inset-inline-end:20px;bottom:20px;width:48px;height:48px;background:var(--navy);color:var(--gold-2);display:grid;place-items:center;cursor:pointer;z-index:40;border:0;clip-path:var(--notch)}
.sound svg{width:20px;height:20px}
.sound .off{display:none}
.sound[aria-pressed=false] .on{display:none}
.sound[aria-pressed=false] .off{display:block}
.wa-float{position:fixed;inset-inline-start:20px;bottom:20px;width:48px;height:48px;background:#1F7A4A;color:#fff;display:grid;place-items:center;z-index:40;transition:opacity .4s;clip-path:var(--notch)}
.wa-float.is-hidden{opacity:0;pointer-events:none}
.wa-float svg{width:26px;height:26px}
.dock{display:none}
@media(max-width:700px){
  .dock{display:grid;grid-template-columns:1fr 1fr;position:fixed;inset:auto 0 0 0;z-index:60;background:var(--navy);padding-bottom:env(safe-area-inset-bottom)}
  .dock a{display:block;text-align:center;color:#fff;padding:16px 8px;font-weight:600}
  .dock a:first-child{background:#1F7A4A}
  .wa-float{display:none}
  .sound{bottom:68px}
  .footer{padding-bottom:84px}
}

/* ---------- Motion: fade only ---------- */
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes load{to{transform:translateX(-100%)}}
@keyframes autohide{to{opacity:0;visibility:hidden}}
@keyframes turn{to{transform:rotate(360deg)}}
.js [data-reveal]{opacity:0;transition:opacity 1s var(--ease)}
.js [data-reveal].is-in{opacity:1}
.js .row[data-reveal]{transition:opacity 1s var(--ease),transform .4s var(--ease)}
.js .hero h1,.js .hero__text,.js .hero__cta,.js .hero__logo{opacity:0;animation:fade 1.1s var(--ease) forwards}
.js .hero__text{animation-delay:.2s}.js .hero__cta{animation-delay:.4s}.js .hero__logo{animation-delay:.3s}
.is-loading .hero h1,.is-loading .hero__text,.is-loading .hero__cta,.is-loading .hero__logo{animation-play-state:paused}

/* ---------- Preloader ---------- */
.preloader{position:fixed;inset:0;z-index:200;background:var(--sand) var(--lattice-navy);display:none;place-items:center;transition:opacity .8s var(--ease),visibility .8s}
.js .preloader{display:grid;animation:autohide .6s 6s forwards}
.preloader.is-done{opacity:0;visibility:hidden}
.preloader__in{position:relative;display:flex;flex-direction:column;align-items:center;gap:24px}
.preloader__in::before{content:"";position:absolute;top:-34px;width:260px;height:260px;background:var(--star) center/contain no-repeat;animation:turn 24s linear infinite;opacity:.7}
.preloader img{position:relative;width:min(170px,46vw);height:auto;background:var(--navy);padding:26px;clip-path:var(--notch)}
.preloader__bar{position:relative;width:120px;height:1px;background:var(--line);overflow:hidden;margin-top:34px}
.preloader__bar::after{content:"";position:absolute;inset:0;background:var(--gold);transform:translateX(100%);animation:load 1.5s var(--ease) infinite}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition-duration:.01ms!important;animation:none!important}
  .js [data-reveal],.js .hero h1,.js .hero__text,.js .hero__cta,.js .hero__logo{opacity:1}
  .preloader{display:none!important}
}

/* لمسة خط حر: ضربة فرشاة ذهبية تحت العناوين الرئيسية */
.hero h1::after,.mission blockquote::after,.cta-line::after{content:"";display:block;width:min(260px,60%);height:14px;margin-top:6px;background:var(--swash) center/100% 100% no-repeat}
.mission blockquote::after,.cta-line::after{margin-inline:auto}

.info .tel{font-size:clamp(21px,2vw,26px);font-weight:700;letter-spacing:.02em}

@media(max-width:380px){.row{padding:60px 66px}#why .row{padding:56px 62px}.row h3{margin-inline:-30px}}
