/*
Theme Name: Aura Model Bank
Theme URI: https://auramodel.site/
Author: Aura Model Bank
Description: Premium editorial WordPress theme for Aura Model Bank, with a portfolio-driven home page.
Version: 6.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: aura-model-bank
License: GNU General Public License v2 or later
*/

html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: #f6f1ea;
    color: #171411;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
a { color: inherit; }
img { max-width: 100%; height: auto; }
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
}


/* =========================================================
   Aura 1.2 — Global interior pages
   ========================================================= */
:root {
    --aura-bg: #f6f1ea;
    --aura-paper: #fffdf9;
    --aura-ink: #171411;
    --aura-muted: #72675f;
    --aura-line: #ded2c7;
    --aura-warm: #b56f4f;
    --aura-warm-deep: #8f4f35;
    --aura-soft: #e9dfd4;
}
body:not(.home) { background: var(--aura-bg); }

.aura-site-header {
    position: sticky;
    top: 0;
    z-index: 80;
    background: rgba(255,253,249,.94);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(222,210,199,.75);
}
.aura-site-header__inner {
    width: min(1240px, calc(100% - 36px));
    min-height: 78px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 28px;
}
.aura-site-brand {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -.045em;
    text-decoration: none;
}
.aura-site-nav { display: flex; align-items: center; justify-content: center; gap: 30px; }
.aura-site-nav a,
.aura-site-contact {
    color: #514941;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: .035em;
}
.aura-site-nav a:hover,
.aura-site-contact:hover { color: var(--aura-warm-deep); }
.aura-site-contact { justify-self: end; }
.aura-site-footer { border-top: 1px solid var(--aura-line); background: #efe7de; }
.aura-site-footer__inner {
    width: min(1240px, calc(100% - 36px));
    margin: 0 auto;
    padding: 28px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    color: #786d64;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .12em;
}
.aura-site-footer a { text-decoration: none; }

.aura-page { width: min(1240px, calc(100% - 34px)); margin: 0 auto; padding: 72px 0 100px; }
.aura-page-hero { margin-bottom: 52px; }
.aura-page-hero--center { text-align: center; max-width: 760px; margin-left: auto; margin-right: auto; }
.aura-page-eyebrow { margin: 0 0 12px; color: #8c796c; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.aura-page-hero h1,
.aura-shoot-hero h1 {
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(52px, 8vw, 96px);
    line-height: .95;
    letter-spacing: -.055em;
    font-weight: 500;
    margin: 0 0 18px;
}
.aura-page-hero > p,
.aura-page-hero--center > p { color: var(--aura-muted); line-height: 1.75; font-size: 14px; margin: 0; }

/* Shoots archive */
/* Aura 1.4 — Gallery overview / Shoot cards only */
.aura-gallery-page,
.aura-shoots-page { max-width: 1240px; }
.aura-gallery-page .aura-page-hero,
.aura-shoots-page .aura-page-hero {
    text-align: left;
    max-width: none;
    margin: 14px 0 52px;
    padding: 0;
}
.aura-gallery-page .aura-page-eyebrow,
.aura-shoots-page .aura-page-eyebrow { display: none; }
.aura-gallery-page .aura-page-hero h1,
.aura-shoots-page .aura-page-hero h1 {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 18px;
    margin: 0;
    font-family: inherit;
    font-size: clamp(34px,4.1vw,58px);
    font-weight: 400;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.aura-gallery-page .aura-page-hero h1::before,
.aura-shoots-page .aura-page-hero h1::before {
    content: "";
    width: 38px;
    height: 2px;
    background: currentColor;
    display: inline-block;
}
.aura-gallery-page .aura-page-hero > p:last-child,
.aura-shoots-page .aura-page-hero > p:last-child { display: none; }

/* One card = one Shoot post. Portfolio posts are never queried here. */
.aura-shoot-grid {
    display: grid;
    grid-template-columns: repeat(12,minmax(0,1fr));
    grid-auto-flow: dense;
    gap: 10px;
}
.aura-shoot-card {
    grid-column: span 4;
    min-width: 0;
}
.aura-shoot-card:nth-child(6n+1) { grid-column: span 3; }
.aura-shoot-card:nth-child(6n+2) { grid-column: span 5; }
.aura-shoot-card:nth-child(6n+3) { grid-column: span 4; }
.aura-shoot-card:nth-child(6n+4) { grid-column: span 5; }
.aura-shoot-card:nth-child(6n+5) { grid-column: span 4; }
.aura-shoot-card:nth-child(6n+6) { grid-column: span 3; }
.aura-shoot-card__link {
    position: relative;
    display: block;
    height: 290px;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
    background: #e8e3dd;
}
.aura-shoot-card__image {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: 0;
    background: #e8e3dd;
}
.aura-shoot-card__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.50) 0%, rgba(0,0,0,.11) 34%, rgba(0,0,0,0) 62%);
    pointer-events: none;
}
.aura-shoot-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}
.aura-shoot-card__link:hover .aura-shoot-card__image img {
    transform: scale(1.025);
    filter: saturate(1.03);
}
.aura-shoot-card__arrow,
.aura-shoot-card__meta,
.aura-shoot-card p { display: none !important; }
.aura-shoot-card h2 {
    position: absolute;
    z-index: 2;
    left: 18px;
    right: 18px;
    bottom: 16px;
    margin: 0;
    color: #fff;
    font-family: inherit;
    font-weight: 400;
    font-size: clamp(16px,1.5vw,21px);
    letter-spacing: .01em;
    text-shadow: 0 1px 14px rgba(0,0,0,.26);
}
.aura-shoot-placeholder { width: 100%; height: 100%; display: grid; place-items: center; font-family: Georgia,serif; font-size: 44px; color: #9e897b; }
.aura-empty-state { text-align: center; padding: 70px 20px; border: 1px solid var(--aura-line); border-radius: 22px; background: rgba(255,255,255,.45); }
.aura-empty-state h2 { font-family: Georgia,serif; font-size: 34px; margin: 0 0 10px; }
.aura-empty-state p { color: var(--aura-muted); }
.aura-pagination { margin-top: 52px; }

/* =========================================================
   Aura 1.3 — Single shoot / natural-ratio gallery
   ========================================================= */
.aura-shoot-hero {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 60px;
    align-items: start;
    margin-bottom: 64px;
}
.aura-shoot-hero__image {
    overflow: visible;
    background: transparent;
}
.aura-shoot-hero__image img {
    display: block;
    width: 100%;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
}
.aura-shoot-intro {
    color: var(--aura-muted);
    line-height: 1.75;
    max-width: 520px;
}
.aura-shoot-content {
    max-width: 1180px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.8;
}
.aura-shoot-content > p,
.aura-shoot-content > h2,
.aura-shoot-content > h3 {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

/* Standalone images retain their own dimensions and proportions. */
.aura-single-shoot .aura-shoot-content figure.wp-block-image {
    width: auto !important;
    max-width: 100% !important;
    margin: 28px auto !important;
}
.aura-single-shoot .aura-shoot-content figure.wp-block-image img,
.aura-single-shoot .aura-shoot-content > .wp-block-image img {
    display: block;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    margin-left: auto;
    margin-right: auto;
}

/* Natural-ratio masonry layout for WordPress Gallery blocks. */
.aura-single-shoot .aura-shoot-content .wp-block-gallery {
    display: block !important;
    column-count: 3;
    column-gap: 14px !important;
    margin: 34px 0 !important;
}
.aura-single-shoot .aura-shoot-content .wp-block-gallery.has-nested-images figure.wp-block-image,
.aura-single-shoot .aura-shoot-content .wp-block-gallery figure.wp-block-image,
.aura-single-shoot .aura-shoot-content .blocks-gallery-grid .blocks-gallery-item {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 0 14px !important;
    break-inside: avoid;
    page-break-inside: avoid;
}
.aura-single-shoot .aura-shoot-content .wp-block-gallery.has-nested-images figure.wp-block-image img,
.aura-single-shoot .aura-shoot-content .wp-block-gallery figure.wp-block-image img,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.is-cropped figure.wp-block-image img,
.aura-single-shoot .aura-shoot-content .blocks-gallery-grid .blocks-gallery-item img,
.aura-single-shoot .aura-shoot-content .blocks-gallery-item img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    flex: none !important;
}

/* Older WordPress gallery markup. */
.aura-single-shoot .aura-shoot-content .blocks-gallery-grid {
    display: block !important;
    column-count: 3;
    column-gap: 14px !important;
    width: 100% !important;
}

/* Stop gallery column classes from forcing equal tiles. */
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-1,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-2,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-3,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-4,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-5,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-6,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-7,
.aura-single-shoot .aura-shoot-content .wp-block-gallery.columns-8 {
    grid-template-columns: none !important;
}
.aura-back-link { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--aura-line); }
.aura-back-link a { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; text-decoration: none; }

/* Join Aura */
.aura-join-page__hero { display: grid; grid-template-columns: 1fr .8fr; gap: 70px; align-items: end; }
.aura-join-page__hero > p { padding-bottom: 8px; }
.aura-join-form-wrap { display: grid; grid-template-columns: .52fr 1.48fr; gap: 54px; align-items: start; }
.aura-join-form-intro { position: sticky; top: 118px; }
.aura-join-form-intro h2 { font-family: Georgia,serif; font-size: 42px; line-height: 1.02; font-weight: 500; letter-spacing: -.045em; margin: 0 0 16px; }
.aura-join-form-intro > p:last-child { color: var(--aura-muted); font-size: 13px; line-height: 1.75; }
.aura-join-form-card { background: var(--aura-paper); border: 1px solid #e3d8cd; border-radius: 28px; padding: clamp(24px,4vw,52px); box-shadow: 0 26px 80px rgba(63,35,20,.08); }
.model-bank-form { color: var(--aura-ink); }
.model-bank-form .form-section { padding: 0 0 34px; margin: 0 0 34px; border-bottom: 1px solid #e9dfd6; }
.model-bank-form .form-section:last-of-type { margin-bottom: 0; }
.model-bank-form .form-section h3 { font-family: Georgia,"Times New Roman",serif; font-size: 28px; font-weight: 500; letter-spacing: -.03em; margin: 0 0 5px; }
.model-bank-form .section-note { margin: 0 0 22px; color: #7b7067; font-size: 12px; line-height: 1.55; }
.model-bank-form .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.model-bank-form .form-field { min-width: 0; }
.model-bank-form .form-field.full-width { grid-column: 1 / -1; }
.model-bank-form .form-field > label { display: block; margin-bottom: 8px; font-size: 11px; font-weight: 700; letter-spacing: .04em; }
.model-bank-form input[type="text"],
.model-bank-form input[type="email"],
.model-bank-form input[type="tel"],
.model-bank-form input[type="date"],
.model-bank-form select,
.model-bank-form textarea {
    width: 100%;
    min-height: 50px;
    border: 1px solid #d9cdc2;
    border-radius: 12px;
    padding: 12px 14px;
    background: #fff;
    color: #171411;
    font: inherit;
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.model-bank-form textarea { min-height: 150px; resize: vertical; }
.model-bank-form input:focus,
.model-bank-form select:focus,
.model-bank-form textarea:focus { border-color: #9b6248; box-shadow: 0 0 0 3px rgba(181,111,79,.12); }
.model-bank-form .option-box,
.model-bank-form .agreement-box { padding: 17px 18px; border: 1px solid #e0d5cb; border-radius: 14px; background: #faf7f3; }
.model-bank-form .wpcf7-list-item { display: block; margin: 8px 0; }
.model-bank-form .inline-options .wpcf7-list-item { display: inline-flex; margin: 7px 20px 7px 0; }
.model-bank-form input[type="checkbox"],
.model-bank-form input[type="radio"] { accent-color: #171411; margin-right: 8px; transform: translateY(1px); }
.model-bank-form .wpcf7-list-item-label { font-size: 12px; line-height: 1.55; color: #4f4741; }
.model-bank-form .submit-area { text-align: center; padding-top: 4px; }
.model-bank-form input[type="submit"] { min-height: 52px; border: 0; border-radius: 999px; padding: 0 28px; background: #171411; color: #fff; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .10em; cursor: pointer; transition: .25s ease; }
.model-bank-form input[type="submit"]:hover { background: #8f4f35; transform: translateY(-1px); }
.model-bank-form .form-note { margin: 12px 0 0; color: #8b7e74; font-size: 10px; }
.model-bank-form .wpcf7-not-valid-tip { margin-top: 6px; font-size: 11px; }
.model-bank-form .wpcf7-response-output { margin: 20px 0 0 !important; border-radius: 12px; padding: 12px 14px !important; font-size: 12px; }
.aura-admin-note { padding: 24px; border-radius: 14px; background: #f4ece5; color: #4d433b; }
.aura-admin-note p { margin-bottom: 0; line-height: 1.7; }

@media (max-width: 900px) {
    .aura-site-header__inner { grid-template-columns: 1fr auto; min-height: 68px; }
    .aura-site-nav { order: 3; grid-column: 1/-1; justify-content: flex-start; overflow-x: auto; padding-bottom: 12px; gap: 22px; }
    .aura-site-contact { display: none; }
    .aura-page { padding-top: 48px; }
    .aura-shoot-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
    .aura-shoot-card,
    .aura-shoot-card:nth-child(n) { grid-column: auto; }
    .aura-shoot-card__link { height: 270px; }
    .aura-shoot-hero,
    .aura-join-page__hero,
    .aura-join-form-wrap { grid-template-columns: 1fr; gap: 34px; }
    .aura-join-form-intro { position: static; }
}
@media (max-width: 600px) {
    .aura-page { width: min(100% - 24px,1240px); padding-bottom: 70px; }
    .aura-site-header__inner,
    .aura-site-footer__inner { width: min(100% - 24px,1240px); }
    .aura-shoot-grid { grid-template-columns: 1fr; gap: 10px; }
    .aura-shoot-card,
    .aura-shoot-card:nth-child(n) { grid-column: auto; }
    .aura-shoot-card__link { height: 240px; }
    .aura-page-hero h1,
    .aura-shoot-hero h1 { font-size: 52px; }
    .aura-join-form-card { border-radius: 20px; padding: 22px 16px; }
    .model-bank-form .form-grid { grid-template-columns: 1fr; }
    .model-bank-form .form-field.full-width { grid-column: auto; }
    .aura-site-footer__inner { align-items: flex-start; flex-direction: column; }
}


/* Aura 1.3 responsive shoot gallery */
@media (max-width: 980px) {
    .aura-single-shoot .aura-shoot-content .wp-block-gallery,
    .aura-single-shoot .aura-shoot-content .blocks-gallery-grid {
        column-count: 2;
    }
}
@media (max-width: 620px) {
    .aura-single-shoot .aura-shoot-content .wp-block-gallery,
    .aura-single-shoot .aura-shoot-content .blocks-gallery-grid {
        column-count: 1;
        column-gap: 0 !important;
    }
    .aura-single-shoot .aura-shoot-content .wp-block-gallery.has-nested-images figure.wp-block-image,
    .aura-single-shoot .aura-shoot-content .wp-block-gallery figure.wp-block-image,
    .aura-single-shoot .aura-shoot-content .blocks-gallery-grid .blocks-gallery-item {
        margin-bottom: 16px !important;
    }
}


/* ============================================================
   Aura Model Bank v1.5
   THE LIBRARY inspired compact Gallery / Shoot layout
   ============================================================ */

/* Gallery archive heading */
.aura-library-page {
    width: min(1180px, calc(100% - 40px));
    padding-top: 84px;
}
.aura-library-heading {
    margin: 16px 0 56px;
}
.aura-library-heading h1 {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(34px, 4vw, 56px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.aura-library-heading h1::before {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    flex: 0 0 40px;
    background: currentColor;
}

/* Shared six-tile compact composition */
.aura-library-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-flow: dense;
    gap: 10px;
    width: 100%;
}
.aura-library-tile {
    position: relative;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: #e8e4de;
}
.aura-library-tile--1 { grid-column: span 3; }
.aura-library-tile--2 { grid-column: span 5; }
.aura-library-tile--3 { grid-column: span 4; }
.aura-library-tile--4 { grid-column: span 5; }
.aura-library-tile--5 { grid-column: span 4; }
.aura-library-tile--6 { grid-column: span 3; }

.aura-library-tile__link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
    background: #e8e4de;
}
.aura-library-tile img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center;
    transition: transform .45s cubic-bezier(.2,.72,.2,1), filter .35s ease;
}
.aura-library-tile__link:hover img {
    transform: scale(1.025);
}

/* Gallery overview cards: compact two-row "Library" layout */
.aura-library-grid--archive .aura-library-tile {
    height: 285px;
}
.aura-library-tile__link--archive h2 {
    position: absolute;
    z-index: 3;
    left: 18px;
    right: 18px;
    bottom: 14px;
    margin: 0;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(16px, 1.45vw, 20px);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: .01em;
    text-transform: none;
    text-shadow: 0 1px 12px rgba(0,0,0,.34);
}
.aura-library-tile__shade {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(
        to top,
        rgba(0,0,0,.58) 0%,
        rgba(0,0,0,.23) 26%,
        rgba(0,0,0,.02) 60%,
        rgba(0,0,0,0) 75%
    );
}

/* Single Shoot: remove the oversized hero photograph entirely */
.aura-shoot-library {
    width: min(1180px, calc(100% - 40px));
    padding-top: 72px;
}
.aura-shoot-library__header {
    max-width: 760px;
    margin: 0 0 42px;
}
.aura-shoot-library__header .aura-page-eyebrow {
    margin-bottom: 10px;
}
.aura-shoot-library__header h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(54px, 7vw, 92px);
    font-weight: 500;
    line-height: .95;
    letter-spacing: -.055em;
}
.aura-shoot-library__intro {
    max-width: 620px;
    margin: 22px 0 0;
    color: var(--aura-muted);
    font-size: 14px;
    line-height: 1.75;
}
.aura-shoot-library__text {
    max-width: 760px;
    margin: 0 0 38px;
    color: var(--aura-muted);
    line-height: 1.75;
}
.aura-shoot-library__text > :first-child {
    margin-top: 0;
}

/*
 * Every shoot image is rendered into a compact mosaic.
 * This intentionally overrides the older v1.3 natural-ratio gallery styling.
 */
.aura-library-grid--single {
    margin-top: 20px;
}
.aura-library-grid--single .aura-library-tile {
    height: 300px;
}
.aura-library-grid--single .aura-library-tile__link {
    cursor: zoom-in;
}
.aura-library-grid--single .aura-library-tile:nth-child(12n+2),
.aura-library-grid--single .aura-library-tile:nth-child(12n+5),
.aura-library-grid--single .aura-library-tile:nth-child(12n+8),
.aura-library-grid--single .aura-library-tile:nth-child(12n+11) {
    height: 330px;
}
.aura-shoot-library__back {
    margin-top: 58px;
}

/* The old Gutenberg-rendered gallery is not used on single Shoot templates. */
.aura-single-shoot .aura-shoot-content,
.aura-single-shoot .aura-shoot-hero {
    display: none !important;
}

/* Tablet */
@media (max-width: 900px) {
    .aura-library-tile--1,
    .aura-library-tile--2,
    .aura-library-tile--3,
    .aura-library-tile--4,
    .aura-library-tile--5,
    .aura-library-tile--6 {
        grid-column: span 6;
    }

    .aura-library-grid--archive .aura-library-tile,
    .aura-library-grid--single .aura-library-tile,
    .aura-library-grid--single .aura-library-tile:nth-child(n) {
        height: 300px;
    }
}

/* Mobile */
@media (max-width: 620px) {
    .aura-library-page,
    .aura-shoot-library {
        width: min(100% - 24px, 1180px);
        padding-top: 44px;
    }
    .aura-library-heading {
        margin-bottom: 34px;
    }
    .aura-library-heading h1 {
        gap: 12px;
        font-size: 30px;
    }
    .aura-library-heading h1::before {
        width: 28px;
        flex-basis: 28px;
    }

    .aura-library-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }
    .aura-library-tile--1,
    .aura-library-tile--2,
    .aura-library-tile--3,
    .aura-library-tile--4,
    .aura-library-tile--5,
    .aura-library-tile--6 {
        grid-column: span 1;
    }
    .aura-library-grid--archive .aura-library-tile,
    .aura-library-grid--single .aura-library-tile,
    .aura-library-grid--single .aura-library-tile:nth-child(n) {
        height: 230px;
    }
    .aura-library-tile__link--archive h2 {
        left: 11px;
        right: 11px;
        bottom: 10px;
        font-size: 14px;
    }
    .aura-shoot-library__header {
        margin-bottom: 30px;
    }
    .aura-shoot-library__header h1 {
        font-size: clamp(48px, 17vw, 72px);
    }
}

/* Very small devices: one clean column */
@media (max-width: 420px) {
    .aura-library-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .aura-library-tile--1,
    .aura-library-tile--2,
    .aura-library-tile--3,
    .aura-library-tile--4,
    .aura-library-tile--5,
    .aura-library-tile--6 {
        grid-column: 1 / -1;
    }
    .aura-library-grid--archive .aura-library-tile,
    .aura-library-grid--single .aura-library-tile,
    .aura-library-grid--single .aura-library-tile:nth-child(n) {
        height: 300px;
    }
}


/* ============================================================
   Aura Model Bank v1.6
   Premium adaptive editorial system
   ============================================================ */

:root {
    --aura-bg: #f5f1ea;
    --aura-paper: #fbf9f5;
    --aura-ink: #181613;
    --aura-muted: #776f68;
    --aura-line: rgba(24, 22, 19, .12);
    --aura-accent: #9b5f43;
    --aura-radius: 2px;
    --aura-gap: clamp(7px, .72vw, 12px);
    --aura-container: 1320px;
}

/* Premium responsive header */
.aura-site-header {
    background: rgba(251,249,245,.86);
    border-bottom: 1px solid rgba(24,22,19,.08);
    backdrop-filter: blur(22px) saturate(1.2);
    -webkit-backdrop-filter: blur(22px) saturate(1.2);
}
.aura-site-header__inner {
    width: min(var(--aura-container), calc(100% - 48px));
    min-height: 78px;
}
.aura-site-brand {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -.04em;
}
.aura-site-brand span {
    font-style: italic;
}
.aura-site-nav {
    gap: clamp(20px, 2.4vw, 36px);
}
.aura-site-nav a,
.aura-site-contact {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .12em;
    transition: opacity .2s ease, color .2s ease;
}
.aura-site-nav a:hover,
.aura-site-contact:hover {
    color: var(--aura-accent);
}
.aura-mobile-contact,
.aura-menu-toggle {
    display: none;
}

/* Gallery archive */
.aura-gallery-premium {
    width: min(var(--aura-container), calc(100% - 48px));
    padding-top: clamp(70px, 8vw, 120px);
    padding-bottom: clamp(80px, 10vw, 140px);
}
.aura-gallery-premium__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 430px);
    align-items: end;
    gap: 48px;
    margin-bottom: clamp(44px, 6vw, 78px);
}
.aura-gallery-premium__header h1 {
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(42px, 5.2vw, 72px);
    font-weight: 350;
    line-height: .95;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.aura-gallery-premium__header h1 span {
    display: block;
    width: clamp(28px, 3vw, 44px);
    height: 1.5px;
    background: currentColor;
}
.aura-gallery-premium__intro {
    margin: 0 0 3px;
    max-width: 410px;
    color: var(--aura-muted);
    font-size: 13px;
    line-height: 1.75;
}

/* Reference-inspired 12-column bento */
.aura-shoot-bento {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-flow: dense;
    gap: var(--aura-gap);
}
.aura-shoot-bento__item {
    position: relative;
    min-width: 0;
    margin: 0;
    height: clamp(230px, 22vw, 360px);
    overflow: hidden;
    border-radius: var(--aura-radius);
    background: #e8e2da;
}
.aura-shoot-bento__item--1 { grid-column: span 3; }
.aura-shoot-bento__item--2 { grid-column: span 5; }
.aura-shoot-bento__item--3 { grid-column: span 4; }
.aura-shoot-bento__item--4 { grid-column: span 5; }
.aura-shoot-bento__item--5 { grid-column: span 4; }
.aura-shoot-bento__item--6 { grid-column: span 3; }

.aura-shoot-bento__link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    color: #fff;
    text-decoration: none;
}
.aura-shoot-bento__link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 32%;
    display: block;
    transform: scale(1.001);
    transition: transform .65s cubic-bezier(.22,.61,.36,1), filter .45s ease;
}
.aura-shoot-bento__link:hover img {
    transform: scale(1.035);
    filter: saturate(1.04) contrast(1.02);
}
.aura-shoot-bento__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, rgba(0,0,0,.60), rgba(0,0,0,.08) 48%, rgba(0,0,0,0) 72%);
    transition: background .35s ease;
}
.aura-shoot-bento__link:hover .aura-shoot-bento__overlay {
    background:
        linear-gradient(to top, rgba(0,0,0,.68), rgba(0,0,0,.10) 52%, rgba(0,0,0,0) 76%);
}
.aura-shoot-bento__type {
    position: absolute;
    top: 16px;
    left: 16px;
    font-size: 9px;
    letter-spacing: .16em;
    text-transform: uppercase;
    opacity: .88;
}
.aura-shoot-bento__arrow {
    position: absolute;
    top: 15px;
    right: 16px;
    font-size: 14px;
    opacity: 0;
    transform: translate(-5px, 5px);
    transition: opacity .25s ease, transform .25s ease;
}
.aura-shoot-bento__link:hover .aura-shoot-bento__arrow {
    opacity: 1;
    transform: none;
}
.aura-shoot-bento h2 {
    position: absolute;
    left: clamp(14px, 1.4vw, 22px);
    right: 18px;
    bottom: clamp(14px, 1.4vw, 20px);
    margin: 0;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: clamp(16px, 1.5vw, 22px);
    line-height: 1.15;
    font-weight: 400;
    letter-spacing: .01em;
}

/* Single shoot */
.aura-shoot-premium {
    width: min(var(--aura-container), calc(100% - 48px));
    padding-top: clamp(68px, 7vw, 110px);
    padding-bottom: clamp(80px, 9vw, 130px);
}
.aura-shoot-premium__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 40px;
    margin-bottom: 22px;
}
.aura-shoot-premium__heading h1 {
    margin: 0;
    max-width: 900px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(58px, 8vw, 112px);
    font-weight: 500;
    line-height: .86;
    letter-spacing: -.06em;
}
.aura-shoot-premium__meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
    padding-bottom: 5px;
    color: var(--aura-muted);
    font-size: 10px;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.aura-shoot-premium__meta a {
    color: var(--aura-ink);
    text-decoration: none;
    border-bottom: 1px solid var(--aura-line);
    padding-bottom: 3px;
}
.aura-shoot-premium__intro,
.aura-shoot-premium__text {
    max-width: 720px;
    color: var(--aura-muted);
    font-size: 13px;
    line-height: 1.8;
}
.aura-shoot-premium__intro {
    margin: 0 0 30px;
}
.aura-shoot-premium__text {
    margin: 0 0 34px;
}

/* Adaptive compact photo grid — closely follows the supplied reference */
.aura-adaptive-gallery {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-flow: dense;
    gap: var(--aura-gap);
    margin-top: 34px;
}
.aura-adaptive-gallery__item {
    position: relative;
    min-width: 0;
    height: clamp(230px, 22vw, 360px);
    margin: 0;
    overflow: hidden;
    border-radius: var(--aura-radius);
    background: #e7e1d9;
}
.aura-adaptive-gallery__item--1 { grid-column: span 3; }
.aura-adaptive-gallery__item--2 { grid-column: span 5; }
.aura-adaptive-gallery__item--3 { grid-column: span 4; }
.aura-adaptive-gallery__item--4 { grid-column: span 5; }
.aura-adaptive-gallery__item--5 { grid-column: span 4; }
.aura-adaptive-gallery__item--6 { grid-column: span 3; }

.aura-adaptive-gallery__link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    cursor: zoom-in;
}
.aura-adaptive-gallery__link::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0);
    transition: background .3s ease;
}
.aura-adaptive-gallery__link:hover::after {
    background: rgba(0,0,0,.08);
}
.aura-adaptive-gallery__link img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 28%;
    display: block;
    transform: scale(1.001);
    transition: transform .6s cubic-bezier(.22,.61,.36,1);
}
.aura-adaptive-gallery__link:hover img {
    transform: scale(1.03);
}
.aura-adaptive-gallery__number {
    position: absolute;
    z-index: 3;
    right: 12px;
    bottom: 10px;
    color: rgba(255,255,255,.88);
    font-size: 9px;
    letter-spacing: .13em;
    text-shadow: 0 1px 8px rgba(0,0,0,.3);
    opacity: 0;
    transition: opacity .25s ease;
}
.aura-adaptive-gallery__link:hover .aura-adaptive-gallery__number {
    opacity: 1;
}
.aura-shoot-premium__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: clamp(48px, 6vw, 82px);
    padding-top: 20px;
    border-top: 1px solid var(--aura-line);
    color: var(--aura-muted);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .13em;
}
.aura-shoot-premium__footer a {
    color: var(--aura-ink);
    text-decoration: none;
}

/* Native premium lightbox */
body.aura-lightbox-open {
    overflow: hidden;
}
.aura-lightbox {
    position: fixed;
    z-index: 99999;
    inset: 0;
    display: grid;
    grid-template-columns: 72px minmax(0,1fr) 72px;
    place-items: center;
    background: rgba(10,9,8,.96);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}
