
/* ===== SHARED DESIGN SYSTEM (mirrors Mhendaz Home / SOS tokens) ===== */
:root{--ink:#282142;--bg:#fffffe;--white:#ffffff;--accent:#6f3fcf;--serif:"Baskervville",Georgia,serif;--sans:"Inter","Uncut Sans",-apple-system,Segoe UI,Roboto,sans-serif;--pill:58px;--radius:20px;--inset:20px;}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;line-height:1.5}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
/* header */
.site-header{position:fixed;top:0;left:0;width:100%;z-index:100;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:24px clamp(20px,3vw,56px) 22px;transition:background .3s ease,box-shadow .3s ease}
.site-header .logo img{height:42px;width:auto}
.site-header .logo{display:flex;flex-direction:row;align-items:center;gap:12px;text-decoration:none;justify-self:start;margin-left:9vw}
.site-header .logo .brandmark{display:inline-flex;flex:0 0 auto;color:#282142}
.site-header .logo .brandmark svg{display:block}
.site-header.scrolled .logo .brandmark{color:#282142}
.site-header .logo .brandtext{display:flex;flex-direction:column;line-height:1}
.site-header .logo .brandname{font-family:var(--serif);font-weight:700;font-size:35.42px;color:#282142;letter-spacing:.005em}
.site-header .logo .brandtag{font-family:var(--sans);font-size:12.65px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:#282142;opacity:1;margin-top:5px;padding-left:2px}
.site-header.scrolled .logo .brandname,.site-header.scrolled .logo .brandtag{color:#282142}
.nav{justify-self:center}
.header-actions{display:flex;align-items:center;gap:18px;justify-self:end}.header-actions .btn-pill{background:var(--ink);color:var(--white);border-color:var(--ink)}
.header-phone{display:inline-flex;align-items:center;gap:8px;color:var(--white);font-family:var(--sans);font-size:17px;font-weight:600;text-decoration:none;white-space:nowrap;transition:color .3s ease}
.header-phone .phone-ico{width:18px;height:18px;flex:0 0 auto}
.header-phone:hover{opacity:.85}
.site-header.scrolled .header-phone{color:var(--ink)}
.nav .nav-cta{display:none}
.nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,30px)}
.nav a{color:var(--white);font-size:23.76px;font-weight:500;white-space:nowrap}
.nav .has-drop{position:relative}
.nav .has-drop>a::after{display:none}.drop-arrow{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;cursor:pointer;color:inherit;vertical-align:middle;transition:transform .22s ease}.drop-arrow svg{display:block}.nav .has-drop.open .drop-arrow{transform:rotate(180deg)}
.dropdown{position:absolute;top:100%;left:0;background:var(--white);min-width:260px;border-radius:14px;box-shadow:0 18px 50px rgba(40,33,66,.18);padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s ease}
.nav .has-drop.open .dropdown{opacity:1;visibility:visible;transform:translateY(0);display:block}
.dropdown a{display:block;color:var(--ink);padding:11px 14px;border-radius:9px;font-size:16px}
.dropdown a:hover{background:#f5f4f2}
.btn-pill{display:inline-flex;align-items:center;gap:10px;background:var(--white);color:var(--ink);border-radius:var(--pill);padding:16px 20px;font-size:18px;font-weight:500;border:1px solid transparent;transition:.2s ease}.btn-pill.nav-cta{background:var(--ink);color:var(--white);border-color:var(--ink)}
.btn-pill:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(40,33,66,.18)}
.site-header.scrolled{background:var(--white);box-shadow:0 6px 24px rgba(40,33,66,.08);padding-top:12px;padding-bottom:12px}
.site-header.scrolled .nav a{color:var(--ink)}
.site-header.scrolled .btn-pill{background:var(--ink);color:var(--white)}
.menu-toggle{display:none;background:none;border:0;color:var(--white);font-size:26px;cursor:pointer}
.btn-dark{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--white);border-radius:var(--pill);padding:16px 30px;font-size:18px;font-weight:600;transition:.2s ease}
.btn-dark:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(40,33,66,.22)}
.btn-outline{display:inline-flex;align-items:center;background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.6);border-radius:var(--pill);padding:16px 30px;font-size:18px;font-weight:600;transition:.2s ease}
.btn-outline:hover{border-color:#fff;transform:translateY(-1px)}

/* (Previous hero styles removed; rebuilt as the .pmhero block below) */

/* ===== FOOTER (shared) ===== */
.b13{background:var(--ink);color:var(--white);padding:72px 0 36px}
.b13 .wrap{max-width:1340px;margin:0 auto;padding:0 24px}
.b13 .top{display:grid;grid-template-columns:1.5fr 1fr 1.3fr 1.3fr;gap:48px}
.b13 .brand img{height:42px;width:auto;margin-bottom:20px}
.b13 .brand p{font-size:15px;line-height:1.6;color:var(--white);opacity:.72;max-width:300px}
.b13 .col h4{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--white);opacity:.55;margin-bottom:16px}
.b13 .col ul{list-style:none}
.b13 .col li{margin-bottom:11px}
.b13 .col a,.b13 .col span{font-size:15px;color:var(--white);opacity:.9;transition:.2s ease}
.b13 .col a:hover{color:var(--accent);opacity:1}
.b13 .legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:center;margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15)}
.b13 .legal .llinks{display:flex;gap:22px;flex-wrap:wrap}
.b13 .legal a,.b13 .legal span{font-size:13px;color:var(--white);opacity:.6}
.b13 .legal a:hover{opacity:1;color:var(--accent)}
@media(max-width:860px){.menu-toggle{display:block}
  .site-header{display:flex;justify-content:space-between}
  .header-actions{display:none}
  .nav .nav-cta{display:inline-flex;margin-top:6px}.nav{position:absolute;top:100%;right:18px;flex-direction:column;align-items:flex-start;background:var(--white);border-radius:14px;padding:14px;gap:6px;min-width:230px;box-shadow:0 18px 50px rgba(40,33,66,.18);display:none}.nav.open{display:flex}.nav a{color:var(--ink)}.nav .has-drop>a::after{display:none}
  .site-header .logo{margin-left:0}.dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 0 12px;min-width:auto;display:none}.btn-pill{background:var(--ink);color:var(--white)}
