/* ALINA CHOPRA — AURORA GLASS GALLERY */
.ang-section {
    --aurora-emerald:#4ff5bd;
    --aurora-orange:#ffab68;
    --aurora-pink:#ff77cb;
    --aurora-plum:#a86aff;
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
      radial-gradient(ellipse 42% 38% at 5% 12%,rgba(240,62,166,.21),transparent 90%),
      radial-gradient(ellipse 44% 40% at 95% 22%,rgba(34,215,155,.17),transparent 90%),
      radial-gradient(ellipse 46% 42% at 48% 88%,rgba(255,126,55,.12),transparent 90%),
      linear-gradient(150deg,#130a21 0%,#090e1c 48%,#170a21 100%);
    background-size:120% 120%;
    animation:auroraBackground 22s ease-in-out infinite alternate;
}

@keyframes auroraBackground {
    from { background-position:0% 20%; }
    to { background-position:100% 80%; }
}

.ang-section::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    opacity:.75;
    background:
      radial-gradient(ellipse 180px 330px at 4% 16%,rgba(255,95,192,.25),transparent 80%),
      radial-gradient(ellipse 240px 330px at 97% 30%,rgba(49,240,177,.21),transparent 80%),
      radial-gradient(ellipse 320px 190px at 55% 80%,rgba(255,149,80,.14),transparent 80%);
    animation:auroraFloat 13s ease-in-out infinite alternate;
    pointer-events:none;
    mask-image:none;
}

@keyframes auroraFloat {
    from { transform:translate3d(-15px,12px,0) scale(1); }
    to { transform:translate3d(25px,-24px,0) scale(1.08); }
}

.ang-section::after {
    content:"";
    position:absolute;
    z-index:-1;
    pointer-events:none;
    left:-15%;
    top:36%;
    width:130%;
    height:360px;
    border:0;
    border-top:1px solid rgba(255,119,203,.35);
    border-bottom:1px solid rgba(79,245,189,.28);
    border-radius:50%;
    background:none;
    box-shadow:0 0 70px rgba(255,119,203,.09);
    filter:drop-shadow(0 0 15px rgba(79,245,189,.17));
    transform:rotate(-10deg);
    animation:auroraRibbon 16s ease-in-out infinite alternate;
}

@keyframes auroraRibbon {
    from { transform:rotate(-12deg) translateY(-15px); }
    to { transform:rotate(-6deg) translateY(24px); }
}

.ang-intro::before {
    content:"✦  THE ALINA PRIVATE COLLECTION  ✦";
    color:var(--aurora-emerald);
    text-shadow:0 0 24px rgba(79,245,189,.35);
}

.ang-intro h2 em {
    color:transparent;
    -webkit-text-fill-color:transparent;
    background:linear-gradient(105deg,#ff85d2 5%,#ffb479 48%,#6cf6ca 100%);
    -webkit-background-clip:text;
    background-clip:text;
    filter:drop-shadow(0 0 22px rgba(255,119,203,.16));
}

.ang-intro {
    border-bottom-color:rgba(255,153,201,.22);
}

.ang-filter-panel {
    padding:24px 26px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:22px;
    background:linear-gradient(120deg,rgba(65,29,80,.32),rgba(18,57,56,.22));
    box-shadow:0 20px 60px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.11);
    backdrop-filter:blur(25px) saturate(140%);
    -webkit-backdrop-filter:blur(25px) saturate(140%);
}

.ang-count { color:var(--aurora-emerald); }

.ang-chip {
    border:1px solid rgba(255,255,255,.17);
    border-radius:999px;
    background:rgba(255,255,255,.045);
    color:#eee0f1;
    transition:transform .3s,border-color .3s,background .3s,box-shadow .3s;
}

.ang-chip:hover {
    border-color:var(--aurora-pink);
    background:rgba(255,119,203,.11);
    box-shadow:0 0 24px rgba(255,119,203,.12);
}

.ang-chip.is-active {
    border-color:transparent;
    background:linear-gradient(110deg,#ff8bcf,#ffb47b 48%,#61efc4);
    color:#241225;
    box-shadow:0 8px 28px rgba(255,119,203,.2);
}

.ang-filter-bottom {
    border-top-color:rgba(255,255,255,.12);
}

.ang-filter-bottom label { color:#ffb98e; }

.ang-filter-bottom select {
    border:1px solid rgba(79,245,189,.38);
    border-radius:12px;
    background:#1b1830;
}

.ang-reset { color:var(--aurora-emerald); }

.ang-grid {
    gap:28px;
    perspective:1200px;
}

.ang-card {
    --mx:50%;
    --my:50%;
    --tilt-x:0deg;
    --tilt-y:0deg;
    position:relative;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.2);
    border-radius:23px;
    background:linear-gradient(145deg,rgba(69,36,81,.62),rgba(14,47,47,.45));
    box-shadow:0 25px 65px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.14);
    backdrop-filter:blur(19px) saturate(140%);
    -webkit-backdrop-filter:blur(19px) saturate(140%);
    transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));
    transform-style:preserve-3d;
    transition:transform .35s ease,border-color .35s,box-shadow .35s;
}

