.imusa-premium-home { overflow: clip; background: var(--imusa-surface); }
.imusa-premium-hero {
    position: relative;
    min-height: min(820px, calc(100vh - 82px));
    display: grid;
    align-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 18%, rgba(201, 166, 90, .16), transparent 23%),
        radial-gradient(circle at 10% 92%, rgba(123, 69, 135, .22), transparent 31%),
        linear-gradient(135deg, #1d0e24 0%, var(--imusa-dark) 50%, #32183a 100%);
    color: #fff;
}
.imusa-premium-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .2;
    background-image: linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(to right, #000, transparent 68%);
}
.imusa-hero-orbit { position: absolute; z-index: 0; border: 1px solid rgba(201, 166, 90, .16); border-radius: 50%; pointer-events: none; }
.imusa-hero-orbit-one { width: 680px; height: 680px; right: -305px; top: -380px; box-shadow: 0 0 0 70px rgba(201, 166, 90, .018), 0 0 0 140px rgba(201, 166, 90, .012); }
.imusa-hero-orbit-two { width: 240px; height: 240px; left: -150px; bottom: -125px; }
.imusa-premium-hero-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(440px, .98fr);
    gap: clamp(55px, 7vw, 100px);
    align-items: center;
    padding-block: clamp(78px, 9vw, 120px);
}
.imusa-premium-hero-copy { max-width: 680px; }
.imusa-premium-eyebrow, .imusa-section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    color: var(--imusa-accent-bright);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.imusa-premium-eyebrow::before, .imusa-section-kicker::before { content: ""; width: 34px; height: 1px; background: currentColor; }
.imusa-premium-hero-copy h1 {
    max-width: 670px;
    margin: 19px 0 24px;
    color: #fff;
    font-family: var(--imusa-serif);
    font-size: clamp(51px, 5.5vw, 76px);
    font-weight: 600;
    letter-spacing: -.048em;
    line-height: .99;
}
.imusa-premium-hero-copy > p:not(.imusa-hero-reassurance) { max-width: 610px; margin: 0; color: rgba(255, 255, 255, .72); font-size: clamp(16px, 1.5vw, 19px); line-height: 1.7; }
.imusa-premium-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin: 32px 0 22px; }
.imusa-hero-reassurance { display: flex; align-items: center; gap: 9px; margin: 0; color: rgba(255, 255, 255, .66); font-size: 12px; }
.imusa-hero-reassurance svg { width: 18px; height: 18px; color: var(--imusa-accent-bright); }

