/* MarocVows premium visual layer */
:root{--mv-cream:#f7f1e7;--mv-ivory:#fffdf8;--mv-ink:#1b1814;--mv-forest:#102f28;--mv-gold:#c59a54;--mv-soft-gold:#e8d2a7;--mv-shadow:0 28px 80px rgba(25,19,12,.16)}
body{background:linear-gradient(180deg,#fbf8f2 0%,var(--mv-cream) 100%)}
.site-header{background:rgba(250,247,240,.88);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);box-shadow:0 1px 0 rgba(93,65,32,.08)}
.brand{font-size:1.04rem}.brand-mark{box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 7px 20px rgba(16,47,40,.18)}
.hero{min-height:min(790px,82vh);display:flex;align-items:center;padding-top:clamp(90px,12vw,150px);padding-bottom:clamp(110px,13vw,160px);background-image:linear-gradient(90deg,rgba(8,26,22,.9) 0%,rgba(8,26,22,.72) 42%,rgba(8,26,22,.22) 72%,rgba(8,26,22,.08) 100%),linear-gradient(0deg,rgba(8,26,22,.45),transparent 48%),url('https://images.unsplash.com/photo-1761456306087-5f46fec09d28?auto=format&fit=crop&w=1800&q=82');background-size:cover;background-position:center 46%;isolation:isolate}
.hero:before{inset:0;width:auto;height:auto;transform:none;border:0;background:radial-gradient(circle at 12% 22%,rgba(197,154,84,.2),transparent 33%);z-index:-1}.hero:after{display:none}.hero-inner{max-width:820px}.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(12,34,29,.34);backdrop-filter:blur(8px);color:#f0d6a5}.hero h1{text-wrap:balance;text-shadow:0 3px 28px rgba(0,0,0,.2);font-size:clamp(3.4rem,7.7vw,7rem)}.hero p.lede{max-width:670px;color:rgba(255,255,255,.88);font-size:clamp(1.03rem,1.6vw,1.2rem)}
.hero .primary-btn{box-shadow:0 12px 30px rgba(197,154,84,.2)}.hero .secondary-btn{background:rgba(255,255,255,.12);backdrop-filter:blur(10px)}
.trust-strip{padding-top:5px}.trust-strip span{background:rgba(7,25,21,.28);border:1px solid rgba(255,255,255,.11);border-radius:999px;padding:7px 11px}
.search-panel{margin-top:-44px;border-color:rgba(184,138,67,.24);box-shadow:0 26px 65px rgba(45,31,16,.15);padding:18px;border-radius:26px;background:rgba(255,253,249,.96);backdrop-filter:blur(18px)}
.field input,.field select{background:#fffefa;border-color:rgba(68,50,31,.13)}
.content{max-width:1220px}.directory-meta{margin-top:24px}.city-section{margin:82px 0;padding:34px;border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(255,250,241,.72));border:1px solid rgba(108,78,42,.1);box-shadow:0 18px 55px rgba(42,31,18,.045)}.city-heading{border-bottom:0;margin-bottom:28px;padding-bottom:0}.city-heading h2{color:var(--mv-forest)}.city-heading .eyebrow{display:inline-block;padding:7px 10px;border-radius:999px;background:#efe1c7;color:#785929;margin-bottom:10px}.city-copy{max-width:440px}
.city-discovery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 10px}.city-discovery a{display:flex;flex-direction:column;gap:5px;padding:18px 20px;border-radius:20px;text-decoration:none;background:linear-gradient(145deg,#fffdf8,#f4eadc);border:1px solid rgba(100,72,38,.12);box-shadow:0 10px 28px rgba(42,31,18,.05);transition:transform .2s ease,box-shadow .2s ease}.city-discovery a:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(42,31,18,.09)}.city-discovery strong{font:600 1.25rem Georgia,serif;color:var(--mv-forest)}.city-discovery span{font-size:.88rem;color:#736858}.city-title-link,.vendor-title-link{color:inherit;text-decoration:none}.city-title-link:hover,.vendor-title-link:hover{text-decoration:underline;text-decoration-color:rgba(197,154,84,.55);text-underline-offset:4px}.city-explore-link{white-space:nowrap}.vendor-profile-cta{margin-top:12px;display:inline-flex;justify-content:center}
.card-grid{gap:22px}.vendor-card{position:relative;overflow:hidden;min-height:430px;padding:0 20px 20px;background:linear-gradient(180deg,#fffefa,#fff9ef);border:1px solid rgba(100,72,38,.12);box-shadow:0 16px 42px rgba(42,31,18,.07);border-radius:26px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.vendor-card:before{content:"";display:block;position:relative;left:auto;right:auto;top:auto;height:150px;margin:0 -20px 20px;background-image:linear-gradient(180deg,rgba(13,44,36,.02),rgba(13,44,36,.28)),url('https://images.unsplash.com/photo-1750859464437-b66433efd869?auto=format&fit=crop&w=900&q=76');background-size:cover;background-position:center}.vendor-card:nth-child(3n+2):before{background-image:linear-gradient(180deg,rgba(13,44,36,.03),rgba(13,44,36,.3)),url('https://images.unsplash.com/photo-1768508662770-46d6d5c1799f?auto=format&fit=crop&w=900&q=76')}.vendor-card:nth-child(3n):before{background-image:linear-gradient(180deg,rgba(13,44,36,.03),rgba(13,44,36,.28)),url('https://images.unsplash.com/photo-1761456306087-5f46fec09d28?auto=format&fit=crop&w=900&q=76')}.vendor-card:hover{transform:translateY(-7px);box-shadow:0 28px 68px rgba(42,31,18,.14);border-color:rgba(184,138,67,.34)}.vendor-card .card-top{margin-top:-46px;position:relative;z-index:2;align-items:flex-end}.vendor-card .pill,.vendor-card .rating-badge{box-shadow:0 6px 18px rgba(33,25,16,.12);border:1px solid rgba(255,255,255,.62);backdrop-filter:blur(8px)}.vendor-card .pill{background:rgba(255,253,249,.92)}.vendor-card .rating-badge{background:rgba(241,227,200,.95)}.vendor-card h3{margin-top:22px;font-size:1.58rem;letter-spacing:-.02em}.vendor-card .category{display:inline-block;margin-top:3px}.vendor-card .address{min-height:44px}.vendor-card .phone{display:inline-flex;align-items:center;gap:7px}.vendor-card .phone:before{content:"☎";font-size:.85rem}.vendor-card .card-actions{gap:10px;padding-top:22px}.vendor-card .card-actions a,.vendor-card .card-actions button{min-height:44px;border-radius:13px}.vendor-card .card-actions a{background:#fff;border-color:rgba(83,61,35,.14)}.vendor-card .card-actions button{background:linear-gradient(135deg,#173f35,#0e2e27);box-shadow:0 8px 20px rgba(16,47,40,.14)}
.premium-gallery{display:grid;grid-template-columns:1.14fr .86fr;gap:18px;margin:78px 0 86px;align-items:stretch}.premium-gallery figure{position:relative;margin:0;overflow:hidden;border-radius:32px;min-height:470px;box-shadow:var(--mv-shadow);background:#ddd}.premium-gallery figure:last-child{min-height:470px}.premium-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.premium-gallery figure:hover img{transform:scale(1.025)}.premium-gallery figcaption{position:absolute;left:22px;right:22px;bottom:22px;padding:15px 17px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(13,34,29,.6);backdrop-filter:blur(14px);color:white}.premium-gallery figcaption strong{display:block;font:600 1.35rem Georgia,serif}.premium-gallery figcaption span{display:block;margin-top:3px;color:rgba(255,255,255,.78);font-size:.84rem}
.story{position:relative;overflow:hidden;border:1px solid rgba(184,138,67,.12);box-shadow:0 16px 50px rgba(42,31,18,.055);background:linear-gradient(135deg,#eee4d5,#f5eee4)}.story .step{background:rgba(255,255,255,.66);backdrop-filter:blur(8px)}
.community-banner{position:relative;overflow:hidden;padding:clamp(32px,5vw,54px);background:linear-gradient(110deg,rgba(10,38,31,.94),rgba(18,58,48,.9)),url('https://images.unsplash.com/photo-1768508662770-46d6d5c1799f?auto=format&fit=crop&w=1600&q=80');background-size:cover;background-position:center;border:1px solid rgba(226,193,132,.18);box-shadow:0 24px 60px rgba(16,47,40,.18)}
.community-banner:after{content:"";position:absolute;inset:auto -80px -110px auto;width:260px;height:260px;border:1px solid rgba(232,210,167,.18);transform:rotate(45deg)}
footer{background:linear-gradient(180deg,#171411,#0f0d0b);border-top:1px solid rgba(197,154,84,.16)}
@media(max-width:900px){.hero{min-height:690px;background-position:58% center}.premium-gallery{grid-template-columns:1fr}.premium-gallery figure,.premium-gallery figure:last-child{min-height:400px}.city-section{padding:26px}.vendor-card{min-height:420px}.city-discovery{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hero{min-height:650px;background-position:61% center}.hero h1{font-size:clamp(2.9rem,14vw,4.6rem)}.trust-strip span{padding:6px 9px}.premium-gallery{margin:54px 0 62px;gap:13px}.premium-gallery figure,.premium-gallery figure:last-child{min-height:330px;border-radius:23px}.premium-gallery figcaption{left:14px;right:14px;bottom:14px}.search-panel{border-radius:22px}.city-section{margin:58px 0;padding:18px;border-radius:24px}.vendor-card{min-height:400px;border-radius:22px}.vendor-card:before{height:130px}.vendor-card h3{font-size:1.45rem}.city-discovery{grid-template-columns:1fr}.city-heading{gap:14px}.city-explore-link{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.premium-gallery img,.vendor-card,.city-discovery a{transition:none}}

.service-discovery{max-width:1180px;margin:30px auto 14px;padding:0 20px}.service-discovery-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:18px}.service-discovery-head h2{font:500 clamp(2rem,4vw,3.7rem)/1 Georgia,serif;letter-spacing:-.045em;color:var(--mv-forest);margin:0}.service-discovery-head>p{max-width:520px;color:#736858;margin:0}.service-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.service-chip-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid rgba(100,72,38,.12);border-radius:17px;background:linear-gradient(145deg,#fffdf8,#f4eadc);padding:15px 16px;text-align:left;cursor:pointer;transition:.2s ease}.service-chip-grid button:hover{transform:translateY(-2px);border-color:rgba(184,138,67,.36);box-shadow:0 10px 28px rgba(42,31,18,.07)}.service-chip-grid strong{color:var(--mv-forest)}.service-chip-grid span{font-size:.78rem;color:#736858}.compare-toggle.active{background:#e4cf9f!important;color:#1d1915!important;border-color:#c59a54!important}.compare-drawer{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:60;width:min(94vw,960px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:13px 14px;border-radius:20px;background:rgba(16,47,40,.97);color:white;box-shadow:0 24px 70px rgba(0,0,0,.26);backdrop-filter:blur(16px)}.compare-drawer[hidden]{display:none}.compare-drawer>div:first-child{display:flex;flex-direction:column}.compare-drawer>div:first-child span{font-size:.75rem;color:rgba(255,255,255,.68)}.compare-drawer-items{display:flex;gap:7px;overflow:auto}.compare-drawer-items>span{white-space:nowrap;background:rgba(255,255,255,.1);padding:7px 9px;border-radius:999px;font-size:.78rem}.compare-drawer-items button{margin-left:6px;border:0;background:transparent;color:white;cursor:pointer;font-weight:900}.compare-drawer .primary-btn{white-space:nowrap;padding:10px 15px}
@media(max-width:900px){.service-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-discovery-head{align-items:flex-start;flex-direction:column}.compare-drawer{grid-template-columns:1fr auto}.compare-drawer-items{grid-column:1/-1;grid-row:2}}
@media(max-width:620px){.service-chip-grid{grid-template-columns:1fr 1fr}.service-discovery{padding:0 14px}.compare-drawer{bottom:8px}.compare-drawer-items{display:none}}

.trust-row{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0 2px}.trust-badge,.claim-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:850;letter-spacing:.01em}.trust-badge.verified{background:#e4f2e8;color:#184c2f;border:1px solid rgba(24,76,47,.16)}.trust-badge.unverified{background:#f1eee8;color:#6d655a;border:1px solid rgba(90,75,57,.12)}.claim-badge{background:#f2e6ce;color:#76572b;border:1px solid rgba(197,154,84,.2)}.mini-services{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.mini-services span{padding:5px 8px;border-radius:999px;background:#f3eadc;border:1px solid rgba(100,72,38,.1);font-size:.72rem;color:#665b4c}.vendor-profile-cta{font-weight:850;background:#102f28!important;color:#fff!important;border-color:#102f28!important;text-decoration:none}.vendor-profile-cta:hover{background:#184a3e!important}.verified-stamp{font-weight:750}.profile-card .public-snapshot.visible{border:1px solid rgba(197,154,84,.16)}

.profile-card .profile-actions .secondary-btn{background:#fff;color:#153a31;border:1px solid rgba(68,50,31,.14)}.profile-card .profile-actions .secondary-btn:hover{border-color:#b88a43;box-shadow:0 0 0 3px rgba(184,138,67,.10)}