.b13 .top{grid-template-columns:1fr 1fr;gap:36px}.b13 .legal{flex-direction:column;align-items:flex-start}}
@media(max-width:520px){.b13 .top{grid-template-columns:1fr}}
/* intro statement (measured Custom Home: centered ink Baskervville 68px, max-width 1340) */
.intro-statement{background:var(--bg);padding:100px 24px;text-align:center}
.intro-statement h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(30px,4.6vw,68px);line-height:1.25;letter-spacing:-.04em;max-width:1340px;margin:0 auto}
/* content rows (measured: alternating zigzag, image 653x700 r20 + heading 68px + body) */
.srow{max-width:1340px;margin:0 auto;padding:56px 24px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.srow .imgwrap{order:1}
.srow .rtext{order:2}
.srow.rev .imgwrap{order:2}
.srow.rev .rtext{order:1}
.srow img{width:100%;aspect-ratio:653/700;object-fit:cover;border-radius:var(--radius)}
.srow .rtext h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(28px,3.6vw,54px);line-height:1.25;letter-spacing:-.03em;margin-bottom:20px}
.srow .rtext p{font-size:22.63px;line-height:1.7;color:var(--ink);opacity:.85}
@media(max-width:860px){.srow{grid-template-columns:1fr;gap:26px;padding:36px 24px}.srow .imgwrap,.srow .rtext,.srow.rev .imgwrap,.srow.rev .rtext{order:0}}
/* projects gallery */
.sgallery{background:var(--bg);padding:90px 24px 100px;text-align:center}
.sgallery h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(30px,4.6vw,68px);line-height:1.25;letter-spacing:-.04em;margin-bottom:48px}
.sgallery .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1340px;margin:0 auto}
.sgallery .grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}
@media(max-width:760px){.sgallery .grid{grid-template-columns:1fr 1fr;gap:14px}}
/* ===== SERVICE CSS INSERTION POINT ===== */

/* ===== SOD "Custom Home" MIRROR — measured @1762px, container 1340 ===== */
.intro-statement{background:var(--bg);padding:150px 0 0;text-align:center}
.intro-statement .wrap{max-width:1340px;margin:0 auto;padding:0}
.intro-statement h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;margin:0 auto}
.intro-media{max-width:1340px;margin:230px auto 0;padding:0}      /* H2 -> image gap = 230px */
.intro-media .ph{width:100%;aspect-ratio:1340/600;border-radius:var(--radius)}

.styles{background:var(--bg);padding:150px 0 0}                        /* rows section padding-top 150 */
.srow2{max-width:1340px;margin:0 auto;padding:0;display:grid;
  grid-template-columns:653fr 627fr;gap:60px;align-items:center;min-height:850px}
.srow2:first-of-type{min-height:700px}
.srow2.rev{grid-template-columns:627fr 653fr}
.srow2.rev .media{order:2}
.srow2.rev .txt{order:1}
.srow2 h2{font-family:var(--serif);font-weight:400;color:var(--ink);
  font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;text-align:left}
.srow2 .desc{font-family:var(--sans);font-size:18px;line-height:30.6px;color:var(--ink);opacity:.85;margin-top:20px}

