/* The supplied collection hero, with live typography and navigation. */
.header .desktop-nav{margin-left:auto;gap:3vw}.header .desktop-nav a{font:500 1.05vw/1.4 'Cormorant Garamond',Georgia,serif;letter-spacing:.13em}.header-socials{display:flex;align-items:center;gap:1.3vw;margin-left:1.8vw}.header-socials a{display:flex;transition:color .3s}.header-socials a:hover{color:#a9dcef}.header-socials svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.header .menu-toggle{margin-left:0}.header .menu-toggle span{width:32px}
.hero{height:50.11vw;min-height:100svh;max-height:none;background:#07141c}
.hero-image img{object-position:center;object-fit:cover}
.hero-image picture{display:block;width:100%;height:100%}
.hero-copy{left:4.42%;top:19%;right:auto}
.hero-copy h1{font-size:8.35vw;line-height:.72;letter-spacing:-.048em;margin:0;font-weight:400}
.hero-copy h1 span:first-child{margin-bottom:.55vw;transform:none}
.hero-copy h1 span:nth-child(2){transform:none}
.hero-copy h1 em{font-weight:400;color:#a9dcef}
.hero-divider{position:absolute;left:4.42%;top:48.3%;width:4.35vw;height:1px;background:#b8e6f2}
.hero-description{left:4.42%;top:52.5%;bottom:auto;right:auto;font-size:1.7vw;line-height:1.24;letter-spacing:-.025em}
.hero-collection-link{position:absolute;left:4.42%;top:63.25%;width:24.45%;height:7.3%;border:1px solid #edf3f5;border-radius:999px;display:flex;align-items:center;justify-content:space-between;padding:0 2.15vw;color:#f5f6f6;font:500 .86vw/1.2 Inter,Arial,sans-serif;letter-spacing:.24em;transition:background .35s,color .35s}
.hero-collection-link svg{width:1.55vw;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0;margin-left:12px}
.hero-collection-link:hover{background:#dcecf3;color:#081923}
.hero .credentials{left:4.42%;top:65%;bottom:auto;min-height:0;border:0;padding:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:1.5vw;font-size:.7vw;letter-spacing:.23em}
.hero .credentials>span{display:flex;align-items:center;gap:1vw;white-space:nowrap}
.hero .credentials>span+span{border-left:1px solid #b8c8ce;padding-left:1.5vw}
.hero .credentials svg{width:1.5vw;height:1.6vw;fill:none;stroke:#bbe7f6;stroke-width:1.15;flex-shrink:0}
.hero .credentials>span+span svg{width:1.8vw}
@media(min-width:651px) and (max-width:1100px){.hero{min-height:720px}.hero-copy{top:24%}.hero-copy h1{font-size:8.6vw}.hero-description{font-size:2vw}.hero-collection-link{width:32%;font-size:1.1vw}.hero .credentials{font-size:.85vw}}
@media(max-width:650px){
 .header-socials{margin-left:auto;gap:10px}.header-socials svg{width:19px;height:19px}.header .brand-name{font-size:14px}.header .brand-caption{font-size:5px}.header .brand{gap:7px}.header .brand-mark{--mark:29px}.header{gap:10px;padding:0 16px}.header .menu-toggle{width:26px}.header .menu-toggle span{width:24px}
 .hero{height:900px;min-height:100svh}
 .hero-image{inset:0}
 .hero-image img{position:static;width:100%;height:100%;max-width:none;transform:none;object-fit:cover;object-position:center;mask-image:none}
 .hero-image::after{background:linear-gradient(#07141c30,transparent 35%,transparent 68%,#07141c55)}
 .hero-copy{left:22px;right:15px;top:140px}
 .hero-copy h1{font-size:clamp(55px,12vw,78px);line-height:.82}
 .hero-copy h1 span:first-child{margin-bottom:5px}
 .hero-divider{top:auto;bottom:235px;left:24px;width:48px}
 .hero-description{top:auto;bottom:159px;left:24px;right:24px;font-size:20px;line-height:1.25}
 .hero-description br{display:none}
 .hero-collection-link{top:auto;bottom:86px;left:24px;width:calc(100% - 48px);height:50px;padding:0 24px;font-size:10px;letter-spacing:.2em}
 .hero-collection-link svg{width:25px}
 .hero .credentials{top:auto;bottom:105px;left:24px;right:20px;gap:12px;font-size:7px;letter-spacing:.13em}
 .hero .credentials>span{gap:8px}
 .hero .credentials>span+span{padding-left:12px}
 .hero .credentials svg{width:19px;height:21px}.hero .credentials>span+span svg{width:23px}
}

.header .header-socials{margin-left:auto}

/* Video hero: preserve the source composition and protect text contrast. */
.hero-image video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-image::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(3,14,23,.86),rgba(3,14,23,.55) 34%,transparent 68%)}
@media(max-width:650px){.hero-image video{object-fit:cover;object-position:center;background:#07141c}.hero-image::after{background:linear-gradient(180deg,#07141c88,transparent 38%,transparent 64%,#07141c88)}}

/* Full-viewport video cover on every screen. */
.hero{height:100svh;min-height:100svh}
@media(max-width:650px){.hero-copy{top:clamp(110px,17svh,140px)}.hero-description{bottom:104px}.hero-divider{bottom:192px}.hero .credentials{bottom:54px}}

@media(max-width:650px){.hero-image::after{background:rgba(3,14,23,.16)}.hero-copy,.hero-description,.credentials{text-shadow:0 2px 10px #03101dcc}}

.fine-image video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.fine-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#edf2f655 76%,#edf2f6bb)}
@media(max-width:650px){.fine-image video{object-position:40% center}.fine-image::after{background:none}}

/* Continuous showroom background behind Alan and his biography. */
.meet-allan{background:#101a22;color:#faf5eb}.meet-allan::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 44%,#06101b77 60%,#06101b99)}
.meet-allan .allan-mobile-copy{z-index:1;color:#faf5eb;text-shadow:0 2px 12px #0009}.meet-allan .allan-mobile-copy p{color:#faf5eb}.meet-allan .allan-mobile-copy hr{border-color:#c9a46b}
@media(max-width:650px){.meet-allan::after{display:none}.meet-allan .allan-mobile-copy{background:linear-gradient(#07121c99,#07121cbb),url('assets/meet-alan-showroom.webp') right center/auto 100%}}

.contact-section{background-color:#0b2638;background-image:url('assets/contact-blue-silk.webp')}.contact-copy{color:#edf6fc}.contact-copy h2,.contact-copy address{color:inherit}.contact-copy a{color:inherit}
/* Original editorial portrait restored in the second section. */
.fine-image::after{background:none}
/* One mobile Alan section: a single portrait followed by the biography. */
@media(max-width:650px){
 .meet-allan{display:flex;flex-direction:column;min-height:100svh;background:#101a22}
 .meet-allan .allan-reference{width:100%;max-width:100%;height:50svh;min-height:260px;max-height:460px;object-fit:cover;object-position:left center}
 .meet-allan .allan-mobile-copy{position:relative;inset:auto;transform:none;background:none;padding:24px 26px 30px;text-shadow:none}
 .meet-allan .allan-mobile-copy h2{font-size:clamp(42px,10.8vw,54px);margin:0 0 12px}
 .meet-allan .allan-mobile-copy>span{font-size:9px;letter-spacing:.18em}
 .meet-allan .allan-mobile-copy hr{margin:20px 0}
 .meet-allan .allan-mobile-copy p{font-size:20px;line-height:1.3;margin:0}
}
/* Extend the single portrait through the whole mobile chapter. */
@media(max-width:650px){
 .meet-allan{min-height:100svh;isolation:isolate}
 .meet-allan .allan-reference{position:absolute;inset:0;width:100%;height:100%;min-height:0;max-height:none;object-fit:cover;object-position:10% center;z-index:-2}
 .meet-allan::after{display:block;z-index:-1;background:linear-gradient(180deg,transparent 35%,#07121c33 50%,#07121ccc 73%,#07121cef 100%)}
 .meet-allan .allan-mobile-copy{margin-top:auto;padding:44svh 26px 32px;background:none}
}
/* Full-height mobile editorial photograph. */
@media(max-width:650px){
 .fine-jewelry{min-height:max(100svh,720px);aspect-ratio:auto}
 .fine-jewelry .fine-image{inset:0;height:100%}
 .fine-jewelry .fine-image img{object-position:18% center}
 .fine-jewelry::after{inset:0;background:linear-gradient(180deg,transparent 48%,#edf2f608 58%,#edf2f666 78%,#edf2f68c 100%)}
 .fine-jewelry .fine-copy{padding:48svh 26px 36px}
 .fine-jewelry .fine-copy h2{margin-top:18px;margin-bottom:20px}
}
/* Unified navy typography and filled appointment action. */
.fine-copy,.fine-copy .eyebrow,.fine-copy h2,.fine-copy h2 em,.fine-copy p{color:#0b2638}
.fine-copy .collection-link{background:#0b2638;border-color:#0b2638;color:#fff}
.fine-copy .collection-link:hover,.fine-copy .collection-link:focus-visible{background:#153e56;border-color:#153e56;color:#fff}
/* Calligraphic opening initial paired with the existing serif title. */
@font-face{font-family:'Great Vibes';src:url('assets/GreatVibes-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.fine-copy h2,.fine-copy h2 em{color:#000}
.fine-copy h2 .fine-initial{display:inline-block;font-family:'Great Vibes',cursive;font-size:1.2em;font-style:normal;font-weight:400;line-height:.7;letter-spacing:0;margin-right:.015em;vertical-align:-.015em}
.fine-copy p{color:#000}
.fine-copy .collection-link,.fine-copy .collection-link:hover,.fine-copy .collection-link:focus-visible{background:#000;border-color:#000;color:#fff}
/* Navy sampled from the supplied fabric reference. */
.fine-copy,.fine-copy h2,.fine-copy h2 em,.fine-copy p{color:#171c2b}
.fine-copy .eyebrow,.fine-copy h2,.fine-copy h2 em,.fine-copy p{color:#171c2b}
.fine-copy .collection-link,.fine-copy .collection-link:hover,.fine-copy .collection-link:focus-visible{background:#171c2b;border-color:#171c2b;color:#fff}
/* Move the Fine Jewelry copy slightly left on desktop. */
@media(min-width:1101px){.fine-copy{left:57%;right:9.5%}}
/* Direct contact links with the ring on the right. */
.contact-section{display:flex;align-items:center;min-height:100svh;padding:90px 7.7%;isolation:isolate;overflow:hidden;background:#0b2638}
.contact-section::before{content:'';position:absolute;inset:0;z-index:-2;background:url('assets/contact-blue-silk.webp') center/cover no-repeat;transform:scaleX(-1)}
.contact-section::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#04172788,transparent 65%);pointer-events:none}
.contact-copy{width:48%}
.contact-copy address{margin-top:55px;gap:26px;font-size:clamp(11px,1vw,16px);line-height:1.6}
.contact-copy address>a{text-decoration:none;gap:20px}
.contact-copy address svg{width:27px;height:29px;flex-shrink:0}
.contact-socials{display:flex;align-items:center;gap:20px;margin-top:40px}
.contact-socials a{display:grid;place-items:center;width:44px;height:44px;color:#edf6fc;border:1px solid #edf6fc55;border-radius:50%}
.contact-socials svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
.contact-copy a:hover{opacity:.75}.contact-copy a:focus-visible{outline:1px solid currentColor;outline-offset:5px}
@media(max-width:650px){.contact-section{align-items:flex-start;min-height:850px;padding:100px 26px 380px}.contact-copy{width:100%}.contact-copy address{margin-top:32px;gap:22px;font-size:11px;letter-spacing:.04em}.contact-section::before{background-size:auto 100%;background-position:22% center}.contact-section::after{background:linear-gradient(180deg,#04172799,transparent 65%)}.contact-socials{margin-top:28px}}
.contact-copy address .contact-phone{display:flex;align-items:center;gap:20px}
@media(max-width:650px){.contact-copy h2{font-size:74px}.contact-copy address{font-size:12px;letter-spacing:.025em}.contact-copy address>a,.contact-copy address .contact-phone{gap:16px}.contact-copy address>a{overflow-wrap:anywhere}}
/* Pearl product cards, matching the supplied collection reference. */
.selected-pieces .piece{position:relative;border:1.5px solid #ffffffed;border-radius:18px;background:radial-gradient(ellipse at 23% 20%,#fff 0,transparent 48%),radial-gradient(ellipse at 84% 58%,#fff9 0,transparent 42%),linear-gradient(135deg,#d4e0e8,#f5f9fc 45%,#d3e6f3);box-shadow:inset 0 0 22px #fff,0 0 12px #c0eaff55;color:#111d53}
.selected-pieces .piece::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 6% 18%,#fff9 0,transparent 3%),radial-gradient(circle at 94% 94%,#fff8 0,transparent 4%)}
.selected-pieces .piece-photo.original{background:transparent;overflow:visible}
.selected-pieces .piece-photo.original img{position:relative;width:90%;height:90%;margin:5% auto 0;object-fit:contain;-webkit-box-reflect:below -20% linear-gradient(transparent 72%,#ffffff18 100%)}
.selected-pieces .piece h3{background:transparent;padding-bottom:22px}
.selected-pieces .collection-track{padding:10px 4px 14px;margin-left:0;margin-right:0}
@media(max-width:650px){.selected-pieces .piece{border-radius:16px}.selected-pieces .piece h3{font-size:25px}.selected-pieces .collection-track{padding:8px 2px 12px}}
/* Frosted glass, pearl lighting and product shadows. */
.selected-pieces .piece{isolation:isolate;background:radial-gradient(ellipse at 24% 16%,#ffffffc9 0,transparent 48%),radial-gradient(ellipse at 82% 62%,#ffffff96 0,transparent 48%),linear-gradient(135deg,#dbe5edcc 0%,#f5f9fcd9 44%,#cfe4f0b8 100%);backdrop-filter:blur(22px) saturate(.65);-webkit-backdrop-filter:blur(22px) saturate(.65);border:1.5px solid #fffffff0;box-shadow:inset 0 0 4px #fff,inset 0 0 28px #ffffff70,0 9px 26px #00142335,0 0 10px #ccefff80}
.selected-pieces .piece::before{content:'';position:absolute;z-index:2;pointer-events:none;top:-2px;left:18%;width:38%;height:3px;background:linear-gradient(90deg,transparent,#fff,transparent);box-shadow:0 0 11px 3px #ffffffb0;border-radius:50%}
.selected-pieces .piece::after{background:radial-gradient(circle at 5% 18%,#fff 0, #ffffff88 1.2%,transparent 4%),radial-gradient(circle at 7% 82%,#ffffffbb 0,transparent 4%),radial-gradient(circle at 94% 96%,#fff9 0,transparent 5%),linear-gradient(115deg,#ffffff38,transparent 40%,#b8d9ed24);box-shadow:inset 0 0 15px #fff8}
.selected-pieces .piece-photo.original::before{content:'';position:absolute;left:20%;right:20%;top:69%;height:9%;border-radius:50%;background:radial-gradient(ellipse,#26384a40,transparent 70%);filter:blur(10px);pointer-events:none}
.selected-pieces .piece-photo.original img{-webkit-box-reflect:below -27% linear-gradient(transparent 61%,#ffffff22 84%,#ffffff38);filter:drop-shadow(0 10px 8px #1b344b1a)}
.selected-pieces .piece:hover .piece-photo.original img{filter:drop-shadow(0 10px 8px #1b344b1a)}
@media(min-width:651px){.selected-pieces .collection-track{margin-left:4%;margin-right:4%}}
@media(max-width:650px){
.selected-pieces{padding-left:18px;padding-right:18px}
.selected-pieces .collection-track{gap:12px}
.selected-pieces .collection-track .piece{flex:0 0 calc((100% - 12px)/2);min-width:0;border-radius:12px}
.selected-pieces .piece-photo.original{aspect-ratio:1/1.06}
.selected-pieces .piece h3{font-size:clamp(16px,4.2vw,23px);line-height:1.12;min-height:92px;padding:12px 5px 16px;letter-spacing:-.025em}
.selected-pieces .piece h3::after{width:25px;margin-top:12px}
}
/* Compact social video collage. */
.social-presence{grid-template-columns:42% 58%;align-items:center;padding-top:65px;padding-bottom:65px}
.social-copy{padding-top:0}
.social-cards{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0;width:min(100%,550px);justify-self:center;padding:22px 14px 30px}
.social-card{width:108%;border-radius:12px;box-shadow:0 18px 38px #071d2b30;border:1px solid #ffffffb0;rotate:-5deg;z-index:1}
.social-card.tiktok-card{width:108%;margin-left:-8%;margin-top:52px;rotate:5deg;z-index:2}
.social-cards::after{display:none}
@media(max-width:650px){
.social-presence{padding:42px 24px 35px}
.social-copy h2{font-size:clamp(54px,15vw,76px);margin:24px 0 20px}
.social-cards{width:min(100%,370px);margin:22px auto 0;padding:18px 10px 22px}
.social-card,.social-card.tiktok-card{width:108%;border-radius:10px}
.social-card.tiktok-card{margin-top:36px}
.social-platform-caption{left:6%;right:6%;bottom:4%}
.instagram-profile-link{left:0;right:0;bottom:0;padding:13px 6%}
.platform-label{font-size:8px;letter-spacing:.12em;gap:5px}
.platform-label svg{width:18px;height:18px}
.platform-handle{font-size:8px;margin-top:5px;overflow-wrap:anywhere}
}
/* Slightly larger collage with more space between the videos. */
.social-cards{width:min(100%,610px);gap:12px;padding-left:8px;padding-right:8px}
.social-card{width:100%}
.social-card.tiktok-card{width:100%;margin-left:0}
@media(max-width:650px){.social-cards{width:calc(100% + 32px);max-width:420px;margin-left:-16px;margin-right:-16px;gap:12px;padding-left:0;padding-right:0}.social-card,.social-card.tiktok-card{width:100%}}
@media(max-width:650px){.selected-pieces .carousel-controls button{display:none}}
.selected-pieces .carousel-controls::before{display:none}