.aura-lightbox.is-open {
    opacity: 1;
    visibility: visible;
}
.aura-lightbox__stage {
    width: min(88vw, 1500px);
    height: 88vh;
    margin: 0;
    display: grid;
    grid-template-rows: minmax(0,1fr) auto;
    gap: 12px;
    place-items: center;
}
.aura-lightbox__stage img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: calc(88vh - 34px);
    object-fit: contain;
}
.aura-lightbox__stage figcaption {
    color: rgba(255,255,255,.7);
    font-size: 10px;
    letter-spacing: .16em;
}
.aura-lightbox__close,
.aura-lightbox__nav {
    appearance: none;
    border: 0;
    color: #fff;
    background: transparent;
    cursor: pointer;
}
.aura-lightbox__close {
    position: absolute;
    top: 22px;
    right: 26px;
    font-size: 32px;
    line-height: 1;
    font-weight: 200;
}
.aura-lightbox__nav {
    font-size: 26px;
    opacity: .72;
    transition: opacity .2s ease, transform .2s ease;
}
.aura-lightbox__nav:hover {
    opacity: 1;
    transform: scale(1.08);
}

/* Hide old shoot layouts so they can never leak into v1.6 */
.aura-single-shoot .aura-shoot-hero,
.aura-single-shoot .aura-shoot-content,
.aura-single-shoot .aura-library-grid--single {
    display: none !important;
}

/* Large tablet */
@media (max-width: 1080px) {
    .aura-site-header__inner {
        width: min(var(--aura-container), calc(100% - 34px));
    }
    .aura-gallery-premium,
    .aura-shoot-premium {
        width: min(var(--aura-container), calc(100% - 34px));
    }
    .aura-shoot-bento__item,
    .aura-adaptive-gallery__item {
        height: clamp(220px, 26vw, 320px);
    }
}

/* Tablet: maintain editorial rhythm, two large tiles per row */
@media (max-width: 860px) {
    .aura-site-nav,
    .aura-site-contact {
        display: none;
    }
    .aura-menu-toggle {
        justify-self: end;
        display: grid;
        gap: 6px;
        width: 36px;
        padding: 8px 0;
        border: 0;
        background: transparent;
        cursor: pointer;
    }
    .aura-menu-toggle span {
        display: block;
        height: 1.5px;
        background: var(--aura-ink);
        transition: transform .25s ease, width .25s ease;
    }
    .aura-menu-toggle span:last-child {
        width: 70%;
        justify-self: end;
    }
    body.aura-menu-open .aura-menu-toggle span:first-child {
        transform: translateY(3.75px) rotate(45deg);
    }
    body.aura-menu-open .aura-menu-toggle span:last-child {
        width: 100%;
        transform: translateY(-3.75px) rotate(-45deg);
    }
    body.aura-menu-open .aura-site-nav {
        position: fixed;
        top: 78px;
        left: 0;
        right: 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        padding: 30px 24px 38px;
        background: rgba(251,249,245,.98);
        border-bottom: 1px solid var(--aura-line);
        box-shadow: 0 18px 40px rgba(20,16,12,.08);
    }
    body.aura-menu-open .aura-site-nav a {
        width: 100%;
        padding: 16px 0;
        border-bottom: 1px solid var(--aura-line);
        font-size: 12px;
    }
    .aura-mobile-contact {
        display: block !important;
    }

    .aura-gallery-premium__header {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .aura-gallery-premium__intro {
        max-width: 520px;
    }

    .aura-shoot-bento,
    .aura-adaptive-gallery {
        grid-template-columns: repeat(8, minmax(0, 1fr));
    }
    .aura-shoot-bento__item--1,
    .aura-shoot-bento__item--4,
    .aura-adaptive-gallery__item--1,
    .aura-adaptive-gallery__item--4 {
        grid-column: span 3;
    }
    .aura-shoot-bento__item--2,
    .aura-shoot-bento__item--5,
    .aura-adaptive-gallery__item--2,
    .aura-adaptive-gallery__item--5 {
        grid-column: span 5;
    }
    .aura-shoot-bento__item--3,
    .aura-shoot-bento__item--6,
    .aura-adaptive-gallery__item--3,
    .aura-adaptive-gallery__item--6 {
        grid-column: span 4;
    }

    .aura-shoot-premium__header {
        grid-template-columns: 1fr;
        gap: 22px;
    }
    .aura-shoot-premium__meta {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

/* Mobile: adaptive 2-column gallery with periodic full-width tiles */
@media (max-width: 620px) {
    .aura-site-header__inner {
        width: calc(100% - 28px);
        min-height: 68px;
    }
    body.aura-menu-open .aura-site-nav {
        top: 68px;
    }
    .aura-site-brand {
        font-size: 21px;
    }

    .aura-gallery-premium,
    .aura-shoot-premium {
        width: calc(100% - 24px);
        padding-top: 46px;
        padding-bottom: 76px;
    }
    .aura-gallery-premium__header {
        margin-bottom: 34px;
    }
    .aura-gallery-premium__header h1 {
        font-size: clamp(36px, 12vw, 52px);
        gap: 12px;
    }
    .aura-gallery-premium__header h1 span {
        width: 28px;
    }

    .aura-shoot-bento,
    .aura-adaptive-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }
    .aura-shoot-bento__item,
    .aura-adaptive-gallery__item {
        grid-column: span 1 !important;
        height: auto;
        aspect-ratio: 4 / 5;
    }
    .aura-shoot-bento__item:nth-child(5n+2),
    .aura-adaptive-gallery__item:nth-child(5n+2) {
        grid-column: 1 / -1 !important;
        aspect-ratio: 16 / 10;
    }

    .aura-shoot-bento__type {
        top: 10px;
        left: 10px;
        font-size: 8px;
    }
    .aura-shoot-bento h2 {
        left: 11px;
        right: 11px;
        bottom: 11px;
        font-size: 15px;
    }
    .aura-shoot-bento__arrow {
        display: none;
    }

    .aura-shoot-premium__heading h1 {
        font-size: clamp(54px, 18vw, 78px);
        line-height: .9;
    }
    .aura-shoot-premium__meta {
        font-size: 9px;
    }
    .aura-adaptive-gallery {
        margin-top: 26px;
    }
    .aura-adaptive-gallery__number {
        display: none;
    }

    .aura-lightbox {
        grid-template-columns: 42px minmax(0, 1fr) 42px;
    }
    .aura-lightbox__stage {
        width: 100%;
        height: 84vh;
    }
    .aura-lightbox__nav {
        font-size: 20px;
    }
    .aura-lightbox__close {
        top: 16px;
        right: 18px;
    }
}

/* Small phones: single-column, full-width cinematic cards */
@media (max-width: 420px) {
    .aura-shoot-bento,
    .aura-adaptive-gallery {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .aura-shoot-bento__item,
    .aura-adaptive-gallery__item,
    .aura-shoot-bento__item:nth-child(5n+2),
    .aura-adaptive-gallery__item:nth-child(5n+2) {
        grid-column: 1 / -1 !important;
        aspect-ratio: 4 / 5;
    }
    .aura-shoot-bento__item:nth-child(3n+2),
    .aura-adaptive-gallery__item:nth-child(3n+2) {
        aspect-ratio: 16 / 10;
    }
    .aura-shoot-premium__footer {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
    .aura-shoot-bento__link img,
    .aura-adaptive-gallery__link img,
    .aura-lightbox,
    .aura-menu-toggle span {
        transition: none !important;
    }
}


/* ============================================================
   Aura Model Bank v1.7 — Premium responsive editorial homepage
   ============================================================ */
:root {
    --aura-home-bg: #f4f1ec;
    --aura-home-paper: #fbfaf7;
    --aura-home-ink: #11110f;
    --aura-home-muted: #66615b;
    --aura-home-line: rgba(17,17,15,.13);
    --aura-home-dark: #0b0b0a;
    --aura-home-accent: #c10078;
    --aura-home-max: 1440px;
    --aura-home-pad: clamp(22px, 4vw, 72px);
}

body.home {
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
}
body.home.aura-home-menu-open,
body.home.aura-lightbox-open { overflow: hidden; }

.aura-premium-home,
.aura-premium-home * { box-sizing: border-box; }
.aura-premium-home {
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
    overflow: clip;
}

/* ---------- Home header ---------- */
.aura-home-header {
    position: fixed;
    z-index: 900;
    top: 0;
    left: 0;
    width: 100%;
    color: var(--aura-home-ink);
    transition: background .35s ease, border-color .35s ease, box-shadow .35s ease, transform .35s ease;
    border-bottom: 1px solid transparent;
}
.aura-home-header.is-scrolled {
    background: rgba(244,241,236,.90);
    border-bottom-color: rgba(17,17,15,.08);
    box-shadow: 0 10px 40px rgba(0,0,0,.035);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
}
.aura-home-header__inner {
    width: min(var(--aura-home-max), calc(100% - 44px));
    min-height: 82px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 190px 1fr auto;
    gap: 28px;
    align-items: center;
}
.aura-home-logo {
    display: inline-flex;
    align-items: center;
    width: 142px;
    text-decoration: none;
}
.aura-home-logo img {
    display: block;
    width: 100%;
    height: auto;
}
.aura-home-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: clamp(20px, 2.2vw, 38px);
}
.aura-home-nav a {
    position: relative;
    color: var(--aura-home-ink);
    text-decoration: none;
    font-size: 10px;
    font-weight: 650;
    letter-spacing: .10em;
    text-transform: uppercase;
    padding: 11px 0;
}
.aura-home-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    width: 0;
    height: 1px;
    background: currentColor;
    transition: width .25s ease;
}
.aura-home-nav a:hover::after,
.aura-home-nav a.is-active::after { width: 100%; }
.aura-home-header__actions {
    display: flex;
    align-items: center;
    gap: 16px;
}
.aura-book-button,
.aura-primary-button,
.aura-home-cta a {
    position: relative;
    overflow: hidden;
}
.aura-book-button {
    min-height: 46px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0e0e0d;
    color: #fff;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: transform .25s ease, background .25s ease;
}
.aura-book-button:hover { transform: translateY(-2px); background: #252320; }
.aura-home-menu-toggle {
    width: 38px;
    height: 38px;
    border: 0;
    padding: 8px 5px;
    background: transparent;
    cursor: pointer;
    display: none;
    place-content: center;
    gap: 5px;
}
.aura-home-menu-toggle span {
    display: block;
    width: 22px;
    height: 1.5px;
    background: currentColor;
    transform-origin: center;
    transition: transform .25s ease, opacity .25s ease, width .25s ease;
}

/* ---------- Hero ---------- */
.aura-home-hero {
    position: relative;
    min-height: min(920px, 100svh);
    height: max(720px, 92svh);
    display: grid;
    grid-template-columns: minmax(0, 47%) minmax(0, 53%);
    background:
        radial-gradient(circle at 12% 20%, rgba(255,255,255,.65), transparent 31%),
        linear-gradient(90deg, #f1eee8 0%, #f5f2ed 48%, #ebe4dc 100%);
    overflow: hidden;
}
.aura-home-hero__content {
    position: relative;
    z-index: 4;
    align-self: center;
    width: min(700px, calc(100% - 100px));
    margin-left: max(var(--aura-home-pad), calc((100vw - var(--aura-home-max))/2 + 20px));
    padding-top: 84px;
}
.aura-home-eyebrow {
    margin: 0 0 22px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .27em;
    text-transform: uppercase;
    color: #3f3b37;
}
.aura-home-hero__title {
    margin: 0;
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-size: clamp(62px, 6.4vw, 108px);
    font-weight: 320;
    letter-spacing: -.065em;
    line-height: .93;
    max-width: 820px;
}
.aura-home-hero__title span { display: block; }
.aura-home-hero__copy {
    max-width: 520px;
    margin: 34px 0 0;
    color: #403c38;
    font-size: clamp(13px, 1.05vw, 16px);
    line-height: 1.75;
}
.aura-home-hero__actions {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-top: 38px;
}
.aura-primary-button {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    gap: 26px;
    padding: 0 24px;
    background: #10100f;
    color: #fff;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: transform .25s ease, background .25s ease;
}
.aura-primary-button span { font-size: 20px; font-weight: 300; }
.aura-primary-button:hover { transform: translateY(-2px); background: #24211f; }
.aura-text-button {
    color: var(--aura-home-ink);
    text-decoration: none;
    padding: 12px 0 9px;
    border-bottom: 1px solid var(--aura-home-ink);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.aura-home-hero__visual {
    position: relative;
    min-width: 0;
    overflow: hidden;
}
.aura-home-hero__visual::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0 auto 0 0;
    width: 35%;
    background: linear-gradient(90deg, #f4f1ec 0%, rgba(244,241,236,.78) 25%, rgba(244,241,236,0) 100%);
    pointer-events: none;
}
.aura-home-hero__visual img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 56% center;
    display: block;
    filter: saturate(.92) contrast(.97);
    transform: scale(1.035);
    animation: auraHeroBreathe 14s ease-in-out infinite alternate;
    will-change: transform;
}
.aura-home-hero__halo {
    position: absolute;
    z-index: 1;
    width: 65vw;
    height: 65vw;
    left: -20vw;
    top: -16vw;
    border: 1px solid rgba(160,142,128,.18);
    border-radius: 50%;
    pointer-events: none;
}
.aura-home-hero__halo::after {
    content: "";
    position: absolute;
    inset: 7%;
    border: 1px solid rgba(160,142,128,.11);
    border-radius: 50%;
}
.aura-home-hero__grain {
    position: absolute;
    z-index: 3;
    inset: 0;
    opacity: .06;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");
    mix-blend-mode: soft-light;
}
.aura-home-hero__counter {
    position: absolute;
    z-index: 6;
    left: clamp(18px, 2.4vw, 42px);
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13px;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .08em;
}
.aura-home-hero__counter i {
    width: 1px;
    height: 95px;
    background: rgba(17,17,15,.35);
}
.aura-home-hero__arrows {
    position: absolute;
    z-index: 8;
    right: clamp(22px, 4vw, 64px);
    bottom: 0;
    display: grid;
    grid-template-columns: repeat(2, 58px);
    background: rgba(255,255,255,.92);
}
.aura-home-hero__arrows span {
    height: 58px;
    display: grid;
    place-items: center;
    border-left: 1px solid rgba(17,17,15,.10);
    font-size: 20px;
    font-weight: 300;
}
@keyframes auraHeroBreathe {
    from { transform: scale(1.035); }
    to { transform: scale(1.075); }
}

/* ---------- Shared section ---------- */
.aura-home-section {
    width: min(var(--aura-home-max), calc(100% - (var(--aura-home-pad) * 2)));
    margin: 0 auto;
    padding: clamp(70px, 7vw, 112px) 0;
}
.aura-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: clamp(28px, 3vw, 46px);
}
.aura-section-heading .aura-home-eyebrow { margin-bottom: 12px; color: #4f4a45; }
.aura-section-heading h2,
.aura-movement h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(36px, 4vw, 62px);
    font-weight: 400;
    line-height: .98;
    letter-spacing: -.035em;
}
.aura-section-link {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding: 10px 0;
    color: var(--aura-home-ink);
    text-decoration: none;
    border-bottom: 1px solid rgba(17,17,15,.35);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
}
.aura-section-link span { font-size: 18px; font-weight: 300; }
.aura-empty-copy { color: var(--aura-home-muted); }
.aura-image-placeholder {
    width: 100%; height: 100%; display: grid; place-items: center;
    background: #ded7cf; font-family: Georgia, serif; font-size: 34px; color: #8f8378;
}

/* ---------- Models ---------- */
.aura-models-section { background: transparent; }
.aura-model-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: clamp(12px, 1.6vw, 26px);
}
.aura-model-card { min-width: 0; }
.aura-model-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 4;
    background: #ded8d1;
}
.aura-model-card__image img {
    width: 100%; height: 100%; display: block; object-fit: cover; object-position: center top;
    filter: saturate(.82) contrast(1.02);
    transform: scale(1.001);
    transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}
.aura-model-card__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.12), transparent 38%);
    opacity: 0;
    transition: opacity .35s ease;
}
.aura-model-card:hover .aura-model-card__image img { transform: scale(1.035); filter: saturate(1) contrast(1.03); }
.aura-model-card:hover .aura-model-card__image::after { opacity: 1; }
.aura-card-arrow {
    position: absolute;
    z-index: 3;
    top: 13px;
    right: 13px;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.92);
    color: #111;
    font-size: 15px;
    opacity: 0;
    transform: translate(-5px,5px);
    transition: opacity .28s ease, transform .28s ease;
}
.aura-model-card:hover .aura-card-arrow { opacity: 1; transform: none; }
.aura-model-card h3 {
    margin: 16px 0 5px;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 500;
}
.aura-model-card h3 a { color: inherit; text-decoration: none; }
.aura-model-card p {
    margin: 0;
    color: #3f3a36;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}

/* ---------- Shoots ---------- */
.aura-shoots-section {
    width: 100%;
    max-width: none;
    padding-left: max(var(--aura-home-pad), calc((100vw - var(--aura-home-max))/2 + var(--aura-home-pad)));
    padding-right: max(var(--aura-home-pad), calc((100vw - var(--aura-home-max))/2 + var(--aura-home-pad)));
    background: rgba(255,255,255,.45);
    border-top: 1px solid rgba(17,17,15,.06);
    border-bottom: 1px solid rgba(17,17,15,.06);
}
.aura-shoot-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 3px;
}
.aura-shoot-card { min-width: 0; }
.aura-shoot-card > a {
    position: relative;
    display: block;
    min-height: clamp(300px, 31vw, 500px);
    overflow: hidden;
    background: #cfc8c1;
    color: #fff;
    text-decoration: none;
}
.aura-shoot-card img {
    width: 100%; height: 100%; object-fit: cover; object-position: center 32%; display: block;
    position: absolute; inset: 0;
    filter: saturate(.82) contrast(1.02);
    transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}
.aura-shoot-card:hover img { transform: scale(1.04); filter: saturate(1) contrast(1.04); }
.aura-shoot-card__veil {
    position: absolute;
    z-index: 2;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,.04) 48%, transparent 70%);
}
.aura-shoot-card__type {
    position: absolute;
    z-index: 3;
    left: 18px;
    bottom: 39px;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
    opacity: .82;
}
.aura-shoot-card__title {
    position: absolute;
    z-index: 3;
    left: 18px;
    right: 42px;
    bottom: 15px;
    font-family: Georgia, serif;
    font-size: clamp(16px, 1.3vw, 22px);
}
.aura-shoot-card__arrow {
    position: absolute;
    z-index: 4;
    right: 17px;
    top: 15px;
    font-size: 16px;
    opacity: 0;
    transform: translate(-5px,5px);
    transition: opacity .25s ease, transform .25s ease;
}
.aura-shoot-card:hover .aura-shoot-card__arrow { opacity: 1; transform: none; }

/* ---------- Why Aura ---------- */
.aura-movement {
    display: grid;
    grid-template-columns: minmax(0, 1.03fr) minmax(420px, .97fr);
    min-height: 680px;
    background: #f1eee8;
    border-bottom: 1px solid rgba(17,17,15,.08);
}
.aura-movement__content {
    padding: clamp(70px, 7vw, 110px) clamp(32px, 5vw, 82px) clamp(68px, 6vw, 96px) max(var(--aura-home-pad), calc((100vw - var(--aura-home-max))/2 + var(--aura-home-pad)));
}
.aura-movement h2 { margin-top: 0; max-width: 720px; }
.aura-values-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 38px 48px;
    margin-top: 58px;
}
.aura-value__icon {
    display: block;
    margin-bottom: 15px;
    font-size: 27px;
    line-height: 1;
    font-weight: 300;
}
.aura-value h3 {
    margin: 0 0 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
}
.aura-value p {
    max-width: 250px;
    margin: 0;
    color: var(--aura-home-muted);
    font-size: 11px;
    line-height: 1.65;
}
.aura-stats {
    display: flex;
    gap: 50px;
    margin-top: 52px;
    padding-top: 26px;
    border-top: 1px solid var(--aura-home-line);
}
.aura-stats div { display: flex; align-items: baseline; gap: 10px; }
.aura-stats strong { font-family: Georgia,serif; font-size: 32px; font-weight: 400; }
.aura-stats span { color: var(--aura-home-muted); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.aura-movement__collage {
    position: relative;
    overflow: hidden;
    min-height: 680px;
    background: #d8d4d0;
}
.aura-collage-card {
    position: absolute;
    margin: 0;
    overflow: hidden;
    background: #bbb7b3;
    box-shadow: 0 24px 60px rgba(0,0,0,.14);
}
.aura-collage-card img {
    width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block;
    filter: grayscale(1) contrast(1.04);
    transition: filter .5s ease, transform .6s ease;
}
.aura-collage-card:hover img { filter: grayscale(.1) contrast(1.03); transform: scale(1.03); }
.aura-collage-card--1 { width: 44%; height: 72%; left: 3%; top: 14%; z-index: 3; }
.aura-collage-card--2 { width: 38%; height: 63%; right: 3%; top: 7%; z-index: 2; }
.aura-collage-card--3 { width: 36%; height: 54%; left: 32%; bottom: -2%; z-index: 4; }
.aura-collage-card--4 { width: 27%; height: 44%; right: 7%; bottom: 3%; z-index: 5; }

/* ---------- CTA + footer ---------- */
.aura-home-cta {
    min-height: 205px;
    display: grid;
    place-items: center;
    padding: 48px 24px;
    text-align: center;
    background: #080808;
    color: #fff;
}
.aura-home-cta p {
    margin: 0 0 24px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1;
    font-weight: 400;
}
.aura-home-cta a {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    gap: 24px;
    padding: 0 24px;
    background: #f2eee8;
    color: #111;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: background .25s ease, transform .25s ease;
}
.aura-home-cta a:hover { background: #fff; transform: translateY(-2px); }
.aura-home-cta a span { font-size: 18px; }
.aura-home-footer {
    background: #080808;
    color: rgba(255,255,255,.78);
    padding: clamp(58px, 6vw, 90px) max(var(--aura-home-pad), calc((100vw - var(--aura-home-max))/2 + var(--aura-home-pad))) 26px;
    border-top: 1px solid rgba(255,255,255,.18);
}
.aura-home-footer__grid {
    display: grid;
    grid-template-columns: 1.7fr .7fr .7fr 1fr;
    gap: clamp(32px, 5vw, 80px);
}
.aura-home-footer__brand img {
    width: 190px;
    max-height: 95px;
    object-fit: contain;
    object-position: left center;
    display: block;
    margin-bottom: 18px;
}
.aura-home-footer__brand p,
.aura-home-footer__contact p {
    max-width: 320px;
    color: rgba(255,255,255,.58);
    font-size: 11px;
    line-height: 1.7;
}
.aura-home-footer__brand > a { color: #fff; text-decoration: none; font-size: 11px; }
.aura-home-footer h3 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 9px;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.aura-home-footer__grid > div:not(:first-child) { display: flex; flex-direction: column; align-items: flex-start; }
.aura-home-footer__grid > div:not(:first-child) > a:not(.aura-footer-enquiry) {
    color: rgba(255,255,255,.70);
    text-decoration: none;
    font-size: 11px;
    line-height: 1.9;
}
.aura-footer-enquiry {
    width: 100%;
    max-width: 310px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 10px;
    padding: 15px 0;
    color: #fff;
    text-decoration: none;
    border-top: 1px solid rgba(255,255,255,.3);
    border-bottom: 1px solid rgba(255,255,255,.3);
    font-size: 11px;
}
.aura-home-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 58px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.15);
    color: rgba(255,255,255,.44);
    font-size: 9px;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.aura-home-footer__bottom a { color: rgba(255,255,255,.72); text-decoration: none; }

/* ---------- Reveal / motion ---------- */
.aura-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1);
    transition-delay: var(--aura-reveal-delay, 0ms);
}
.aura-reveal.is-visible { opacity: 1; transform: none; }

/* ---------- Interior premium header/footer ---------- */
body:not(.home) .aura-site-header {
    position: sticky;
    top: 0;
    background: rgba(244,241,236,.94);
    border-bottom: 1px solid rgba(17,17,15,.08);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}