.ang-card::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:3;
    border-radius:inherit;
    pointer-events:none;
    background:radial-gradient(
        circle 220px at var(--mx) var(--my),
        rgba(255,255,255,.17),
        rgba(255,119,203,.055) 55%,
        transparent 90%
    );
    opacity:0;
    transition:opacity .4s;
}

.ang-card::after {
    z-index:2;
    border-radius:inherit;
    background:linear-gradient(135deg,rgba(255,125,203,.11),transparent 40%,rgba(79,245,189,.09));
}

.ang-card:hover {
    transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-8px);
    border-color:rgba(255,153,201,.6);
    box-shadow:
        0 30px 75px rgba(0,0,0,.42),
        0 0 38px rgba(255,119,203,.15),
        0 0 55px rgba(79,245,189,.09),
        inset 0 1px rgba(255,255,255,.22);
}

.ang-card:hover::before { opacity:1; }

.ang-card:nth-child(3n+2) {
    border-color:rgba(79,245,189,.31);
}

.ang-card:nth-child(3n+3) {
    border-color:rgba(255,171,104,.31);
}

.ang-image {
    overflow:hidden;
    background:linear-gradient(145deg,#442343,#12423c);
}

.ang-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.045) translate3d(0,var(--photo-y,0px),0);
    filter:saturate(1.05) contrast(1.03);
    transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .5s;
    will-change:transform;
}

.ang-card:hover .ang-image img {
    transform:scale(1.095) translate3d(0,var(--photo-y,0px),0);
    filter:saturate(1.14) contrast(1.04);
}

.ang-image-shade {
    background:linear-gradient(
        to bottom,
        rgba(17,9,30,.38),
        transparent 38%,
        rgba(19,9,29,.12) 62%,
        rgba(19,9,29,.88)
    );
}

.ang-badge {
    border:1px solid rgba(255,255,255,.32);
    border-radius:999px;
    background:rgba(32,14,39,.55);
    color:#fff2e7;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 5px 25px rgba(0,0,0,.18);
}

.ang-badge-featured { color:#ffb5dc; }
.ang-badge-new { color:#84f7d2; }

.ang-image-link::after {
    color:var(--aurora-emerald);
    text-shadow:0 0 17px rgba(79,245,189,.55);
}

.ang-card-body {
    background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.015));
    border-top:1px solid rgba(255,255,255,.12);
}

.ang-card-top h3 {
    color:#fff7fa;
}

.ang-card-top h3 a:hover { color:var(--aurora-pink); }
.ang-card-spark { color:var(--aurora-orange); }
.ang-dot { color:var(--aurora-pink); }
.ang-meta { color:#cbbbd2; }
.ang-description { color:#c7bdce; }

.ang-tags span {
    border:1px solid rgba(255,255,255,.17);
    border-radius:999px;
    background:rgba(255,255,255,.05);
    color:#ead9e9;
}

.ang-actions {
    border-top-color:rgba(255,255,255,.14);
}

.ang-actions a {
    border-radius:12px;
    transition:transform .3s,filter .3s,box-shadow .3s;
}

.ang-call {
    color:#ffb4df;
    border:1px solid rgba(255,119,203,.55);
    background:rgba(255,119,203,.1);
    box-shadow:none;
}

.ang-whatsapp {
    color:#092a24;
    border:1px solid rgba(79,245,189,.7);
    background:linear-gradient(110deg,#65f3c5,#b6f5cc);
    box-shadow:0 8px 24px rgba(79,245,189,.14);
}

.ang-actions a:hover {
    transform:translateY(-3px);
    filter:brightness(1.08);
}

@media(max-width:650px) {
    .ang-filter-panel {
        padding:20px 16px;
        border-radius:18px;
    }

    .ang-card { border-radius:19px; }
    .ang-grid { gap:24px; }
}

@media(hover:none),(pointer:coarse) {
    .ang-card,
    .ang-card:hover {
        transform:none;
    }

    .ang-image img,
    .ang-card:hover .ang-image img {
        transform:scale(1.025);
    }
}

@media(prefers-reduced-motion:reduce) {
    .ang-section,
    .ang-section::before,
    .ang-section::after {
        animation:none!important;
    }

    .ang-card,
    .ang-card:hover {
        transform:none!important;
    }

    .ang-image img,
    .ang-card:hover .ang-image img {
        transform:none!important;
    }
}