/* carousel: 1 slide/view, 10px between, 400ms, no loop/autoplay, pill bullets 30px below */
.media{position:relative}
.carousel{position:relative;overflow:hidden;border-radius:var(--radius);aspect-ratio:653/700}
.track{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;overflow:hidden}
.slide.active{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);will-change:transform}
.slide.active img{animation:kbin 6s ease-out forwards}
.slide:nth-child(even).active img{animation-name:kbout}
@keyframes kbin{from{transform:scale(1.02)}to{transform:scale(1.15)}}
@keyframes kbout{from{transform:scale(1.15)}to{transform:scale(1.02)}}
@keyframes kbio{0%{transform:scale(1)}50%{transform:scale(1.12)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.slide.active img,.intro-media img{animation:none}}
.bullets{position:absolute;left:0;bottom:-30px;width:100%;display:flex;justify-content:center;gap:6px}
.bullet{width:24px;height:8px;border-radius:100px;background:var(--ink);opacity:.3;border:0;padding:0;cursor:pointer;transition:opacity .25s}
.bullet.active{opacity:1}

/* gallery: 2 per row, 660x500 r20, gap X20, image->title 30, row gap 52 (=118 total) */
.sgallery{background:var(--bg);padding:150px 0 0;text-align:center}
.sgallery .wrap{max-width:1340px;margin:0 auto;padding:0}
.sgallery h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;margin-bottom:60px}
.ggrid{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;row-gap:52px;max-width:1340px;margin:0 auto}
.gcard .ph{width:100%;aspect-ratio:660/500;border-radius:var(--radius)}
.gcard h3{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:28px;line-height:36.4px;letter-spacing:-.04em;text-align:center;margin-top:30px}

/* labelled placeholder */
.ph{background:repeating-linear-gradient(45deg,#efece7,#efece7 16px,#e7e3dc 16px,#e7e3dc 32px);
  display:flex;align-items:center;justify-content:center;color:#8a8579;font-family:var(--sans);
  font-size:13px;letter-spacing:.06em;text-transform:uppercase;text-align:center;padding:18px}
@media(max-width:1400px){.intro-statement .wrap,.intro-media,.srow2,.sgallery .wrap{padding-left:24px;padding-right:24px}}
@media(max-width:900px){
  .srow2,.srow2.rev{grid-template-columns:1fr;gap:36px;min-height:0;padding:56px 24px}
  .srow2.rev .media,.srow2.rev .txt{order:0}
  .ggrid{grid-template-columns:1fr}
  .intro-media{margin-top:80px}
  .styles,.intro-statement,.sgallery{padding-top:80px}
}


.intro-media img{width:100%;aspect-ratio:1340/600;object-fit:cover;border-radius:var(--radius);display:block;animation:kbio 16s ease-in-out infinite}
.gcard img{width:100%;aspect-ratio:660/500;object-fit:cover;border-radius:var(--radius);display:block}
.srow2 .kf{font-family:var(--sans);font-size:18px;font-weight:600;color:var(--ink);margin-top:24px}
.srow2 .feats{list-style:none;margin-top:12px}
.srow2 .feats li{font-family:var(--sans);font-size:18px;line-height:30.6px;color:var(--ink);opacity:.85;margin-bottom:4px}
.srow2 .rowcta{margin-top:28px}

/* ===== PMIC HERO — newly authored, rebuilt from the SOD Custom Home hero:
   inset rounded full-viewport band, cover media, gradient overlay, centered title, fixed transparent header overlap ===== */
.pmhero{position:relative;margin:20px 20px 0;height:calc(100vh - 20px);border-radius:20px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;background:#141019}
.pmhero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:0;opacity:0;transition:opacity 1s ease;will-change:opacity;transform:translateZ(0);filter:brightness(1.25)}
.pmhero__media.is-active{opacity:1}
.pmhero__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.40),rgba(0,0,0,.05))}
.pmhero__inner{position:relative;z-index:2;max-width:900px;margin:0 auto;padding:40px 24px;text-align:center}
.pmhero__title{font-family:var(--serif);font-weight:400;color:var(--white);font-size:clamp(40px,5.4vw,68px);line-height:1.25;letter-spacing:-.04em;text-align:center}
.pmhero__loc{font-family:var(--sans);font-weight:400;color:var(--white);font-size:clamp(18px,1.9vw,24px);line-height:1.7;margin-top:20px;text-align:center}
@media(max-width:900px){.pmhero{height:auto;min-height:520px}}

/* --- INTRO (SOD spec: h2 pb24 -> lead 22/37.4 maxw900 pb72 -> image) --- */
.intro-statement h2{padding-bottom:24px}
.intro-statement .intro-lead{font-family:var(--sans);font-weight:400;color:var(--ink);
  font-size:clamp(18px,1.7vw,22px);line-height:1.7;max-width:900px;margin:0 auto;
  padding-bottom:72px;text-align:center}