body:not(.home) .aura-site-header__inner {
    width: min(var(--aura-home-max), calc(100% - 44px));
    min-height: 80px;
    grid-template-columns: 180px 1fr auto;
}
body:not(.home) .aura-site-brand {
    display: inline-flex;
    width: 140px;
    align-items: center;
}
body:not(.home) .aura-site-brand img { display: block; width: 100%; height: auto; }
body:not(.home) .aura-site-nav a,
body:not(.home) .aura-site-contact {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
body:not(.home) .aura-site-contact {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 0 20px;
    background: #111;
    color: #fff;
}
.aura-site-footer--premium { background: #080808; color: rgba(255,255,255,.7); border: 0; }
.aura-site-footer__premium-inner {
    width: min(var(--aura-home-max), calc(100% - 44px));
    margin: 0 auto;
    padding: 64px 0 42px;
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 60px;
}
.aura-site-footer__brand img { width: 180px; max-height: 90px; object-fit: contain; object-position: left center; }
.aura-site-footer__brand p { color: rgba(255,255,255,.5); font-size: 11px; }
.aura-site-footer__links { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 15px 26px; }
.aura-site-footer__links a,
.aura-site-footer__contact-block a { color: rgba(255,255,255,.74); text-decoration: none; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; }
.aura-site-footer__contact-block { display: flex; flex-direction: column; gap: 10px; align-items: flex-end; }
.aura-site-footer__contact-block span { color: rgba(255,255,255,.4); font-size: 9px; text-transform: uppercase; letter-spacing: .15em; }
.aura-site-footer__bottom-premium {
    width: min(var(--aura-home-max), calc(100% - 44px));
    margin: 0 auto;
    padding: 22px 0;
    border-top: 1px solid rgba(255,255,255,.13);
    display: flex;
    justify-content: space-between;
    color: rgba(255,255,255,.38);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .1em;
}
.aura-site-footer__bottom-premium a { color: rgba(255,255,255,.65); text-decoration: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
    .aura-home-header__inner { grid-template-columns: 150px 1fr auto; }
    .aura-home-nav { gap: 18px; }
    .aura-home-hero { grid-template-columns: minmax(0, 48%) minmax(0, 52%); }
    .aura-home-hero__content { width: calc(100% - 72px); }
    .aura-home-hero__title { font-size: clamp(58px, 6.5vw, 88px); }
    .aura-model-strip { grid-template-columns: repeat(4, minmax(0,1fr)); }
    .aura-model-card:nth-child(5) { display: none; }
    .aura-shoot-strip { grid-template-columns: repeat(4, minmax(0,1fr)); }
    .aura-shoot-card:nth-child(5) { display: none; }
    .aura-movement { grid-template-columns: 1fr .9fr; }
}

@media (max-width: 920px) {
    .aura-home-header__inner {
        min-height: 74px;
        grid-template-columns: 150px 1fr auto;
    }
    .aura-home-nav,
    .aura-book-button { display: none; }
    .aura-home-menu-toggle { display: grid; }
    body.aura-home-menu-open .aura-home-nav {
        position: fixed;
        inset: 74px 0 auto 0;
        z-index: 920;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        padding: 22px 26px 34px;
        background: rgba(244,241,236,.985);
        border-top: 1px solid rgba(17,17,15,.06);
        border-bottom: 1px solid rgba(17,17,15,.08);
        box-shadow: 0 28px 60px rgba(0,0,0,.08);
    }
    body.aura-home-menu-open .aura-home-nav a {
        width: 100%;
        padding: 17px 0;
        border-bottom: 1px solid rgba(17,17,15,.09);
        font-size: 11px;
    }
    body.aura-home-menu-open .aura-home-menu-toggle span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
    body.aura-home-menu-open .aura-home-menu-toggle span:nth-child(2) { opacity: 0; }
    body.aura-home-menu-open .aura-home-menu-toggle span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

    .aura-home-hero {
        min-height: auto;
        height: auto;
        grid-template-columns: 1fr;
        padding-top: 74px;
    }
    .aura-home-hero__content {
        width: min(760px, calc(100% - 48px));
        margin: 0 auto;
        padding: 74px 0 60px;
    }
    .aura-home-hero__title { font-size: clamp(60px, 10vw, 92px); }
    .aura-home-hero__visual {
        min-height: 64svh;
        order: 2;
    }
    .aura-home-hero__visual::before {
        width: 100%;
        height: 16%;
        inset: 0 0 auto;
        background: linear-gradient(180deg, #f4f1ec, rgba(244,241,236,0));
    }
    .aura-home-hero__counter { display: none; }
    .aura-home-hero__arrows { display: none; }

    .aura-model-strip {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }
    .aura-model-card:nth-child(4),
    .aura-model-card:nth-child(5) { display: block; }
    .aura-model-card:nth-child(4),
    .aura-model-card:nth-child(5) { display: none; }

    .aura-shoot-strip { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .aura-shoot-card:nth-child(n+4) { display: none; }

    .aura-movement {
        grid-template-columns: 1fr;
    }
    .aura-movement__content {
        padding-left: var(--aura-home-pad);
        padding-right: var(--aura-home-pad);
    }
    .aura-movement__collage { min-height: 580px; }

    .aura-home-footer__grid { grid-template-columns: 1.5fr 1fr 1fr; }
    .aura-home-footer__contact { grid-column: 1 / -1; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.13); }

    body:not(.home) .aura-site-header__inner { grid-template-columns: 140px 1fr auto; min-height: 74px; }
    body:not(.home) .aura-site-nav,
    body:not(.home) .aura-site-contact { display: none; }
    body:not(.home) .aura-menu-toggle { display: grid; }
}

@media (max-width: 700px) {
    :root { --aura-home-pad: 20px; }
    .aura-home-header__inner { width: calc(100% - 28px); min-height: 68px; grid-template-columns: 132px 1fr auto; }
    .aura-home-logo { width: 128px; }
    body.aura-home-menu-open .aura-home-nav { top: 68px; }

    .aura-home-hero { padding-top: 68px; }
    .aura-home-hero__content {
        width: calc(100% - 40px);
        padding: 52px 0 44px;
    }
    .aura-home-eyebrow { font-size: 8px; letter-spacing: .24em; margin-bottom: 16px; }
    .aura-home-hero__title {
        font-size: clamp(48px, 14.8vw, 72px);
        line-height: .95;
        letter-spacing: -.058em;
    }
    .aura-home-hero__copy { margin-top: 24px; font-size: 13px; max-width: 92%; }
    .aura-home-hero__actions { gap: 18px; margin-top: 28px; flex-wrap: wrap; }
    .aura-primary-button { min-height: 50px; padding: 0 18px; }
    .aura-home-hero__visual { min-height: 58svh; }
    .aura-home-hero__visual img { object-position: 61% center; }

    .aura-home-section {
        width: calc(100% - 40px);
        padding: 64px 0;
    }
    .aura-section-heading { align-items: flex-start; gap: 20px; }
    .aura-section-heading h2 { font-size: 38px; }
    .aura-section-link { font-size: 8px; gap: 10px; }

    /* Swipeable responsive rows preserve premium card size */
    .aura-model-strip,
    .aura-shoot-strip {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        padding: 0 0 10px;
    }
    .aura-model-strip::-webkit-scrollbar,
    .aura-shoot-strip::-webkit-scrollbar { display: none; }
    .aura-model-card {
        display: block !important;
        flex: 0 0 min(72vw, 290px);
        scroll-snap-align: start;
    }
    .aura-shoots-section {
        padding-left: 20px;
        padding-right: 20px;
    }
    .aura-shoot-card {
        display: block !important;
        flex: 0 0 min(78vw, 330px);
        scroll-snap-align: start;
    }
    .aura-shoot-card > a { min-height: 440px; }

    .aura-values-grid { grid-template-columns: 1fr 1fr; gap: 30px 22px; margin-top: 42px; }
    .aura-value p { font-size: 10px; }
    .aura-stats { gap: 26px; flex-wrap: wrap; }
    .aura-movement__collage { min-height: 500px; }
    .aura-collage-card--1 { width: 51%; height: 69%; left: 2%; top: 12%; }
    .aura-collage-card--2 { width: 43%; height: 56%; right: 2%; top: 6%; }
    .aura-collage-card--3 { width: 42%; height: 47%; left: 28%; bottom: 0; }
    .aura-collage-card--4 { width: 30%; height: 38%; right: 4%; bottom: 4%; }

    .aura-home-cta { min-height: 190px; }
    .aura-home-cta p { font-size: 36px; }
    .aura-home-footer { padding-left: 20px; padding-right: 20px; }
    .aura-home-footer__grid { grid-template-columns: 1fr 1fr; gap: 38px 24px; }
    .aura-home-footer__brand { grid-column: 1 / -1; }
    .aura-home-footer__contact { grid-column: 1 / -1; }
    .aura-home-footer__bottom { flex-direction: column; align-items: flex-start; }

    body:not(.home) .aura-site-header__inner { width: calc(100% - 28px); min-height: 68px; grid-template-columns: 128px 1fr auto; }
    body:not(.home) .aura-site-brand { width: 124px; }
    .aura-site-footer__premium-inner { width: calc(100% - 36px); grid-template-columns: 1fr; gap: 34px; }
    .aura-site-footer__contact-block { align-items: flex-start; }
    .aura-site-footer__bottom-premium { width: calc(100% - 36px); flex-direction: column; gap: 10px; }
}

@media (max-width: 480px) {
    .aura-home-hero__title { font-size: clamp(46px, 15.6vw, 64px); }
    .aura-home-hero__actions { align-items: flex-start; flex-direction: column; }
    .aura-section-heading { flex-direction: column; }
    .aura-model-card { flex-basis: 78vw; }
    .aura-shoot-card { flex-basis: 84vw; }
    .aura-values-grid { grid-template-columns: 1fr; }
    .aura-movement__collage { min-height: 440px; }
    .aura-home-footer__grid { grid-template-columns: 1fr; }
    .aura-home-footer__brand,
    .aura-home-footer__contact { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .aura-home-hero__visual img { animation: none !important; }
    .aura-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
    .aura-model-card__image img,
    .aura-shoot-card img,
    .aura-collage-card img { transition: none !important; }
}

/* Aura v1.7 — premium model archive */
.aura-portfolio-premium {
    width: min(var(--aura-home-max), calc(100% - 44px));
    padding-top: clamp(72px, 7vw, 110px);
    padding-bottom: clamp(80px, 9vw, 130px);
}
.aura-portfolio-premium__header {
    display: grid;
    grid-template-columns: 1fr minmax(280px, 430px);
    align-items: end;
    gap: 50px;
    margin-bottom: clamp(42px, 5vw, 72px);
}
.aura-portfolio-premium__header h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(54px, 7vw, 102px);
    font-weight: 400;
    line-height: .88;
    letter-spacing: -.055em;
}
.aura-portfolio-premium__header > p {
    margin: 0 0 3px;
    color: var(--aura-home-muted);
    font-size: 13px;
    line-height: 1.75;
}
.aura-portfolio-premium__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: clamp(30px, 3.5vw, 56px) clamp(12px, 1.6vw, 24px);
}
.aura-portfolio-premium__card { min-width: 0; }
.aura-portfolio-premium__image {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #ddd6ce;
}
.aura-portfolio-premium__image img {
    width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block;
    filter: saturate(.82) contrast(1.02);
    transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .4s ease;
}
.aura-portfolio-premium__image > span:not(.aura-image-placeholder) {
    position: absolute;
    right: 12px; top: 12px;
    width: 34px; height: 34px;
    display: grid; place-items: center;
    background: rgba(255,255,255,.92);
    opacity: 0; transform: translate(-5px,5px);
    transition: opacity .25s ease, transform .25s ease;
}
.aura-portfolio-premium__card:hover img { transform: scale(1.035); filter: saturate(1); }
.aura-portfolio-premium__card:hover .aura-portfolio-premium__image > span:not(.aura-image-placeholder) { opacity: 1; transform: none; }
.aura-portfolio-premium__card h2 { margin: 14px 0 4px; font-size: 14px; font-weight: 500; }
.aura-portfolio-premium__card h2 a { color: inherit; text-decoration: none; }
.aura-portfolio-premium__card p { margin: 0; color: #4e4944; font-size: 8px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.aura-portfolio-premium__pagination { margin-top: 60px; }
@media (max-width: 1100px) {
    .aura-portfolio-premium__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
    .aura-portfolio-premium__header { grid-template-columns: 1fr; gap: 20px; }
    .aura-portfolio-premium__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
    .aura-portfolio-premium { width: calc(100% - 24px); padding-top: 52px; }
    .aura-portfolio-premium__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 8px; }
    .aura-portfolio-premium__card h2 { font-size: 13px; }
}


/* ============================================================
   Aura Model Bank v1.8 FINAL
   Homepage amendments + responsive logo controls + model profile
   ============================================================ */

/* Responsive logo sizing controlled via Appearance → Customize → Aura Header */
.aura-home-logo,
.aura-site-brand {
    width: var(--aura-logo-width-desktop, 92px) !important;
    max-width: var(--aura-logo-width-desktop, 92px) !important;
}
.aura-home-logo img,
.aura-site-brand img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: var(--aura-logo-max-height, 58px) !important;
    object-fit: contain;
    display: block;
}

/* ------------------------------------------------------------
   Hero slider
   ------------------------------------------------------------ */
.aura-premium-home--v18 .aura-home-hero--slider {
    overflow: hidden;
}
.aura-premium-home--v18 .aura-home-hero__visual {
    isolation: isolate;
}
.aura-hero-slider {
    position: relative;
}
.aura-hero-slide {
    position: absolute;
    inset: 0;
    z-index: 1;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    transition:
        opacity .9s cubic-bezier(.2,.7,.2,1),
        visibility .9s step-end;
}
.aura-hero-slide.is-active {
    opacity: 1;
    visibility: visible;
    transition:
        opacity .9s cubic-bezier(.2,.7,.2,1),
        visibility 0s step-start;
}
.aura-hero-slide img {
    width: 100% !important;
    height: 100% !important;
    display: block;
    object-fit: cover !important;
    object-position: var(--aura-slide-position, 50% 50%) !important;
    transform:
        translate(var(--aura-parallax-x, 0px), var(--aura-parallax-y, 0px))
        scale(1.035);
    transition: transform 7s cubic-bezier(.2,.6,.2,1), filter .65s ease;
}
.aura-hero-slide.is-active img {
    transform:
        translate(var(--aura-parallax-x, 0px), var(--aura-parallax-y, 0px))
        scale(1);
}
.aura-home-hero__grain,
.aura-home-hero__halo {
    z-index: 4;
    pointer-events: none;
}
.aura-hero-progress {
    position: absolute;
    z-index: 7;
    left: 22px;
    right: 22px;
    bottom: 18px;
    height: 1px;
    overflow: hidden;
    background: rgba(255,255,255,.28);
}
.aura-hero-progress span {
    display: block;
    width: 100%;
    height: 100%;
    transform-origin: left center;
    background: rgba(255,255,255,.92);
}
@keyframes auraHeroProgress {
    from { transform: scaleX(0); }
    to   { transform: scaleX(1); }
}
.aura-premium-home--v18 .aura-home-hero__arrows {
    z-index: 12;
}
.aura-premium-home--v18 .aura-home-hero__arrows button {
    appearance: none;
    width: 100%;
    height: 100%;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
    transition: background .25s ease, transform .25s ease;
}
.aura-premium-home--v18 .aura-home-hero__arrows button:hover {
    background: #f3eee7;
}

/* ------------------------------------------------------------
   Recent Shoots — fixed premium portrait cards
   ------------------------------------------------------------ */
.aura-shoots-section--portrait .aura-shoot-strip--portrait {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(10px, 1.25vw, 18px) !important;
    align-items: start;
}
.aura-shoots-section--portrait .aura-shoot-card--portrait {
    min-width: 0 !important;
    width: auto !important;
    height: auto !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden;
}
.aura-shoots-section--portrait .aura-shoot-card--portrait > a {
    display: block;
    width: 100%;
    height: 100%;
}
.aura-shoots-section--portrait .aura-shoot-card--portrait img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 28%;
    display: block;
}
.aura-shoots-section--portrait .aura-shoot-card__title {
    max-width: calc(100% - 42px);
}

/* Stats/counters intentionally removed from v1.8 */
.aura-premium-home--v18 .aura-stats {
    display: none !important;
}

/* ------------------------------------------------------------
   Premium individual Model / Portfolio page
   ------------------------------------------------------------ */
.aura-model-single {
    --model-line: rgba(24,22,19,.13);
    width: min(1360px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(62px, 7vw, 112px) 0 clamp(90px, 10vw, 150px);
}
.aura-model-single__hero {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: clamp(46px, 7vw, 112px);
    align-items: start;
}
.aura-model-single__portrait {
    position: sticky;
    top: 108px;
    min-height: 640px;
    height: min(78vh, 940px);
    overflow: hidden;
    background: #e9e2da;
}
.aura-model-single__portrait > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 24%;
    display: block;
    transition: transform 1s cubic-bezier(.2,.7,.2,1);
}
.aura-model-single__portrait:hover > img {
    transform: scale(1.018);
}
.aura-model-single__placeholder {
    display: grid;
    place-items: center;
    height: 100%;
    font-family: Georgia, serif;
    font-size: 56px;
}
.aura-model-single__index {
    position: absolute;
    left: 18px;
    bottom: 16px;
    color: #fff;
    font-size: 9px;
    letter-spacing: .17em;
    text-transform: uppercase;
    text-shadow: 0 1px 12px rgba(0,0,0,.35);
}
.aura-model-single__intro {
    min-width: 0;
    padding-top: clamp(8px, 2vw, 28px);
}
.aura-model-single__intro h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(64px, 8vw, 126px);
    font-weight: 400;
    line-height: .84;
    letter-spacing: -.065em;
    text-wrap: balance;
}
.aura-model-single__identity {
    margin: 24px 0 0;
    color: var(--aura-muted);
    font-size: 10px;
    line-height: 1.7;
    letter-spacing: .15em;
    text-transform: uppercase;
}
.aura-model-single__actions {
    display: flex;
    align-items: center;
    gap: 26px;
    margin-top: 38px;
}
.aura-model-single__book {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    min-width: 196px;
    padding: 16px 18px;
    background: #111;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .11em;
    text-transform: uppercase;
    transition: transform .25s ease, background .25s ease;
}
.aura-model-single__book:hover {
    transform: translateY(-2px);
    background: #2a211c;
}
.aura-model-single__social {
    color: var(--aura-ink);
    text-decoration: none;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--aura-line);
    font-size: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.aura-model-single__bio,
.aura-model-single__detail-section {
    margin-top: clamp(54px, 6vw, 84px);
}
.aura-model-single__section-label {
    margin: 0 0 16px;
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .17em;
    text-transform: uppercase;
}
.aura-model-single__bio > div {
    max-width: 640px;
    color: #4d4742;
    font-family: Georgia, serif;
    font-size: clamp(19px, 2vw, 27px);
    line-height: 1.5;
}
.aura-model-single__bio p {
    margin: 0;
}
.aura-model-single__section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    padding-bottom: 13px;
    border-bottom: 1px solid var(--model-line);
}
.aura-model-single__section-head p,
.aura-model-single__section-head span {
    margin: 0;
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.aura-model-single__details,
.aura-model-single__measurements {
    margin: 0;
}
.aura-model-single__details > div,
.aura-model-single__measurements > div {
    display: grid;
    grid-template-columns: minmax(120px, .72fr) minmax(0, 1.28fr);
    gap: 20px;
    padding: 17px 0;
    border-bottom: 1px solid var(--model-line);
}
.aura-model-single__details dt,
.aura-model-single__measurements dt {
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.aura-model-single__details dd,
.aura-model-single__measurements dd {
    margin: 0;
    color: var(--aura-ink);
    font-family: Georgia, serif;
    font-size: 19px;
    text-align: right;
}

/* Model gallery */
.aura-model-single__gallery-section {
    margin-top: clamp(100px, 12vw, 180px);
}
.aura-model-single__gallery-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 34px;
    margin-bottom: 42px;
}
.aura-model-single__gallery-head h2,
.aura-model-single__related-head h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(46px, 5.5vw, 76px);
    line-height: .95;
    font-weight: 400;
    letter-spacing: -.045em;
}
.aura-model-single__gallery-head > span {
    padding-bottom: 7px;
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.aura-model-gallery-premium {
    display: grid;
    grid-template-columns: repeat(12, minmax(0,1fr));
    grid-auto-flow: dense;
    gap: clamp(7px, .8vw, 12px);
}
.aura-model-gallery-premium__item {
    margin: 0;
    min-width: 0;
    height: clamp(340px, 40vw, 600px);
    overflow: hidden;
    background: #e8e1d9;
}
.aura-model-gallery-premium__item--1,
.aura-model-gallery-premium__item--4 { grid-column: span 5; }
.aura-model-gallery-premium__item--2,
.aura-model-gallery-premium__item--5 { grid-column: span 4; }
.aura-model-gallery-premium__item--3,
.aura-model-gallery-premium__item--6 { grid-column: span 3; }
.aura-model-gallery-premium__item a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
}
.aura-model-gallery-premium__item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 24%;
    display: block;
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .4s ease;
}
.aura-model-gallery-premium__item a:hover img {
    transform: scale(1.025);
    filter: contrast(1.02);
}
.aura-model-gallery-premium__item a > span {
    position: absolute;
    z-index: 2;
    right: 12px;
    bottom: 10px;
    color: rgba(255,255,255,.86);
    font-size: 9px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.35);
}

/* Related models */
.aura-model-single__related {
    margin-top: clamp(100px, 12vw, 170px);
    padding-top: 40px;
    border-top: 1px solid var(--model-line);
}
.aura-model-single__related-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 32px;
    margin-bottom: 38px;
}
.aura-model-single__related-head > a {
    color: var(--aura-ink);
    text-decoration: none;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--model-line);
    font-size: 9px;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.aura-model-single__related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: clamp(10px, 1.3vw, 18px);
}
.aura-model-single__related-grid article > a:first-child {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #e8e1d9;
}
.aura-model-single__related-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 24%;
    display: block;
    transition: transform .4s ease;
}
.aura-model-single__related-grid article > a:first-child:hover img {
    transform: scale(1.025);
}
.aura-model-single__related-grid article > a:first-child > span {
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    background: rgba(255,255,255,.9);
}
.aura-model-single__related-grid h3 {
    margin: 11px 0 0;
    font-size: 13px;
    font-weight: 500;
}
.aura-model-single__related-grid h3 a {
    text-decoration: none;
}

/* ------------------------------------------------------------
   Responsive refinements
   ------------------------------------------------------------ */
@media (max-width: 1080px) {
    .aura-home-logo,
    .aura-site-brand {
        width: var(--aura-logo-width-tablet, 82px) !important;
        max-width: var(--aura-logo-width-tablet, 82px) !important;
    }

    .aura-shoots-section--portrait .aura-shoot-strip--portrait {
        grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    }

    .aura-model-single {
        width: min(100% - 34px, 1360px);
    }
    .aura-model-single__hero {
        gap: 48px;
    }
    .aura-model-single__portrait {
        min-height: 560px;
    }
    .aura-model-gallery-premium__item {
        height: clamp(310px, 48vw, 520px);
    }
}

@media (max-width: 820px) {
    .aura-premium-home--v18 .aura-home-hero--slider {
        min-height: auto;
    }
    .aura-premium-home--v18 .aura-home-hero__visual {
        min-height: 64svh;
    }

    .aura-shoots-section--portrait .aura-shoot-strip--portrait {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .aura-model-single__hero {
        grid-template-columns: 1fr;
        gap: 42px;
    }
    .aura-model-single__portrait {
        position: relative;
        top: auto;
        width: min(100%, 620px);
        height: auto;
        min-height: 0;
        aspect-ratio: 3 / 4;
    }
    .aura-model-single__intro {
        padding-top: 0;
    }
    .aura-model-single__intro h1 {
        font-size: clamp(58px, 13vw, 96px);
    }
    .aura-model-gallery-premium {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .aura-model-gallery-premium__item--1,
    .aura-model-gallery-premium__item--2,
    .aura-model-gallery-premium__item--3,
    .aura-model-gallery-premium__item--4,
    .aura-model-gallery-premium__item--5,
    .aura-model-gallery-premium__item--6 {
        grid-column: span 1;
        height: auto;
        aspect-ratio: 3 / 4;
    }
    .aura-model-gallery-premium__item:nth-child(5n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 16 / 10;
    }
    .aura-model-single__related-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 620px) {
    .aura-home-logo,
    .aura-site-brand {
        width: var(--aura-logo-width-mobile, 72px) !important;
        max-width: var(--aura-logo-width-mobile, 72px) !important;
    }

    .aura-premium-home--v18 .aura-home-hero__visual {
        min-height: 56svh;
    }
    .aura-premium-home--v18 .aura-home-hero__counter {
        display: flex;
    }
    .aura-premium-home--v18 .aura-home-hero__arrows {
        display: grid;
    }

    .aura-shoots-section--portrait .aura-shoot-strip--portrait {
        display: flex !important;
        overflow-x: auto;
        gap: 10px !important;
        padding-bottom: 8px;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }
    .aura-shoots-section--portrait .aura-shoot-strip--portrait::-webkit-scrollbar {
        display: none;
    }
    .aura-shoots-section--portrait .aura-shoot-card--portrait {
        flex: 0 0 min(76vw, 310px) !important;
        scroll-snap-align: start;
    }

    .aura-model-single {
        width: calc(100% - 24px);
        padding-top: 46px;
    }
    .aura-model-single__portrait {
        width: 100%;
    }
    .aura-model-single__actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
    }
    .aura-model-single__book {
        width: 100%;
        box-sizing: border-box;
    }
    .aura-model-single__details > div,
    .aura-model-single__measurements > div {
        grid-template-columns: minmax(90px,.72fr) minmax(0,1.28fr);
        gap: 14px;
    }
    .aura-model-single__gallery-head,
    .aura-model-single__related-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .aura-model-gallery-premium {
        gap: 6px;
    }
    .aura-model-single__related-grid {
        gap: 8px;
    }
}

@media (max-width: 420px) {
    .aura-model-gallery-premium {
        grid-template-columns: 1fr;
    }
    .aura-model-gallery-premium__item,
    .aura-model-gallery-premium__item:nth-child(5n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 4 / 5;
    }
    .aura-model-gallery-premium__item:nth-child(3n+2) {
        aspect-ratio: 16 / 10;
    }
    .aura-model-single__related-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* Motion safety */
@media (prefers-reduced-motion: reduce) {
    .aura-hero-slide,
    .aura-hero-slide img,
    .aura-model-single__portrait > img,
    .aura-model-gallery-premium__item img {
        transition: none !important;
        animation: none !important;
    }
}


/* ============================================================
   Aura Model Bank v1.9 — Premium Single-Cover Hero
   Single requested image, full-bleed background, white typography.
   ============================================================ */

.aura-premium-home--v19 {
    --aura-hero-white: #fff;
    --aura-hero-soft-white: rgba(255,255,255,.78);
}

/* Home header floats cleanly over the hero. */
.aura-premium-home--v19 .aura-home-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,.11) !important;
    box-shadow: none !important;
    color: #fff;
    transition:
        background .35s ease,
        backdrop-filter .35s ease,
        border-color .35s ease;
}
.aura-premium-home--v19 .aura-home-header.is-scrolled {
    background: rgba(12,10,9,.78) !important;
    border-color: rgba(255,255,255,.10) !important;
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
}
.aura-premium-home--v19 .aura-home-header__inner {
    min-height: 82px;
}
.aura-premium-home--v19 .aura-home-nav a {
    color: rgba(255,255,255,.76) !important;
}
.aura-premium-home--v19 .aura-home-nav a:hover,
.aura-premium-home--v19 .aura-home-nav a.is-active {
    color: #fff !important;
}
.aura-premium-home--v19 .aura-home-nav a::after {
    background: #fff !important;
}
.aura-premium-home--v19 .aura-book-button {
    color: #111 !important;
    background: #fff !important;
    border: 1px solid #fff !important;
    box-shadow: 0 8px 30px rgba(0,0,0,.10);
}
.aura-premium-home--v19 .aura-book-button:hover {
    background: rgba(255,255,255,.88) !important;
    transform: translateY(-1px);
}
.aura-premium-home--v19 .aura-home-menu-toggle span {
    background: #fff !important;
}

/* One cinematic full-viewport hero. */
.aura-premium-home--v19 .aura-home-hero--single {
    position: relative;
    display: grid;
    min-height: 100svh;
    height: max(720px, 100svh);
    overflow: hidden;
    isolation: isolate;
    background: #111;
}
.aura-premium-home--v19 .aura-home-hero__cover {
    position: absolute;
    z-index: 0;
    inset: 0;
    margin: 0;
    overflow: hidden;
}
.aura-premium-home--v19 .aura-home-hero__cover img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 58% 48%;
    transform: scale(1.025);
    animation: auraV19HeroDrift 15s cubic-bezier(.2,.65,.2,1) both;
}
@keyframes auraV19HeroDrift {
    from { transform: scale(1.065); }
    to   { transform: scale(1.015); }
}

/* Dark editorial gradient instead of a white panel/background. */
.aura-premium-home--v19 .aura-home-hero__cinematic-overlay {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(12,8,7,.82) 0%,
            rgba(12,8,7,.66) 30%,
            rgba(12,8,7,.24) 55%,
            rgba(12,8,7,.06) 76%,
            rgba(12,8,7,.12) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.16) 0%,
            rgba(0,0,0,0) 42%,
            rgba(0,0,0,.28) 100%
        );
}
.aura-premium-home--v19 .aura-home-hero__ambient {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 72% 33%, rgba(255,255,255,.08), transparent 24%),
        linear-gradient(120deg, rgba(180,0,95,.08), transparent 35%);
    mix-blend-mode: screen;
}

/* White hero content. */
.aura-premium-home--v19 .aura-home-hero__content--overlay {
    position: relative;
    z-index: 5;
    align-self: end;
    width: min(760px, 52vw);
    margin-left: max(4vw, calc((100vw - 1460px) / 2));
    padding: 0 0 clamp(96px, 10vh, 132px);
    color: #fff;
}
.aura-premium-home--v19 .aura-home-hero__content--overlay .aura-home-eyebrow {
    color: rgba(255,255,255,.72);
    margin-bottom: 22px;
}
.aura-premium-home--v19 .aura-home-hero__title {
    max-width: 820px;
    margin: 0;
    color: #fff !important;
    font-size: clamp(60px, 6.4vw, 112px);
    line-height: .91;
    letter-spacing: -.058em;
    text-wrap: balance;
}
.aura-premium-home--v19 .aura-home-hero__title span {
    display: block;
}
.aura-premium-home--v19 .aura-home-hero__copy {
    max-width: 610px;
    margin-top: 30px;
    color: rgba(255,255,255,.78) !important;
    font-size: clamp(14px, 1.08vw, 17px);
    line-height: 1.75;
}
.aura-premium-home--v19 .aura-home-hero__actions {
    margin-top: 38px;
}
.aura-premium-home--v19 .aura-primary-button--light {
    color: #111 !important;
    background: #fff !important;
    border-color: #fff !important;
    box-shadow: 0 12px 36px rgba(0,0,0,.18);
}
.aura-premium-home--v19 .aura-primary-button--light:hover {
    background: #f3eee9 !important;
    transform: translateY(-2px);
}
.aura-premium-home--v19 .aura-text-button--light {
    color: #fff !important;
    border-color: rgba(255,255,255,.42) !important;
}
.aura-premium-home--v19 .aura-text-button--light:hover {
    border-color: #fff !important;
}

/* Small editorial details create a premium, less-template-like finish. */
.aura-premium-home--v19 .aura-home-hero__signature {
    position: absolute;
    z-index: 6;
    left: max(24px, 2vw);
    top: 50%;
    display: grid;
    justify-items: center;
    gap: 11px;
    color: rgba(255,255,255,.64);
    transform: translateY(-50%);
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .16em;
    text-transform: uppercase;
    writing-mode: vertical-rl;
}
.aura-premium-home--v19 .aura-home-hero__signature i {
    display: block;
    width: 1px;
    height: 66px;
    background: rgba(255,255,255,.35);
}
.aura-premium-home--v19 .aura-home-hero__scroll {
    position: absolute;
    z-index: 6;
    right: max(24px, 3.2vw);
    bottom: 34px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255,255,255,.72);
    text-decoration: none;
    font-size: 9px;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.aura-premium-home--v19 .aura-home-hero__scroll i {
    width: 46px;
    height: 1px;
    overflow: hidden;
    background: rgba(255,255,255,.28);
}
.aura-premium-home--v19 .aura-home-hero__scroll i::after {
    content: "";
    display: block;
    width: 50%;
    height: 100%;
    background: #fff;
    animation: auraV19ScrollLine 1.8s ease-in-out infinite;
}
@keyframes auraV19ScrollLine {
    0%   { transform: translateX(-110%); }
    100% { transform: translateX(220%); }
}

/* The rest of the homepage starts on a clean warm-white surface. */
.aura-premium-home--v19 .aura-models-section {
    border-top: 0;
}

/* Tablet */
@media (max-width: 1024px) {
    .aura-premium-home--v19 .aura-home-hero__content--overlay {
        width: min(700px, 66vw);
        margin-left: 6vw;
    }
    .aura-premium-home--v19 .aura-home-hero__cover img {
        object-position: 62% 50%;
    }
    .aura-premium-home--v19 .aura-home-hero__cinematic-overlay {
        background:
            linear-gradient(90deg, rgba(10,8,7,.78) 0%, rgba(10,8,7,.55) 43%, rgba(10,8,7,.14) 74%, rgba(10,8,7,.20) 100%),
            linear-gradient(180deg, rgba(0,0,0,.18), transparent 42%, rgba(0,0,0,.30));
    }
}

/* Mobile */
@media (max-width: 760px) {
    .aura-premium-home--v19 .aura-home-header__inner {
        min-height: 70px;
    }
    .aura-premium-home--v19 .aura-home-hero--single {
        min-height: 100svh;
        height: 100svh;
    }
    .aura-premium-home--v19 .aura-home-hero__cover img {
        object-position: 62% center;
        animation-duration: 12s;
    }
    .aura-premium-home--v19 .aura-home-hero__cinematic-overlay {
        background:
            linear-gradient(180deg, rgba(10,8,7,.18) 0%, rgba(10,8,7,.18) 33%, rgba(10,8,7,.82) 82%, rgba(10,8,7,.92) 100%),
            linear-gradient(90deg, rgba(10,8,7,.18), rgba(10,8,7,.04));
    }
    .aura-premium-home--v19 .aura-home-hero__content--overlay {
        align-self: end;
        width: auto;
        max-width: none;
        margin: 0;
        padding: 0 22px 84px;
    }
    .aura-premium-home--v19 .aura-home-hero__title {
        font-size: clamp(48px, 14vw, 72px);
        line-height: .94;
        letter-spacing: -.055em;
    }
    .aura-premium-home--v19 .aura-home-hero__copy {
        max-width: 560px;
        margin-top: 20px;
        font-size: 14px;
        line-height: 1.65;
    }
    .aura-premium-home--v19 .aura-home-hero__actions {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin-top: 28px;
    }
    .aura-premium-home--v19 .aura-home-hero__signature {
        display: none;
    }
    .aura-premium-home--v19 .aura-home-hero__scroll {
        right: 20px;
        bottom: 24px;
    }

    /* Mobile menu remains premium and readable over the image. */
    body.aura-home-menu-open .aura-premium-home--v19 .aura-home-nav,
    .aura-premium-home--v19 body.aura-home-menu-open .aura-home-nav {
        background: rgba(12,10,9,.96) !important;
        color: #fff;
        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);
    }
}