.imusa-match-scene { position: relative; min-height: 520px; display: grid; place-items: center; }
.imusa-scene-glow { position: absolute; inset: 16% 9%; border-radius: 50%; background: rgba(201, 166, 90, .17); filter: blur(70px); }
.imusa-introduction-card {
    position: relative;
    z-index: 2;
    width: min(410px, 82%);
    padding: 23px;
    border: 1px solid rgba(255, 255, 255, .55);
    border-radius: 28px;
    background: linear-gradient(150deg, rgba(255, 255, 255, .97), rgba(250, 245, 251, .91));
    color: var(--imusa-text);
    box-shadow: 0 40px 90px rgba(5, 1, 8, .42);
    transform: rotate(-1.2deg);
}
.imusa-introduction-card::before { content: ""; position: absolute; inset: 9px; border: 1px solid rgba(201, 166, 90, .25); border-radius: 21px; pointer-events: none; }
.imusa-introduction-card-head { position: relative; display: flex; align-items: center; gap: 12px; padding: 1px 2px 18px; border-bottom: 1px solid var(--imusa-border); }
.imusa-introduction-mark { width: 43px; height: 43px; display: grid; place-items: center; flex: 0 0 43px; border-radius: 50%; background: var(--imusa-dark); color: var(--imusa-accent-bright); font-family: var(--imusa-serif); font-size: 14px; font-weight: 800; }
.imusa-introduction-card-head small, .imusa-introduction-card-head strong { display: block; }
.imusa-introduction-card-head small { margin-bottom: 2px; color: var(--imusa-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.imusa-introduction-card-head strong { color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: 18px; }
.imusa-introduction-visual { position: relative; height: 188px; display: flex; align-items: center; justify-content: center; gap: 30px; overflow: hidden; }
.imusa-introduction-visual::before { content: ""; position: absolute; width: 230px; height: 115px; bottom: -61px; border: 1px solid rgba(84, 36, 95, .13); border-radius: 50%; box-shadow: 0 0 0 22px rgba(84, 36, 95, .025); }
.imusa-person-form { position: relative; width: 94px; height: 118px; border-radius: 50px 50px 35px 35px; }
.imusa-person-form::before { content: ""; position: absolute; width: 48px; height: 48px; left: 23px; top: 14px; border-radius: 50%; background: rgba(255, 255, 255, .72); }
.imusa-person-form::after { content: ""; position: absolute; width: 76px; height: 48px; left: 9px; bottom: 7px; border-radius: 50% 50% 22px 22px; background: rgba(255, 255, 255, .55); }
.imusa-person-one { background: linear-gradient(160deg, #6d3978, #3b1844); }
.imusa-person-two { background: linear-gradient(160deg, #e0c37f, #a77b2e); }
.imusa-connection-line { position: relative; width: 37px; height: 1px; background: var(--imusa-accent); }
.imusa-connection-line::before, .imusa-connection-line::after { content: ""; position: absolute; top: -3px; width: 7px; height: 7px; border: 1px solid var(--imusa-accent); border-radius: 50%; background: #fff; }
.imusa-connection-line::before { left: -3px; }
.imusa-connection-line::after { right: -3px; }
.imusa-introduction-points { position: relative; display: grid; gap: 8px; padding: 16px 3px 2px; border-top: 1px solid var(--imusa-border); }
.imusa-introduction-points span { display: flex; align-items: center; gap: 8px; color: #5d5360; font-size: 11px; font-weight: 700; }
.imusa-introduction-points svg { width: 15px; height: 15px; color: #80601c; }
.imusa-scene-badge { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 11px 14px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 14px; background: rgba(35, 18, 42, .78); color: #fff; box-shadow: 0 15px 40px rgba(3, 1, 5, .25); backdrop-filter: blur(14px); }
.imusa-scene-badge svg { width: 22px; height: 22px; color: var(--imusa-accent-bright); }
.imusa-scene-badge span, .imusa-scene-badge strong, .imusa-scene-badge small { display: block; }
.imusa-scene-badge strong { font-size: 11px; }
.imusa-scene-badge small { color: rgba(255, 255, 255, .62); font-size: 9px; }
.imusa-scene-badge-top { top: 56px; right: 2px; }
.imusa-scene-badge-bottom { left: 0; bottom: 55px; }
.imusa-badge-dot { width: 9px; height: 9px; border-radius: 50%; background: #6fd39f; box-shadow: 0 0 0 5px rgba(111, 211, 159, .12); }
.imusa-match-scene.has-image { min-height: 540px; border: 1px solid rgba(255,255,255,.2); border-radius: 120px 24px 120px 24px; background-image: linear-gradient(to top, rgba(25,10,31,.48), transparent 55%), var(--imusa-hero-image); background-size: cover; background-position: center; box-shadow: 0 40px 90px rgba(5,1,8,.38); }
.imusa-match-scene.has-image .imusa-scene-glow { display: none; }
.imusa-match-scene.has-image .imusa-introduction-card { width: calc(100% - 40px); margin-top: auto; margin-bottom: 20px; padding: 17px 20px; transform: none; background: rgba(255,255,255,.9); backdrop-filter: blur(14px); }
.imusa-match-scene.has-image .imusa-introduction-visual { display: none; }
.imusa-match-scene.has-image .imusa-scene-badge-bottom { display: none; }

.imusa-trust-ribbon { border-bottom: 1px solid var(--imusa-border); background: #fff; }
.imusa-trust-ribbon-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.imusa-trust-ribbon-grid > div { display: flex; align-items: center; gap: 14px; min-height: 112px; padding: 22px clamp(18px, 3vw, 38px); border-right: 1px solid var(--imusa-border); }
.imusa-trust-ribbon-grid > div:first-child { padding-left: 0; }
.imusa-trust-ribbon-grid > div:last-child { padding-right: 0; border-right: 0; }
.imusa-trust-ribbon-grid > div > svg { width: 29px; height: 29px; flex: 0 0 29px; color: var(--imusa-primary); }
.imusa-trust-ribbon-grid span, .imusa-trust-ribbon-grid strong, .imusa-trust-ribbon-grid small { display: block; }
.imusa-trust-ribbon-grid strong { color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: 16px; }
.imusa-trust-ribbon-grid small { margin-top: 3px; color: var(--imusa-muted); font-size: 10px; line-height: 1.45; }

.imusa-home-section-space { padding-block: clamp(74px, 9vw, 130px); }
.imusa-home-story-grid { display: grid; grid-template-columns: .8fr 2.2fr; gap: clamp(36px, 8vw, 120px); align-items: start; }
.imusa-home-kicker-block { display: flex; align-items: center; gap: 17px; padding-top: 11px; }
.imusa-section-number { color: var(--imusa-accent); font-family: var(--imusa-serif); font-size: 20px; }
.imusa-home-story .imusa-section-kicker, .imusa-home-journey .imusa-section-kicker, .imusa-privacy-copy .imusa-section-kicker { color: #76581b; }
.imusa-home-story-copy h2 { max-width: 900px; margin: 0; color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: clamp(38px, 5vw, 61px); font-weight: 600; letter-spacing: -.04em; line-height: 1.08; }
.imusa-home-story-copy p { max-width: 720px; margin: 28px 0 0 auto; padding-left: 30px; border-left: 1px solid var(--imusa-accent); color: var(--imusa-muted); font-size: 17px; }

.imusa-home-journey { background: var(--imusa-bg); }
.imusa-home-section-head { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 52px; }
.imusa-home-section-head h2 { max-width: 700px; margin: 13px 0 0; color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: clamp(36px, 4.5vw, 54px); font-weight: 600; letter-spacing: -.035em; line-height: 1.08; }
.imusa-home-section-head > p { max-width: 390px; margin: 0; color: var(--imusa-muted); }
.imusa-journey-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; border: 1px solid var(--imusa-border); border-radius: 28px; overflow: hidden; background: var(--imusa-border); box-shadow: var(--imusa-shadow-sm); }
.imusa-journey-grid article { position: relative; min-height: 340px; padding: 31px; background: #fff; }
.imusa-journey-grid article:nth-child(2) { background: #fdfaf3; }
.imusa-journey-number { position: absolute; right: 24px; top: 20px; color: rgba(84, 36, 95, .2); font-family: var(--imusa-serif); font-size: 48px; }
.imusa-journey-icon { width: 54px; height: 54px; display: grid; place-items: center; margin: 36px 0 62px; border: 1px solid rgba(84, 36, 95, .18); border-radius: 50%; color: var(--imusa-primary); }
.imusa-journey-icon svg { width: 23px; height: 23px; }
.imusa-journey-grid h3 { margin: 0 0 13px; color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: 24px; letter-spacing: -.02em; }
.imusa-journey-grid p { margin: 0; color: var(--imusa-muted); font-size: 13px; }

.imusa-home-privacy { background: #fffcf6; }
.imusa-home-privacy-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 9vw, 135px); align-items: center; }
.imusa-privacy-art { position: relative; min-height: 500px; display: grid; place-items: center; }
.imusa-privacy-art::before { content: ""; position: absolute; width: 75%; aspect-ratio: 1; border-radius: 50% 50% 44% 56%; background: linear-gradient(145deg, #472052, #25102c); transform: rotate(10deg); box-shadow: 0 35px 70px rgba(33, 17, 40, .22); }
.imusa-privacy-ring { position: absolute; border: 1px solid rgba(201, 166, 90, .42); border-radius: 50%; }
.imusa-privacy-ring-one { width: 84%; aspect-ratio: 1; }
.imusa-privacy-ring-two { width: 62%; aspect-ratio: 1; border-style: dashed; }
.imusa-privacy-shield { position: relative; z-index: 2; width: 180px; height: 180px; display: grid; place-items: center; align-content: center; gap: 12px; padding: 25px; border: 1px solid rgba(255, 255, 255, .35); border-radius: 50%; background: rgba(255, 255, 255, .1); color: #fff; text-align: center; backdrop-filter: blur(12px); }
.imusa-privacy-shield svg { width: 45px; height: 45px; color: var(--imusa-accent-bright); }
.imusa-privacy-shield strong { font-family: var(--imusa-serif); font-size: 15px; line-height: 1.25; }
.imusa-privacy-copy h2 { margin: 15px 0 20px; color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: clamp(39px, 4.5vw, 57px); font-weight: 600; letter-spacing: -.04em; line-height: 1.06; }
.imusa-privacy-copy > p { max-width: 650px; color: var(--imusa-muted); }
.imusa-privacy-copy ul { display: grid; gap: 17px; margin: 34px 0 0; padding: 0; list-style: none; }
.imusa-privacy-copy li { display: grid; grid-template-columns: 32px 1fr; gap: 13px; align-items: start; }
.imusa-privacy-copy li > svg { width: 25px; height: 25px; padding: 5px; border-radius: 50%; background: var(--imusa-gold-soft); color: #705218; }
.imusa-privacy-copy li span, .imusa-privacy-copy li strong { display: block; }
.imusa-privacy-copy li strong { color: var(--imusa-dark); font-size: 14px; }
.imusa-privacy-copy li span { color: var(--imusa-muted); font-size: 12px; }

.imusa-home-membership { padding-top: 0; background: #fffcf6; }
.imusa-membership-card { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: center; padding: clamp(36px, 5vw, 66px); overflow: hidden; border-radius: 30px; background: var(--imusa-dark); color: #fff; box-shadow: var(--imusa-shadow); }
.imusa-membership-card::after { content: ""; position: absolute; width: 330px; height: 330px; right: -190px; top: -220px; border: 1px solid rgba(201, 166, 90, .25); border-radius: 50%; box-shadow: 0 0 0 38px rgba(201,166,90,.025), 0 0 0 76px rgba(201,166,90,.018); }
.imusa-membership-card > * { position: relative; z-index: 1; }
.imusa-membership-card h2 { max-width: 750px; margin: 14px 0 11px; color: #fff; font-family: var(--imusa-serif); font-size: clamp(34px, 4vw, 50px); font-weight: 600; letter-spacing: -.035em; line-height: 1.08; }
.imusa-membership-card p { max-width: 700px; margin: 0; color: rgba(255, 255, 255, .67); }
.imusa-home-final-cta { padding: clamp(74px, 8vw, 112px) 0; background: linear-gradient(135deg, #f3e5c4, #fbf6e9 52%, #f7edf8); text-align: center; }
.imusa-home-final-cta .imusa-premium-eyebrow { color: #745619; }
.imusa-home-final-cta h2 { margin: 17px 0 12px; color: var(--imusa-dark); font-family: var(--imusa-serif); font-size: clamp(42px, 5vw, 62px); font-weight: 600; letter-spacing: -.04em; line-height: 1.05; }
.imusa-home-final-cta p { margin: 0 0 27px; color: var(--imusa-muted); }
.imusa-premium-home + .imusa-site-footer { margin-top: 0; }

@media (max-width: 1050px) {
    .imusa-premium-hero-grid { grid-template-columns: 1fr .82fr; gap: 35px; }
    .imusa-match-scene { min-height: 460px; }
    .imusa-scene-badge-top { right: -4px; }
    .imusa-scene-badge-bottom { left: -8px; }
    .imusa-membership-card { grid-template-columns: 1fr; gap: 28px; }
    .imusa-membership-card .imusa-btn { justify-self: start; }
}

@media (max-width: 880px) {
    .imusa-premium-hero { min-height: auto; }
    .imusa-premium-hero-grid { grid-template-columns: 1fr; padding-top: 82px; }
    .imusa-premium-hero-copy { max-width: 760px; }
    .imusa-match-scene { width: min(570px, 100%); margin-inline: auto; }
    .imusa-trust-ribbon-grid { grid-template-columns: 1fr; padding-block: 8px; }
    .imusa-trust-ribbon-grid > div, .imusa-trust-ribbon-grid > div:first-child, .imusa-trust-ribbon-grid > div:last-child { min-height: 90px; padding: 18px 0; border-right: 0; border-bottom: 1px solid var(--imusa-border); }
    .imusa-trust-ribbon-grid > div:last-child { border-bottom: 0; }
    .imusa-home-story-grid { grid-template-columns: 1fr; gap: 30px; }
    .imusa-home-story-copy p { margin-left: 0; }
    .imusa-home-section-head { align-items: flex-start; flex-direction: column; }
    .imusa-journey-grid { grid-template-columns: 1fr; }
    .imusa-journey-grid article { min-height: 0; }
    .imusa-journey-icon { margin-bottom: 38px; }
    .imusa-home-privacy-grid { grid-template-columns: 1fr; }
    .imusa-privacy-art { min-height: 430px; width: min(520px, 100%); margin-inline: auto; }
}

@media (max-width: 560px) {
    .imusa-premium-hero-grid { padding-block: 65px 76px; }
    .imusa-premium-hero-copy h1 { font-size: clamp(43px, 13vw, 60px); }
    .imusa-premium-hero-actions { display: grid; }
    .imusa-premium-hero-actions .imusa-btn { width: 100%; }
    .imusa-match-scene { min-height: 390px; }
    .imusa-introduction-card { width: 92%; padding: 18px; }
    .imusa-introduction-visual { height: 155px; gap: 18px; }
    .imusa-person-form { width: 76px; height: 98px; }
    .imusa-person-form::before { width: 40px; height: 40px; left: 18px; }
    .imusa-person-form::after { width: 62px; height: 40px; left: 7px; }
    .imusa-scene-badge { padding: 9px 11px; }
    .imusa-scene-badge-top { top: 8px; right: 0; }
    .imusa-scene-badge-bottom { bottom: 0; left: 0; }
    .imusa-home-story-copy p { padding-left: 18px; font-size: 15px; }
    .imusa-journey-grid { border-radius: 20px; }
    .imusa-journey-grid article { padding: 25px; }
    .imusa-privacy-art { min-height: 330px; }
    .imusa-privacy-shield { width: 145px; height: 145px; }
    .imusa-membership-card { width: calc(100% - 22px); padding: 30px 22px; border-radius: 22px; }
}