.intro-media{max-width:1340px;margin:0 auto;padding:0;overflow:hidden;border-radius:var(--radius)}

/* ===== UNIFIED HEADER LOCKUP — identical on every page (G5 / R35 / R43) ===== */
.site-header .logo{display:flex!important;flex-direction:column!important;align-items:center!important;gap:3px!important;text-align:center!important;text-decoration:none}
.site-header .logo .brandmark{display:inline-flex;flex:0 0 auto;color:#ffffff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
.site-header .logo .brandmark svg{display:block}
.site-header .logo .brandtext{display:flex;flex-direction:column;line-height:1;align-items:center}
.site-header .logo .brandname{font-family:var(--serif);font-weight:600;font-size:17px;color:#ffffff;letter-spacing:.005em;text-shadow:0 2px 12px rgba(0,0,0,.55);-webkit-text-stroke:.3px #ffffff}
.site-header .logo .brandtag{font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:#ffffff;opacity:1;margin-top:4px;padding-left:2px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.site-header .logo .brandlic{font-family:var(--sans);font-size:7px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffff;opacity:.9;margin-top:3px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.site-header.scrolled .logo .brandmark{color:#282142;filter:none}
.site-header.scrolled .logo .brandname{color:#282142;text-shadow:none;-webkit-text-stroke:.3px #282142}
.site-header.scrolled .logo .brandtag,.site-header.scrolled .logo .brandlic{color:#282142;text-shadow:none}

/* ===== UNIFIED HEADER SYSTEM — copied verbatim from Home (nav + collapse @1296px) ===== */
.site-header{position:fixed;top:55px;left:0;width:100%;z-index:100;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:5px clamp(20px,3vw,56px) 5px;transition:top .35s ease,background .3s ease,box-shadow .3s ease;}
.site-header .logo img{height:42px;width:auto}
.nav{justify-self:center}
.nav .nav-cta{display:none}
.nav a{color:var(--white);font-size:18px;font-weight:400;white-space:nowrap}
.nav .has-drop{position:relative}
.nav .has-drop>a::after{display:none}.drop-arrow{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;cursor:pointer;color:inherit;vertical-align:middle;transition:transform .22s ease}.drop-arrow svg{display:block}.nav .has-drop.open .drop-arrow{transform:rotate(180deg)}
.dropdown{position:absolute;top:100%;left:0;background:var(--white);min-width:260px;
  border-radius:14px;box-shadow:0 18px 50px rgba(40,33,66,.18);padding:10px;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s ease;}
.nav .has-drop.open .dropdown{opacity:1;visibility:visible;transform:translateY(0);display:block}
.dropdown a{display:block;color:var(--ink);padding:11px 14px;border-radius:9px;font-size:16px}
.dropdown a:hover{background:#f5f4f2}
.btn-pill{display:inline-flex;align-items:center;gap:10px;background:var(--white);color:var(--ink);
  border-radius:var(--pill);padding:16px 20px;font-size:18px;font-weight:500;border:1px solid transparent;
  transition:.2s ease}
.btn-pill:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(40,33,66,.18)}
.site-header.scrolled{top:0;background:var(--white);box-shadow:0 6px 24px rgba(40,33,66,.08);padding-top:12px;padding-bottom:12px}
.site-header.scrolled .nav a{color:var(--ink)}
.nav a.active,.site-header.scrolled .nav a.active{color:var(--accent)}
.site-header.scrolled .btn-pill{background:var(--ink);color:var(--white)}
.menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.55);color:var(--white);font-size:22px;line-height:1;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.header-actions{display:flex;align-items:center;gap:18px;justify-self:end}
.header-phone{display:inline-flex;align-items:center;gap:8px;color:var(--white);font-family:var(--sans);font-size:17px;font-weight:600;text-decoration:none;white-space:nowrap;transition:color .3s ease}
.header-phone .phone-ico{width:18px;height:18px;flex:0 0 auto}
.header-phone:hover{opacity:.85}
.site-header.scrolled .header-phone{color:var(--ink)}
.site-header.scrolled .menu-toggle{color:var(--ink);border-color:rgba(40,33,66,.35);background:rgba(40,33,66,.06)}
@media(max-width:1296px){
  .menu-toggle{display:flex}
  .site-header{display:flex;justify-content:space-between}
  .header-actions{display:none}
  .nav .nav-cta{display:inline-flex;margin-top:6px}
  .nav{position:absolute;top:100%;right:18px;flex-direction:column;align-items:flex-start;
    background:var(--white);border-radius:14px;padding:14px;gap:6px;min-width:230px;
    box-shadow:0 18px 50px rgba(40,33,66,.18);display:none}
  .nav.open{display:flex}
  .nav a{color:var(--ink)}
  .nav .has-drop>a::after{display:none}
  .site-header .logo{margin-left:0}
  .dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 0 12px;min-width:auto;display:none}
  .btn-pill{background:var(--ink);color:var(--white)}
}

/* ===== UNIFIED LOGO LOCKUP (re-asserted last) ===== */
.site-header .logo{display:flex!important;flex-direction:column!important;align-items:center!important;gap:3px!important;text-align:center!important;text-decoration:none;margin-left:9vw}
.site-header .logo .brandmark{display:inline-flex;flex:0 0 auto;color:#ffffff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
.site-header .logo .brandmark svg{display:block}
.site-header .logo .brandtext{display:flex;flex-direction:column;line-height:1;align-items:center}
.site-header .logo .brandname{font-family:var(--serif);font-weight:600;font-size:17px;color:#ffffff;letter-spacing:.005em;text-shadow:0 2px 12px rgba(0,0,0,.55);-webkit-text-stroke:.3px #ffffff}
.site-header .logo .brandtag{font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:#ffffff;opacity:1;margin-top:4px;padding-left:2px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.site-header .logo .brandlic{font-family:var(--sans);font-size:7px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffff;opacity:.9;margin-top:3px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.site-header.scrolled .logo .brandmark{color:#282142;filter:none}
.site-header.scrolled .logo .brandname{color:#282142;text-shadow:none;-webkit-text-stroke:.3px #282142}
.site-header.scrolled .logo .brandtag,.site-header.scrolled .logo .brandlic{color:#282142;text-shadow:none}
@media(max-width:1296px){.site-header .logo{margin-left:0}}
.feat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1200px;margin:8px auto 0;text-align:left}@media(max-width:900px){.feat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.feat-grid{grid-template-columns:1fr}}
.op-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1120px;margin:40px auto 0}.op-step{background:#fff;border:1px solid #e6d6b0;border-radius:16px;padding:26px 18px;text-align:center;box-shadow:0 6px 18px rgba(40,33,66,.06)}.op-num{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:var(--ink);color:#b8965a;font-family:var(--serif);font-size:24px;margin-bottom:14px}.op-step h3{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:20px;line-height:1.2;margin:0}@media(max-width:900px){.op-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.op-grid{grid-template-columns:1fr}}


/* ===== Core Values — two-column editorial (V2 format, from Mhendaz Process) ===== */
.v2exp{padding:clamp(64px,8vw,110px) clamp(20px,5vw,40px)}
.v2exp-wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:40% 60%;gap:clamp(40px,6vw,90px);align-items:start}
.v2exp-left{position:sticky;top:112px}
.v2exp-left .eyebrow{font-family:var(--sans);font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:15px;opacity:.9;color:var(--ink);margin:0 0 10px}.v2exp-left h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(32px,4vw,56px);line-height:1.08;letter-spacing:-.03em;margin:12px 0 22px}
.v2exp-lead{font-family:var(--sans);font-size:18px;line-height:1.7;color:var(--ink);opacity:.85;max-width:420px;margin:0}
.v2exp-right{display:flex;flex-direction:column}
.v2exp-chapter{padding:clamp(24px,3vw,34px) 0}
.v2exp-chapter:first-child{padding-top:0}
.v2exp-chapter+.v2exp-chapter{border-top:1px solid rgba(40,33,66,.14)}
.v2exp-pill{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);opacity:.7;background:rgba(40,33,66,.06);padding:5px 13px;border-radius:100px;margin:0 0 14px}
.v2exp-right h3{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(24px,2.4vw,32px);line-height:1.15;letter-spacing:-.02em;margin:0 0 12px}
.v2exp-right p{font-family:var(--sans);font-size:18px;line-height:1.7;color:var(--ink);opacity:.85;margin:0;max-width:560px}
@media(max-width:860px){.v2exp-wrap{grid-template-columns:1fr;gap:30px}.v2exp-left{position:static}.v2exp-lead{max-width:none}}

.mp-phil .story-text h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(32px,4vw,56px);line-height:1.08;letter-spacing:-.03em;margin:12px 0 22px}

/* shared editorial body typography (one authoritative rule for the 3 matched roles) */
p.mh-body{font-family:var(--sans);font-size:20px;font-weight:400;line-height:1.7;letter-spacing:normal;color:var(--ink);opacity:.85}

/* ---- style block ---- */

/* ===== Project Management & Investors Consulting — SOD Wellness-Homes structural mirror. SOD text/images = STAGING. ===== */
/* (obsolete desktop hero override removed — see .pmhero) */
.wnarr{max-width:900px;margin:0 auto;padding:120px 24px 0;text-align:center}
.wnarr h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em}
.wnarr p{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink);opacity:.85;margin:20px auto 0}
.wpil{position:relative;overflow:hidden;max-width:1340px;margin:0 auto;padding:70px 24px 0;text-align:center;--gold:#b8965a;--goldline:#e6d6b0}
.wpil>*{position:relative;z-index:1}
.wpil::before{content:"";position:absolute;top:-50px;left:-70px;width:230px;height:230px;border-radius:50%;background:#f2ead9;opacity:.5;z-index:0}
.wpil::after{content:"";position:absolute;bottom:60px;right:-80px;width:190px;height:190px;border-radius:50%;background:#f2ead9;opacity:.45;z-index:0}
.wpil>h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;margin-bottom:0}
.wpil-accent{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px auto 0}
.wpil-accent i{display:block;width:120px;height:1px;background:var(--gold);opacity:.6}
.wpil-accent b{display:block;width:8px;height:8px;background:var(--gold);transform:rotate(45deg)}
.wpil-intro{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink);opacity:.85;max-width:900px;margin:22px auto 0}

.wpil-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1200px;margin:40px auto 0;text-align:left}
.wpil-card{display:flex;align-items:flex-start;gap:20px;background:#fff;border:1px solid var(--goldline);border-radius:16px;padding:24px 26px;box-shadow:0 6px 18px rgba(40,33,66,.06);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.wpil-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(40,33,66,.12);border-color:var(--gold)}
.wpil-ic{flex:0 0 auto;width:56px;height:56px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;color:var(--gold)}
.wpil-ic svg{display:block;width:26px;height:26px}
.wpil-txt{padding-left:20px;border-left:1px solid var(--goldline)}
.wpil-card h3{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:23px;line-height:1.2;letter-spacing:-.02em;text-align:left;margin:0}
.wpil-card p{font-family:var(--sans);font-size:14.5px;line-height:1.55;color:var(--ink);opacity:.78;text-align:left;margin-top:8px}
.wpil-close-wrap{display:flex;align-items:center;justify-content:center;gap:20px;max-width:1040px;margin:48px auto 0}
.wpil-close-wrap i{flex:0 0 64px;height:1px;background:var(--gold);opacity:.6}
.wpil-close-wrap b{flex:0 0 auto;width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.wpil-close{font-family:var(--sans);font-size:19px;line-height:1.6;color:var(--ink);opacity:.85;margin:0}




.who-text p{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink);opacity:.9;margin-top:18px;text-align:left}


.invest-media{display:block;width:100%;max-width:1340px;aspect-ratio:1340/600;object-fit:cover;border-radius:20px;margin:42px auto 8px}
.who{max-width:1340px;margin:0 auto;padding:150px 0 0;display:grid;grid-template-columns:minmax(0,653px) minmax(0,627px);gap:60px;justify-content:center;align-items:center}
.who-collage{position:relative;width:100%;aspect-ratio:653/700;background:#141019;border-radius:20px;overflow:hidden}
.who-back{position:absolute;right:0;top:0;width:532px;height:700px;object-fit:cover;border-radius:0}
.who-front{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;border-radius:20px;z-index:1}
.cpm-vid{opacity:0;transition:opacity 1s ease;will-change:opacity}
.cpm-vid.is-active{opacity:1}
.who-text{flex:1 1 auto}
.who-text h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;text-align:left}
.who-list{list-style:none;margin:24px 0 0;padding:0}
.who-list li{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink);margin-top:14px;padding-left:24px;position:relative}
.who-list li:before{content:"";position:absolute;left:0;top:12px;width:8px;height:8px;border-radius:50%;background:var(--ink)}
.agal{max-width:1340px;margin:0 auto;padding:150px 24px 0}
.agal h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em;text-align:center;margin-bottom:60px}
.agal-grid{display:grid;grid-template-columns:1fr 1fr;gap:118px 20px;max-width:1340px;margin:0 auto}
.agal-card img{width:100%;aspect-ratio:660/500;object-fit:cover;border-radius:var(--radius);display:block}
.rguide{position:relative;width:100%;min-height:880px;margin:0;padding:60px 24px;display:flex;align-items:initial;justify-content:center;overflow:hidden;text-align:center}
.rguide::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(178deg,#ffffff 15%,rgba(255,255,255,0) 73%);pointer-events:none}
.rguide-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;z-index:0}
.rguide-inner{position:absolute;top:50%;left:50%;width:min(900px,calc(100% - 48px));transform:translate(-50%,-50%);z-index:2}
.rguide h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(34px,5.2vw,68px);line-height:1.2;letter-spacing:-.04em}
.rguide p{font-family:var(--sans);font-size:20px;line-height:1.6;color:var(--ink);opacity:.85;margin:16px auto 0;max-width:640px}
.rguide-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:32px}
.rguide-cta .btn-pill{background:var(--ink);color:var(--white)}
.btn-line{display:inline-flex;align-items:center;gap:10px;border-radius:var(--pill);padding:16px 20px;font-size:18px;font-weight:500;border:1px solid var(--ink);color:var(--ink);text-decoration:none;transition:.2s ease}
@media(max-width:900px){.wnarr,.wpil,.agal,.who{padding-top:80px}.wpil-grid{grid-template-columns:repeat(2,1fr);gap:20px}.who{flex-direction:column}.who-collage{flex:0 0 auto;width:100%;max-width:520px;height:auto;aspect-ratio:1/0.82;margin:0 auto}.who-back{width:66%;height:88%;top:0}.who-front{width:50%;height:88%;top:auto;bottom:0}.agal-grid{grid-template-columns:1fr;gap:40px}.rguide{min-height:520px;padding:40px 24px;align-items:center}.rguide-inner{position:static;width:100%;transform:none}}
@media(max-width:600px){.wpil-grid{grid-template-columns:1fr}.wpil-close-wrap i,.wpil-close-wrap b{display:none}.wpil-accent i{width:70px}}