@media (max-width: 430px) {
    .aura-premium-home--v19 .aura-home-hero__content--overlay {
        padding-left: 16px;
        padding-right: 16px;
        padding-bottom: 78px;
    }
    .aura-premium-home--v19 .aura-home-hero__title {
        font-size: clamp(43px, 13.5vw, 60px);
    }
    .aura-premium-home--v19 .aura-home-hero__copy {
        max-width: 95%;
    }
    .aura-premium-home--v19 .aura-primary-button--light {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce) {
    .aura-premium-home--v19 .aura-home-hero__cover img,
    .aura-premium-home--v19 .aura-home-hero__scroll i::after {
        animation: none !important;
    }
}


/* ============================================================
   Aura Model Bank v2.0
   Recent Shoots Gallery + Shoot De-duplication + Join Aura
   ============================================================ */

/* ------------------------------------------------------------
   Homepage: Recent Shoots as an editorial gallery
   ------------------------------------------------------------ */
.aura-recent-shoots-v20 {
    overflow: hidden;
}

.aura-recent-shoots-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-auto-rows: clamp(58px, 5vw, 76px);
    grid-auto-flow: dense;
    gap: clamp(8px, .9vw, 13px);
}

.aura-recent-shoot {
    min-width: 0;
    overflow: hidden;
    background: #dfd7cf;
}

.aura-recent-shoot--1 { grid-column: span 4; grid-row: span 6; }
.aura-recent-shoot--2 { grid-column: span 5; grid-row: span 5; }
.aura-recent-shoot--3 { grid-column: span 3; grid-row: span 5; }
.aura-recent-shoot--4 { grid-column: span 5; grid-row: span 5; }
.aura-recent-shoot--5 { grid-column: span 4; grid-row: span 6; }
.aura-recent-shoot--6 { grid-column: span 3; grid-row: span 5; }

.aura-recent-shoot__link {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
    color: #fff;
    text-decoration: none;
}

.aura-recent-shoot__link > img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 28%;
    display: block;
    transform: scale(1.001);
    transition: transform .8s cubic-bezier(.22,.61,.36,1), filter .5s ease;
}

.aura-recent-shoot__shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0,0,0,.16), transparent 38%),
        linear-gradient(0deg, rgba(0,0,0,.62), transparent 52%);
    transition: background .35s ease;
}

.aura-recent-shoot__topline {
    position: absolute;
    z-index: 2;
    top: 14px;
    left: 14px;
    right: 14px;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: rgba(255,255,255,.82);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.aura-recent-shoot__content {
    position: absolute;
    z-index: 2;
    left: clamp(14px, 1.4vw, 22px);
    right: clamp(14px, 1.4vw, 22px);
    bottom: clamp(14px, 1.4vw, 22px);
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
}

.aura-recent-shoot__content strong {
    max-width: 72%;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(22px, 2.6vw, 40px);
    line-height: .95;
    font-weight: 400;
    letter-spacing: -.04em;
}

.aura-recent-shoot__content i {
    flex: 0 0 auto;
    font-style: normal;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
    opacity: .76;
}

.aura-recent-shoot__link:hover > img {
    transform: scale(1.035);
    filter: contrast(1.02);
}

.aura-recent-shoot__link:hover .aura-recent-shoot__shade {
    background:
        linear-gradient(180deg, rgba(0,0,0,.10), transparent 38%),
        linear-gradient(0deg, rgba(0,0,0,.70), transparent 56%);
}

/* ------------------------------------------------------------
   Single Shoot: compact editorial hero + clean unique gallery
   ------------------------------------------------------------ */
.aura-shoot-v20 {
    width: min(1320px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(58px, 6vw, 96px) 0 clamp(82px, 9vw, 136px);
}

.aura-shoot-v20__hero {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    min-height: min(72vh, 820px);
    background: #f2eee8;
    overflow: hidden;
}

.aura-shoot-v20__hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: clamp(42px, 6vw, 88px);
}

.aura-shoot-v20__hero-copy h1 {
    margin: 4px 0 0;
    max-width: 760px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(70px, 8vw, 124px);
    font-weight: 400;
    line-height: .84;
    letter-spacing: -.065em;
    text-wrap: balance;
}

.aura-shoot-v20__hero-meta {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 32px;
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v20__hero-meta a {
    color: var(--aura-ink);
    text-decoration: none;
    border-bottom: 1px solid var(--aura-line);
    padding-bottom: 4px;
}

.aura-shoot-v20__intro,
.aura-shoot-v20__text {
    max-width: 570px;
    color: #6d655f;
    font-size: 13px;
    line-height: 1.8;
}

.aura-shoot-v20__intro {
    margin: 34px 0 0;
}

.aura-shoot-v20__text {
    margin-top: 22px;
}

.aura-shoot-v20__hero-image {
    position: relative;
    min-height: 620px;
    margin: 0;
    overflow: hidden;
    background: #dcd3ca;
}

.aura-shoot-v20__hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 26%;
    display: block;
    transition: transform 1.2s cubic-bezier(.22,.61,.36,1);
}

.aura-shoot-v20__hero:hover .aura-shoot-v20__hero-image img {
    transform: scale(1.018);
}

.aura-shoot-v20__hero-image figcaption {
    position: absolute;
    left: 16px;
    bottom: 14px;
    color: rgba(255,255,255,.84);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
    text-shadow: 0 1px 10px rgba(0,0,0,.34);
}

.aura-shoot-v20__hero-image--empty {
    display: grid;
    place-items: center;
    font-family: Georgia, serif;
    font-size: 72px;
}

.aura-shoot-v20__gallery-section {
    margin-top: clamp(86px, 10vw, 150px);
}

.aura-shoot-v20__gallery-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 36px;
    margin-bottom: 34px;
}

.aura-shoot-v20__gallery-head h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(44px, 5vw, 72px);
    font-weight: 400;
    line-height: .95;
    letter-spacing: -.045em;
}

.aura-shoot-v20__gallery-head > span {
    padding-bottom: 8px;
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-gallery-v20 {
    display: grid;
    grid-template-columns: repeat(12, minmax(0,1fr));
    grid-auto-rows: clamp(58px, 5.1vw, 78px);
    grid-auto-flow: dense;
    gap: clamp(7px, .75vw, 11px);
}

.aura-shoot-gallery-v20__item {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: #e4ddd5;
}

.aura-shoot-gallery-v20__item--1 { grid-column: span 3; grid-row: span 6; }
.aura-shoot-gallery-v20__item--2 { grid-column: span 5; grid-row: span 5; }
.aura-shoot-gallery-v20__item--3 { grid-column: span 4; grid-row: span 5; }
.aura-shoot-gallery-v20__item--4 { grid-column: span 5; grid-row: span 5; }
.aura-shoot-gallery-v20__item--5 { grid-column: span 4; grid-row: span 6; }
.aura-shoot-gallery-v20__item--6 { grid-column: span 3; grid-row: span 5; }

.aura-shoot-gallery-v20__item > a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
}

.aura-shoot-gallery-v20__item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 26%;
    display: block;
    transform: scale(1.001);
    transition: transform .7s cubic-bezier(.22,.61,.36,1), filter .4s ease;
}

.aura-shoot-gallery-v20__item > a:hover img {
    transform: scale(1.03);
    filter: contrast(1.02);
}

.aura-shoot-gallery-v20__item > a > span {
    position: absolute;
    z-index: 2;
    right: 11px;
    bottom: 9px;
    color: rgba(255,255,255,.86);
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.35);
}

.aura-shoot-v20__footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    margin-top: clamp(56px, 7vw, 90px);
    padding-top: 18px;
    border-top: 1px solid var(--aura-line);
    color: var(--aura-muted);
    font-size: 9px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v20__footer a {
    color: var(--aura-ink);
    text-decoration: none;
}

/* ------------------------------------------------------------
   Join Aura v2.0 — dark premium application experience
   ------------------------------------------------------------ */
.aura-join-v20 {
    background: #171717;
    color: #f7f4ef;
    overflow: hidden;
}

.aura-join-v20 .aura-page-eyebrow {
    color: #a9a49e;
}

.aura-join-v20__hero {
    width: min(1420px, calc(100% - 48px));
    min-height: min(78vh, 860px);
    margin: 0 auto;
    padding: clamp(46px, 6vw, 84px) 0 clamp(66px, 7vw, 100px);
    display: grid;
    grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr);
    gap: clamp(40px, 6vw, 90px);
    align-items: center;
}

.aura-join-v20__hero-copy h1 {
    margin: 6px 0 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(72px, 9vw, 138px);
    font-weight: 400;
    line-height: .83;
    letter-spacing: -.068em;
}

.aura-join-v20__lead {
    max-width: 540px;
    margin: 30px 0 0;
    color: #b8b3ad;
    font-size: 14px;
    line-height: 1.8;
}

.aura-join-v20__jump {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    min-width: 236px;
    margin-top: 38px;
    padding: 16px 18px;
    background: #f4f0ea;
    color: #161616;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-join-v20__hero-image {
    position: relative;
    margin: 0;
    min-height: 620px;
    height: min(70vh, 780px);
    overflow: hidden;
    background: #2a2826;
}

.aura-join-v20__hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 26%;
    display: block;
}

.aura-join-v20__hero-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.48));
    pointer-events: none;
}

.aura-join-v20__hero-image figcaption {
    position: absolute;
    z-index: 2;
    left: 16px;
    right: 16px;
    bottom: 14px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: rgba(255,255,255,.76);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.aura-join-v20__application {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(80px, 9vw, 136px) 0;
    border-top: 1px solid rgba(255,255,255,.08);
}

.aura-join-v20__application-head {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(300px,.65fr);
    align-items: end;
    gap: 48px;
    margin-bottom: 48px;
}

.aura-join-v20__application-head h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 6vw, 80px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -.05em;
}

.aura-join-v20__application-head > p {
    margin: 0;
    color: #a9a49e;
    font-size: 13px;
    line-height: 1.8;
}

.aura-join-v20__form-shell {
    padding: clamp(28px, 4vw, 58px);
    background: #1d1d1d;
    border: 1px solid rgba(255,255,255,.09);
}

/* Re-skin the existing CF7 structure without changing field names. */
.aura-join-v20 .model-bank-form {
    color: #f5f2ee;
    counter-reset: auraFormSection;
}

.aura-join-v20 .model-bank-form .form-section {
    position: relative;
    counter-increment: auraFormSection;
    margin: 0 0 48px;
    padding: 0 0 48px;
    border-bottom: 1px solid rgba(255,255,255,.09);
}

.aura-join-v20 .model-bank-form .form-section::before {
    content: "0" counter(auraFormSection);
    position: absolute;
    top: 3px;
    right: 0;
    color: #6f6b67;
    font-size: 8px;
    letter-spacing: .15em;
}

.aura-join-v20 .model-bank-form .form-section h3 {
    margin: 0 0 7px;
    padding-right: 42px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(25px, 2.5vw, 34px);
    font-weight: 400;
    letter-spacing: -.03em;
}

.aura-join-v20 .model-bank-form .section-note {
    margin: 0 0 28px;
    color: #8f8b86;
    font-size: 12px;
    line-height: 1.6;
}

.aura-join-v20 .model-bank-form .form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 22px 26px;
}

.aura-join-v20 .model-bank-form .form-field > label {
    display: block;
    margin-bottom: 9px;
    color: #ece8e3;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
}

.aura-join-v20 .model-bank-form input[type="text"],
.aura-join-v20 .model-bank-form input[type="email"],
.aura-join-v20 .model-bank-form input[type="tel"],
.aura-join-v20 .model-bank-form input[type="date"],
.aura-join-v20 .model-bank-form select,
.aura-join-v20 .model-bank-form textarea {
    width: 100%;
    min-height: 58px;
    padding: 15px 16px;
    border: 1px solid #393939;
    border-radius: 0;
    background: #181818;
    color: #f5f2ee;
    font-size: 14px;
    outline: none;
    box-shadow: none;
    transition: border-color .22s ease, background .22s ease;
}

.aura-join-v20 .model-bank-form textarea {
    min-height: 170px;
}

.aura-join-v20 .model-bank-form input::placeholder,
.aura-join-v20 .model-bank-form textarea::placeholder {
    color: #74716e;
}

.aura-join-v20 .model-bank-form input:focus,
.aura-join-v20 .model-bank-form select:focus,
.aura-join-v20 .model-bank-form textarea:focus {
    border-color: #aaa39b;
    background: #1b1b1b;
    box-shadow: none;
}

.aura-join-v20 .model-bank-form select {
    color-scheme: dark;
}

.aura-join-v20 .model-bank-form .option-box,
.aura-join-v20 .model-bank-form .agreement-box {
    padding: 14px;
    border: 1px solid #343434;
    border-radius: 0;
    background: #191919;
}

.aura-join-v20 .model-bank-form .option-box .wpcf7-list-item,
.aura-join-v20 .model-bank-form .agreement-box .wpcf7-list-item {
    margin: 0;
}

.aura-join-v20 .model-bank-form .option-box:not(.inline-options) .wpcf7-list-item {
    display: flex;
    align-items: center;
    min-height: 54px;
    margin: 0 0 8px;
    padding: 12px 14px;
    border: 1px solid #333;
    background: #202020;
}

.aura-join-v20 .model-bank-form .option-box:not(.inline-options) .wpcf7-list-item:last-child {
    margin-bottom: 0;
}

.aura-join-v20 .model-bank-form .checkbox-list .wpcf7-form-control {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
}

.aura-join-v20 .model-bank-form .checkbox-list .wpcf7-list-item {
    min-height: 62px !important;
    margin: 0 !important;
}

.aura-join-v20 .model-bank-form .inline-options .wpcf7-form-control {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 8px;
}

.aura-join-v20 .model-bank-form .inline-options .wpcf7-list-item {
    display: flex;
    align-items: center;
    min-height: 52px;
    margin: 0;
    padding: 11px 13px;
    border: 1px solid #333;
    background: #202020;
}

.aura-join-v20 .model-bank-form .agreement-box {
    padding: 17px 18px;
}

.aura-join-v20 .model-bank-form input[type="checkbox"],
.aura-join-v20 .model-bank-form input[type="radio"] {
    width: 17px;
    height: 17px;
    flex: 0 0 auto;
    margin-right: 10px;
    accent-color: #c59a45;
}

.aura-join-v20 .model-bank-form .wpcf7-list-item-label {
    color: #dcd8d3;
    font-size: 13px;
    line-height: 1.55;
}

.aura-join-v20 .model-bank-form .submit-area {
    text-align: left;
    padding-top: 0;
}

.aura-join-v20 .model-bank-form input[type="submit"] {
    width: 100%;
    min-height: 60px;
    border: 1px solid #f4f0ea;
    border-radius: 0;
    background: #f4f0ea;
    color: #141414;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    transition: background .2s ease, color .2s ease;
}

.aura-join-v20 .model-bank-form input[type="submit"]:hover {
    background: transparent;
    color: #fff;
    transform: none;
}

.aura-join-v20 .model-bank-form .form-note {
    color: #77736f;
    text-align: center;
}

.aura-join-v20 .model-bank-form .wpcf7-not-valid-tip {
    color: #e8a4a4;
}

.aura-join-v20 .model-bank-form .wpcf7-response-output {
    margin: 24px 0 0 !important;
    border: 1px solid #494949 !important;
    border-radius: 0;
    color: #eee9e3;
    background: #191919;
}

.aura-join-v20__why {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(80px, 9vw, 132px) 0 clamp(96px, 11vw, 160px);
    border-top: 1px solid rgba(255,255,255,.08);
}

.aura-join-v20__why > header {
    max-width: 760px;
    margin-bottom: 48px;
}

.aura-join-v20__why h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px, 6vw, 78px);
    font-weight: 400;
    line-height: .92;
    letter-spacing: -.05em;
}

.aura-join-v20__why-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    border-top: 1px solid rgba(255,255,255,.10);
    border-left: 1px solid rgba(255,255,255,.10);
}

.aura-join-v20__why-grid article {
    min-height: 230px;
    padding: 24px;
    border-right: 1px solid rgba(255,255,255,.10);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.aura-join-v20__why-grid article > span {
    color: #77736f;
    font-size: 8px;
    letter-spacing: .15em;
}

.aura-join-v20__why-grid h3 {
    margin: 58px 0 10px;
    font-family: Georgia, serif;
    font-size: 21px;
    font-weight: 400;
}

.aura-join-v20__why-grid p {
    margin: 0;
    color: #918c86;
    font-size: 12px;
    line-height: 1.7;
}

/* ------------------------------------------------------------
   Responsive v2.0
   ------------------------------------------------------------ */
@media (max-width: 1020px) {
    .aura-recent-shoots-grid {
        grid-template-columns: repeat(6, minmax(0,1fr));
        grid-auto-rows: 68px;
    }

    .aura-recent-shoot--1,
    .aura-recent-shoot--4 { grid-column: span 3; grid-row: span 6; }
    .aura-recent-shoot--2,
    .aura-recent-shoot--5 { grid-column: span 3; grid-row: span 5; }
    .aura-recent-shoot--3,
    .aura-recent-shoot--6 { grid-column: span 3; grid-row: span 5; }

    .aura-shoot-v20__hero {
        grid-template-columns: .9fr 1.1fr;
    }

    .aura-shoot-v20__hero-copy {
        padding: 44px;
    }

    .aura-join-v20__hero {
        grid-template-columns: .9fr 1.1fr;
    }

    .aura-join-v20__application-head {
        grid-template-columns: 1fr;
    }

    .aura-join-v20__why-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 780px) {
    .aura-recent-shoots-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
        grid-auto-rows: auto;
        gap: 8px;
    }

    .aura-recent-shoot,
    .aura-recent-shoot:nth-child(n) {
        grid-column: span 1;
        grid-row: auto;
        aspect-ratio: 4 / 5;
    }

    .aura-recent-shoot:nth-child(3n+2) {
        aspect-ratio: 1 / 1;
    }

    .aura-shoot-v20 {
        width: min(100% - 28px, 1320px);
    }

    .aura-shoot-v20__hero {
        grid-template-columns: 1fr;
        min-height: 0;
    }

    .aura-shoot-v20__hero-copy {
        padding: 44px 26px 48px;
    }

    .aura-shoot-v20__hero-copy h1 {
        font-size: clamp(60px, 14vw, 92px);
    }

    .aura-shoot-v20__hero-image {
        min-height: 0;
        height: auto;
        aspect-ratio: 4 / 5;
    }

    .aura-shoot-v20__gallery-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .aura-shoot-gallery-v20 {
        grid-template-columns: repeat(2, minmax(0,1fr));
        grid-auto-rows: auto;
        gap: 7px;
    }

    .aura-shoot-gallery-v20__item,
    .aura-shoot-gallery-v20__item:nth-child(n) {
        grid-column: span 1;
        grid-row: auto;
        aspect-ratio: 4 / 5;
    }

    .aura-shoot-gallery-v20__item:nth-child(4n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 16 / 10;
    }

    .aura-join-v20__hero {
        width: min(100% - 28px, 1420px);
        grid-template-columns: 1fr;
        min-height: 0;
        gap: 40px;
    }

    .aura-join-v20__hero-copy {
        padding-top: 18px;
    }

    .aura-join-v20__hero-image {
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 5;
    }

    .aura-join-v20__application,
    .aura-join-v20__why {
        width: min(100% - 28px, 1180px);
    }

    .aura-join-v20 .model-bank-form .checkbox-list .wpcf7-form-control {
        grid-template-columns: 1fr;
    }

    .aura-join-v20 .model-bank-form .inline-options .wpcf7-form-control {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 560px) {
    .aura-recent-shoots-grid {
        grid-template-columns: 1fr;
    }

    .aura-recent-shoot,
    .aura-recent-shoot:nth-child(n) {
        aspect-ratio: 4 / 5;
    }

    .aura-recent-shoot:nth-child(2n) {
        aspect-ratio: 16 / 11;
    }

    .aura-recent-shoot__content strong {
        font-size: 28px;
    }

    .aura-shoot-v20 {
        width: calc(100% - 20px);
        padding-top: 32px;
    }

    .aura-shoot-v20__hero-copy {
        padding: 34px 20px 38px;
    }

    .aura-shoot-v20__hero-meta {
        flex-wrap: wrap;
    }

    .aura-shoot-gallery-v20 {
        grid-template-columns: 1fr;
        gap: 7px;
    }

    .aura-shoot-gallery-v20__item,
    .aura-shoot-gallery-v20__item:nth-child(n),
    .aura-shoot-gallery-v20__item:nth-child(4n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 4 / 5;
    }

    .aura-shoot-gallery-v20__item:nth-child(3n+2) {
        aspect-ratio: 16 / 10;
    }

    .aura-shoot-v20__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-join-v20__hero {
        width: calc(100% - 20px);
        padding-top: 30px;
    }

    .aura-join-v20__hero-copy h1 {
        font-size: clamp(64px, 21vw, 92px);
    }

    .aura-join-v20__lead {
        font-size: 13px;
    }

    .aura-join-v20__jump {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-join-v20__application,
    .aura-join-v20__why {
        width: calc(100% - 20px);
    }

    .aura-join-v20__form-shell {
        padding: 24px 14px;
    }

    .aura-join-v20 .model-bank-form .form-grid {
        grid-template-columns: 1fr;
    }

    .aura-join-v20 .model-bank-form .form-field.full-width {
        grid-column: auto;
    }

    .aura-join-v20 .model-bank-form .inline-options .wpcf7-form-control {
        grid-template-columns: 1fr;
    }

    .aura-join-v20__why-grid {
        grid-template-columns: 1fr;
    }

    .aura-join-v20__why-grid article {
        min-height: 190px;
    }

    .aura-join-v20__why-grid h3 {
        margin-top: 38px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aura-recent-shoot__link > img,
    .aura-shoot-v20__hero-image img,
    .aura-shoot-gallery-v20__item img {
        transition: none !important;
    }
}


/* ============================================================
   AURA v3.1 — Premium Aura Models Archive + Model Profile
   ============================================================ */

.aura-v3-kicker {
    margin: 0 0 14px;
    color: #777069;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
}

/* ---------- Aura Models Archive ---------- */
.aura-models-v31 {
    --models-ink: #151411;
    --models-bg: #f2eee8;
    --models-line: rgba(21,20,17,.12);
    background: var(--models-bg);
    color: var(--models-ink);
    overflow: hidden;
}

.aura-models-v31__hero {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(90px, 10vw, 154px) 0 clamp(70px, 8vw, 118px);
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
    gap: clamp(50px, 8vw, 120px);
    align-items: end;
    border-bottom: 1px solid var(--models-line);
}

.aura-models-v31__hero h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(86px, 11vw, 178px);
    line-height: .76;
    font-weight: 400;
    letter-spacing: -.075em;
}

.aura-models-v31__hero-copy {
    padding-bottom: 10px;
}

.aura-models-v31__hero-copy > p {
    max-width: 530px;
    margin: 0;
    color: #5e5852;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(19px, 1.8vw, 27px);
    line-height: 1.45;
}

.aura-models-v31__hero-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 32px;
    color: #7d766f;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-models-v31__hero-meta i {
    width: 34px;
    height: 1px;
    background: var(--models-line);
}

.aura-models-v31__roster {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(38px, 4vw, 64px) 0 clamp(88px, 10vw, 150px);
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: clamp(18px, 2.2vw, 34px) clamp(12px, 1.5vw, 22px);
    align-items: start;
}

.aura-models-v31__card {
    min-width: 0;
}

.aura-models-v31__card--1,
.aura-models-v31__card--6 {
    grid-column: span 5;
}

.aura-models-v31__card--2,
.aura-models-v31__card--5 {
    grid-column: span 3;
    margin-top: clamp(50px, 7vw, 110px);
}

.aura-models-v31__card--3,
.aura-models-v31__card--4,
.aura-models-v31__card--7,
.aura-models-v31__card--8 {
    grid-column: span 4;
}

.aura-models-v31__card--4,
.aura-models-v31__card--8 {
    margin-top: clamp(28px, 4vw, 72px);
}

.aura-models-v31__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 3 / 4;
    background: #ded6ce;
    color: #fff;
}

.aura-models-v31__card--1 .aura-models-v31__image,
.aura-models-v31__card--6 .aura-models-v31__image {
    aspect-ratio: 4 / 5;
}

.aura-models-v31__image img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center 22%;
    transform: scale(1.002);
    transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .5s ease;
}

.aura-models-v31__image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 55%, rgba(0,0,0,.46));
    opacity: .55;
    transition: opacity .35s ease;
}

.aura-models-v31__index {
    position: absolute;
    z-index: 2;
    top: 13px;
    left: 13px;
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.3);
}

.aura-models-v31__overlay {
    position: absolute;
    z-index: 3;
    left: 16px;
    right: 16px;
    bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    opacity: 0;
    transform: translateY(7px);
    transition: opacity .3s ease, transform .3s ease;
}

.aura-models-v31__overlay > span {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-models-v31__overlay i {
    font-style: normal;
    font-size: 18px;
}

.aura-models-v31__card:hover .aura-models-v31__image img {
    transform: scale(1.035);
    filter: contrast(1.025);
}

.aura-models-v31__card:hover .aura-models-v31__image::after {
    opacity: .8;
}

.aura-models-v31__card:hover .aura-models-v31__overlay {
    opacity: 1;
    transform: none;
}

.aura-models-v31__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #8a7f75;
    font-family: Georgia, serif;
    font-size: 42px;
}

.aura-models-v31__info {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    align-items: end;
    padding: 13px 0 0;
    border-top: 1px solid transparent;
}

.aura-models-v31__info h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(23px, 2vw, 32px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: -.035em;
}

.aura-models-v31__info h2 a {
    color: inherit;
    text-decoration: none;
}

.aura-models-v31__info p,
.aura-models-v31__detail {
    margin: 7px 0 0;
    color: #746d66;
    font-size: 8px;
    letter-spacing: .11em;
    line-height: 1.6;
    text-transform: uppercase;
}

.aura-models-v31__detail {
    max-width: 44%;
    text-align: right;
}

.aura-models-v31__pagination {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: 0 0 clamp(80px, 8vw, 120px);
}

.aura-models-v31__pagination .nav-links {
    display: flex;
    gap: 7px;
    align-items: center;
}

.aura-models-v31__pagination .page-numbers {
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--models-line);
    color: var(--models-ink);
    text-decoration: none;
    font-size: 9px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.aura-models-v31__pagination .current {
    background: var(--models-ink);
    color: #fff;
}

.aura-models-v31__cta {
    padding: clamp(70px, 7vw, 110px) max(24px, calc((100vw - 1380px) / 2));
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 40px;
    background: #151411;
    color: #f5f1eb;
}

.aura-models-v31__cta .aura-v3-kicker {
    color: #8e8881;
}

.aura-models-v31__cta h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(42px, 5vw, 72px);
    line-height: .95;
    font-weight: 400;
    letter-spacing: -.045em;
}

.aura-models-v31__cta > a {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;
    min-width: 220px;
    padding: 16px 18px;
    background: #f4f0ea;
    color: #151411;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

/* ---------- Single Model ---------- */
.aura-model-v31 {
    --model-ink: #151411;
    --model-bg: #f2eee8;
    --model-line: rgba(21,20,17,.12);
    background: var(--model-bg);
    color: var(--model-ink);
    overflow: hidden;
}

.aura-model-v31__hero {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(64px, 7vw, 100px) 0 clamp(84px, 9vw, 134px);
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: clamp(48px, 8vw, 124px);
    align-items: center;
}

.aura-model-v31__portrait {
    position: relative;
    margin: 0;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v31__portrait img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 20%;
    transition: transform .8s cubic-bezier(.2,.7,.2,1);
}

.aura-model-v31__portrait:hover img {
    transform: scale(1.018);
}

.aura-model-v31__portrait figcaption {
    position: absolute;
    left: 15px;
    bottom: 13px;
    color: rgba(255,255,255,.84);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
    text-shadow: 0 1px 10px rgba(0,0,0,.3);
}

.aura-model-v31__intro h1 {
    margin: 0;
    max-width: 820px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(74px, 9vw, 142px);
    line-height: .79;
    font-weight: 400;
    letter-spacing: -.07em;
    text-wrap: balance;
}

.aura-model-v31__identity {
    margin: 26px 0 0;
    color: #736c65;
    font-size: 9px;
    letter-spacing: .14em;
    line-height: 1.7;
    text-transform: uppercase;
}

.aura-model-v31__actions {
    display: flex;
    align-items: center;
    gap: 26px;
    margin-top: 38px;
}

.aura-model-v31__book {
    min-width: 210px;
    padding: 16px 18px;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    gap: 28px;
    background: #151411;
    color: #fff;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v31__social {
    padding-bottom: 5px;
    border-bottom: 1px solid var(--model-line);
    color: var(--model-ink);
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v31__bio {
    max-width: 670px;
    margin-top: 52px;
    padding-top: 22px;
    border-top: 1px solid var(--model-line);
}

.aura-model-v31__bio > span {
    display: block;
    margin-bottom: 13px;
    color: #7a736d;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-model-v31__bio p {
    margin: 0;
    color: #554f49;
    font-family: Georgia, serif;
    font-size: clamp(18px, 1.7vw, 25px);
    line-height: 1.55;
}

.aura-model-v31__quick {
    margin-top: 42px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--model-line);
    border-left: 1px solid var(--model-line);
}

.aura-model-v31__quick > div {
    min-height: 94px;
    padding: 17px;
    border-right: 1px solid var(--model-line);
    border-bottom: 1px solid var(--model-line);
}

.aura-model-v31__quick span {
    display: block;
    margin-bottom: 13px;
    color: #847c75;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v31__quick strong {
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 400;
}

.aura-model-v31__portfolio,
.aura-model-v31__information,
.aura-model-v31__related {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(82px, 10vw, 150px) 0;
    border-top: 1px solid var(--model-line);
}

.aura-model-v31__section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .52fr);
    gap: 50px;
    align-items: end;
    margin-bottom: 42px;
}

.aura-model-v31__section-head h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(52px, 6vw, 88px);
    line-height: .83;
    font-weight: 400;
    letter-spacing: -.06em;
}

.aura-model-v31__section-head > p {
    max-width: 440px;
    margin: 0;
    color: #736c65;
    font-size: 12px;
    line-height: 1.75;
}

