.contact-hero{--contact-hero-content-top:clamp(118px,14vh,146px);--contact-hero-content-bottom:clamp(84px,12vh,128px);position:relative;height:100vh;height:100svh;min-height:0;overflow:hidden;background:#191216;color:#fff}
    .contact-hero-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:#191216}
    .contact-hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;transform:scale(1.015);filter:saturate(.88) contrast(.96)}
    .contact-hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,6,7,.80) 0%,rgba(8,6,7,.68) 20%,rgba(8,6,7,.50) 38%,rgba(8,6,7,.28) 55%,rgba(8,6,7,.10) 72%,rgba(8,6,7,0) 100%),linear-gradient(180deg,rgba(8,6,7,.14) 0%,rgba(8,6,7,.08) 52%,rgba(8,6,7,.18) 100%)}
    .contact-hero-grid{position:relative;z-index:2;width:min(calc(100% - 64px),var(--max));height:100vh;height:100svh;min-height:0;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);align-items:stretch}
    .contact-hero-copy{position:relative;z-index:3;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:var(--contact-hero-content-top) 60px var(--contact-hero-content-bottom) 16px}
    .contact-hero-eyebrow{margin:0 0 14px;color:#f1a7b4;font-family:var(--small);font-size:11px;line-height:1.3;font-weight:700;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 1px 16px rgba(0,0,0,.22)}
    .contact-hero-title{max-width:700px;margin:0;color:#fff;font-size:clamp(48px,5.3vw,88px);line-height:.9;letter-spacing:-.045em;font-weight:500}
    .contact-hero-title span{display:block;color:#fff;text-shadow:0 2px 22px rgba(20,10,14,.24)}
    .contact-hero-title strong{display:block;margin-top:10px;color:#f2a3b1;font-family:var(--script);font-size:.94em;line-height:.9;font-weight:400;letter-spacing:-.02em;text-shadow:0 2px 22px rgba(20,10,14,.22)}
    .contact-hero-lead{max-width:610px;margin:26px 0 0;color:rgba(255,255,255,.92);font-size:17px;line-height:1.6;text-shadow:0 1px 14px rgba(20,10,14,.24)}
    .contact-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
    .contact-hero .btn--primary{background:#e993a3;color:#fff}
    .contact-hero .btn--ghost{border-color:rgba(255,255,255,.64);background:rgba(255,255,255,.10);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
    
    
    
    
    .contact-hero-socials--desktop{position:absolute;z-index:9;top:50%;right:0;display:flex;flex-direction:column;align-items:flex-end;gap:8px;transform:translateY(-50%)}
    .contact-hero-social-tag{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 17px 0 14px;border:1px solid rgba(255,255,255,.28);border-right:0;border-radius:16px 0 0 16px;background:rgba(28,18,22,.46);color:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-family:var(--sans);font-size:13px;line-height:1;font-weight:500;box-shadow:0 10px 28px rgba(17,8,11,.12);transition:padding .28s cubic-bezier(.22,1,.36,1),background-color .22s ease,border-color .22s ease,color .22s ease}
    .contact-hero-social-tag i{width:18px;flex:0 0 18px;color:#f2a3b1;font-size:18px;text-align:center}
    .contact-hero-social-tag:hover,.contact-hero-social-tag:focus-visible{padding-right:23px;background:rgba(200,111,130,.78);border-color:rgba(255,255,255,.42);color:#fff}
    .contact-hero-social-tag:hover i,.contact-hero-social-tag:focus-visible i{color:#fff}
    .contact-hero-curve{position:absolute;z-index:10;left:0;right:0;bottom:-1px;width:100%;height:clamp(88px,14vh,150px);pointer-events:none}
    .contact-hero-curve svg{display:block;width:100%;height:100%;overflow:visible}
    .contact-hero-curve-shape{fill:#fffaf7}
    .contact-hero-curve-shadow{fill:none;stroke:rgba(89,52,61,.11);stroke-width:18;stroke-linecap:round;transform:translateY(8px);filter:blur(8px)}
    .contact-hero-curve-highlight{fill:none;stroke:rgba(255,255,255,.92);stroke-width:2;transform:translateY(1px)}
    [data-contact-reveal]{opacity:1;--pmf-reveal-from:translateY(22px);transform:none;transition:opacity .7s ease,transform .75s cubic-bezier(.22,1,.36,1)}
    [data-contact-reveal].visible{opacity:1;transform:none}
    @media (min-width:901px) and (max-height:700px){.contact-hero{--contact-hero-content-top:96px;--contact-hero-content-bottom:74px}.contact-hero-copy{padding:var(--contact-hero-content-top) 48px var(--contact-hero-content-bottom) 16px}.contact-hero-title{font-size:clamp(44px,4.7vw,68px)}.contact-hero-lead{margin-top:16px;font-size:15px;line-height:1.55}.contact-hero-actions{margin-top:20px}}
    @media (max-width:900px){.contact-hero{height:auto;min-height:100svh}.contact-hero-media img{object-position:center 35%;transform:translateY(-6%) scale(1.12)}.contact-hero-overlay{background:linear-gradient(180deg,rgba(7,5,6,.34) 0%,rgba(7,5,6,.42) 36%,rgba(7,5,6,.48) 68%,rgba(7,5,6,.28) 100%)}.contact-hero-grid{width:100%;height:auto;min-height:100svh;display:block}.contact-hero-copy{width:100%;min-height:100svh;padding:126px 32px 118px;align-items:center;justify-content:center;text-align:center}.contact-hero-title{width:min(100%,680px);max-width:none;margin:0 auto;font-size:clamp(54px,9.5vw,76px);line-height:.88}.contact-hero-lead{width:min(100%,560px);max-width:none;margin:22px auto 0;font-size:16px;line-height:1.65}.contact-hero-actions{width:100%;justify-content:center;margin-top:26px}.contact-hero-socials--desktop{display:none}.contact-hero-curve{height:88px}}
    @media (max-width:620px){.contact-hero-copy{padding:116px 22px 94px}.contact-hero-eyebrow{font-size:11px;line-height:1.4;letter-spacing:.16em}.contact-hero-title{width:100%;font-size:clamp(48px,13vw,64px);line-height:.88}.contact-hero-title strong{margin-top:7px}.contact-hero-lead{width:min(100%,440px);margin-top:22px;font-size:15px;line-height:1.62}.contact-hero-actions{width:min(100%,270px);display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}.contact-hero-actions .btn{width:100%;min-height:49px;padding:13px 19px;font-size:13px}.contact-hero-curve{height:68px}.contact-hero-curve-shadow{stroke-width:12;transform:translateY(5px);filter:blur(6px)}}
