/* Portfolio-specific styles. Shared Born components remain in site.css. */
.makeup-portfolio-page .header{background:#fff;color:var(--ink)}
.makeup-intro{padding:150px 6% 35px;color:var(--ink);max-width:1800px;margin:auto}
.makeup-intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}
.makeup-intro h1{font-size:clamp(65px,7.7vw,128px);line-height:1.02;margin:20px 0 24px}
.makeup-intro h1 em{font-weight:400;position:relative;isolation:isolate}
.makeup-intro-copy{max-width:600px}.makeup-intro-copy p{font-size:clamp(17px,1.3vw,21px);margin:0 0 14px}.makeup-intro-copy p:first-child{font-weight:600;color:var(--ink)}
.makeup-collection{padding:0 4% 70px;max-width:1800px;margin:auto}
.makeup-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0 22px;padding:0 2.2%;color:var(--ink)}
.makeup-gallery-heading p{font-size:14px;margin:0}.makeup-gallery-heading p span{color:var(--ink);margin-left:8px}
.makeup-gallery{display:flex;flex-direction:column;gap:20px}.makeup-row{display:flex;gap:20px;align-items:start}
.makeup-look{display:block;flex-basis:0;min-width:0;border-radius:var(--photo-radius);overflow:hidden;background:#f4f5f6;position:relative}
.makeup-look img{width:100%;height:auto;aspect-ratio:var(--ratio);transition:opacity .25s}
.makeup-look:after{content:'';background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23162544' stroke-width='1.8'%3E%3Cpath d='M5 19 19 5M5 5h14v14'/%3E%3C/svg%3E");background-size:18px;background-repeat:no-repeat;background-position:center;display:grid;place-items:center;position:absolute;bottom:14px;right:14px;width:40px;height:40px;border-radius:50%;background-color:white;color:var(--ink);opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;pointer-events:none}
.makeup-look:hover:after,.makeup-look:focus-visible:after{opacity:1;transform:none}
.makeup-look:focus-visible{outline-offset:4px}.makeup-invitation{background:var(--blue);padding:85px 7% 95px}
.makeup-invitation h2{font-size:clamp(58px,6.7vw,105px);margin:20px 0 28px}.makeup-invitation p{position:relative;z-index:1;margin:0 0 18px;max-width:640px}.makeup-invitation .cta{margin-top:14px}
.makeup-invitation .flower.six{opacity:.45;width:44vw;height:44vw;bottom:-16vw;right:-10vw}
.makeup-viewer{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;border:0;padding:80px 75px 50px;background:#162544f7;color:white;overflow:hidden}
.makeup-viewer::backdrop{background:var(--ink)}.makeup-viewer[open]{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:15px;align-items:center}
.makeup-viewer figure{margin:0;height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.viewer-image{display:block;max-height:calc(100dvh - 175px);max-width:100%;width:auto;height:auto;object-fit:contain;border-radius:12px;touch-action:pan-y pinch-zoom}
.makeup-viewer button{border:1px solid #ffffff66;background:transparent;color:white;min-width:44px;min-height:44px;border-radius:50%;font-size:24px}
.makeup-viewer button:hover{background:var(--pink);color:var(--ink)}.makeup-viewer .viewer-close{position:absolute;top:20px;right:25px;border-radius:30px;padding:8px 18px;font-size:16px;display:flex;gap:15px;align-items:center}
.viewer-close span{font-size:28px}.viewer-status{font-size:14px;letter-spacing:.08em;min-height:21px}.viewer-error{font-size:17px;text-align:center}.viewer-error[hidden]{display:none}
@media(max-width:899px){.makeup-intro{padding-top:125px}.makeup-intro-grid{grid-template-columns:1fr;gap:0}.makeup-intro h1{font-size:clamp(62px,10vw,90px);margin-bottom:25px}.makeup-intro-copy{max-width:650px}.makeup-intro-copy p{font-size:18px}.makeup-gallery-heading{align-items:start;flex-direction:column;gap:10px}.makeup-collection{padding-left:5%;padding-right:5%}.makeup-gallery,.makeup-row{gap:16px}.makeup-viewer{padding:75px 15px 35px}.makeup-viewer[open]{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}}
@media(max-width:539px){.makeup-intro{padding:115px 6% 22px}.makeup-intro h1{font-size:clamp(58px,14vw,76px)}.makeup-intro-copy p{font-size:17px}.makeup-collection{padding-bottom:40px}.makeup-gallery-heading .mini-label{font-size:10px}.makeup-row{flex-direction:column}.makeup-look{width:100%;flex-basis:auto}.makeup-invitation{padding:60px 6% 70px}.makeup-invitation h2{font-size:58px}.makeup-invitation p{font-size:19px}.makeup-invitation .flower.six{width:85vw;height:85vw;right:-28vw;bottom:-25vw}.makeup-viewer[open]{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 44px}.makeup-viewer figure{grid-row:1;grid-column:1}.makeup-viewer .viewer-prev,.makeup-viewer .viewer-next{position:absolute;bottom:20px;width:48px;height:48px}.viewer-prev{left:25px}.viewer-next{right:25px}.viewer-image{max-height:calc(100dvh - 190px)}}
@media(prefers-reduced-motion:reduce){.makeup-look:after,.makeup-look img{transition:none}}

.makeup-gallery-heading p svg{display:inline-block;vertical-align:middle;margin-left:8px}.makeup-invitation .cta svg{flex-shrink:0}
.viewer-image[hidden]{display:none}