.aura-model-v31__gallery {
    display: grid;
    grid-template-columns: repeat(12, minmax(0,1fr));
    grid-auto-rows: clamp(64px, 5vw, 78px);
    grid-auto-flow: dense;
    gap: clamp(7px, .75vw, 11px);
}

.aura-model-v31__gallery-item {
    margin: 0;
    min-width: 0;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v31__gallery-item--1 { grid-column: span 4; grid-row: span 7; }
.aura-model-v31__gallery-item--2 { grid-column: span 5; grid-row: span 5; }
.aura-model-v31__gallery-item--3 { grid-column: span 3; grid-row: span 5; }
.aura-model-v31__gallery-item--4 { grid-column: span 5; grid-row: span 5; }
.aura-model-v31__gallery-item--5 { grid-column: span 4; grid-row: span 7; }
.aura-model-v31__gallery-item--6 { grid-column: span 3; grid-row: span 5; }
.aura-model-v31__gallery-item--7 { grid-column: span 6; grid-row: span 5; }
.aura-model-v31__gallery-item--8 { grid-column: span 6; grid-row: span 5; }

.aura-model-v31__gallery-item > a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
}

.aura-model-v31__gallery-item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    display: block;
    object-fit: cover !important;
    object-position: center 22%;
    transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .4s ease;
}

.aura-model-v31__gallery-item:hover img {
    transform: scale(1.025);
    filter: contrast(1.02);
}

.aura-model-v31__gallery-item span {
    position: absolute;
    right: 11px;
    bottom: 9px;
    color: rgba(255,255,255,.88);
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 9px rgba(0,0,0,.35);
}

.aura-model-v31__info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--model-line);
    border-left: 1px solid var(--model-line);
}

.aura-model-v31__info-grid > section {
    position: relative;
    padding: clamp(28px, 3vw, 46px);
    border-right: 1px solid var(--model-line);
    border-bottom: 1px solid var(--model-line);
}

.aura-model-v31__info-index {
    position: absolute;
    top: 22px;
    right: 22px;
    color: #9b948d;
    font-size: 8px;
    letter-spacing: .14em;
}

.aura-model-v31__info-grid h3 {
    margin: 0 0 34px;
    font-family: Georgia, serif;
    font-size: 30px;
    font-weight: 400;
}

.aura-model-v31__info-grid dl {
    margin: 0;
}

.aura-model-v31__info-grid dl > div {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 20px;
    padding: 14px 0;
    border-top: 1px solid var(--model-line);
}

.aura-model-v31__info-grid dt {
    color: #837c75;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v31__info-grid dd {
    margin: 0;
    font-family: Georgia, serif;
    font-size: 18px;
    text-align: right;
}

.aura-model-v31__related header {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 32px;
    margin-bottom: 36px;
}

.aura-model-v31__related header h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(42px, 5vw, 70px);
    line-height: .95;
    font-weight: 400;
    letter-spacing: -.045em;
}

.aura-model-v31__related header > a {
    padding-bottom: 4px;
    border-bottom: 1px solid var(--model-line);
    color: var(--model-ink);
    text-decoration: none;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v31__related-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: clamp(9px, 1.3vw, 18px);
}

.aura-model-v31__related-grid article > a:first-child {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v31__related-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 22%;
    transition: transform .5s ease;
}

.aura-model-v31__related-grid article > a:first-child:hover img {
    transform: scale(1.028);
}

.aura-model-v31__related-grid i {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.92);
    color: #151411;
    font-style: normal;
}

.aura-model-v31__related-grid h3 {
    margin: 10px 0 0;
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 400;
}

.aura-model-v31__related-grid h3 a {
    color: inherit;
    text-decoration: none;
}

/* ---------- Responsive ---------- */
@media (max-width: 1020px) {
    .aura-models-v31__hero,
    .aura-model-v31__hero {
        width: min(100% - 36px, 1380px);
    }

    .aura-models-v31__roster,
    .aura-models-v31__pagination,
    .aura-model-v31__portfolio,
    .aura-model-v31__information,
    .aura-model-v31__related {
        width: min(100% - 36px, 1380px);
    }

    .aura-models-v31__roster {
        grid-template-columns: repeat(6, minmax(0,1fr));
    }

    .aura-models-v31__card,
    .aura-models-v31__card:nth-child(n) {
        grid-column: span 3;
        margin-top: 0;
    }

    .aura-models-v31__card:nth-child(3n+2) {
        margin-top: 54px;
    }

    .aura-model-v31__hero {
        grid-template-columns: .9fr 1.1fr;
        gap: 50px;
    }

    .aura-model-v31__intro h1 {
        font-size: clamp(70px, 10vw, 112px);
    }
}

@media (max-width: 780px) {
    .aura-models-v31__hero {
        grid-template-columns: 1fr;
        gap: 34px;
        padding-top: 70px;
    }

    .aura-models-v31__hero h1 {
        font-size: clamp(82px, 23vw, 132px);
    }

    .aura-models-v31__roster {
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 28px 9px;
    }

    .aura-models-v31__card,
    .aura-models-v31__card:nth-child(n) {
        grid-column: span 1;
        margin-top: 0;
    }

    .aura-models-v31__card:nth-child(even) {
        margin-top: 40px;
    }

    .aura-models-v31__detail {
        display: none;
    }

    .aura-models-v31__info h2 {
        font-size: 24px;
    }

    .aura-models-v31__cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-model-v31__hero {
        grid-template-columns: 1fr;
        gap: 44px;
        padding-top: 46px;
    }

    .aura-model-v31__portrait {
        width: min(100%, 620px);
    }

    .aura-model-v31__intro h1 {
        font-size: clamp(68px, 17vw, 108px);
    }

    .aura-model-v31__section-head {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .aura-model-v31__gallery {
        grid-template-columns: repeat(2, minmax(0,1fr));
        grid-auto-rows: auto;
        gap: 7px;
    }

    .aura-model-v31__gallery-item,
    .aura-model-v31__gallery-item:nth-child(n) {
        grid-column: span 1;
        grid-row: auto;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v31__gallery-item:nth-child(4n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 16 / 10;
    }

    .aura-model-v31__info-grid {
        grid-template-columns: 1fr;
    }

    .aura-model-v31__related-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 520px) {
    .aura-models-v31__hero,
    .aura-models-v31__roster,
    .aura-models-v31__pagination,
    .aura-model-v31__hero,
    .aura-model-v31__portfolio,
    .aura-model-v31__information,
    .aura-model-v31__related {
        width: calc(100% - 20px);
    }

    .aura-models-v31__hero {
        padding-top: 50px;
    }

    .aura-models-v31__roster {
        gap: 24px 7px;
    }

    .aura-models-v31__card:nth-child(even) {
        margin-top: 28px;
    }

    .aura-models-v31__info h2 {
        font-size: 20px;
    }

    .aura-models-v31__info p {
        font-size: 7px;
    }

    .aura-models-v31__cta {
        padding-left: 14px;
        padding-right: 14px;
    }

    .aura-models-v31__cta > a {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v31__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-model-v31__book {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v31__quick {
        grid-template-columns: 1fr 1fr;
    }

    .aura-model-v31__gallery {
        grid-template-columns: 1fr;
    }

    .aura-model-v31__gallery-item,
    .aura-model-v31__gallery-item:nth-child(n),
    .aura-model-v31__gallery-item:nth-child(4n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v31__gallery-item:nth-child(3n+2) {
        aspect-ratio: 16 / 10;
    }

    .aura-model-v31__related-grid {
        gap: 7px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aura-models-v31__image img,
    .aura-model-v31__portrait img,
    .aura-model-v31__gallery-item img,
    .aura-model-v31__related-grid img {
        transition: none !important;
    }
}


/* ============================================================
   AURA v3.2 — Model Profile Reliability + Minimal Premium UI
   ============================================================ */

.aura-model-v32 {
    --v32-bg: #f3efe9;
    --v32-ink: #151411;
    --v32-muted: #746d66;
    --v32-line: rgba(21,20,17,.12);
    background: var(--v32-bg);
    color: var(--v32-ink);
    overflow: hidden;
}

.aura-model-v32__hero,
.aura-model-v32__portfolio,
.aura-model-v32__information,
.aura-model-v32__related {
    width: min(1360px, calc(100% - 48px));
    margin: 0 auto;
}

.aura-model-v32__hero {
    min-height: min(84vh, 920px);
    padding: clamp(56px, 6vw, 88px) 0 clamp(78px, 9vw, 128px);
    display: grid;
    grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr);
    gap: clamp(52px, 8vw, 118px);
    align-items: center;
}

.aura-model-v32__hero-image {
    position: relative;
    margin: 0;
    height: min(74vh, 820px);
    min-height: 600px;
    overflow: hidden;
    background: #ded6ce;
}

.aura-model-v32__hero-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 20%;
    transition: transform .8s cubic-bezier(.2,.7,.2,1);
}

.aura-model-v32__hero-image:hover img {
    transform: scale(1.015);
}

.aura-model-v32__hero-image figcaption {
    position: absolute;
    left: 15px;
    bottom: 13px;
    color: rgba(255,255,255,.84);
    font-size: 8px;
    letter-spacing: .16em;
    text-transform: uppercase;
    text-shadow: 0 1px 10px rgba(0,0,0,.32);
}

.aura-model-v32__image-placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    font-family: Georgia, serif;
    font-size: 52px;
    color: #8a8178;
}

.aura-model-v32__hero-copy h1 {
    max-width: 820px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(74px, 9vw, 140px);
    line-height: .80;
    font-weight: 400;
    letter-spacing: -.072em;
    text-wrap: balance;
}

.aura-model-v32__identity {
    margin: 25px 0 0;
    color: var(--v32-muted);
    font-size: 9px;
    letter-spacing: .14em;
    line-height: 1.7;
    text-transform: uppercase;
}

.aura-model-v32__bio {
    max-width: 620px;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid var(--v32-line);
    color: #504a45;
    font-family: Georgia, serif;
    font-size: clamp(17px, 1.55vw, 23px);
    line-height: 1.55;
}

.aura-model-v32__bio p {
    margin: 0;
}

.aura-model-v32__actions {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 34px;
}

.aura-model-v32__book {
    min-width: 210px;
    padding: 16px 18px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    background: var(--v32-ink);
    color: #fff;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v32__social {
    padding-bottom: 5px;
    border-bottom: 1px solid var(--v32-line);
    color: var(--v32-ink);
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v32__quick {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    border-top: 1px solid var(--v32-line);
    border-left: 1px solid var(--v32-line);
}

.aura-model-v32__quick > div {
    min-height: 88px;
    padding: 15px;
    border-right: 1px solid var(--v32-line);
    border-bottom: 1px solid var(--v32-line);
}

.aura-model-v32__quick span {
    display: block;
    margin-bottom: 12px;
    color: #8a827a;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v32__quick strong {
    font-family: Georgia, serif;
    font-size: 18px;
    font-weight: 400;
}

/* Portfolio directly follows hero — no empty "coming soon" section. */
.aura-model-v32__portfolio,
.aura-model-v32__information,
.aura-model-v32__related {
    padding: clamp(78px, 9vw, 132px) 0;
    border-top: 1px solid var(--v32-line);
}

.aura-model-v32__heading {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: end;
    gap: 44px;
    margin-bottom: clamp(30px, 4vw, 48px);
}

.aura-model-v32__heading h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(50px, 6vw, 84px);
    line-height: .9;
    font-weight: 400;
    letter-spacing: -.055em;
}

.aura-model-v32__heading > p,
.aura-model-v32__heading > a {
    margin: 0 0 7px;
    color: var(--v32-muted);
    font-size: 8px;
    letter-spacing: .13em;
    line-height: 1.6;
    text-transform: uppercase;
}

.aura-model-v32__heading > a {
    padding-bottom: 4px;
    border-bottom: 1px solid var(--v32-line);
    color: var(--v32-ink);
    text-decoration: none;
}

/* Clean dense editorial grid — avoids large blank holes. */
.aura-model-v32__gallery {
    display: grid;
    grid-template-columns: repeat(12,minmax(0,1fr));
    grid-auto-flow: dense;
    gap: clamp(7px,.7vw,11px);
}

.aura-model-v32__gallery-item {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    background: #ddd5cd;
    height: clamp(330px, 37vw, 560px);
}

.aura-model-v32__gallery-item--1,
.aura-model-v32__gallery-item--5,
.aura-model-v32__gallery-item--9 {
    grid-column: span 4;
}

.aura-model-v32__gallery-item--2,
.aura-model-v32__gallery-item--6 {
    grid-column: span 5;
}

.aura-model-v32__gallery-item--3,
.aura-model-v32__gallery-item--7 {
    grid-column: span 3;
}

.aura-model-v32__gallery-item--4,
.aura-model-v32__gallery-item--8 {
    grid-column: span 6;
    height: clamp(300px, 32vw, 500px);
}

.aura-model-v32__gallery-item > a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
}

.aura-model-v32__gallery-item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    display: block;
    object-fit: cover !important;
    object-position: center 22%;
    transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}

.aura-model-v32__gallery-item:hover img {
    transform: scale(1.025);
    filter: contrast(1.02);
}

.aura-model-v32__gallery-item a > span {
    position: absolute;
    right: 10px;
    bottom: 9px;
    color: rgba(255,255,255,.86);
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.35);
}

/* Compact data table. Sections do not render at all when empty. */
.aura-model-v32__data {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: clamp(38px, 6vw, 90px);
}

.aura-model-v32__data > section {
    min-width: 0;
}

.aura-model-v32__data-title {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--v32-line);
}

.aura-model-v32__data-title span {
    color: #9a928a;
    font-size: 8px;
    letter-spacing: .14em;
}

.aura-model-v32__data-title h3 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: 27px;
    font-weight: 400;
}

.aura-model-v32__data dl {
    margin: 0;
}

.aura-model-v32__data dl > div {
    display: grid;
    grid-template-columns: minmax(110px,.7fr) minmax(0,1.3fr);
    gap: 18px;
    padding: 14px 0;
    border-bottom: 1px solid var(--v32-line);
}

.aura-model-v32__data dt {
    color: #837b74;
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v32__data dd {
    margin: 0;
    font-family: Georgia, serif;
    font-size: 17px;
    text-align: right;
}

.aura-model-v32__related-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: clamp(8px,1.2vw,16px);
}

.aura-model-v32__related-image {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v32__related-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 22%;
    transition: transform .45s ease;
}

.aura-model-v32__related-image:hover img {
    transform: scale(1.025);
}

.aura-model-v32__related-image i {
    position: absolute;
    top: 9px;
    right: 9px;
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.92);
    color: #151411;
    font-style: normal;
}

.aura-model-v32__related-grid h3 {
    margin: 10px 0 0;
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 400;
}

.aura-model-v32__related-grid h3 a {
    color: inherit;
    text-decoration: none;
}

@media (max-width: 980px) {
    .aura-model-v32__hero,
    .aura-model-v32__portfolio,
    .aura-model-v32__information,
    .aura-model-v32__related {
        width: min(100% - 34px,1360px);
    }

    .aura-model-v32__hero {
        grid-template-columns: .9fr 1.1fr;
        gap: 44px;
    }

    .aura-model-v32__hero-image {
        min-height: 540px;
    }

    .aura-model-v32__gallery-item {
        height: clamp(300px, 44vw, 500px);
    }
}

@media (max-width: 760px) {
    .aura-model-v32__hero {
        grid-template-columns: 1fr;
        min-height: 0;
        gap: 40px;
        padding-top: 38px;
    }

    .aura-model-v32__hero-image {
        width: min(100%,620px);
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v32__hero-copy h1 {
        font-size: clamp(66px,17vw,108px);
    }

    .aura-model-v32__heading {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .aura-model-v32__gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 7px;
    }

    .aura-model-v32__gallery-item,
    .aura-model-v32__gallery-item:nth-child(n) {
        grid-column: span 1;
        height: auto;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v32__gallery-item:nth-child(5n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 16 / 10;
    }

    .aura-model-v32__data {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .aura-model-v32__related-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 520px) {
    .aura-model-v32__hero,
    .aura-model-v32__portfolio,
    .aura-model-v32__information,
    .aura-model-v32__related {
        width: calc(100% - 20px);
    }

    .aura-model-v32__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-model-v32__book {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v32__quick {
        grid-template-columns: 1fr 1fr;
    }

    .aura-model-v32__gallery {
        grid-template-columns: 1fr;
    }

    .aura-model-v32__gallery-item,
    .aura-model-v32__gallery-item:nth-child(n),
    .aura-model-v32__gallery-item:nth-child(5n+2) {
        grid-column: 1 / -1;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v32__gallery-item:nth-child(3n+2) {
        aspect-ratio: 16 / 10;
    }

    .aura-model-v32__related-grid {
        gap: 7px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aura-model-v32__hero-image img,
    .aura-model-v32__gallery-item img,
    .aura-model-v32__related-image img {
        transition: none !important;
    }
}


/* ============================================================
   AURA v4.0 — Clear Models vs Shoots Architecture
   Models = people/profile/details/portfolio
   Shoots = Aura-created image galleries only
   ============================================================ */

/* ---------- Aura Shoots Archive / Gallery ---------- */
.aura-shoots-v40 {
    --s40-bg: #f3efe9;
    --s40-ink: #151411;
    --s40-line: rgba(21,20,17,.12);
    background: var(--s40-bg);
    color: var(--s40-ink);
    overflow: hidden;
}

.aura-shoots-v40__hero {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(88px,10vw,150px) 0 clamp(62px,7vw,104px);
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr);
    gap: clamp(48px,8vw,120px);
    align-items: end;
    border-bottom: 1px solid var(--s40-line);
}

.aura-shoots-v40__hero h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(86px,11vw,174px);
    line-height: .76;
    font-weight: 400;
    letter-spacing: -.075em;
}

.aura-shoots-v40__hero > p {
    max-width: 520px;
    margin: 0 0 8px;
    color: #645d56;
    font-family: Georgia, serif;
    font-size: clamp(18px,1.6vw,25px);
    line-height: 1.5;
}

.aura-shoots-v40__grid {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(38px,4vw,62px) 0 clamp(88px,10vw,148px);
    display: grid;
    grid-template-columns: repeat(12,minmax(0,1fr));
    grid-auto-flow: dense;
    gap: clamp(9px,.9vw,14px);
}

.aura-shoots-v40__card {
    min-width: 0;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-shoots-v40__card--1,
.aura-shoots-v40__card--5 { grid-column: span 5; aspect-ratio: 4/5; }

.aura-shoots-v40__card--2,
.aura-shoots-v40__card--6 { grid-column: span 4; aspect-ratio: 1/1; }

.aura-shoots-v40__card--3,
.aura-shoots-v40__card--4 { grid-column: span 3; aspect-ratio: 3/4; }

.aura-shoots-v40__card a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
}

.aura-shoots-v40__card img {
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center 26%;
    display: block;
    transition: transform .7s cubic-bezier(.2,.7,.2,1);
}

.aura-shoots-v40__shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,rgba(0,0,0,.12),transparent 42%),
        linear-gradient(0deg,rgba(0,0,0,.62),transparent 58%);
}

.aura-shoots-v40__count {
    position: absolute;
    top: 13px;
    right: 13px;
    z-index: 2;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoots-v40__title {
    position: absolute;
    z-index: 2;
    left: 15px;
    right: 15px;
    bottom: 14px;
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 20px;
}

.aura-shoots-v40__title strong {
    font-family: Georgia,serif;
    font-size: clamp(24px,2.5vw,38px);
    line-height: .96;
    font-weight: 400;
    letter-spacing: -.04em;
}

.aura-shoots-v40__title i {
    flex: 0 0 auto;
    font-style: normal;
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-shoots-v40__card:hover img {
    transform: scale(1.03);
}

.aura-shoots-v40__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #877d73;
    font-family: Georgia,serif;
    font-size: 42px;
}

.aura-shoots-v40__pagination {
    width: min(1380px,calc(100% - 48px));
    margin: 0 auto;
    padding-bottom: clamp(70px,8vw,110px);
}

/* ---------- Single Aura Shoot ---------- */
.aura-shoot-v40 {
    --sh-bg: #f3efe9;
    --sh-ink: #151411;
    --sh-line: rgba(21,20,17,.12);
    background: var(--sh-bg);
    color: var(--sh-ink);
    overflow: hidden;
}

.aura-shoot-v40__hero,
.aura-shoot-v40__gallery-section,
.aura-shoot-v40__footer {
    width: min(1360px,calc(100% - 48px));
    margin-left: auto;
    margin-right: auto;
}

.aura-shoot-v40__hero {
    min-height: min(82vh,900px);
    padding: clamp(58px,6vw,88px) 0 clamp(76px,8vw,118px);
    display: grid;
    grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
    gap: clamp(48px,7vw,104px);
    align-items: center;
}

.aura-shoot-v40__intro h1 {
    margin: 0;
    font-family: Georgia,serif;
    font-size: clamp(72px,8vw,132px);
    line-height: .82;
    font-weight: 400;
    letter-spacing: -.07em;
    text-wrap: balance;
}

.aura-shoot-v40__meta {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 30px;
    color: #7a736c;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v40__meta a {
    color: var(--sh-ink);
    text-decoration: none;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--sh-line);
}

.aura-shoot-v40__cover {
    position: relative;
    margin: 0;
    min-height: 600px;
    height: min(72vh,800px);
    overflow: hidden;
    background: #ddd5cd;
}

.aura-shoot-v40__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 26%;
    display: block;
}

.aura-shoot-v40__cover figcaption {
    position: absolute;
    left: 14px;
    bottom: 12px;
    color: rgba(255,255,255,.84);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
    text-shadow: 0 1px 9px rgba(0,0,0,.35);
}

.aura-shoot-v40__gallery-section {
    padding: clamp(78px,9vw,132px) 0;
    border-top: 1px solid var(--sh-line);
}

.aura-shoot-v40__heading {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: end;
    gap: 40px;
    margin-bottom: 38px;
}

.aura-shoot-v40__heading h2 {
    margin: 0;
    font-family: Georgia,serif;
    font-size: clamp(50px,6vw,84px);
    line-height: .9;
    font-weight: 400;
    letter-spacing: -.055em;
}

.aura-shoot-v40__heading > span {
    margin-bottom: 7px;
    color: #766f68;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-shoot-v40__gallery {
    display: grid;
    grid-template-columns: repeat(12,minmax(0,1fr));
    grid-auto-flow: dense;
    gap: clamp(7px,.7vw,11px);
}

.aura-shoot-v40__item {
    min-width: 0;
    margin: 0;
    height: clamp(330px,37vw,560px);
    overflow: hidden;
    background: #ddd5cd;
}

.aura-shoot-v40__item--1,
.aura-shoot-v40__item--5 { grid-column: span 4; }

.aura-shoot-v40__item--2,
.aura-shoot-v40__item--6 { grid-column: span 5; }

.aura-shoot-v40__item--3,
.aura-shoot-v40__item--7 { grid-column: span 3; }

.aura-shoot-v40__item--4,
.aura-shoot-v40__item--8 {
    grid-column: span 6;
    height: clamp(300px,32vw,500px);
}

.aura-shoot-v40__item > a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
}

.aura-shoot-v40__item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center 24%;
    display: block;
    transition: transform .6s cubic-bezier(.2,.7,.2,1);
}

.aura-shoot-v40__item:hover img {
    transform: scale(1.025);
}

.aura-shoot-v40__item a > span {
    position: absolute;
    right: 10px;
    bottom: 9px;
    color: rgba(255,255,255,.86);
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.35);
}

.aura-shoot-v40__footer {
    padding: 24px 0 clamp(80px,9vw,130px);
    display: flex;
    justify-content: space-between;
    gap: 24px;
    border-top: 1px solid var(--sh-line);
    color: #7b746d;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v40__footer a {
    color: var(--sh-ink);
    text-decoration: none;
}

@media (max-width: 980px) {
    .aura-shoots-v40__hero,
    .aura-shoots-v40__grid,
    .aura-shoots-v40__pagination,
    .aura-shoot-v40__hero,
    .aura-shoot-v40__gallery-section,
    .aura-shoot-v40__footer {
        width: min(100% - 34px,1380px);
    }

    .aura-shoots-v40__grid {
        grid-template-columns: repeat(6,minmax(0,1fr));
    }

    .aura-shoots-v40__card,
    .aura-shoots-v40__card:nth-child(n) {
        grid-column: span 3;
        aspect-ratio: 4/5;
    }

    .aura-shoot-v40__hero {
        grid-template-columns: .82fr 1.18fr;
        gap: 44px;
    }
}

@media (max-width: 760px) {
    .aura-shoots-v40__hero {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-top: 64px;
    }

    .aura-shoots-v40__hero h1 {
        font-size: clamp(80px,22vw,128px);
    }

    .aura-shoots-v40__grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 8px;
    }

    .aura-shoots-v40__card,
    .aura-shoots-v40__card:nth-child(n) {
        grid-column: span 1;
        aspect-ratio: 4/5;
    }

    .aura-shoots-v40__card:nth-child(3n+2) {
        aspect-ratio: 1/1;
    }

    .aura-shoot-v40__hero {
        grid-template-columns: 1fr;
        min-height: 0;
        gap: 40px;
        padding-top: 38px;
    }

    .aura-shoot-v40__cover {
        height: auto;
        min-height: 0;
        aspect-ratio: 4/5;
    }

    .aura-shoot-v40__gallery {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 7px;
    }

    .aura-shoot-v40__item,
    .aura-shoot-v40__item:nth-child(n) {
        grid-column: span 1;
        height: auto;
        aspect-ratio: 4/5;
    }

    .aura-shoot-v40__item:nth-child(5n+2) {
        grid-column: 1/-1;
        aspect-ratio: 16/10;
    }
}

@media (max-width: 520px) {
    .aura-shoots-v40__hero,
    .aura-shoots-v40__grid,
    .aura-shoots-v40__pagination,
    .aura-shoot-v40__hero,
    .aura-shoot-v40__gallery-section,
    .aura-shoot-v40__footer {
        width: calc(100% - 20px);
    }

    .aura-shoots-v40__grid {
        grid-template-columns: 1fr;
    }

    .aura-shoots-v40__card,
    .aura-shoots-v40__card:nth-child(n),
    .aura-shoots-v40__card:nth-child(3n+2) {
        grid-column: 1/-1;
        aspect-ratio: 4/5;
    }

    .aura-shoots-v40__card:nth-child(even) {
        aspect-ratio: 16/11;
    }

    .aura-shoot-v40__gallery {
        grid-template-columns: 1fr;
    }

    .aura-shoot-v40__item,
    .aura-shoot-v40__item:nth-child(n),
    .aura-shoot-v40__item:nth-child(5n+2) {
        grid-column: 1/-1;
        aspect-ratio: 4/5;
    }

    .aura-shoot-v40__item:nth-child(3n+2) {
        aspect-ratio: 16/10;
    }

    .aura-shoot-v40__footer {
        flex-direction: column;
    }
}


/* ============================================================
   AURA v4.1 — Premium Model Page / Editorial Masonry Portfolio
   Reference direction: dark editorial mosaic + sticky profile rail
   ============================================================ */

.aura-model-v41 {
    --v41-cream: #f3efe9;
    --v41-ink: #151411;
    --v41-muted: #746d66;
    --v41-line: rgba(21,20,17,.12);
    --v41-dark: #122131;
    --v41-dark-2: #0d1925;
    --v41-dark-line: rgba(255,255,255,.12);
    background: var(--v41-cream);
    color: var(--v41-ink);
    overflow: hidden;
}

/* HERO */
.aura-model-v41__hero {
    width: min(1380px, calc(100% - 48px));
    min-height: min(86vh, 940px);
    margin: 0 auto;
    padding: clamp(60px, 7vw, 96px) 0 clamp(88px, 10vw, 140px);
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    gap: clamp(54px, 8vw, 126px);
    align-items: center;
}

.aura-model-v41__hero-media {
    position: relative;
}

.aura-model-v41__hero-media::before {
    content: "";
    position: absolute;
    z-index: 0;
    width: 64%;
    aspect-ratio: 1 / 1;
    right: -13%;
    top: -8%;
    border: 1px solid rgba(184,0,103,.12);
    border-radius: 50%;
    pointer-events: none;
}

.aura-model-v41__hero-image {
    position: relative;
    z-index: 1;
    margin: 0;
    height: min(74vh, 820px);
    min-height: 600px;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v41__hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 20%;
    display: block;
    transition: transform .85s cubic-bezier(.2,.7,.2,1);
}

.aura-model-v41__hero-image:hover img {
    transform: scale(1.015);
}

.aura-model-v41__hero-image figcaption {
    position: absolute;
    left: 16px;
    bottom: 14px;
    color: rgba(255,255,255,.86);
    font-size: 8px;
    letter-spacing: .16em;
    text-transform: uppercase;
    text-shadow: 0 1px 10px rgba(0,0,0,.36);
}

.aura-model-v41__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #8d847c;
    font-family: Georgia, serif;
    font-size: 52px;
}

.aura-model-v41__hero-copy {
    min-width: 0;
}

.aura-model-v41__hero-copy h1 {
    max-width: 840px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(76px, 9.2vw, 144px);
    line-height: .79;
    font-weight: 400;
    letter-spacing: -.074em;
    text-wrap: balance;
}