/* ---- style block ---- */

/* === components for Our Story / Mhendaz Care / Our Blog === */
.story-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center;max-width:1340px;margin:0 auto clamp(48px,7vw,90px);padding:0 clamp(20px,4vw,40px)}
.story-row.reverse .story-media{order:2}
.story-media{width:100%;aspect-ratio:660/500;object-fit:cover;border-radius:var(--radius);display:block}
.story-text .eyebrow{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;font-size:13px;opacity:.7;margin:0 0 14px;color:var(--ink)}
.story-text h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(28px,3.4vw,44px);line-height:1.15;letter-spacing:-.03em;margin:0 0 18px}
.story-text p{font-family:var(--sans);font-size:18px;line-height:1.7;color:var(--ink);opacity:.85;margin:0 0 16px}
.care-list{list-style:none;margin:8px 0 24px;padding:0}
.care-list li{position:relative;padding-left:36px;margin:0 0 18px;font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--ink);opacity:.9}
.care-list li strong{display:block;font-weight:600;opacity:1;margin-bottom:2px}
.care-list li::before{content:"";position:absolute;left:0;top:1px;width:23px;height:23px;border-radius:50%;background:var(--ink)}
.care-list li::after{content:"";position:absolute;left:7px;top:8px;width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.qmedia{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1340px;margin:clamp(30px,5vw,60px) auto clamp(24px,4vw,40px);padding:0 clamp(20px,4vw,40px)}
.qmedia img{width:100%;aspect-ratio:660/460;object-fit:cover;border-radius:var(--radius);display:block}
.qblock{max-width:900px;margin:0 auto clamp(40px,7vw,90px);padding:0 clamp(20px,4vw,40px);text-align:center}
.qblock .qmark{font-family:var(--serif);font-size:64px;line-height:.4;color:var(--ink);opacity:.32;display:block;margin-bottom:6px}
.qblock blockquote{font-family:var(--serif);font-weight:400;font-size:clamp(24px,3.4vw,40px);line-height:1.35;letter-spacing:-.02em;color:var(--ink);margin:0}
.qblock .qattr{font-family:var(--sans);font-size:14px;letter-spacing:.16em;text-transform:uppercase;opacity:.65;margin-top:26px;color:var(--ink)}
.section-head{max-width:1340px;margin:0 auto clamp(24px,4vw,46px);padding:0 clamp(20px,4vw,40px);text-align:center}
.section-head .eyebrow{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;font-size:13px;opacity:.7;margin:0 0 12px;color:var(--ink)}
.section-head h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.03em;margin:0}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,34px);max-width:1340px;margin:0 auto clamp(44px,6vw,84px);padding:0 clamp(20px,4vw,40px)}
.blog-card{background:#fff;border:1px solid #ece7f1;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.blog-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.blog-card .bc-body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1}
.blog-tag{font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#b8965a;font-weight:600;margin:0 0 10px}
.blog-card h3{font-family:var(--serif);font-weight:400;font-size:23px;line-height:1.25;color:var(--ink);margin:0 0 12px}
.blog-card p{font-family:var(--sans);font-size:15.5px;line-height:1.6;color:var(--ink);opacity:.82;margin:0 0 18px;flex:1}
.blog-more{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:.03em;color:var(--ink);opacity:.55}
@media(max-width:900px){.story-row,.qmedia{grid-template-columns:1fr}.story-row.reverse .story-media{order:0}.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}}

/* ---- style block ---- */

/* === Our Story narrative-first components (2026-07-31; bold headings + custom bullets) === */
.narr{max-width:900px;margin:0 auto clamp(44px,6vw,88px);padding:0 clamp(20px,4vw,40px)}
.narr.wide{max-width:1180px}
.narr.center{text-align:center}
.narr.centered{max-width:980px;text-align:center}
.narr .list-wrap{max-width:760px;margin:0 auto;text-align:left}
.narr.centered h2{font-size:clamp(40px,4.2vw,68px);line-height:1.08;font-weight:600;letter-spacing:-.03em;margin:0 0 28px}
.narr.centered .story-list li{font-size:clamp(18px,1.5vw,22px);line-height:1.65;font-weight:400;color:var(--ink);opacity:1;margin-bottom:16px;padding-left:32px}
.narr.centered .story-list li::before{width:11px;height:11px;top:.6em;background:var(--ink)}
.narr.centered .story-list li strong{font-weight:600}
.narr .eyebrow{font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;font-size:13px;opacity:.7;margin:0 0 14px;color:var(--ink)}
.narr h2{font-family:var(--serif);font-weight:400;color:var(--ink);font-size:clamp(28px,3.6vw,46px);line-height:1.15;letter-spacing:-.03em;margin:0 0 20px}
.narr p{font-family:var(--sans);font-size:18px;line-height:1.75;color:var(--ink);opacity:.86;margin:0 0 18px}
.narr p:last-child{margin-bottom:0}
.divider{max-width:1180px;height:1px;margin:0 auto clamp(44px,6vw,88px);background:linear-gradient(90deg,rgba(40,33,66,0),rgba(40,33,66,.16),rgba(40,33,66,0))}
.story-media.ph{display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;color:#6c6280;font-family:var(--sans);font-size:13.5px;letter-spacing:.05em;line-height:1.5;background:repeating-linear-gradient(135deg,#f1edf5,#f1edf5 14px,#eae4f0 14px,#eae4f0 28px);border:1px dashed #c6bcd8;border-radius:var(--radius);aspect-ratio:660/500}
/* refined custom bullet list for OUR PEOPLE / OUR RANGE (no numbers, gold marker, aligned to text column) */
.story-list{list-style:none;margin:0;padding:0}
.story-list li{position:relative;padding-left:22px;margin:0 0 12px;font-family:var(--sans);font-size:18px;line-height:1.6;color:var(--ink);opacity:.88}
.story-list li:last-child{margin-bottom:0}
.story-list li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:7px;border-radius:50%;background:#b8965a}
/* bold serif MAIN headings (page-specific); uppercase eyebrow labels stay light */
.wnarr h2,.narr h2,.story-text h2,.rguide h2{font-weight:700}

/* ---- style block ---- */

/* ===== Sitewide typography standardization -- Our Story approved scale (2026-07-31). Code-verified only; Raymond visual approval pending. Heroes, card titles, buttons, nav, footer, eyebrows, captions, and custom list markers are intentionally excluded. ===== */
.intro-statement h2,.srow .rtext h2,.srow2 h2,.sgallery h2,.scta h2,.rsvc h2,.rgal h2,.agal h2,.wnarr h2,.wpil>h2,.who-text h2,.rguide h2,.section-head h2,.story-text h2,.narr h2{
  font-family:var(--serif);font-size:clamp(40px,4.2vw,68px);line-height:1.08;font-weight:600;letter-spacing:-.03em;
}
.rsvc p,.wnarr p,.rguide p,.who-text p,.wpil-intro,.wpil-close,.story-text p,.narr p,.srow2 .txt p.srow2-p{
  font-size:clamp(18px,1.5vw,22px);line-height:1.65;
}
.wpil-card p,.blog-card p{font-size:16px}
.story-list li{font-size:clamp(18px,1.5vw,22px);line-height:1.65;font-weight:400;color:var(--ink);opacity:1;margin-bottom:16px;padding-left:32px}
.story-list li::before{width:11px;height:11px;top:.62em;background:var(--ink)}
.who-list li,.srow2 .feats li,.care-list li{font-size:clamp(18px,1.5vw,22px);line-height:1.65}

/* Qualifying full-width centered section-heading standard (BoB) */
.agal h2,.intro-statement h2,.section-head h2,.sgallery h2,.rgal h2,.rsvc h2,.wnarr h2,.narr.centered h2{font-family:"Baskervville",Georgia,serif;font-weight:400;font-style:normal;font-size:clamp(40px,4.2vw,68px);line-height:1.08;letter-spacing:-0.03em;color:#282142;text-align:center;max-width:1000px;margin-left:auto;margin-right:auto}
