.models { overflow:hidden; padding:110px 0 96px; background:linear-gradient(135deg,#fff9ef 0%,#f5edff 100%); border-bottom:3px solid var(--ink); }
.models-heading { max-width:720px; margin:0 auto 44px; padding:0 32px; text-align:center; }
.models-heading h2 { margin-bottom:15px; }
.models-heading > p:last-child { margin:0; }
.models-carousel-wrap { display:flex; align-items:center; gap:14px; max-width:1280px; margin:0 auto; padding:0 22px; }
.models-carousel { display:flex; gap:20px; width:100%; overflow-x:auto; padding:7px 3px 20px; scrollbar-width:none; scroll-snap-type:x mandatory; scroll-behavior:smooth; }
.models-carousel::-webkit-scrollbar { display:none; }
.model-card { flex:0 0 min(370px,76vw); margin:0; overflow:hidden; background:white; border:3px solid var(--ink); border-radius:20px; box-shadow:7px 7px 0 var(--gold); scroll-snap-align:start; transform:rotate(-1.4deg); }
.model-card:nth-child(even) { transform:rotate(1.4deg); box-shadow:7px 7px 0 var(--aqua); }
.model-card img { display:block; width:100%; aspect-ratio:1/1; object-fit:cover; }
.model-card-featured img { object-position:center 38%; }
.model-card figcaption { display:grid; gap:3px; padding:15px 17px 18px; }
.model-card b { font:700 1.35rem "Fraunces",serif; }
.model-card span { font-size:.88rem; line-height:1.35; }
.carousel-control { flex:0 0 auto; width:46px; height:46px; padding:0; color:var(--ink); background:var(--lime); border:2px solid var(--ink); border-radius:50%; font-size:1.45rem; font-weight:700; cursor:pointer; }
.carousel-control:hover { background:var(--pink); color:white; }
.carousel-note { margin:18px 0 0; padding:0 22px; color:#8e2461; text-align:center; font-size:.85rem; font-weight:700; }
.nav .brand small { display:block; margin-top:4px; color:var(--ink); font:500 .55rem/1 "DM Sans",sans-serif; letter-spacing:.1em; text-transform:uppercase; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .models-carousel { scroll-behavior:auto; } }
@media (max-width:760px) { .models { padding-top:75px; padding-bottom:64px; } .models-heading { padding:0 22px; margin-bottom:30px; } .models-carousel-wrap { gap:9px; padding:0 10px; } .carousel-control { width:38px; height:38px; font-size:1.15rem; } .model-card { flex-basis:78vw; } }