.aura-model-v41__identity {
    margin: 26px 0 0;
    color: var(--v41-muted);
    font-size: 9px;
    line-height: 1.7;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-model-v41__bio {
    max-width: 650px;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid var(--v41-line);
    color: #514b46;
    font-family: Georgia, serif;
    font-size: clamp(18px, 1.6vw, 24px);
    line-height: 1.55;
}

.aura-model-v41__bio p {
    margin: 0;
}

.aura-model-v41__actions {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 34px;
}

.aura-model-v41__book {
    min-width: 212px;
    padding: 16px 18px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    background: var(--v41-ink);
    color: #fff;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
    transition: transform .25s ease, background .25s ease;
}

.aura-model-v41__book:hover {
    transform: translateY(-2px);
    background: #2a211c;
}

.aura-model-v41__social {
    padding-bottom: 5px;
    border-bottom: 1px solid var(--v41-line);
    color: var(--v41-ink);
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v41__quick {
    margin-top: 42px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid var(--v41-line);
    border-left: 1px solid var(--v41-line);
}

.aura-model-v41__quick > div {
    min-height: 92px;
    padding: 15px 16px;
    border-right: 1px solid var(--v41-line);
    border-bottom: 1px solid var(--v41-line);
}

.aura-model-v41__quick span {
    display: block;
    margin-bottom: 12px;
    color: #8a827a;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v41__quick strong {
    font-family: Georgia, serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 400;
}

/* PORTFOLIO — dark editorial section */
.aura-model-v41__portfolio {
    padding: clamp(78px, 8vw, 120px) max(24px, calc((100vw - 1500px) / 2)) clamp(96px, 10vw, 152px);
    background:
        radial-gradient(circle at 10% 10%, rgba(187,0,105,.07), transparent 26%),
        linear-gradient(180deg, var(--v41-dark), var(--v41-dark-2));
    color: #fff;
}

.aura-model-v41__portfolio .aura-v3-kicker {
    color: rgba(255,255,255,.5);
}

.aura-model-v41__portfolio-head {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: end;
    gap: 44px;
    margin-bottom: clamp(34px, 4vw, 54px);
}

.aura-model-v41__portfolio-head h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(58px, 7vw, 98px);
    line-height: .82;
    font-weight: 400;
    letter-spacing: -.065em;
}

.aura-model-v41__portfolio-meta {
    display: flex;
    gap: 18px;
    padding-bottom: 7px;
    color: rgba(255,255,255,.48);
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v41__portfolio-meta span + span::before {
    content: "·";
    margin-right: 18px;
}

/* Main gallery + sticky model rail. */
.aura-model-v41__portfolio-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 310px);
    gap: clamp(26px, 3vw, 46px);
    align-items: start;
}

/*
 * CSS columns gives the natural photography-wall look from the user's
 * preferred reference while preserving each image's real aspect ratio.
 */
.aura-model-v41__masonry {
    column-count: 3;
    column-gap: clamp(7px, .7vw, 11px);
}

.aura-model-v41__tile {
    width: 100%;
    margin: 0 0 clamp(7px, .7vw, 11px);
    break-inside: avoid;
    overflow: hidden;
    background: rgba(255,255,255,.05);
}

.aura-model-v41__tile > a {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    cursor: zoom-in;
}

.aura-model-v41__tile img {
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    display: block;
    object-fit: contain !important;
    transition: transform .6s cubic-bezier(.2,.7,.2,1), filter .35s ease;
}

.aura-model-v41__tile:hover img {
    transform: scale(1.018);
    filter: contrast(1.025);
}

.aura-model-v41__tile-index {
    position: absolute;
    right: 9px;
    bottom: 8px;
    z-index: 2;
    color: rgba(255,255,255,.82);
    font-size: 8px;
    letter-spacing: .14em;
    text-shadow: 0 1px 8px rgba(0,0,0,.42);
}

.aura-model-v41__profile-rail {
    min-width: 0;
}

.aura-model-v41__profile-rail-inner {
    position: sticky;
    top: 110px;
    padding: 28px 0 0;
    border-top: 1px solid var(--v41-dark-line);
}

.aura-model-v41__profile-rail-inner h3 {
    margin: 0 0 24px;
    font-family: Georgia, serif;
    font-size: clamp(28px, 2.4vw, 38px);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -.035em;
}

.aura-model-v41__profile-rail dl {
    margin: 0;
}

.aura-model-v41__profile-rail dl > div {
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.aura-model-v41__profile-rail dt {
    color: rgba(255,255,255,.42);
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v41__profile-rail dd {
    margin: 0;
    color: rgba(255,255,255,.84);
    font-family: Georgia, serif;
    font-size: 14px;
    line-height: 1.45;
    text-align: right;
}

.aura-model-v41__profile-rail-inner > a:not(.aura-model-v41__rail-book) {
    display: inline-block;
    margin-top: 24px;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(255,255,255,.25);
    color: rgba(255,255,255,.75);
    text-decoration: none;
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v41__rail-book {
    margin-top: 32px;
    padding: 15px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    border: 1px solid rgba(255,255,255,.28);
    color: #fff;
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: background .25s ease, color .25s ease;
}

.aura-model-v41__rail-book:hover {
    background: #fff;
    color: var(--v41-dark);
}

/* INFORMATION */
.aura-model-v41__information,
.aura-model-v41__related {
    width: min(1380px, calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(82px, 9vw, 136px) 0;
}

.aura-model-v41__information {
    border-bottom: 1px solid var(--v41-line);
}

.aura-model-v41__info-head {
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(300px,.55fr);
    gap: 50px;
    align-items: end;
    margin-bottom: 46px;
}

.aura-model-v41__info-head h2,
.aura-model-v41__related-head h2 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(52px, 6vw, 86px);
    line-height: .84;
    font-weight: 400;
    letter-spacing: -.06em;
}

.aura-model-v41__info-head > p {
    max-width: 440px;
    margin: 0;
    color: var(--v41-muted);
    font-size: 12px;
    line-height: 1.75;
}

.aura-model-v41__data {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: clamp(44px, 7vw, 100px);
}

.aura-model-v41__data-title {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--v41-line);
}

.aura-model-v41__data-title span {
    color: #9b938c;
    font-size: 8px;
    letter-spacing: .14em;
}

.aura-model-v41__data-title h3 {
    margin: 0;
    font-family: Georgia, serif;
    font-size: 27px;
    font-weight: 400;
}

.aura-model-v41__data dl {
    margin: 0;
}

.aura-model-v41__data dl > div {
    display: grid;
    grid-template-columns: minmax(110px,.72fr) minmax(0,1.28fr);
    gap: 20px;
    padding: 14px 0;
    border-bottom: 1px solid var(--v41-line);
}

.aura-model-v41__data dt {
    color: #817a73;
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v41__data dd {
    margin: 0;
    font-family: Georgia, serif;
    font-size: 17px;
    line-height: 1.4;
    text-align: right;
}

/* RELATED */
.aura-model-v41__related-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 34px;
    margin-bottom: 38px;
}

.aura-model-v41__related-head > a {
    padding-bottom: 4px;
    border-bottom: 1px solid var(--v41-line);
    color: var(--v41-ink);
    text-decoration: none;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v41__related-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: clamp(8px,1.2vw,16px);
}

.aura-model-v41__related-image {
    position: relative;
    display: block;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-model-v41__related-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 22%;
    transition: transform .45s ease;
}

.aura-model-v41__related-image:hover img {
    transform: scale(1.025);
}

.aura-model-v41__related-image i {
    position: absolute;
    top: 9px;
    right: 9px;
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.92);
    color: #151411;
    font-style: normal;
}

.aura-model-v41__related-grid h3 {
    margin: 10px 0 0;
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 400;
}

.aura-model-v41__related-grid h3 a {
    color: inherit;
    text-decoration: none;
}

/* Tablet */
@media (max-width: 1020px) {
    .aura-model-v41__hero,
    .aura-model-v41__information,
    .aura-model-v41__related {
        width: min(100% - 36px, 1380px);
    }

    .aura-model-v41__hero {
        grid-template-columns: .9fr 1.1fr;
        gap: 48px;
    }

    .aura-model-v41__hero-image {
        min-height: 540px;
    }

    .aura-model-v41__portfolio-layout {
        grid-template-columns: minmax(0,1fr) 230px;
    }

    .aura-model-v41__masonry {
        column-count: 2;
    }
}

/* Mobile */
@media (max-width: 760px) {
    .aura-model-v41__hero {
        grid-template-columns: 1fr;
        min-height: 0;
        gap: 40px;
        padding-top: 38px;
    }

    .aura-model-v41__hero-image {
        width: min(100%, 620px);
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 5;
    }

    .aura-model-v41__hero-copy h1 {
        font-size: clamp(66px,17vw,108px);
    }

    .aura-model-v41__portfolio {
        padding-left: 14px;
        padding-right: 14px;
    }

    .aura-model-v41__portfolio-head {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .aura-model-v41__portfolio-meta {
        flex-wrap: wrap;
    }

    .aura-model-v41__portfolio-layout {
        grid-template-columns: 1fr;
    }

    .aura-model-v41__masonry {
        column-count: 2;
    }

    .aura-model-v41__profile-rail {
        order: -1;
    }

    .aura-model-v41__profile-rail-inner {
        position: static;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px 28px;
        padding: 24px 0 30px;
        border-top: 1px solid var(--v41-dark-line);
        border-bottom: 1px solid var(--v41-dark-line);
    }

    .aura-model-v41__profile-rail-inner dl {
        grid-column: 1 / -1;
    }

    .aura-model-v41__profile-rail-inner > a {
        align-self: end;
    }

    .aura-model-v41__info-head {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .aura-model-v41__data {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .aura-model-v41__related-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 520px) {
    .aura-model-v41__hero,
    .aura-model-v41__information,
    .aura-model-v41__related {
        width: calc(100% - 20px);
    }

    .aura-model-v41__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-model-v41__book {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v41__quick {
        grid-template-columns: 1fr 1fr;
    }

    .aura-model-v41__masonry {
        column-count: 1;
    }

    .aura-model-v41__profile-rail-inner {
        grid-template-columns: 1fr;
    }

    .aura-model-v41__rail-book {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v41__related-grid {
        gap: 7px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aura-model-v41__hero-image img,
    .aura-model-v41__tile img,
    .aura-model-v41__related-image img {
        transition: none !important;
    }
}


/* ============================================================
   AURA v4.2 — Final Premium Model Experience
   Home-style cinematic hero + clear color-separated sections
   ============================================================ */

/* ---------- Full-bleed model hero ---------- */
.aura-model-v42__hero {
    position: relative;
    min-height: 100svh;
    height: max(760px, 100svh);
    overflow: hidden;
    isolation: isolate;
    background: #0f0d0d;
    color: #fff;
}

.aura-model-v42__hero-media {
    position: absolute;
    z-index: 0;
    inset: 0;
    overflow: hidden;
}

.aura-model-v42__hero-media img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: 64% 24%;
    transform: scale(1.025);
    animation: auraV42HeroDrift 16s cubic-bezier(.2,.65,.2,1) both;
}

@keyframes auraV42HeroDrift {
    from { transform: scale(1.065); }
    to   { transform: scale(1.018); }
}

.aura-model-v42__hero-placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    font-family: Georgia, serif;
    font-size: 90px;
    color: #625b55;
}

.aura-model-v42__hero-overlay {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(10,8,8,.88) 0%,
            rgba(10,8,8,.72) 28%,
            rgba(10,8,8,.38) 48%,
            rgba(10,8,8,.08) 72%,
            rgba(10,8,8,.18) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.16) 0%,
            rgba(0,0,0,0) 42%,
            rgba(0,0,0,.34) 100%
        );
}

.aura-model-v42__hero-glow {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 76% 28%, rgba(255,255,255,.08), transparent 22%),
        linear-gradient(125deg, rgba(184,0,104,.14), transparent 30%);
    mix-blend-mode: screen;
}

.aura-model-v42__hero-content {
    position: relative;
    z-index: 4;
    width: min(1380px, calc(100% - 64px));
    min-height: inherit;
    margin: 0 auto;
    padding: 118px 0 88px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .65fr);
    gap: 70px;
    align-items: end;
}

.aura-model-v42__hero-copy {
    max-width: 840px;
}

.aura-model-v42__eyebrow {
    margin: 0 0 20px;
    color: rgba(255,255,255,.62);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.aura-model-v42__hero-copy h1 {
    max-width: 900px;
    margin: 0;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(84px, 10vw, 158px);
    line-height: .77;
    font-weight: 400;
    letter-spacing: -.075em;
    text-wrap: balance;
}

.aura-model-v42__identity {
    margin: 28px 0 0;
    color: rgba(255,255,255,.64);
    font-size: 9px;
    letter-spacing: .14em;
    line-height: 1.75;
    text-transform: uppercase;
}

.aura-model-v42__bio {
    max-width: 650px;
    margin-top: 34px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.16);
    color: rgba(255,255,255,.74);
    font-family: Georgia, serif;
    font-size: clamp(18px, 1.45vw, 23px);
    line-height: 1.6;
}

.aura-model-v42__bio p {
    margin: 0;
}

.aura-model-v42__actions {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 32px;
}

.aura-model-v42__book {
    min-width: 220px;
    padding: 17px 18px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    background: #fff;
    color: #141313;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
    transition: transform .25s ease, background .25s ease;
}

.aura-model-v42__book:hover {
    transform: translateY(-2px);
    background: #f0e9e3;
}

.aura-model-v42__social {
    padding-bottom: 5px;
    border-bottom: 1px solid rgba(255,255,255,.34);
    color: #fff;
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v42__quick {
    align-self: end;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    border-top: 1px solid rgba(255,255,255,.17);
    border-left: 1px solid rgba(255,255,255,.17);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    background: rgba(0,0,0,.12);
}

.aura-model-v42__quick > div {
    min-height: 102px;
    padding: 17px;
    border-right: 1px solid rgba(255,255,255,.17);
    border-bottom: 1px solid rgba(255,255,255,.17);
}

.aura-model-v42__quick span {
    display: block;
    margin-bottom: 14px;
    color: rgba(255,255,255,.48);
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v42__quick strong {
    color: #fff;
    font-family: Georgia, serif;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 400;
}

.aura-model-v42__hero-mark {
    position: absolute;
    z-index: 5;
    left: max(18px, 2vw);
    top: 50%;
    display: grid;
    justify-items: center;
    gap: 10px;
    color: rgba(255,255,255,.48);
    transform: translateY(-50%);
    writing-mode: vertical-rl;
    font-size: 8px;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.aura-model-v42__hero-mark i {
    width: 1px;
    height: 58px;
    background: rgba(255,255,255,.28);
}

.aura-model-v42__scroll {
    position: absolute;
    z-index: 5;
    right: max(24px, 3vw);
    bottom: 28px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255,255,255,.68);
    text-decoration: none;
    font-size: 8px;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.aura-model-v42__scroll i {
    width: 46px;
    height: 1px;
    background: rgba(255,255,255,.3);
    overflow: hidden;
}

.aura-model-v42__scroll i::after {
    content: "";
    display: block;
    width: 45%;
    height: 100%;
    background: #fff;
    animation: auraV42Scroll 1.9s ease-in-out infinite;
}

@keyframes auraV42Scroll {
    from { transform: translateX(-120%); }
    to   { transform: translateX(250%); }
}

/* ---------- Strong color separation between sections ---------- */
.aura-model-v41__portfolio {
    position: relative;
    border-top: 4px solid #b7006d;
}

.aura-model-v41__portfolio::before {
    content: "AURA / PORTFOLIO";
    position: absolute;
    top: 20px;
    right: max(24px, calc((100vw - 1500px) / 2));
    color: rgba(255,255,255,.22);
    font-size: 8px;
    letter-spacing: .16em;
}

.aura-model-v41__information {
    background: #f3efe9;
}

.aura-model-v41__related {
    position: relative;
    width: 100%;
    max-width: none;
    padding-left: max(24px, calc((100vw - 1380px) / 2));
    padding-right: max(24px, calc((100vw - 1380px) / 2));
    background: #e8e1d9;
    border-top: 1px solid rgba(21,20,17,.12);
}

.aura-model-v41__related::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: min(140px, 14vw);
    height: 4px;
    background: #b7006d;
}

/* ---------- Final black booking CTA ---------- */
.aura-model-v42__final-cta {
    padding: clamp(72px, 8vw, 118px) max(24px, calc((100vw - 1380px) / 2));
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 44px;
    background: #111;
    color: #fff;
}

.aura-model-v42__final-cta .aura-v3-kicker {
    color: rgba(255,255,255,.46);
}

.aura-model-v42__final-cta h2 {
    max-width: 850px;
    margin: 0;
    font-family: Georgia, serif;
    font-size: clamp(46px, 5.6vw, 82px);
    line-height: .9;
    font-weight: 400;
    letter-spacing: -.05em;
}

.aura-model-v42__final-cta > a {
    min-width: 220px;
    padding: 17px 18px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    background: #fff;
    color: #111;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

/* ---------- Responsive ---------- */
@media (max-width: 1020px) {
    .aura-model-v42__hero-content {
        width: min(100% - 44px, 1380px);
        grid-template-columns: minmax(0, 1fr) minmax(300px, .58fr);
        gap: 44px;
    }

    .aura-model-v42__hero-media img {
        object-position: 66% 24%;
    }
}

@media (max-width: 760px) {
    .aura-model-v42__hero {
        min-height: 100svh;
        height: auto;
    }

    .aura-model-v42__hero-media img {
        object-position: 62% center;
    }

    .aura-model-v42__hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(8,7,7,.12) 0%,
                rgba(8,7,7,.14) 30%,
                rgba(8,7,7,.72) 70%,
                rgba(8,7,7,.94) 100%
            );
    }

    .aura-model-v42__hero-content {
        width: min(100% - 28px, 1380px);
        min-height: 100svh;
        padding: 160px 0 74px;
        grid-template-columns: 1fr;
        gap: 28px;
        align-items: end;
    }

    .aura-model-v42__hero-copy {
        align-self: end;
    }

    .aura-model-v42__hero-copy h1 {
        font-size: clamp(64px, 17vw, 106px);
    }

    .aura-model-v42__bio {
        max-width: 560px;
    }

    .aura-model-v42__quick {
        width: 100%;
        background: rgba(0,0,0,.22);
    }

    .aura-model-v42__hero-mark {
        display: none;
    }

    .aura-model-v42__scroll {
        bottom: 18px;
        right: 14px;
    }

    .aura-model-v42__final-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 520px) {
    .aura-model-v42__hero-content {
        width: calc(100% - 20px);
        padding-top: 136px;
    }

    .aura-model-v42__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-model-v42__book {
        width: 100%;
        box-sizing: border-box;
    }

    .aura-model-v42__quick {
        grid-template-columns: 1fr 1fr;
    }

    .aura-model-v42__final-cta {
        padding-left: 14px;
        padding-right: 14px;
    }

    .aura-model-v42__final-cta > a {
        width: 100%;
        box-sizing: border-box;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aura-model-v42__hero-media img,
    .aura-model-v42__scroll i::after {
        animation: none !important;
    }
}


/* ============================================================
   AURA v4.3 — Approved Premium Model Profile UI
   Cinematic hero + navy editorial portfolio + warm details
   ============================================================ */

.aura-model-v43 {
    --a43-black: #0d0d0d;
    --a43-navy: #0e1d2b;
    --a43-navy-2: #112536;
    --a43-cream: #f5f0ea;
    --a43-stone: #ebe4dc;
    --a43-ink: #161412;
    --a43-muted: #746e68;
    --a43-gold: #d5a45a;
    --a43-magenta: #d10078;
    --a43-line: rgba(22,20,18,.12);
    background: var(--a43-cream);
    color: var(--a43-ink);
    overflow: hidden;
}

.aura-model-v43__kicker {
    margin: 0 0 12px;
    color: var(--a43-gold);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

/* HERO */
.aura-model-v43__hero {
    position: relative;
    min-height: 100svh;
    height: max(760px, 100svh);
    isolation: isolate;
    overflow: hidden;
    background: #0b0b0b;
    color: #fff;
}

.aura-model-v43__hero-media {
    position: absolute;
    z-index: 0;
    inset: 0;
}

.aura-model-v43__hero-media img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: 68% 23%;
    transform: scale(1.025);
    animation: aura43Drift 16s cubic-bezier(.2,.65,.2,1) both;
}

@keyframes aura43Drift {
    from { transform: scale(1.065); }
    to { transform: scale(1.018); }
}

.aura-model-v43__hero-placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    font-family: Georgia, serif;
    font-size: 90px;
    color: #544c47;
}

.aura-model-v43__hero-shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(90deg,rgba(5,5,5,.95) 0%,rgba(5,5,5,.82) 24%,rgba(5,5,5,.48) 48%,rgba(5,5,5,.08) 75%,rgba(5,5,5,.16) 100%),
        linear-gradient(180deg,rgba(0,0,0,.14) 0%,rgba(0,0,0,0) 42%,rgba(0,0,0,.36) 100%);
}

.aura-model-v43__hero-glow {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 75% 30%,rgba(255,255,255,.08),transparent 21%),
        linear-gradient(125deg,rgba(209,0,120,.11),transparent 30%);
    mix-blend-mode: screen;
}

.aura-model-v43__hero-inner {
    position: relative;
    z-index: 4;
    width: min(1420px,calc(100% - 70px));
    min-height: inherit;
    margin: 0 auto;
    padding: 130px 0 78px;
    display: grid;
    grid-template-columns: minmax(0,1.1fr) minmax(300px,.48fr);
    gap: 70px;
    align-items: end;
}

.aura-model-v43__hero-copy {
    max-width: 770px;
    align-self: end;
}

.aura-model-v43__crumb {
    margin: 0 0 18px;
    color: rgba(255,255,255,.55);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-model-v43__crumb span {
    margin: 0 8px;
    color: rgba(255,255,255,.28);
}

.aura-model-v43__crumb b {
    color: #f4289f;
    font-weight: 700;
}

.aura-model-v43__hero-copy h1 {
    margin: 0;
    color: #fff;
    font-family: Georgia,"Times New Roman",serif;
    font-size: clamp(84px,9.5vw,152px);
    line-height: .78;
    font-weight: 400;
    letter-spacing: -.074em;
    text-wrap: balance;
}

.aura-model-v43__strap {
    margin: 22px 0 0;
    color: rgba(255,255,255,.74);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.aura-model-v43__hero-bio {
    max-width: 610px;
    margin-top: 26px;
    color: rgba(255,255,255,.72);
    font-size: 14px;
    line-height: 1.75;
}

.aura-model-v43__hero-bio p {
    margin: 0;
}

.aura-model-v43__hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.aura-model-v43__primary,
.aura-model-v43__secondary {
    min-width: 194px;
    padding: 16px 17px;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-model-v43__primary {
    background: var(--a43-gold);
    color: #18120d;
}

.aura-model-v43__secondary {
    border: 1px solid rgba(213,164,90,.65);
    color: #fff;
    background: rgba(10,10,10,.16);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.aura-model-v43__follow {
    margin-top: 32px;
    display: flex;
    align-items: center;
    gap: 20px;
}

.aura-model-v43__follow > span {
    color: rgba(255,255,255,.42);
    font-size: 8px;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.aura-model-v43__follow a {
    color: #fff;
    text-decoration: none;
    font-size: 9px;
    letter-spacing: .08em;
}

.aura-model-v43__facts {
    align-self: end;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 16px;
    background: rgba(18,15,13,.52);
    backdrop-filter: blur(16px) saturate(1.1);
    -webkit-backdrop-filter: blur(16px) saturate(1.1);
    box-shadow: 0 18px 60px rgba(0,0,0,.22);
}

.aura-model-v43__facts > div {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 14px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.aura-model-v43__facts > div:last-child {
    border-bottom: 0;
}

.aura-model-v43__facts span {
    color: rgba(255,255,255,.42);
    font-size: 8px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.aura-model-v43__facts strong {
    color: #fff;
    font-family: Georgia,serif;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 400;
    text-align: right;
}

.aura-model-v43__scroll {
    position: absolute;
    z-index: 5;
    right: max(24px,3vw);
    bottom: 26px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255,255,255,.62);
    text-decoration: none;
    font-size: 8px;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.aura-model-v43__scroll i {
    width: 48px;
    height: 1px;
    background: rgba(255,255,255,.25);
    overflow: hidden;
}

.aura-model-v43__scroll i::after {
    content:"";
    display:block;
    width:45%;
    height:100%;
    background:#fff;
    animation:aura43Scroll 1.9s ease-in-out infinite;
}

@keyframes aura43Scroll {
    from { transform:translateX(-120%); }
    to { transform:translateX(250%); }
}

/* PORTFOLIO */
.aura-model-v43__portfolio {
    padding: clamp(78px,8vw,118px) max(24px,calc((100vw - 1500px)/2)) clamp(90px,9vw,138px);
    background:
        radial-gradient(circle at 8% 8%,rgba(209,0,120,.06),transparent 24%),
        linear-gradient(180deg,var(--a43-navy-2),var(--a43-navy));
    color:#fff;
    border-top:4px solid var(--a43-magenta);
}

.aura-model-v43__section-head {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:42px;
    align-items:end;
    margin-bottom:38px;
}

.aura-model-v43__section-head h2 {
    margin:0;
    font-family:Georgia,serif;
    font-size:clamp(54px,6vw,88px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.055em;
}

.aura-model-v43__section-head h2 span,
.aura-model-v43__related-head h2 span {
    color:var(--a43-magenta);
}

.aura-model-v43__section-meta {
    display:flex;
    gap:18px;
    padding-bottom:7px;
    color:rgba(255,255,255,.42);
    font-size:8px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.aura-model-v43__section-meta span + span::before {
    content:"·";
    margin-right:18px;
}

.aura-model-v43__portfolio-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(270px,330px);
    gap:clamp(20px,2.4vw,36px);
    align-items:start;
}

.aura-model-v43__mosaic {
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-auto-rows:86px;
    grid-auto-flow:dense;
    gap:7px;
}

.aura-model-v43__photo {
    min-width:0;
    margin:0;
    overflow:hidden;
    background:rgba(255,255,255,.04);
}

.aura-model-v43__photo--1 { grid-column:span 4; grid-row:span 7; }
.aura-model-v43__photo--2 { grid-column:span 4; grid-row:span 7; }
.aura-model-v43__photo--3 { grid-column:span 4; grid-row:span 8; }
.aura-model-v43__photo--4 { grid-column:span 4; grid-row:span 6; }
.aura-model-v43__photo--5 { grid-column:span 4; grid-row:span 6; }
.aura-model-v43__photo--6 { grid-column:span 4; grid-row:span 6; }
.aura-model-v43__photo--7 { grid-column:span 4; grid-row:span 7; }
.aura-model-v43__photo--8 { grid-column:span 4; grid-row:span 7; }
.aura-model-v43__photo--9 { grid-column:span 4; grid-row:span 7; }
.aura-model-v43__photo--10 { grid-column:span 4; grid-row:span 6; }

.aura-model-v43__photo--landscape {
    grid-column:span 6;
    grid-row:span 5;
}

.aura-model-v43__photo--square {
    grid-row:span 5;
}

.aura-model-v43__photo > a {
    position:relative;
    display:block;
    width:100%;
    height:100%;
    cursor:zoom-in;
}

.aura-model-v43__photo img {
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    display:block;
    object-fit:cover !important;
    object-position:center 22%;
    transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}

.aura-model-v43__photo:hover img {
    transform:scale(1.025);
    filter:contrast(1.02);
}

.aura-model-v43__photo > a > span {
    position:absolute;
    right:9px;
    bottom:8px;
    color:rgba(255,255,255,.8);
    font-size:8px;
    letter-spacing:.14em;
    text-shadow:0 1px 8px rgba(0,0,0,.4);
}

.aura-model-v43__about-inner {
    position:sticky;
    top:104px;
    padding:28px;
    border:1px solid rgba(255,255,255,.12);
    background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}

.aura-model-v43__about h3 {
    margin:0 0 22px;
    font-family:Georgia,serif;
    font-size:clamp(27px,2.4vw,38px);
    line-height:1;
    font-weight:400;
}

.aura-model-v43__about-copy {
    color:rgba(255,255,255,.68);
    font-size:12px;
    line-height:1.75;
}

.aura-model-v43__about-copy p {
    margin:0;
}

.aura-model-v43__about dl {
    margin:24px 0 0;
}

.aura-model-v43__about dl > div {
    display:grid;
    grid-template-columns:.75fr 1.25fr;
    gap:14px;
    padding:11px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.aura-model-v43__about dt {
    color:rgba(255,255,255,.4);
    font-size:8px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.aura-model-v43__about dd {
    margin:0;
    color:rgba(255,255,255,.86);
    font-family:Georgia,serif;
    font-size:14px;
    line-height:1.45;
    text-align:right;
}

.aura-model-v43__quote {
    margin-top:28px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.1);
}

.aura-model-v43__quote span {
    color:var(--a43-gold);
    font-family:Georgia,serif;
    font-size:44px;
    line-height:.7;
}

.aura-model-v43__quote p {
    margin:8px 0 0;
    color:rgba(255,255,255,.7);
    font-family:Georgia,serif;
    font-size:15px;
    line-height:1.55;
}

.aura-model-v43__about-book {
    margin-top:28px;
    padding:15px 16px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    background:var(--a43-gold);
    color:#18120d;
    text-decoration:none;
    font-size:8px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

/* DETAILS */
.aura-model-v43__details {
    padding:clamp(78px,8vw,118px) max(24px,calc((100vw - 1380px)/2));
    background:var(--a43-cream);
}

.aura-model-v43__section-head--light > p {
    max-width:430px;
    margin:0 0 6px;
    color:var(--a43-muted);
    font-size:12px;
    line-height:1.75;
}

.aura-model-v43__details-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(50px,7vw,100px);
}

.aura-model-v43__details-grid h3 {
    margin:0 0 16px;
    font-family:Georgia,serif;
    font-size:22px;
    font-weight:400;
}

.aura-model-v43__details-grid dl {
    margin:0;
}

.aura-model-v43__details-grid dl > div {
    display:grid;
    grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);
    gap:18px;
    padding:12px 0;
    border-bottom:1px solid var(--a43-line);
}

.aura-model-v43__details-grid dt {
    color:#817a73;
    font-size:8px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.aura-model-v43__details-grid dd {
    margin:0;
    font-family:Georgia,serif;
    font-size:16px;
    line-height:1.45;
    text-align:right;
}

/* RELATED */
.aura-model-v43__related {
    padding:clamp(72px,7vw,106px) max(24px,calc((100vw - 1380px)/2));
    background:var(--a43-stone);
    border-top:1px solid rgba(22,20,18,.1);
}

.aura-model-v43__related-head {
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:34px;
    margin-bottom:30px;
}

.aura-model-v43__related-head h2 {
    margin:0;
    font-family:Georgia,serif;
    font-size:clamp(46px,5vw,72px);
    line-height:.92;
    font-weight:400;
    letter-spacing:-.05em;
}

.aura-model-v43__related-head > a {
    padding-bottom:4px;
    border-bottom:1px solid rgba(22,20,18,.14);
    color:var(--a43-ink);
    text-decoration:none;
    font-size:8px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.aura-model-v43__related-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}

.aura-model-v43__related-card {
    position:relative;
    display:block;
    aspect-ratio:16/11;
    overflow:hidden;
    background:#d5cec7;
    color:#fff;
}

.aura-model-v43__related-card img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 24%;
    display:block;
    transition:transform .45s ease;
}

.aura-model-v43__related-card:hover img {
    transform:scale(1.028);
}

.aura-model-v43__related-shade {
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.68),transparent 60%);
}

.aura-model-v43__related-info {
    position:absolute;
    z-index:2;
    left:14px;
    right:12px;
    bottom:12px;
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:18px;
}

.aura-model-v43__related-info strong {
    font-family:Georgia,serif;
    font-size:18px;
    font-weight:400;
}

.aura-model-v43__related-info i {
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border:1px solid rgba(213,164,90,.65);
    border-radius:50%;
    color:#fff;
    font-style:normal;
}

.aura-model-v43__related-placeholder {
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    color:#776f67;
    font-family:Georgia,serif;
    font-size:34px;
}

/* CTA */
.aura-model-v43__cta {
    padding:clamp(70px,7vw,108px) max(24px,calc((100vw - 1380px)/2));
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:44px;
    background:#101010;
    color:#fff;
}

.aura-model-v43__cta h2 {
    max-width:850px;
    margin:0;
    font-family:Georgia,serif;
    font-size:clamp(44px,5.4vw,78px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.05em;
}

.aura-model-v43__cta > a {
    min-width:220px;
    padding:16px 18px;
    display:inline-flex;
    justify-content:space-between;
    align-items:center;
    gap:28px;
    background:var(--a43-gold);
    color:#17120d;
    text-decoration:none;
    font-size:8px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

/* RESPONSIVE */
@media (max-width:1100px) {
    .aura-model-v43__hero-inner {
        width:min(100% - 44px,1420px);
        grid-template-columns:minmax(0,1fr) 290px;
        gap:40px;
    }

    .aura-model-v43__portfolio-grid {
        grid-template-columns:minmax(0,1fr) 260px;
    }

    .aura-model-v43__mosaic {
        grid-auto-rows:72px;
    }
}

@media (max-width:820px) {
    .aura-model-v43__hero {
        min-height:100svh;
        height:auto;
    }

    .aura-model-v43__hero-media img {
        object-position:64% center;
    }

    .aura-model-v43__hero-shade {
        background:linear-gradient(180deg,rgba(5,5,5,.12) 0%,rgba(5,5,5,.2) 35%,rgba(5,5,5,.82) 78%,rgba(5,5,5,.96) 100%);
    }

    .aura-model-v43__hero-inner {
        width:min(100% - 28px,1420px);
        min-height:100svh;
        padding:160px 0 70px;
        grid-template-columns:1fr;
        gap:24px;
        align-items:end;
    }

    .aura-model-v43__hero-copy {
        align-self:end;
    }

    .aura-model-v43__hero-copy h1 {
        font-size:clamp(64px,17vw,106px);
    }

    .aura-model-v43__facts {
        width:min(100%,560px);
        border-radius:12px;
    }

    .aura-model-v43__portfolio-grid {
        grid-template-columns:1fr;
    }

    .aura-model-v43__about {
        order:-1;
    }

    .aura-model-v43__about-inner {
        position:static;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:18px 28px;
    }

    .aura-model-v43__about-inner dl,
    .aura-model-v43__quote,
    .aura-model-v43__about-book {
        grid-column:1/-1;
    }

    .aura-model-v43__mosaic {
        grid-template-columns:repeat(6,minmax(0,1fr));
        grid-auto-rows:74px;
    }

    .aura-model-v43__photo,
    .aura-model-v43__photo:nth-child(n) {
        grid-column:span 3;
        grid-row:span 6;
    }

    .aura-model-v43__photo--landscape {
        grid-column:1/-1 !important;
        grid-row:span 5 !important;
    }

    .aura-model-v43__details-grid {
        grid-template-columns:1fr;
        gap:46px;
    }

    .aura-model-v43__related-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .aura-model-v43__cta {
        align-items:flex-start;
        flex-direction:column;
    }
}

@media (max-width:520px) {
    .aura-model-v43__hero-inner {
        width:calc(100% - 20px);
        padding-top:138px;
    }

    .aura-model-v43__hero-actions {
        flex-direction:column;
        align-items:stretch;
    }

    .aura-model-v43__primary,
    .aura-model-v43__secondary {
        width:100%;
        box-sizing:border-box;
    }

    .aura-model-v43__facts {
        padding:18px;
    }

    .aura-model-v43__portfolio,
    .aura-model-v43__details,
    .aura-model-v43__related,
    .aura-model-v43__cta {
        padding-left:12px;
        padding-right:12px;
    }

    .aura-model-v43__section-head {
        grid-template-columns:1fr;
        gap:16px;
    }

    .aura-model-v43__section-meta {
        flex-wrap:wrap;
    }

    .aura-model-v43__about-inner {
        grid-template-columns:1fr;
        padding:22px;
    }

    .aura-model-v43__about-inner dl,
    .aura-model-v43__quote,
    .aura-model-v43__about-book {
        grid-column:auto;
    }

    .aura-model-v43__mosaic {
        grid-template-columns:1fr;
        grid-auto-rows:auto;
    }

    .aura-model-v43__photo,
    .aura-model-v43__photo:nth-child(n),
    .aura-model-v43__photo--landscape {
        grid-column:1/-1 !important;
        grid-row:auto !important;
        aspect-ratio:auto;
    }

    .aura-model-v43__photo img {
        height:auto !important;
        object-fit:contain !important;
    }

    .aura-model-v43__related-grid {
        gap:7px;
    }

    .aura-model-v43__cta > a {
        width:100%;
        box-sizing:border-box;
    }
}

@media (prefers-reduced-motion:reduce) {
    .aura-model-v43__hero-media img,
    .aura-model-v43__scroll i::after,
    .aura-model-v43__photo img,
    .aura-model-v43__related-card img {
        animation:none !important;
        transition:none !important;
    }
}


/* ============================================================
   AURA v4.4 — Gallery + Hero Polish
   Fixes: oversized crops, repeated hero image, narrow profile rail,
   abrupt hero/portfolio transition and mobile rhythm.
   ============================================================ */

/* HERO: keep the homepage-style cinematic feel but improve safe composition. */
.aura-model-v43__hero-inner {
    grid-template-columns: minmax(0, 1.08fr) minmax(310px, .46fr);
    padding-bottom: 96px;
}

.aura-model-v43__hero-copy {
    max-width: 820px;
    padding-bottom: 10px;
}

.aura-model-v43__hero-copy h1 {
    max-width: 860px;
    font-size: clamp(76px, 8.8vw, 140px);
    line-height: .80;
}

.aura-model-v43__facts {
    max-width: 360px;
    justify-self: end;
    margin-bottom: 6px;
}

.aura-model-v43__hero-media img {
    object-position: 66% 25%;
}

.aura-model-v43__hero-shade {
    background:
        linear-gradient(
            90deg,
            rgba(5,5,5,.94) 0%,
            rgba(5,5,5,.80) 26%,
            rgba(5,5,5,.42) 49%,
            rgba(5,5,5,.08) 72%,
            rgba(5,5,5,.16) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.12) 0%,
            rgba(0,0,0,0) 48%,
            rgba(0,0,0,.42) 100%
        );
}

/* Softer visual hand-off from hero into portfolio. */
.aura-model-v43__portfolio {
    position: relative;
    border-top: 3px solid var(--a43-magenta);
    padding-top: clamp(84px, 9vw, 126px);
}

.aura-model-v43__portfolio::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 120px;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(209,0,120,.045), transparent);
}

/* Portfolio heading: more controlled and compact. */
.aura-model-v43__section-head--dark {
    position: relative;
    z-index: 2;
    margin-bottom: 42px;
}

.aura-model-v43__section-head--dark h2 {
    font-size: clamp(52px, 5.7vw, 82px);
}

/* Main gallery/sidebar ratio: gallery gets the visual priority. */
.aura-model-v43__portfolio-grid {
    position: relative;
    z-index: 2;
    grid-template-columns: minmax(0, 1fr) minmax(290px, 340px);
    gap: clamp(24px, 2.6vw, 40px);
}

/*
 * Natural editorial masonry.
 * The previous fixed grid was creating huge forced crops and awkward holes.
 * CSS columns retain the actual image proportions, which matches the
 * reference layout much better.
 */
.aura-model-v43__mosaic {
    display: block;
    column-count: 3;
    column-gap: 8px;
}

.aura-model-v43__photo,
.aura-model-v43__photo:nth-child(n),
.aura-model-v43__photo--landscape,
.aura-model-v43__photo--square {
    display: inline-block;
    width: 100%;
    margin: 0 0 8px;
    grid-column: auto !important;
    grid-row: auto !important;
    break-inside: avoid;
    overflow: hidden;
    background: rgba(255,255,255,.035);
}

.aura-model-v43__photo > a {
    display: block;
    width: 100%;
    height: auto;
}

.aura-model-v43__photo img,
.aura-model-v43__photo:nth-child(n) img {
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block;
}

.aura-model-v43__photo:hover img {
    transform: scale(1.015);
}

/* Give image numbers slightly more breathing room. */
.aura-model-v43__photo > a > span {
    right: 10px;
    bottom: 9px;
    padding: 3px 4px;
    background: rgba(0,0,0,.20);
}

/* Sidebar: premium, readable, fully visible and sticky. */
.aura-model-v43__about {
    min-width: 0;
}

.aura-model-v43__about-inner {
    top: 96px;
    padding: 30px;
    border-color: rgba(255,255,255,.13);
    background:
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.018));
    box-shadow: 0 22px 70px rgba(0,0,0,.10);
}

.aura-model-v43__about h3 {
    font-size: clamp(28px, 2.25vw, 36px);
}

.aura-model-v43__about-copy {
    max-width: 27em;
}

.aura-model-v43__about dl > div {
    grid-template-columns: .72fr 1.28fr;
}

.aura-model-v43__about dd {
    overflow-wrap: anywhere;
}

/* Keep the profile panel from becoming excessively tall. */
.aura-model-v43__quote {
    margin-top: 24px;
    padding-top: 18px;
}

.aura-model-v43__quote p {
    font-size: 14px;
}

/* Details / related models: stronger breathing room after dark gallery. */
.aura-model-v43__details {
    padding-top: clamp(88px, 9vw, 132px);
    padding-bottom: clamp(88px, 9vw, 132px);
}

.aura-model-v43__related {
    padding-top: clamp(78px, 8vw, 116px);
    padding-bottom: clamp(78px, 8vw, 116px);
}

/* Tablet: 2-column natural masonry and profile card above it. */
@media (max-width: 1050px) {
    .aura-model-v43__hero-inner {
        grid-template-columns: minmax(0,1fr) 290px;
    }

    .aura-model-v43__portfolio-grid {
        grid-template-columns: 1fr;
    }

    .aura-model-v43__about {
        order: -1;
    }

    .aura-model-v43__about-inner {
        position: static;
        display: grid;
        grid-template-columns: minmax(0,1fr) minmax(260px,.7fr);
        gap: 20px 38px;
        align-items: start;
        padding: 26px;
    }

    .aura-model-v43__about-inner > .aura-model-v43__kicker,
    .aura-model-v43__about-inner > h3,
    .aura-model-v43__about-copy {
        grid-column: 1;
    }

    .aura-model-v43__about dl {
        grid-column: 2;
        grid-row: 1 / span 4;
        margin-top: 0;
    }

    .aura-model-v43__quote,
    .aura-model-v43__about-book {
        grid-column: 1;
    }

    .aura-model-v43__mosaic {
        column-count: 2;
    }
}

/* Mobile hero/readability. */
@media (max-width: 820px) {
    .aura-model-v43__hero-inner {
        padding-bottom: 82px;
    }

    .aura-model-v43__hero-media img {
        object-position: 62% center;
    }

    .aura-model-v43__facts {
        max-width: none;
        justify-self: stretch;
    }

    .aura-model-v43__about-inner {
        display: block;
    }

    .aura-model-v43__about dl {
        margin-top: 22px;
    }

    .aura-model-v43__mosaic {
        column-count: 2;
    }
}

@media (max-width: 560px) {
    .aura-model-v43__hero-copy h1 {
        font-size: clamp(60px, 16vw, 92px);
    }

    .aura-model-v43__portfolio {
        padding-left: 10px;
        padding-right: 10px;
    }

    .aura-model-v43__section-head--dark {
        padding-left: 2px;
        padding-right: 2px;
    }

    .aura-model-v43__mosaic {
        column-count: 1;
        column-gap: 0;
    }

    .aura-model-v43__photo,
    .aura-model-v43__photo:nth-child(n) {
        margin-bottom: 8px;
    }

    .aura-model-v43__about-inner {
        padding: 22px 18px;
    }
}


/* ============================================================
   AURA v4.5 — Homepage Visual System Across Interior Pages
   Exact design language:
   Background #f4f1ec
   Paper      #fbfaf7
   Ink        #11110f
   Muted      #66615b
   Dark       #0b0b0a
   Accent     #c10078
   Hero font  Helvetica Neue / Arial
   Editorial  Georgia / Times New Roman
   Body       Inter / system sans
   ============================================================ */

:root {
    --aura-home-bg: #f4f1ec;
    --aura-home-paper: #fbfaf7;
    --aura-home-ink: #11110f;
    --aura-home-muted: #66615b;
    --aura-home-line: rgba(17,17,15,.13);
    --aura-home-dark: #0b0b0a;
    --aura-home-accent: #c10078;
    --aura-home-max: 1440px;
    --aura-home-pad: clamp(22px,4vw,72px);
}

body:not(.home) {
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* ---------- Interior header uses the same homepage proportions ---------- */
body:not(.home) .aura-site-header__inner {
    width: min(var(--aura-home-max), calc(100% - 44px));
    min-height: 82px;
}

body:not(.home) .aura-site-nav a,
body:not(.home) .aura-site-contact {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

/* Cinematic model/shoot pages receive the homepage overlay header. */
body.single-portfolio .aura-site-header--overlay,
body.single-shoot .aura-site-header--overlay {
    position: absolute;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,.11) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    color: #fff;
}

body.single-portfolio .aura-site-header--overlay .aura-site-nav a,
body.single-shoot .aura-site-header--overlay .aura-site-nav a {
    color: rgba(255,255,255,.76);
}

body.single-portfolio .aura-site-header--overlay .aura-site-nav a:hover,
body.single-shoot .aura-site-header--overlay .aura-site-nav a:hover {
    color: #fff;
}

body.single-portfolio .aura-site-header--overlay .aura-site-contact,
body.single-shoot .aura-site-header--overlay .aura-site-contact {
    background: #fff;
    color: #111;
    border: 1px solid #fff;
}

body.single-portfolio .aura-site-header--overlay .aura-menu-toggle span,
body.single-shoot .aura-site-header--overlay .aura-menu-toggle span {
    background: #fff;
}

/* ============================================================
   SINGLE MODEL — exact homepage typography + palette
   ============================================================ */
.aura-model-v43 {
    --a43-black: var(--aura-home-dark);
    --a43-navy: var(--aura-home-dark);
    --a43-navy-2: #11110f;
    --a43-cream: var(--aura-home-bg);
    --a43-stone: #ebe6df;
    --a43-ink: var(--aura-home-ink);
    --a43-muted: var(--aura-home-muted);
    --a43-gold: var(--aura-home-accent);
    --a43-magenta: var(--aura-home-accent);
    --a43-line: var(--aura-home-line);
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
}

/* Homepage hero uses Helvetica Neue — model hero now does the same. */
.aura-model-v43__hero-copy h1 {
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 320;
    letter-spacing: -.065em;
    line-height: .90;
    font-size: clamp(68px,7.4vw,122px);
}

.aura-model-v43__crumb,
.aura-model-v43__strap,
.aura-model-v43__hero-bio,
.aura-model-v43__facts,
.aura-model-v43__primary,
.aura-model-v43__secondary,
.aura-model-v43__follow,
.aura-model-v43__section-meta {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
}

.aura-model-v43__crumb b {
    color: var(--aura-home-accent);
}

/* Same hero treatment as homepage v1.9. */
.aura-model-v43__hero-shade {
    background:
        linear-gradient(
            90deg,
            rgba(12,8,7,.82) 0%,
            rgba(12,8,7,.66) 30%,
            rgba(12,8,7,.24) 55%,
            rgba(12,8,7,.06) 76%,
            rgba(12,8,7,.12) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.16) 0%,
            rgba(0,0,0,0) 42%,
            rgba(0,0,0,.34) 100%
        );
}

.aura-model-v43__hero-glow {
    background:
        radial-gradient(circle at 76% 30%,rgba(255,255,255,.07),transparent 22%),
        linear-gradient(125deg,rgba(193,0,120,.09),transparent 31%);
}

/* Same CTA family as homepage. */
.aura-model-v43__primary {
    background: #fff;
    color: #111;
    border: 1px solid #fff;
}

.aura-model-v43__primary:hover {
    background: rgba(255,255,255,.88);
}

.aura-model-v43__secondary {
    color: #fff;
    border: 1px solid rgba(255,255,255,.45);
    background: transparent;
}

.aura-model-v43__secondary:hover {
    background: rgba(255,255,255,.08);
}

/* Homepage section headings use Georgia; keep editorial sections identical. */
.aura-model-v43__section-head h2,
.aura-model-v43__related-head h2,
.aura-model-v43__details-grid h3,
.aura-model-v43__about h3,
.aura-model-v43__cta h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
}

.aura-model-v43__section-head h2 {
    letter-spacing: -.035em;
}

.aura-model-v43__section-head h2 span,
.aura-model-v43__related-head h2 span {
    color: var(--aura-home-accent);
}

/* Portfolio becomes the same black used by homepage footer/dark sections. */
.aura-model-v43__portfolio {
    border-top: 3px solid var(--aura-home-accent);
    background:
        radial-gradient(circle at 8% 8%,rgba(193,0,120,.055),transparent 23%),
        linear-gradient(180deg,#11110f,var(--aura-home-dark));
}

.aura-model-v43__portfolio::before {
    background: linear-gradient(180deg,rgba(193,0,120,.035),transparent);
}

.aura-model-v43__kicker {
    color: var(--aura-home-accent);
}

/* On dark section use white/muted labels, just like the home hero. */
.aura-model-v43__portfolio .aura-model-v43__kicker {
    color: rgba(255,255,255,.62);
}

.aura-model-v43__about-inner {
    border: 1px solid rgba(255,255,255,.11);
    background: rgba(255,255,255,.025);
}

.aura-model-v43__about-book {
    background: #fff;
    color: #111;
}

.aura-model-v43__quote span {
    color: var(--aura-home-accent);
}

/* Light sections use the exact homepage background family. */
.aura-model-v43__details {
    background: var(--aura-home-bg);
}

.aura-model-v43__related {
    background: #ebe6df;
}

.aura-model-v43__related::before {
    background: var(--aura-home-accent);
}

.aura-model-v43__related-info i {
    border-color: rgba(255,255,255,.58);
}

/* Final CTA mirrors the homepage/footer black/white language. */
.aura-model-v43__cta {
    background: var(--aura-home-dark);
}

.aura-model-v43__cta > a {
    background: #fff;
    color: #111;
}

/* ============================================================
   MODELS ARCHIVE — homepage typography + colors
   ============================================================ */
.aura-models-v31 {
    --models-ink: var(--aura-home-ink);
    --models-bg: var(--aura-home-bg);
    --models-line: var(--aura-home-line);
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
}

.aura-models-v31__hero {
    width: min(var(--aura-home-max), calc(100% - 44px));
}

.aura-models-v31__hero h1 {
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 320;
    line-height: .84;
    letter-spacing: -.065em;
    font-size: clamp(72px,8vw,132px);
}

.aura-models-v31__hero-copy > p {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    color: var(--aura-home-muted);
    font-size: clamp(14px,1.15vw,17px);
    line-height: 1.75;
}

.aura-models-v31__roster,
.aura-models-v31__pagination {
    width: min(var(--aura-home-max), calc(100% - 44px));
}

.aura-models-v31__info h2 {
    font-family: Georgia, "Times New Roman", serif;
    letter-spacing: -.035em;
}

.aura-models-v31__cta {
    background: var(--aura-home-dark);
}

.aura-models-v31__cta > a {
    background: #fff;
    color: #111;
}

/* ============================================================
   SHOOTS ARCHIVE + SINGLE SHOOT — same system
   ============================================================ */
.aura-shoots-v40,
.aura-shoot-v40 {
    --s40-bg: var(--aura-home-bg);
    --s40-ink: var(--aura-home-ink);
    --s40-line: var(--aura-home-line);
    --sh-bg: var(--aura-home-bg);
    --sh-ink: var(--aura-home-ink);
    --sh-line: var(--aura-home-line);
    background: var(--aura-home-bg);
    color: var(--aura-home-ink);
}

.aura-shoots-v40__hero,
.aura-shoots-v40__grid,
.aura-shoots-v40__pagination,
.aura-shoot-v40__hero,
.aura-shoot-v40__gallery-section,
.aura-shoot-v40__footer {
    width: min(var(--aura-home-max), calc(100% - 44px));
}

.aura-shoots-v40__hero h1,
.aura-shoot-v40__intro h1 {
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 320;
    letter-spacing: -.065em;
}

.aura-shoots-v40__hero h1 {
    line-height: .84;
    font-size: clamp(72px,8vw,132px);
}

.aura-shoot-v40__intro h1 {
    line-height: .88;
    font-size: clamp(62px,7vw,112px);
}

.aura-shoots-v40__hero > p {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    color: var(--aura-home-muted);
    font-size: clamp(14px,1.15vw,17px);
    line-height: 1.75;
}

.aura-shoot-v40__heading h2,
.aura-shoots-v40__title strong {
    font-family: Georgia, "Times New Roman", serif;
}

.aura-shoot-v40__gallery-section {
    border-top-color: var(--aura-home-line);
}

/* ============================================================
   JOIN AURA — homepage black + cream + accent
   ============================================================ */
.aura-join-v20 {
    background: var(--aura-home-dark);
    color: #fff;
}

.aura-join-v20__hero {
    width: min(var(--aura-home-max), calc(100% - 44px));
}

.aura-join-v20__hero-copy h1 {
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-weight: 320;
    line-height: .88;
    letter-spacing: -.065em;
    font-size: clamp(66px,7.4vw,120px);
}

.aura-join-v20__lead {
    color: rgba(255,255,255,.62);
}

.aura-join-v20__jump {
    background: #fff;
    color: #111;
}

.aura-join-v20__application,
.aura-join-v20__why {
    width: min(1180px, calc(100% - 44px));
}

.aura-join-v20__application-head h2,
.aura-join-v20__why h2,
.aura-join-v20 .model-bank-form .form-section h3 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
}

.aura-join-v20 .model-bank-form input[type="submit"] {
    background: #fff;
    border-color: #fff;
    color: #111;
}

.aura-join-v20 .model-bank-form input[type="checkbox"],
.aura-join-v20 .model-bank-form input[type="radio"] {
    accent-color: var(--aura-home-accent);
}

/* Footer already matches homepage dark styling; keep typography consistent. */
.aura-site-footer--premium,
.aura-site-footer--premium * {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
}

/* ---------- Mobile consistency ---------- */
@media (max-width: 760px) {
    body:not(.home) .aura-site-header__inner {
        width: min(100% - 28px, var(--aura-home-max));
    }

    .aura-model-v43__hero-copy h1 {
        font-size: clamp(58px,15vw,92px);
        line-height: .92;
    }

    .aura-models-v31__hero h1,
    .aura-shoots-v40__hero h1 {
        font-size: clamp(62px,17vw,100px);
        line-height: .88;
    }

    .aura-shoot-v40__intro h1,
    .aura-join-v20__hero-copy h1 {
        font-size: clamp(58px,15vw,92px);
        line-height: .92;
    }
}


/* ============================================================
   AURA v4.6 — Centered Model Hero Image
   ============================================================ */

/*
 * Keep the model's Featured Image visually centered in the hero.
 * This removes the previous right-biased crop.
 */
.aura-model-v43__hero-media img {
    object-position: center center !important;
}

/* Slightly rebalance the overlay so the centered image still reads well. */
.aura-model-v43__hero-shade {
    background:
        linear-gradient(
            90deg,
            rgba(5,5,5,.91) 0%,
            rgba(5,5,5,.74) 25%,
            rgba(5,5,5,.36) 48%,
            rgba(5,5,5,.10) 72%,
            rgba(5,5,5,.15) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.12) 0%,
            rgba(0,0,0,0) 45%,
            rgba(0,0,0,.40) 100%
        );
}

/* Tablet and mobile stay centered too. */
@media (max-width: 1020px) {
    .aura-model-v43__hero-media img {
        object-position: center center !important;
    }
}

@media (max-width: 820px) {
    .aura-model-v43__hero-media img {
        object-position: center center !important;
    }
}


/* ============================================================
   AURA v4.7 — Hero Facts Card Alignment Fix
   ============================================================ */

/*
 * Keep the facts card fully inside the hero and visually aligned
 * with the model-name content instead of touching / crossing the
 * magenta section divider.
 */
.aura-model-v43__hero-inner {
    align-items: end;
    padding-bottom: 118px;
}

.aura-model-v43__facts {
    align-self: end;
    justify-self: end;
    width: min(100%, 360px);
    max-width: 360px;
    margin: 0 0 42px;
    box-sizing: border-box;
}

/* Keep all rows visible and balanced inside the card. */
.aura-model-v43__facts > div {
    min-height: 54px;
    padding: 13px 0;
    align-items: center;
}

.aura-model-v43__facts > div:first-child {
    padding-top: 4px;
}

.aura-model-v43__facts > div:last-child {
    padding-bottom: 4px;
}

/* Desktop: visually balance card with lower hero typography. */
@media (min-width: 1021px) {
    .aura-model-v43__facts {
        transform: translateY(-6px);
    }
}

/* Tablet: keep the box fully contained and centered to its column. */
@media (max-width: 1020px) {
    .aura-model-v43__hero-inner {
        padding-bottom: 104px;
    }

    .aura-model-v43__facts {
        width: 100%;
        max-width: 330px;
        margin-bottom: 34px;
        transform: none;
    }
}

/* Mobile: facts become full width and no longer sit near the divider. */
@media (max-width: 820px) {
    .aura-model-v43__hero-inner {
        padding-bottom: 88px;
    }

    .aura-model-v43__facts {
        width: 100%;
        max-width: none;
        justify-self: stretch;
        margin-bottom: 22px;
    }
}


/* ============================================================
   AURA v4.8 — Center Hero Text Block
   ============================================================ */

/*
 * Move the left-side hero text block into the visual middle of the hero
 * so the model name no longer sits too low near the magenta divider.
 */
.aura-model-v43__hero-inner {
    align-items: center;
    min-height: 100vh;
    padding-top: 120px;
    padding-bottom: 120px;
}

.aura-model-v43__hero-copy {
    align-self: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 420px;
    padding-bottom: 0;
}

.aura-model-v43__hero-copy h1 {
    margin-bottom: 18px;
}

.aura-model-v43__hero-bio {
    margin-top: 0;
}

.aura-model-v43__hero-actions {
    margin-top: 28px;
}

/*
 * Keep the facts card balanced with the centered text block.
 */
.aura-model-v43__facts {
    align-self: center;
    margin: 0;
}

@media (min-width: 1021px) {
    .aura-model-v43__hero-copy {
        transform: translateY(-8px);
    }

    .aura-model-v43__facts {
        transform: translateY(14px);
    }
}

/* Tablet */
@media (max-width: 1020px) {
    .aura-model-v43__hero-inner {
        min-height: 92vh;
        padding-top: 112px;
        padding-bottom: 96px;
        align-items: center;
    }

    .aura-model-v43__hero-copy {
        min-height: 340px;
    }

    .aura-model-v43__facts {
        margin-top: 18px;
        transform: none;
    }
}

/* Mobile */
@media (max-width: 820px) {
    .aura-model-v43__hero-inner {
        min-height: auto;
        padding-top: 108px;
        padding-bottom: 78px;
    }

    .aura-model-v43__hero-copy {
        min-height: auto;
        transform: none;
    }

    .aura-model-v43__hero-copy h1 {
        margin-bottom: 14px;
    }

    .aura-model-v43__hero-actions {
        margin-top: 22px;
    }

    .aura-model-v43__facts {
        align-self: stretch;
        margin-top: 18px;
    }
}


/* ============================================================
   AURA v5.0 — Model Hero uses separate 3:4 Hero Image
   Featured Image remains for cards/thumbnails
   ============================================================ */

/* Main hero section layout */
.aura-model-v43__hero {
    background:
        radial-gradient(circle at 8% 18%, rgba(193,0,120,.16), transparent 22%),
        linear-gradient(135deg, #060606 0%, #0b0b0a 54%, #121211 100%);
    min-height: 100vh;
    overflow: hidden;
}

.aura-model-v43__hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.64) 24%, rgba(0,0,0,.28) 42%, rgba(0,0,0,.08) 58%, rgba(0,0,0,.16) 100%);
    z-index: 1;
}

.aura-model-v43__hero-inner {
    position: relative;
    z-index: 2;
    width: min(1480px, calc(100% - 60px));
    min-height: 100vh;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, 560px);
    align-items: center;
    gap: clamp(28px, 4vw, 72px);
    padding-top: 126px;
    padding-bottom: 86px;
}

/* Text side */
.aura-model-v43__hero-copy {
    max-width: 720px;
    min-height: auto;
    justify-content: center;
    transform: none !important;
}

.aura-model-v43__hero-copy h1 {
    margin-bottom: 22px;
    max-width: 700px;
}

/* 3:4 image frame on the right */
.aura-model-v43__hero-media {
    position: relative;
    align-self: center;
    justify-self: end;
    width: min(100%, 560px);
    aspect-ratio: 3 / 4;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 28px;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(255,255,255,.03) 0%, rgba(255,255,255,.02) 100%),
        rgba(255,255,255,.02);
    box-shadow:
        0 26px 90px rgba(0,0,0,.34),
        inset 0 0 0 1px rgba(255,255,255,.07);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.aura-model-v43__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: contain !important;
    object-position: center center !important;
    background: #0b0b0a;
}

/* remove old full-bleed image overlay behavior */
.aura-model-v43__hero-shade,
.aura-model-v43__hero-glow {
    display: none !important;
}

/* Facts card aligned under/right of hero image */
.aura-model-v43__facts {
    width: min(100%, 400px);
    max-width: 400px;
    justify-self: end;
    align-self: end;
    margin: 0;
    transform: translateY(-22px);
    background: rgba(17,17,15,.62);
    border: 1px solid rgba(255,255,255,.11);
    box-shadow: 0 18px 42px rgba(0,0,0,.22);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.aura-model-v43__facts > div {
    min-height: 56px;
    padding: 13px 0;
}

.aura-model-v43__facts > div span:first-child {
    color: rgba(255,255,255,.58);
}

.aura-model-v43__facts > div span:last-child {
    color: #fff;
}

/* Make sure hero action buttons read well */
.aura-model-v43__hero-actions {
    margin-top: 28px;
}

.aura-model-v43__secondary {
    background: transparent;
    border-color: rgba(255,255,255,.36);
}

/* Keep the model name fully visible and not overlapping image */
@media (min-width: 1180px) {
    .aura-model-v43__hero-copy h1 {
        font-size: clamp(72px, 7.2vw, 118px);
    }
}

/* Tablet */
@media (max-width: 1180px) {
    .aura-model-v43__hero-inner {
        grid-template-columns: 1fr;
        width: min(100% - 40px, 960px);
        min-height: auto;
        padding-top: 116px;
        padding-bottom: 72px;
        gap: 28px;
    }

    .aura-model-v43__hero-copy {
        order: 2;
        max-width: 100%;
    }

    .aura-model-v43__hero-media {
        order: 1;
        justify-self: center;
        width: min(100%, 520px);
    }

    .aura-model-v43__facts {
        justify-self: start;
        align-self: auto;
        transform: none;
        width: min(100%, 420px);
        margin-top: 8px;
    }
}

/* Mobile */
@media (max-width: 820px) {
    .aura-model-v43__hero {
        min-height: auto;
    }

    .aura-model-v43__hero-inner {
        width: min(100% - 28px, 1000px);
        padding-top: 104px;
        padding-bottom: 56px;
        gap: 22px;
    }

    .aura-model-v43__hero-media {
        width: 100%;
        border-radius: 20px;
    }

    .aura-model-v43__hero-copy h1 {
        font-size: clamp(52px, 13vw, 78px);
        line-height: .92;
        margin-bottom: 16px;
    }

    .aura-model-v43__hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .aura-model-v43__facts {
        width: 100%;
        max-width: none;
    }
}


/* ============================================================
   AURA v5.1 — Full-Cover Model Hero
   Hero image now fills the whole section with a left-side
   dark gradient for readability. Approx. 1/4 of the hero
   carries the strongest black fade, while the remaining
   area keeps the image visible.
   ============================================================ */

.aura-model-v43__hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    background: #050505;
}

.aura-model-v43__hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.88) 0%,
            rgba(0,0,0,.82) 18%,
            rgba(0,0,0,.58) 28%,
            rgba(0,0,0,.18) 48%,
            rgba(0,0,0,.05) 72%,
            rgba(0,0,0,.12) 100%
        );
}

/* subtle premium pink glow on the left */
.aura-model-v43__hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        radial-gradient(circle at 8% 22%, rgba(212, 8, 117, .18), transparent 24%);
}

.aura-model-v43__hero-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 0;
    overflow: hidden;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    z-index: 0;
}

.aura-model-v43__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    object-position: center center !important;
    display: block;
    background: #050505;
}

/* content overlays on top of the full cover image */
.aura-model-v43__hero-inner {
    position: relative;
    z-index: 2;
    width: min(1480px, calc(100% - 70px));
    min-height: 100vh;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    align-items: end;
    gap: clamp(26px, 3vw, 56px);
    padding-top: 118px;
    padding-bottom: 72px;
}

.aura-model-v43__hero-copy {
    align-self: end;
    max-width: 720px;
    color: #fff;
}

.aura-model-v43__hero-copy h1 {
    color: #fff;
    max-width: 760px;
    margin-bottom: 18px;
    text-shadow: 0 4px 20px rgba(0,0,0,.22);
}

.aura-model-v43__hero-copy p,
.aura-model-v43__hero-copy li,
.aura-model-v43__hero-copy .aura-model-v43__eyebrow,
.aura-model-v43__hero-copy .aura-model-v43__meta,
.aura-model-v43__hero-copy .aura-model-v43__subline {
    color: rgba(255,255,255,.88);
}

.aura-model-v43__hero-actions {
    margin-top: 26px;
}

.aura-model-v43__primary {
    background: #fff;
    color: #111;
    border-color: #fff;
}

.aura-model-v43__primary:hover {
    background: #f5f5f5;
    color: #111;
}

.aura-model-v43__secondary {
    background: rgba(255,255,255,.06);
    color: #fff;
    border-color: rgba(255,255,255,.42);
}

.aura-model-v43__secondary:hover {
    background: rgba(255,255,255,.12);
    color: #fff;
}

.aura-model-v43__facts {
    width: min(100%, 360px);
    max-width: 360px;
    justify-self: end;
    align-self: end;
    margin: 0 0 10px;
    transform: none;
    background: rgba(8, 8, 8, .48);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.aura-model-v43__facts > div {
    min-height: 54px;
    padding: 13px 0;
}

.aura-model-v43__facts > div span:first-child {
    color: rgba(255,255,255,.58);
}

.aura-model-v43__facts > div span:last-child {
    color: #fff;
}

@media (min-width: 1280px) {
    .aura-model-v43__hero-copy h1 {
        font-size: clamp(74px, 7vw, 118px);
        line-height: .92;
    }
}

/* Tablet / small desktop */
@media (max-width: 1180px) {
    .aura-model-v43__hero-inner {
        width: min(100% - 42px, 1100px);
        grid-template-columns: 1fr;
        align-items: end;
        padding-top: 112px;
        padding-bottom: 54px;
        gap: 20px;
    }

    .aura-model-v43__hero-copy {
        max-width: 100%;
        align-self: end;
    }

    .aura-model-v43__facts {
        justify-self: start;
        width: min(100%, 420px);
        max-width: 420px;
        margin-bottom: 0;
    }
}

/* Mobile */
@media (max-width: 820px) {
    .aura-model-v43__hero {
        min-height: 88vh;
    }

    .aura-model-v43__hero::before {
        background:
            linear-gradient(
                180deg,
                rgba(0,0,0,.60) 0%,
                rgba(0,0,0,.72) 24%,
                rgba(0,0,0,.60) 48%,
                rgba(0,0,0,.26) 76%,
                rgba(0,0,0,.12) 100%
            );
    }

    .aura-model-v43__hero-inner {
        width: min(100% - 26px, 1000px);
        min-height: 88vh;
        padding-top: 104px;
        padding-bottom: 44px;
    }

    .aura-model-v43__hero-copy h1 {
        font-size: clamp(52px, 14vw, 78px);
        line-height: .93;
    }

    .aura-model-v43__hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .aura-model-v43__facts {
        width: 100%;
        max-width: none;
    }
}


/* ============================================================
   AURA v5.2 — Left-Side Gradient Hero Refinement
   Request:
   - Keep separate hero image + thumbnail workflow
   - Show more of the hero image
   - Use black gradient only behind the left content area
   - By the "View Portfolio" area onward, the image should stay
     more visible
   ============================================================ */

.aura-model-v43__hero {
    position: relative;
    min-height: 100vh;
    overflow: hidden;
    background: #050505;
}

.aura-model-v43__hero-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 0;
}

.aura-model-v43__hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    object-position: center center !important;
    display: block;
    background: #050505;
}

/* Main black gradient only on left content zone */
.aura-model-v43__hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.92) 0%,
            rgba(0,0,0,.86) 14%,
            rgba(0,0,0,.72) 24%,
            rgba(0,0,0,.44) 33%,
            rgba(0,0,0,.18) 40%,
            rgba(0,0,0,.06) 48%,
            rgba(0,0,0,0) 58%,
            rgba(0,0,0,.04) 100%
        );
}

/* Premium pink glow but only at left top */
.aura-model-v43__hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        radial-gradient(circle at 6% 14%, rgba(212, 8, 117, .20), transparent 18%);
}

/* Layout: keep content in the left zone, image visible on the rest */
.aura-model-v43__hero-inner {
    position: relative;
    z-index: 2;
    width: min(1480px, calc(100% - 70px));
    min-height: 100vh;
    display: grid;
    grid-template-columns: minmax(0, 720px) minmax(280px, 360px);
    align-items: end;
    justify-content: space-between;
    gap: clamp(24px, 3vw, 54px);
    padding-top: 118px;
    padding-bottom: 74px;
}

.aura-model-v43__hero-copy {
    align-self: center;
    justify-self: start;
    max-width: 640px;
    color: #fff;
    padding-top: 40px;
    padding-bottom: 28px;
}

.aura-model-v43__hero-copy h1 {
    color: #fff;
    max-width: 620px;
    margin-bottom: 18px;
    text-shadow: 0 5px 18px rgba(0,0,0,.18);
}

.aura-model-v43__hero-copy p,
.aura-model-v43__hero-copy li,
.aura-model-v43__hero-copy .aura-model-v43__eyebrow,
.aura-model-v43__hero-copy .aura-model-v43__meta,
.aura-model-v43__hero-copy .aura-model-v43__subline {
    color: rgba(255,255,255,.90);
}

.aura-model-v43__hero-actions {
    margin-top: 26px;
    gap: 14px;
    flex-wrap: wrap;
}

.aura-model-v43__primary {
    background: #fff;
    color: #111;
    border-color: #fff;
}

.aura-model-v43__primary:hover {
    background: #f3f3f3;
    color: #111;
}

.aura-model-v43__secondary {
    background: rgba(255,255,255,.04);
    color: #fff;
    border-color: rgba(255,255,255,.35);
}

.aura-model-v43__secondary:hover {
    background: rgba(255,255,255,.10);
    color: #fff;
}

/* Facts card stays on the right and does not affect image visibility */
.aura-model-v43__facts {
    width: min(100%, 360px);
    max-width: 360px;
    justify-self: end;
    align-self: end;
    margin: 0 0 6px;
    transform: none;
    background: rgba(8,8,8,.42);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 18px 40px rgba(0,0,0,.22);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.aura-model-v43__facts > div span:first-child {
    color: rgba(255,255,255,.58);
}

.aura-model-v43__facts > div span:last-child {
    color: #fff;
}

/* Bigger premium heading on large screens */
@media (min-width: 1280px) {
    .aura-model-v43__hero-copy h1 {
        font-size: clamp(72px, 6.7vw, 112px);
        line-height: .92;
    }
}

/* Tablet */
@media (max-width: 1180px) {
    .aura-model-v43__hero-inner {
        width: min(100% - 42px, 1100px);
        grid-template-columns: 1fr;
        min-height: 100vh;
        gap: 18px;
        padding-top: 112px;
        padding-bottom: 56px;
    }

    .aura-model-v43__hero-copy {
        align-self: end;
        max-width: 720px;
        padding-top: 0;
        padding-bottom: 0;
    }

    .aura-model-v43__facts {
        justify-self: start;
        width: min(100%, 420px);
        max-width: 420px;
        margin-bottom: 0;
    }
}

/* Mobile */
@media (max-width: 820px) {
    .aura-model-v43__hero {
        min-height: 88vh;
    }

    .aura-model-v43__hero::before {
        background:
            linear-gradient(
                180deg,
                rgba(0,0,0,.74) 0%,
                rgba(0,0,0,.68) 20%,
                rgba(0,0,0,.48) 42%,
                rgba(0,0,0,.26) 70%,
                rgba(0,0,0,.10) 100%
            );
    }

    .aura-model-v43__hero-inner {
        width: min(100% - 26px, 1000px);
        min-height: 88vh;
        padding-top: 104px;
        padding-bottom: 42px;
    }

    .aura-model-v43__hero-copy {
        max-width: 100%;
        align-self: end;
    }

    .aura-model-v43__hero-copy h1 {
        font-size: clamp(52px, 14vw, 78px);
        line-height: .93;
        max-width: 100%;
    }

    .aura-model-v43__hero-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .aura-model-v43__facts {
        width: 100%;
        max-width: none;
    }
}


/* ============================================================
   AURA v5.3 — Homepage / Models Image Sync
   ============================================================ */

/*
 * Homepage model cards and Aura Models archive now share the exact
 * same model-card image source and portrait crop.
 */
.aura-model-card__image img,
.aura-models-v31__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* Keep archive presentation clean when imported images vary in size. */
.aura-models-v31__image {
    background: #ddd6cf;
}


/* ============================================================
   AURA v5.4 — Featured Image Is the Main Card Image
   ============================================================ */

/*
 * Homepage model cards and Aura Models archive use exactly the same
 * WordPress Featured Image. No gallery/content/hero fallback.
 */
.aura-model-card__image,
.aura-models-v31__image {
    overflow: hidden;
    background: #ddd6cf;
}

.aura-model-card__image img,
.aura-models-v31__image img,
.aura-model-v43__related-card img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    display: block;
    object-fit: cover !important;
    object-position: center center !important;
}

/* Keep model cards visually consistent without changing the image source. */
.aura-model-card__image {
    aspect-ratio: 3 / 4;
}

.aura-models-v31__image {
    aspect-ratio: 3 / 4;
}

/* Related-model cards also use the same Featured Image source. */
.aura-model-v43__related-card {
    overflow: hidden;
}


/* ============================================================
   AURA v5.5 — Hero Image = Showcase Image
   ============================================================ */

/*
 * The selected "Aura Model Hero Image" is now the primary image for:
 * - Homepage model showcase
 * - Aura Models / Portfolio page
 * - Related Models
 * - Individual model hero
 *
 * Featured Image is only used as fallback when no Hero Image is selected.
 */
.aura-model-card__image img,
.aura-models-v31__image img,
.aura-model-v43__related-card img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    display: block;
    object-fit: cover !important;
    object-position: center center !important;
}


/* ============================================================
   AURA v5.6 — Aura Models Organized Premium Grid
   ============================================================ */

.aura-models-v56 {
    --m56-bg: #f4f1ec;
    --m56-paper: #fbfaf7;
    --m56-ink: #11110f;
    --m56-muted: #6b655f;
    --m56-line: rgba(17,17,15,.12);
    --m56-dark: #0b0b0a;
    --m56-accent: #c10078;
    background: var(--m56-bg);
    color: var(--m56-ink);
    overflow: hidden;
}

.aura-models-v56__hero,
.aura-models-v56__roster,
.aura-models-v56__pagination {
    width: min(1440px, calc(100% - 56px));
    margin: 0 auto;
}

.aura-models-v56__hero {
    min-height: 450px;
    padding: clamp(80px,8vw,126px) 0 clamp(66px,7vw,100px);
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(320px,.65fr);
    gap: clamp(56px,8vw,120px);
    align-items: end;
    border-bottom: 1px solid var(--m56-line);
}

.aura-models-v56__kicker {
    margin: 0 0 14px;
    color: var(--m56-muted);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.aura-models-v56__hero h1 {
    margin: 0;
    font-family: "Helvetica Neue", Arial, sans-serif;
    font-size: clamp(82px,9vw,146px);
    line-height: .76;
    font-weight: 320;
    letter-spacing: -.075em;
}

.aura-models-v56__hero h1 span {
    color: var(--m56-accent);
}

.aura-models-v56__hero-copy {
    max-width: 520px;
    padding-bottom: 8px;
}

.aura-models-v56__hero-copy > p {
    margin: 0;
    color: var(--m56-muted);
    font-size: 15px;
    line-height: 1.75;
}

.aura-models-v56__hero-meta {
    margin-top: 26px;
    display: flex;
    gap: 22px;
    color: #8a837d;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-models-v56__hero-meta span + span::before {
    content: "·";
    margin-right: 22px;
}

.aura-models-v56__roster {
    padding: clamp(68px,7vw,106px) 0 clamp(80px,9vw,130px);
}

.aura-models-v56__roster-head {
    margin-bottom: 38px;
    display: grid;
    grid-template-columns: minmax(0,1fr) minmax(320px,.58fr);
    align-items: end;
    gap: 44px;
}

.aura-models-v56__roster-head h2 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px,5.4vw,78px);
    line-height: .92;
    font-weight: 400;
    letter-spacing: -.045em;
}

.aura-models-v56__roster-head > p {
    max-width: 460px;
    margin: 0 0 6px;
    color: var(--m56-muted);
    font-size: 12px;
    line-height: 1.75;
}

/* The key fix: disciplined equal-width roster. */
.aura-models-v56__grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: clamp(34px,4.2vw,68px) clamp(14px,1.8vw,26px);
    align-items: start;
}

.aura-models-v56__card {
    min-width: 0;
}

.aura-models-v56__image {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #ddd6cf;
    color: #fff;
    text-decoration: none;
}

.aura-models-v56__image img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center center;
    transition: transform .65s cubic-bezier(.2,.7,.2,1);
}

.aura-models-v56__card:hover .aura-models-v56__image img {
    transform: scale(1.025);
}

.aura-models-v56__shade {
    position: absolute;
    inset: 0;
    opacity: .78;
    background:
        linear-gradient(180deg,rgba(0,0,0,.08),transparent 48%),
        linear-gradient(0deg,rgba(0,0,0,.62),transparent 42%);
    transition: opacity .3s ease;
}

.aura-models-v56__card:hover .aura-models-v56__shade {
    opacity: .96;
}

.aura-models-v56__index {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
    font-size: 8px;
    letter-spacing: .14em;
}

.aura-models-v56__view {
    position: absolute;
    z-index: 2;
    left: 14px;
    right: 14px;
    bottom: 13px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    opacity: 0;
    transform: translateY(6px);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
    transition: opacity .3s ease, transform .3s ease;
}

.aura-models-v56__view i {
    font-style: normal;
    font-size: 16px;
}

.aura-models-v56__card:hover .aura-models-v56__view {
    opacity: 1;
    transform: translateY(0);
}

.aura-models-v56__info {
    padding-top: 13px;
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 18px;
}

.aura-models-v56__info h3 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(22px,2vw,30px);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -.035em;
}

.aura-models-v56__info h3 a {
    color: inherit;
    text-decoration: none;
}

.aura-models-v56__info p {
    margin: 7px 0 0;
    color: #89827b;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .13em;
    line-height: 1.5;
    text-transform: uppercase;
}

.aura-models-v56__height {
    padding-top: 4px;
    color: #8a837c;
    font-size: 8px;
    letter-spacing: .11em;
    white-space: nowrap;
}

.aura-models-v56__placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: #766f68;
    font-family: Georgia,serif;
    font-size: 38px;
}

.aura-models-v56__pagination {
    padding: 0 0 clamp(80px,8vw,116px);
}

.aura-models-v56__pagination .nav-links {
    display: flex;
    gap: 5px;
    align-items: center;
}

.aura-models-v56__pagination .page-numbers {
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    display: inline-grid;
    place-items: center;
    border: 1px solid var(--m56-line);
    color: var(--m56-ink);
    text-decoration: none;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.aura-models-v56__pagination .page-numbers.current {
    background: var(--m56-ink);
    color: #fff;
    border-color: var(--m56-ink);
}

.aura-models-v56__cta {
    padding: clamp(72px,7vw,108px) max(28px,calc((100vw - 1440px)/2));
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 44px;
    background: var(--m56-dark);
    color: #fff;
}

.aura-models-v56__cta .aura-models-v56__kicker {
    color: rgba(255,255,255,.46);
}

.aura-models-v56__cta h2 {
    max-width: 850px;
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(48px,5.6vw,82px);
    line-height: .9;
    font-weight: 400;
    letter-spacing: -.05em;
}

.aura-models-v56__cta > a {
    min-width: 220px;
    padding: 16px 18px;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    background: #fff;
    color: #111;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-models-v56__empty {
    width: min(1440px,calc(100% - 56px));
    margin: 0 auto;
    padding: 100px 0;
}

@media (max-width: 980px) {
    .aura-models-v56__hero,
    .aura-models-v56__roster,
    .aura-models-v56__pagination {
        width: min(100% - 36px,1440px);
    }

    .aura-models-v56__hero,
    .aura-models-v56__roster-head {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .aura-models-v56__grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 44px 12px;
    }

    .aura-models-v56__view {
        opacity: 1;
        transform: none;
    }
}

@media (max-width: 620px) {
    .aura-models-v56__hero,
    .aura-models-v56__roster,
    .aura-models-v56__pagination {
        width: calc(100% - 20px);
    }

    .aura-models-v56__hero {
        min-height: 0;
        padding-top: 70px;
    }

    .aura-models-v56__hero h1 {
        font-size: clamp(68px,19vw,100px);
        line-height: .8;
    }

    .aura-models-v56__grid {
        grid-template-columns: 1fr;
        gap: 42px;
    }

    .aura-models-v56__info h3 {
        font-size: 27px;
    }

    .aura-models-v56__cta {
        padding-left: 14px;
        padding-right: 14px;
        align-items: flex-start;
        flex-direction: column;
    }

    .aura-models-v56__cta > a {
        width: 100%;
        box-sizing: border-box;
    }
}


/* ============================================================
   AURA v5.7 — LOCKED FINAL SHOOT LAYOUT
   The following shoot section is intentionally isolated.
   Model/homepage amendments must not replace this shoot layout.
   ============================================================ */

/* ============================================================
   AURA v5.5 — SHOOTS MATCH THE MODEL CONTENT WORKFLOW
   ============================================================ */

.aura-shoot-v55 {
    --shoot-bg: #f4f1ec;
    --shoot-ink: #11110f;
    --shoot-dark: #0b0b0a;
    --shoot-accent: #c10078;
    --shoot-line: rgba(17,17,15,.13);
    background: var(--shoot-bg);
    color: var(--shoot-ink);
    overflow: hidden;
}

.aura-shoot-v55__hero {
    position: relative;
    min-height: 100svh;
    height: max(720px,100svh);
    overflow: hidden;
    background: #080808;
    color: #fff;
}

.aura-shoot-v55__hero-media {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.aura-shoot-v55__hero-media img {
    width: 100%;
    height: 100%;
    max-width: none;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.aura-shoot-v55__hero-gradient {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.94) 0%,
            rgba(0,0,0,.86) 15%,
            rgba(0,0,0,.66) 27%,
            rgba(0,0,0,.32) 40%,
            rgba(0,0,0,.08) 52%,
            rgba(0,0,0,0) 62%,
            rgba(0,0,0,0) 100%
        ),
        linear-gradient(
            180deg,
            rgba(0,0,0,.08),
            transparent 55%,
            rgba(0,0,0,.22)
        );
}

.aura-shoot-v55__hero-inner {
    position: relative;
    z-index: 2;
    width: min(1440px,calc(100% - 56px));
    min-height: 100svh;
    margin: 0 auto;
    padding: 120px 0 72px;
    display: flex;
    align-items: center;
}

.aura-shoot-v55__hero-copy {
    max-width: 680px;
}

.aura-shoot-v55__hero-copy h1 {
    max-width: 740px;
    margin: 0;
    font-family: "Helvetica Neue",Arial,sans-serif;
    font-size: clamp(68px,7vw,116px);
    line-height: .90;
    font-weight: 320;
    letter-spacing: -.065em;
}

.aura-shoot-v55__hero-meta {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 26px;
    color: rgba(255,255,255,.62);
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v55__hero-meta a {
    color: #fff;
    text-decoration: none;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(255,255,255,.24);
}

.aura-shoot-v55__view {
    width: fit-content;
    min-width: 190px;
    margin-top: 30px;
    padding: 16px 18px;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    gap: 28px;
    background: #fff;
    color: #111;
    text-decoration: none;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.aura-shoot-v55__gallery-section {
    width: min(1440px,calc(100% - 48px));
    margin: 0 auto;
    padding: clamp(82px,9vw,132px) 0;
}

.aura-shoot-v55__heading {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 40px;
    align-items: end;
    margin-bottom: 36px;
}

.aura-shoot-v55__heading h2 {
    margin: 0;
    font-family: Georgia,"Times New Roman",serif;
    font-size: clamp(52px,6vw,88px);
    line-height: .90;
    font-weight: 400;
    letter-spacing: -.05em;
}

.aura-shoot-v55__heading h2 span {
    color: var(--shoot-accent);
}

.aura-shoot-v55__heading > span {
    margin-bottom: 7px;
    color: #756f68;
    font-size: 8px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

/* Natural photography masonry from Content */
.aura-shoot-v55__gallery {
    column-count: 3;
    column-gap: 8px;
}

.aura-shoot-v55__item {
    width: 100%;
    display: inline-block;
    margin: 0 0 8px;
    break-inside: avoid;
    overflow: hidden;
    background: #ddd5cd;
}

.aura-shoot-v55__item > a {
    position: relative;
    display: block;
    cursor: zoom-in;
}

.aura-shoot-v55__item img {
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    display: block;
}

.aura-shoot-v55__item a > span {
    position: absolute;
    right: 9px;
    bottom: 8px;
    padding: 3px 4px;
    background: rgba(0,0,0,.20);
    color: rgba(255,255,255,.86);
    font-size: 8px;
    letter-spacing: .14em;
}

.aura-shoot-v55__footer {
    width: min(1440px,calc(100% - 48px));
    margin: 0 auto;
    padding: 24px 0 clamp(80px,9vw,130px);
    display: flex;
    justify-content: space-between;
    gap: 24px;
    border-top: 1px solid var(--shoot-line);
    color: #7b746d;
    font-size: 8px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.aura-shoot-v55__footer a {
    color: var(--shoot-ink);
    text-decoration: none;
}

@media (max-width: 960px) {
    .aura-shoot-v55__gallery {
        column-count: 2;
    }
}

@media (max-width: 760px) {
    .aura-shoot-v55__hero {
        min-height: 88svh;
        height: auto;
    }

    .aura-shoot-v55__hero-gradient {
        background:
            linear-gradient(
                180deg,
                rgba(0,0,0,.42) 0%,
                rgba(0,0,0,.26) 35%,
                rgba(0,0,0,.50) 68%,
                rgba(0,0,0,.82) 100%
            );
    }

    .aura-shoot-v55__hero-inner {
        width: calc(100% - 24px);
        min-height: 88svh;
        padding-top: 104px;
        padding-bottom: 42px;
        align-items: end;
    }

    .aura-shoot-v55__hero-copy h1 {
        font-size: clamp(54px,14vw,82px);
    }

    .aura-shoot-v55__gallery-section,
    .aura-shoot-v55__footer {
        width: calc(100% - 20px);
    }

    .aura-shoot-v55__heading {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .aura-shoot-v55__gallery {
        column-count: 1;
    }

    .aura-shoot-v55__footer {
        flex-direction: column;
    }
}


/* ============================================================
   AURA v5.9 — Homepage Models in Multiple Rows
   Base: v5.8 email-routing build.
   Only the homepage Models grid is changed.
   ============================================================ */

.aura-models-section .aura-model-strip {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    column-gap: clamp(12px, 1.6vw, 26px) !important;
    row-gap: clamp(38px, 4vw, 58px) !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
    scroll-snap-type: none !important;
}

/* Never hide homepage model cards in the multi-row grid. */
.aura-models-section .aura-model-card,
.aura-models-section .aura-model-card:nth-child(n) {
    display: block !important;
    min-width: 0;
    flex: initial !important;
    scroll-snap-align: none !important;
}

.aura-models-section .aura-model-card__image {
    width: 100%;
    aspect-ratio: 3 / 4;
}

.aura-models-section .aura-model-card h3 {
    margin-top: 14px;
}

/* Small desktop / large tablet: 4 columns */
@media (max-width: 1180px) {
    .aura-models-section .aura-model-strip {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        row-gap: 44px !important;
    }
}

/* Tablet: 3 columns */
@media (max-width: 920px) {
    .aura-models-section .aura-model-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 14px !important;
        row-gap: 38px !important;
    }
}

/* Small tablet / large phone: 2 columns */
@media (max-width: 680px) {
    .aura-models-section .aura-model-strip {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 34px 10px !important;
        overflow: visible !important;
    }

    .aura-models-section .aura-model-card {
        width: auto !important;
        flex: initial !important;
    }

    .aura-models-section .aura-model-card h3 {
        font-size: 14px;
        margin-top: 11px;
    }

    .aura-models-section .aura-model-card p {
        font-size: 7px;
    }
}

/* Narrow phone: 1 premium column */
@media (max-width: 420px) {
    .aura-models-section .aura-model-strip {
        grid-template-columns: 1fr !important;
        row-gap: 38px !important;
    }

    .aura-models-section .aura-model-card__image {
        aspect-ratio: 4 / 5;
    }

    .aura-models-section .aura-model-card h3 {
        font-size: 18px;
    }
}
