/* Visible by default: failure or disabled JavaScript never hides content. */
/* One photograph belongs to the combined chapter, never to either section. */
.shared-boutique{position:relative;isolation:isolate;overflow:hidden;background:#081923}
.shared-boutique-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1;pointer-events:none}
.shared-boutique #selected-pieces,.shared-boutique #meet-allan{background:none;isolation:auto}
.shared-boutique #meet-allan::after{display:none}
.shared-boutique #meet-allan{min-height:100svh}
.shared-boutique #meet-allan .allan-reference{position:relative;inset:auto;width:48%;height:auto;max-height:90svh;max-width:none;object-fit:contain;object-position:left center;z-index:0;mask:none;-webkit-mask:none}
.shared-boutique .allan-mobile-copy{text-shadow:0 2px 10px #000;z-index:1}
@media(max-width:650px){
 .shared-boutique #selected-pieces{min-height:0;padding-top:48px;padding-bottom:24px}
 .shared-boutique #selected-pieces .collection-footer{display:flex;margin-top:20px}
 .shared-boutique #meet-allan{min-height:max(650px,175vw);padding-top:0}
 .shared-boutique #meet-allan .allan-reference{position:absolute;left:-47%;top:0;right:auto;bottom:auto;width:220%;height:auto;min-height:0;max-height:none;z-index:0;mask:linear-gradient(#000 0 54%,transparent 66%);-webkit-mask:linear-gradient(#000 0 54%,transparent 66%)}
 .shared-boutique #meet-allan .allan-mobile-copy{background:none;padding:92vw 22px 46px;margin-top:auto;text-shadow:0 2px 6px #000,0 0 18px #000}
}
@media(max-width:650px){.header{padding-left:10px}.header .brand{gap:0}.header .brand-mark{display:none}}
.selected-pieces{
 background-color:#06273a;
 background-image:url('assets/collection-showroom-79.png');
 background-size:cover;
 background-position:center;
}
.page-scroll-progress{display:none;position:fixed;inset:0 0 auto;height:2px;background:#b9d8e7;transform:scaleX(0);transform-origin:left;pointer-events:none;z-index:100}
@media(max-width:650px){.page-scroll-progress{display:none}}
.premium-intro{position:fixed;inset:0;z-index:99;display:grid;place-items:center;background:#03101ef2;pointer-events:none;animation:intro-dismiss 1.25s both}
.premium-intro svg{width:68px;fill:none;stroke:#e8f6ff;stroke-width:1;animation:intro-mark 1.1s both}
@keyframes intro-dismiss{0%,18%{opacity:1}100%{opacity:0;visibility:hidden}}
@keyframes intro-mark{0%{opacity:0;transform:scale(.9)}35%{opacity:1}100%{opacity:0;transform:scale(1.04)}}
.header .brand,.header .header-appointment{transition:scale .6s cubic-bezier(.22,1,.36,1)}
.header-compact .brand{scale:.96;transform-origin:left center}.header-compact .header-appointment{scale:.97;transform-origin:right center}
.luxury-nav a[aria-current]::after{transform:scaleX(1)}
.collection-track{position:relative;perspective:900px}
.collection-ghost{position:absolute;inset:10px 4px 14px;display:flex;gap:inherit;pointer-events:none;z-index:3}
.collection-ghost .piece{flex:1;min-width:0}
.collection-link,.header-appointment{position:relative;overflow:hidden}
.collection-link::after,.header-appointment::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#fff3 50%,transparent 75%);transform:translateX(-130%);pointer-events:none;transition:transform 1s}
.hero-sparkles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-sparkles i{position:absolute;left:14%;top:35%;width:3px;height:3px;background:#e0f5ff;border-radius:50%;box-shadow:0 0 12px 3px #aadaff88;animation:quiet-sparkle 7s ease-in-out infinite;animation-play-state:paused}
.hero-sparkles i:nth-child(2){left:79%;top:22%;animation-delay:-3s}.hero-sparkles i:nth-child(3){left:64%;top:77%;animation-delay:-5s}.hero-sparkles i:nth-child(4){left:27%;top:68%;animation-delay:-1s}
.premium-in-view .hero-sparkles i{animation-play-state:running}
@keyframes quiet-sparkle{0%,100%{opacity:0;transform:scale(.6)}45%{opacity:.5;transform:scale(1.1)}}
.contact-light-sweep{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 45%,#e2f4ff55 50%,transparent 55%);z-index:0}
.contact-copy{position:relative;z-index:1}
.motion-word{display:inline-block}
.contact-motion-image{position:absolute;inset:0;z-index:-2;pointer-events:none}
.has-motion-image::before{opacity:0}
.contact-section::before{background-image:url('assets/contact-silk-small-ring-86.png')}
.social-card{transition:rotate .7s,scale .7s,box-shadow .7s}
.premium-in-view .social-card{animation:social-breathe 7s ease-in-out infinite alternate}
.premium-in-view .social-card:nth-child(2){animation-delay:-3.5s}
@keyframes social-breathe{from{translate:0 -3px}to{translate:0 3px}}
@media(hover:hover) and (pointer:fine){
.collection-link:hover::after,.header-appointment:hover::after{transform:translateX(130%)}
.selected-pieces .piece:hover{transform:translateY(-5px)}
.selected-pieces .piece:hover::before{animation:card-glint 1s ease-out}
@keyframes card-glint{from{transform:translateX(-90%);opacity:.3}to{transform:translateX(180%);opacity:1}}
.social-card:hover,.social-card:focus-within{z-index:5;rotate:0deg;scale:1.015}
.contact-socials a{position:relative}.contact-socials a::after{content:'';position:absolute;inset:-5px;border-radius:50%;box-shadow:0 0 15px #b9d8e799;opacity:0;transition:opacity .5s}.contact-socials a:hover::after{opacity:1}
}
@media(max-width:650px){.hero-sparkles i:nth-child(n+3){display:none}.collection-ghost{inset:8px 2px 12px}}
@media(prefers-reduced-motion:reduce){.premium-intro,.hero-sparkles,.contact-light-sweep{display:none}.social-card{animation:none!important}.page-scroll-progress{transition:none}}
/* Mobile chapters follow the visible browser viewport, including its toolbar. */
@media(max-width:650px){
 .diamond-hero{height:100svh;height:100dvh;min-height:0}
 .fine-jewelry,.selected-pieces,.meet-allan,.social-presence,.contact-section{min-height:100svh;min-height:100dvh;box-sizing:border-box;scroll-margin-top:0}
 .fine-jewelry .fine-copy{padding:0 26px max(28px,env(safe-area-inset-bottom))}
 .fine-jewelry .fine-copy h2{font-size:min(13vw,8dvh)}
 .meet-allan .allan-mobile-copy{padding:0 26px max(28px,env(safe-area-inset-bottom))}
 .meet-allan .allan-mobile-copy p{font-size:clamp(17px,2.6dvh,20px)}
 .selected-pieces{display:flex;flex-direction:column;justify-content:flex-start;padding-top:84px;padding-bottom:36px}
 .social-presence{display:flex;flex-direction:column;justify-content:center;padding:84px 24px 32px}
 .social-copy h2{font-size:min(15vw,7dvh);margin:18px 0 16px}
 .social-copy p{margin-bottom:0}
 .social-cards{width:min(100%,44dvh);margin:20px auto 0;padding-top:12px;padding-bottom:16px}
 .social-card.tiktok-card{margin-top:24px}
 .contact-section{padding:90px 26px max(32px,env(safe-area-inset-bottom))}
}
@media(max-width:650px) and (max-height:700px){
 .social-presence{padding-top:74px;padding-bottom:24px}
 .social-presence .social-cards{width:min(100%,38dvh);margin-top:14px}
 .social-presence .social-copy p{font-size:17px}
}

/* Leave room for Safari's floating toolbar on phones. */
@media(max-width:650px){
 .diamond-hero{height:calc(100dvh + 64px)}
 .mobile-story-art,.mobile-story-shimmer{top:0;height:calc(100% - 80px)}
 .selected-pieces .carousel-controls::before,.selected-pieces .carousel-count::before{display:none}
}

/* White diamond lettering with slow light passing through the facets. */
.fine-jewelry .fine-copy h2{
 position:relative;
 color:#fff;
 -webkit-text-fill-color:#fff;
 text-shadow:0 2px 4px #111a24d9,0 5px 16px #111a24aa,0 0 20px #fff6;
}
.fine-jewelry .fine-copy h2 em,.fine-jewelry .fine-copy h2 .fine-initial{color:inherit;-webkit-text-fill-color:inherit}
.fine-jewelry .fine-copy h2::before,.fine-jewelry .fine-copy h2::after,.fine-diamond-period::after,.hero-title-glints i{
 content:'';position:absolute;width:clamp(18px,.34em,34px);height:clamp(18px,.34em,34px);pointer-events:none;
 background:radial-gradient(ellipse 5% 50% at center,#fff 0 18%,#ffffffc9 30%,transparent 100%),radial-gradient(ellipse 50% 5% at center,#fff 0 18%,#ffffffc9 30%,transparent 100%),radial-gradient(circle at center,#fff 0 5%,#f5fbffcc 9%,#d9edff44 19%,transparent 48%);
 filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 5px #d9edff66);
 opacity:0;transform-origin:center;animation:fine-diamond-spark 6.4s linear infinite;
}
.fine-jewelry .fine-copy h2::before{left:9%;top:8%}
.fine-jewelry .fine-copy h2::after{display:none}
.fine-diamond-period{position:relative;display:inline-block}
.fine-diamond-period::after{left:50%;top:80%;margin-left:-.17em;margin-top:-.17em;animation-delay:-4.6s}
@keyframes fine-diamond-spark{0%,12%,29%,100%{opacity:0;transform:scale(.2) rotate(12deg)}16%{opacity:.65;transform:scale(.75) rotate(16deg)}18%{opacity:1;transform:scale(1.12) rotate(18deg)}21%{opacity:.35;transform:scale(.65) rotate(20deg)}23%{opacity:.8;transform:scale(.88) rotate(22deg)}27%{opacity:0;transform:scale(.3) rotate(24deg)}}
@media(prefers-reduced-motion:reduce){.fine-jewelry .fine-copy h2::before,.fine-jewelry .fine-copy h2::after,.fine-diamond-period::after{animation:none;display:none}}

.hero-title-glints{position:absolute;z-index:4;pointer-events:none;left:50%;top:47%;width:min(58vw,1050px);aspect-ratio:2097/750;transform:translateX(-50%);font-size:80px}
.hero-title-glints{mask-image:url('assets/desktop-story-reference.webp');mask-mode:luminance;mask-size:100% 100%;mask-repeat:no-repeat}
.hero-title-glints i{left:var(--x);top:var(--y);width:12%;height:32%;translate:-50% -50%;animation:hero-letter-flash 3.2s ease-in-out infinite paused;background:linear-gradient(110deg,transparent 12%,#718caa99 30%,#fff 44%,#fff 51%,#a8cce8bb 62%,transparent 85%);filter:none;mix-blend-mode:normal}
@keyframes hero-letter-flash{0%,100%{opacity:0;transform:translateX(-35%) scale(.8)}25%{opacity:.9}45%{opacity:1;transform:translateX(5%) scale(1.1)}75%{opacity:0;transform:translateX(40%) scale(.9)}}
.hero-title-glints::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,#7896b044 43%,#fff 49%,#c2e3fa88 54%,transparent 62%);background-size:250% 100%;animation:hero-letter-sweep 4.5s ease-in-out infinite paused}
.title-lights-visible .hero-title-glints::after{animation-play-state:running}
@keyframes hero-letter-sweep{0%{background-position:160% 0;opacity:0}20%,75%{opacity:.85}100%{background-position:-60% 0;opacity:0}}
.title-lights-visible .hero-title-glints i{animation-play-state:running}
@media(max-width:650px){
 .hero-title-glints{inset:0;width:100%;height:calc(100% - 80px);aspect-ratio:auto;transform:none;font-size:68px}
 .hero-title-glints{mask-image:url('assets/mobile-story-redesign.webp')}
 .hero-title-glints i{left:var(--mx);top:var(--my);width:19%;height:10%}
}
@media(max-width:650px){
 .mobile-story-art,.mobile-story-shimmer,.hero-title-glints{translate:0 14px}
 .mobile-story-art{-webkit-mask-image:linear-gradient(180deg,transparent 0%,transparent 18%,#000 38%);mask-image:linear-gradient(180deg,transparent 0%,transparent 18%,#000 38%)}
}
@media(prefers-reduced-motion:reduce){.hero-title-glints{display:none}}

/* The hero lettering is artwork on both layouts, so shadow the artwork itself. */
.desktop-story-art,.mobile-story-art{filter:drop-shadow(0 3px 4px #111a24d9) drop-shadow(0 8px 18px #111a24aa)}
@media(max-width:650px){.mobile-story-art{filter:brightness(.96) drop-shadow(0 3px 4px #111a24d9) drop-shadow(0 8px 18px #111a24aa)}}

/* White editorial copy and appointment action on the portrait. */
.fine-jewelry .fine-copy p{color:#fff;text-shadow:0 2px 4px #111a24d9,0 5px 16px #111a24aa}
.fine-jewelry .fine-copy .collection-link,
.fine-jewelry .fine-copy .collection-link:hover,
.fine-jewelry .fine-copy .collection-link:focus-visible{background:#fff;border-color:#fff;color:#171c2b}

@media(max-width:650px){
 .fine-jewelry::after{background:linear-gradient(180deg,transparent 42%,#2a211c22 57%,#211b18b8 78%,#171412f2 100%)}
 .selected-pieces .collection-footer{display:flex}
 .selected-pieces .collection-heading{position:relative;top:0}
 .contact-section::before{background-size:auto 100%;background-position:22% center;background-color:#0b2638}
 .contact-section::before,.contact-motion-image{inset:-30px 0}
}

@media(min-width:651px){
 .header{padding-inline:4%;gap:16px}.header .brand-mark{display:none}.header .brand-name{font-size:clamp(16px,1.25vw,21px)}
 .diamond-hero{min-height:700px;--diamond-width:clamp(380px,35vw,660px)}
 .desktop-story-art{width:min(55vw,920px)}
 .fine-jewelry{aspect-ratio:auto;min-height:100svh;display:flex;align-items:center}
 .fine-image{inset:0}.fine-image img{width:100%;height:100%;object-fit:cover;object-position:25% center}
 .fine-jewelry::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 30%,#211b1866 58%,#171412cc 100%)}
 .fine-jewelry .fine-copy{position:relative;inset:auto;width:45%;margin-left:51%;padding:110px 0 85px}
 .fine-copy h2{font-size:clamp(58px,5.9vw,110px);line-height:.97;white-space:normal}
 .fine-copy p{font-size:clamp(20px,1.7vw,28px);max-width:560px}.fine-copy .collection-link{font-size:12px;min-height:54px;padding-inline:32px}
 .shared-boutique #selected-pieces{min-height:100svh;padding:110px 6% 55px}
 .collection-heading h2{font-size:clamp(56px,5.3vw,100px);margin-bottom:46px}
 .collection-heading .eyebrow{font-size:12px}
 .carousel-controls{top:160px;right:6%;gap:15px}.carousel-controls button{width:48px;height:48px;font-size:25px}.carousel-count{font-size:11px}.carousel-count::before{display:none}
 .selected-pieces .collection-track{margin:0 auto;max-width:1240px;gap:24px}
 .selected-pieces .piece{flex-basis:calc((100% - 48px)/3);border-radius:16px}
 .selected-pieces .piece-photo.original{aspect-ratio:1/1.02}.selected-pieces .piece h3{font-size:clamp(22px,1.8vw,30px);line-height:1.1;padding:16px 12px 24px}
 .collection-footer{margin-top:24px}.collection-footer>span{font-size:11px;padding:18px}
 .shared-boutique #meet-allan{min-height:100svh;display:flex;align-items:center;padding:80px 6%;overflow:hidden}
 .shared-boutique #meet-allan .allan-reference{position:absolute;left:-5%;top:2%;width:69%;height:auto;max-height:none;mask:linear-gradient(#000 0 38%,transparent 56%);-webkit-mask:linear-gradient(#000 0 38%,transparent 56%)}
 .shared-boutique #meet-allan .allan-mobile-copy{position:relative;inset:auto;transform:none;margin-left:53%;width:43%;padding:50px 0}
 .allan-mobile-copy h2{font-size:clamp(66px,6vw,110px)}.allan-mobile-copy>span{font-size:12px}.shared-boutique .allan-mobile-copy p{font-size:clamp(23px,2vw,32px);line-height:1.35}
 .social-presence{min-height:100svh;grid-template-columns:43% 57%;padding:100px 6% 70px}.social-copy h2{font-size:clamp(65px,6vw,110px)}.social-copy p{font-size:clamp(20px,1.7vw,27px)}.social-copy .eyebrow{font-size:12px}.social-cards{width:min(100%,590px);gap:25px}
 .contact-section{min-height:100svh;padding:110px 7%;}.contact-copy{width:50%}.contact-copy h2{font-size:clamp(76px,7vw,125px)}.contact-copy address{font-size:clamp(14px,1.15vw,20px);margin-top:45px;gap:28px}.contact-socials a{width:50px;height:50px}
 .contact-section::before,.contact-motion-image{inset:-30px 0}
}
@media(min-width:651px) and (max-width:1100px){
 .fine-jewelry .fine-copy{width:50%;margin-left:44%;padding-inline:20px}.fine-copy h2{font-size:6.8vw}
 .carousel-controls{position:relative;inset:auto;justify-content:flex-end;margin-bottom:25px}.collection-heading h2{margin-bottom:24px}
 .social-presence{grid-template-columns:40% 60%;padding-inline:4%}.social-cards{gap:15px}
}

/* Header and desktop lettering cleanup. */
.fine-jewelry .fine-copy h2{line-height:1.14}
@media(min-width:651px){.selected-pieces .collection-footer{justify-content:flex-end}}
.header-appointment{display:none}
.header .header-socials{margin-left:auto}
.header .brand-mark{display:block}
@media(max-width:650px){.header .brand-mark{display:block}.header .brand{gap:7px}}
.collection-track{cursor:grab}.collection-track:active{cursor:grabbing}
@media(min-width:651px){.shared-boutique #meet-allan .allan-mobile-copy{margin-left:58%;width:38%}.diamond-copy{mix-blend-mode:screen}.desktop-story-art{mix-blend-mode:screen;filter:none}.hero-title-glints{display:none}}

/* Social editorial reference, with live video embeds. */
.social-presence{background:#f5f8fa url(assets/social-marble-92.png) center/cover no-repeat;color:#10151b}
.social-copy h2,.social-copy h2 em,.social-copy p,.social-copy .eyebrow{color:#10151b}
.social-card{border:1px solid #fff;border-radius:14px;box-shadow:0 20px 35px #16273533;rotate:-4deg}
.social-card.tiktok-card{rotate:6deg;margin-top:35px}
@media(min-width:651px){.social-presence{grid-template-columns:42% 58%;padding-inline:12%;gap:20px}.social-copy h2{font-size:clamp(56px,5vw,84px);line-height:.92}.social-copy p{font-size:clamp(19px,1.5vw,24px)}.social-cards{width:min(100%,540px);gap:12px}}
@media(max-width:650px){.social-presence{padding:75px 24px 42px;justify-content:flex-start;background-position:62% center}.social-copy h2{font-size:clamp(45px,12vw,56px);line-height:.93;margin:20px 0 22px}.social-copy p{font-size:18px;line-height:1.35}.social-cards{width:100%;max-width:360px;margin:24px auto 0;grid-template-columns:1fr 1fr;gap:12px;padding:14px 5px 20px}.social-card.tiktok-card{margin-top:32px}.social-card{border-radius:10px}}

/* Compact navigation panel. */
.menu{inset:82px 20px auto auto;width:270px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);padding:24px 26px 28px;border-radius:22px;background:#0b1f2af5;border:1px solid #d7edf82b;box-shadow:0 18px 55px #0005}
.menu::backdrop{background:#06101740;backdrop-filter:blur(2px)}
.menu-label{display:block;font:500 10px/1.4 Inter,Arial,sans-serif;letter-spacing:.18em;color:#a8c2d0;margin-bottom:24px}
.menu .menu-close{position:absolute;right:18px;top:17px;margin:0;width:28px;height:28px}
.menu .menu-close span{left:6px;top:13px;width:16px}
.menu nav{gap:16px}.menu nav>a{font:400 21px/1.15 'Cormorant Garamond',Georgia,serif;letter-spacing:0}.menu nav>a:hover{color:#b9d8e7}
.menu-open .header{background:transparent}.menu-open .menu-toggle{position:static}
@media(max-width:650px){.menu{top:72px;right:14px;width:250px;padding:24px;border-radius:20px}.menu nav>a{font-size:20px}}

@media(max-width:650px){
 .shared-boutique #meet-allan .allan-mobile-copy{padding-top:calc(92vw + 70px);margin-top:0;flex:1;min-height:inherit;width:100%;background:linear-gradient(180deg,transparent 50%,#10100d55 68%,#10100db3 100%);text-shadow:0 2px 4px #000,0 0 14px #000}
 .contact-section::after{background:linear-gradient(180deg,#04172766,transparent 65%);inset:-30px 0}
}

/* One static contact surface: no translated layers or top shading seam. */
.contact-section::before{inset:0;opacity:1;background-size:cover;background-position:center;transform:scaleX(-1)}
.contact-section::after{background:none;inset:0}
@media(max-width:650px){.contact-section::before{background-size:auto 100%;background-position:22% center}}
/* Light editorial portrait, navigation and collection. */
.header,.header.scrolled,.menu-open .header{background:#f7f9fcf7;color:#09243e;box-shadow:0 1px 0 #0b26380c;backdrop-filter:blur(16px);padding:18px 4%;min-height:82px}
.header .brand-name{font:600 20px/1.2 'Cormorant Garamond',Georgia,serif;letter-spacing:.08em}
.header .luxury-nav{position:absolute;left:50%;transform:translateX(-50%);gap:30px;margin:0}
.header .luxury-nav a{font:500 14px/1.5 Inter,Arial,sans-serif;color:#657184}
.header .luxury-nav a:hover,.header .luxury-nav a[aria-current]{color:#09243e}
.header .header-socials{gap:20px;margin-left:auto;color:#09243e}.header .header-socials a{opacity:1}
.header .mobile-brand-outline{stroke:currentColor}.header .menu-toggle span{background:currentColor}
.fine-jewelry{background:#f4f7fa;color:#09243e;isolation:isolate;min-height:850px}
.fine-jewelry::after{display:none}.fine-jewelry .fine-image{inset:0;z-index:-1}
.fine-jewelry .fine-image img{object-position:center;object-fit:cover}
.fine-jewelry .fine-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 35%,#f4f7fa66 49%,#f4f7faed 61%,#f4f7fa 100%)}
.fine-jewelry .fine-copy{width:42%;margin-left:55%;padding:120px 3% 90px 0;position:relative;inset:auto;text-shadow:none}
.fine-copy .fine-eyebrow{display:flex;align-items:center;gap:18px;margin:0 0 30px;font:500 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.38em;color:#7b8797}
.fine-eyebrow::after{content:'';height:1px;width:70px;background:#adb7c4}
.fine-jewelry .fine-copy h2{font:400 clamp(58px,5.8vw,100px)/1.04 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;color:#09243e;-webkit-text-fill-color:#09243e;text-shadow:none;margin:0 0 32px}
.fine-jewelry .fine-copy h2::before,.fine-jewelry .fine-copy h2::after{display:none}
.fine-jewelry .fine-copy p{font:500 clamp(16px,1.35vw,21px)/1.65 Inter,Arial,sans-serif;max-width:520px;color:#697687;text-shadow:none;margin:0 0 32px}
.fine-jewelry .fine-copy .collection-link{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:58px;padding:16px 28px;border:0;border-radius:100px;background:linear-gradient(135deg,#0a3152,#041c32);color:#fff;font:500 15px/1.4 Inter,Arial,sans-serif;letter-spacing:0;text-transform:none;text-decoration:none;box-shadow:0 8px 22px #09243e12}
.fine-jewelry .fine-copy .collection-link::before,.fine-jewelry .fine-copy .collection-link::after{display:none}
.fine-jewelry .fine-copy .collection-link:hover,.fine-jewelry .fine-copy .collection-link:focus-visible{background:#153e56;color:#fff}
.shared-boutique #selected-pieces{background:radial-gradient(ellipse at top,#fff,#f3f6fa);color:#09243e;min-height:0;padding:95px 4% 55px}
.selected-pieces .collection-heading{text-align:center;position:relative;inset:auto;margin-bottom:42px}
.selected-pieces .collection-heading .eyebrow{justify-content:center;color:#758193;letter-spacing:.4em;font:500 11px/1.5 Inter,Arial,sans-serif;display:flex;align-items:center;gap:20px}
.selected-pieces .collection-heading .eyebrow::before,.selected-pieces .collection-heading .eyebrow::after{content:'';width:65px;height:1px;background:#9ca7b4}
.selected-pieces .collection-heading h2{font:400 clamp(44px,6.3vw,94px)/1.05 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;color:#09243e;margin:22px 0 12px}
.selected-pieces .collection-heading p{font:400 clamp(20px,2.2vw,32px)/1.3 'Cormorant Garamond',Georgia,serif;margin:0;color:#243b52}
.selected-pieces .carousel-controls{position:relative;inset:auto;display:flex;justify-content:flex-end;margin:0 0 20px;color:#09243e}
.selected-pieces .carousel-controls button{border:1px solid #bac4cf;background:transparent;color:#09243e;border-radius:50%;width:42px;height:42px}
.selected-pieces .collection-track{max-width:1360px;gap:24px}
.selected-pieces .piece{background:#eef2f7;border:0;border-radius:5px;box-shadow:none;backdrop-filter:none;overflow:hidden;flex-basis:calc((100% - 48px)/3)}
.selected-pieces .piece::before,.selected-pieces .piece::after{display:none}
.selected-pieces .piece-photo.original{aspect-ratio:1/1.08;background:radial-gradient(ellipse at 35% 25%,#fff,#e7edf4 75%);border-radius:0}
.selected-pieces .piece-photo.original img{object-fit:contain;width:90%;height:90%;margin:5%;filter:drop-shadow(0 16px 14px #18344a18)}
.selected-pieces .piece h3{font:400 clamp(22px,2.2vw,33px)/1.15 'Cormorant Garamond',Georgia,serif;text-align:left;color:#09243e;padding:25px 28px 30px;margin:0;background:#f6f8fb;min-height:105px}
.selected-pieces .piece h3::after{display:none}.selected-pieces .collection-footer{color:#7b8797;margin-top:24px}.selected-pieces .collection-footer>span{border:0;padding:0;font-size:10px}
@media(min-width:651px) and (max-width:1100px){.fine-jewelry .fine-copy{margin-left:49%;width:48%;padding-right:3%}.fine-jewelry .fine-copy h2{font-size:7vw}}
@media(max-width:650px){
 .header,.header.scrolled{padding:12px 14px;min-height:64px;gap:10px}.header .brand{gap:7px}.header .brand-name{font-size:12px;letter-spacing:.035em}.header .brand-mark{--mark:24px}
 .header .mobile-brand-outline{stroke:#09243e}.header .header-socials{gap:10px}.header .header-socials svg{width:18px;height:18px}.header .menu-toggle{margin-left:2px;width:26px}.header .menu-toggle span{width:22px}
 .fine-jewelry{min-height:0;display:block;aspect-ratio:auto;padding:0}.fine-jewelry .fine-image{position:relative;inset:auto;width:100%;height:112vw;max-height:570px;z-index:0}.fine-jewelry .fine-image img{object-position:18% center}.fine-jewelry .fine-image::after{background:linear-gradient(180deg,transparent 75%,#f4f7fa 100%)}
 .fine-jewelry .fine-copy{width:100%;margin:0;padding:12px 26px 52px;inset:auto}.fine-copy .fine-eyebrow{font-size:9px;letter-spacing:.3em;margin-bottom:22px}.fine-jewelry .fine-copy h2{font-size:clamp(44px,11.5vw,70px);line-height:1.04;margin:0 0 22px}.fine-jewelry .fine-copy p{font-size:14px;line-height:1.7;margin-bottom:26px}.fine-jewelry .fine-copy .collection-link{min-height:52px;padding:14px 23px;font-size:13px;gap:24px}
 .shared-boutique #selected-pieces{padding:58px 20px 36px}.selected-pieces .collection-heading{margin-bottom:24px}.selected-pieces .collection-heading h2{font-size:44px}.selected-pieces .collection-heading .eyebrow{font-size:9px;gap:12px}.selected-pieces .collection-heading .eyebrow::before,.selected-pieces .collection-heading .eyebrow::after{width:35px}
 .selected-pieces .collection-track{gap:12px}.selected-pieces .piece{flex-basis:calc((100% - 12px)/2)}.selected-pieces .piece-photo.original{aspect-ratio:1/1.2}.selected-pieces .piece h3{font-size:20px;padding:17px 12px 22px;min-height:96px}.selected-pieces .carousel-controls{margin-bottom:16px}.selected-pieces .carousel-controls button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px}
}
.selected-pieces .collection-footer>span{color:#758193}
/* Marble and satin product setting from the supplied reference. */
.selected-pieces .piece-photo.original{background:#eef0f3 url('assets/collection-marble-104.png') center/cover no-repeat;aspect-ratio:440/514;padding:0;position:relative}
.selected-pieces .piece-photo.original img{position:absolute;inset:12% 3% auto;width:94%;height:88%;margin:0;object-fit:contain;filter:drop-shadow(0 12px 7px #39425130)}
.selected-pieces .piece-photo.original::before,.selected-pieces .piece-photo.original::after{display:none}
.selected-pieces .piece{border-radius:4px;background:#f6f8fb}
.selected-pieces .piece-details{position:relative;padding:25px 75px 28px 28px;min-height:175px;background:linear-gradient(120deg,#f7f9fc,#f3f6fa)}
.selected-pieces .piece h3{padding:0;margin:0 0 10px;min-height:0;background:none;font-size:clamp(23px,2.2vw,33px);line-height:1.05;letter-spacing:-.035em}
.selected-pieces .piece-details p{font:400 clamp(18px,1.65vw,25px)/1.18 'Cormorant Garamond',Georgia,serif;color:#697280;margin:0;max-width:245px}
.piece-inquire{position:absolute;right:25px;bottom:40px;width:46px;height:46px;border:1px solid #263d55;border-radius:50%;display:grid;place-items:center;color:#09243e;text-decoration:none;font:400 30px/1 Georgia,serif;transition:background .2s,color .2s}.piece-inquire:hover{background:#09243e;color:#fff}
.selected-pieces .collection-footer{display:none}
@media(min-width:651px){.selected-pieces .collection-heading{margin-bottom:25px}.selected-pieces .carousel-controls{margin-top:-12px;margin-bottom:20px}.shared-boutique #selected-pieces{padding-top:85px}}
@media(max-width:650px){.selected-pieces .piece-photo.original{aspect-ratio:440/514}.selected-pieces .piece-details{padding:16px 12px 57px;min-height:210px}.selected-pieces .piece h3{font-size:21px}.selected-pieces .piece-details p{font-size:17px}.piece-inquire{width:31px;height:31px;right:12px;bottom:15px;font-size:23px}}
/* Finished product photography includes the physical surface and contact shadows. */
.selected-pieces .piece-photo.original{background:#f4efe7;aspect-ratio:4/5}
.selected-pieces .piece-photo.original img{position:absolute;inset:0;width:100%;height:100%;margin:0;object-fit:cover;filter:none;transform:none;-webkit-box-reflect:unset}
/* Airy silk hero, preserving the original interactive WebGL diamond. */
#home.diamond-hero{height:100svh;min-height:760px;background:#f4f7fb;color:#09243e;display:flex;align-items:center;padding:110px 5% 60px}
#home .diamond-backdrop{inset:0;background:#f4f7fb url('assets/hero-silk-106.webp') center/cover no-repeat;opacity:1}
#home::before,#home::after{display:none}
#home .diamond-stage{top:25%;left:49%;right:auto;width:49%;height:58%;min-height:0;margin:0;transform:none;translate:none;animation:none;z-index:2}
#home .diamond-stage::after{content:'';position:absolute;left:25%;right:25%;bottom:8%;height:5%;background:#34445825;filter:blur(17px);border-radius:50%;z-index:-1;pointer-events:none}
.hero-editorial-copy{position:relative;z-index:3;width:48%;color:#09243e;pointer-events:none}
.hero-eyebrow{font:500 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.4em;color:#748091;display:flex;align-items:center;gap:20px;margin-bottom:28px}
.hero-eyebrow::after{content:'';width:85px;height:1px;background:#9ea9b7}
.hero-editorial-copy h1{font:400 clamp(68px,7.3vw,120px)/.96 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;margin:0 0 34px;color:#09243e;text-shadow:none}
.hero-tagline{font:400 clamp(24px,2.3vw,36px)/1.25 'Cormorant Garamond',Georgia,serif;margin:0 0 22px}
.hero-description{font:500 clamp(14px,1.25vw,19px)/1.65 Inter,Arial,sans-serif;color:#68768a;margin:0}
.hero-actions{display:flex;align-items:center;gap:27px;margin-top:38px;pointer-events:auto}
.hero-explore{display:inline-flex;align-items:center;gap:23px;padding:20px 27px;border-radius:50px;background:linear-gradient(135deg,#0a3152,#041c32);color:#fff;font:500 14px/1.3 Inter,Arial,sans-serif;text-decoration:none;transition:background .2s}
.hero-explore:hover{background:#153e56}.hero-explore span{font-size:24px;line-height:.7}
.hero-story{display:inline-flex;gap:13px;align-items:center;color:#09243e;text-decoration:none;font:400 21px/1.2 'Cormorant Garamond',Georgia,serif;white-space:nowrap}
.hero-story span{border:1px solid #09243e;border-radius:50%;display:grid;place-items:center;width:44px;height:44px;font-family:Arial,sans-serif;font-size:20px}
@media(max-width:1000px) and (min-width:651px){#home.diamond-hero{min-height:700px}.hero-actions{gap:15px;flex-wrap:wrap}.hero-explore{font-size:12px;padding:18px 22px}.hero-editorial-copy h1{font-size:8vw}}
@media(max-width:650px){
 #home.diamond-hero{height:auto;min-height:850px;padding:105px 26px 360px;display:block}
 #home .diamond-backdrop{background-position:65% center}
 .hero-editorial-copy{width:100%}.hero-eyebrow{font-size:9px;letter-spacing:.3em;margin-bottom:23px;gap:16px}.hero-eyebrow::after{width:50px}
 .hero-editorial-copy h1{font-size:clamp(58px,15.8vw,90px);line-height:.97;margin-bottom:24px}
 .hero-tagline{font-size:24px;max-width:310px;margin-bottom:16px}.hero-description{font-size:12px;line-height:1.7}
 .hero-actions{gap:18px;margin-top:27px;flex-wrap:wrap}.hero-explore{font-size:12px;padding:17px 21px;gap:18px}.hero-story{font-size:17px;gap:9px}.hero-story span{width:33px;height:33px;font-size:16px}
 #home .diamond-stage{top:auto;bottom:20px;left:0;right:auto;width:100%;height:310px;min-height:0;transform:none;margin:0;translate:none}
}
#home .hero-editorial-copy .hero-tagline,#home .hero-editorial-copy .hero-description{position:static;inset:auto;transform:none;width:auto;max-width:none;padding:0;opacity:1;text-shadow:none;letter-spacing:0;text-align:left}
#home .hero-editorial-copy .hero-tagline{color:#09243e;font:400 clamp(24px,2.3vw,36px)/1.25 'Cormorant Garamond',Georgia,serif;margin:0 0 22px}
#home .hero-editorial-copy .hero-description{color:#68768a;font:500 clamp(14px,1.25vw,19px)/1.65 Inter,Arial,sans-serif;margin:0}
@media(max-width:650px){#home .hero-editorial-copy .hero-tagline{font-size:24px;margin-bottom:16px}#home .hero-editorial-copy .hero-description{font-size:12px}}
/* Shared white at the first three section boundaries. */
#home.diamond-hero,#fine-jewelry,.shared-boutique #selected-pieces{background-color:#f4f7fa}
#home.diamond-hero::after{content:'';display:block;position:absolute;inset:auto 0 0;height:clamp(90px,12vw,180px);background:linear-gradient(180deg,#f4f7fa00,#f4f7fa);z-index:4;pointer-events:none}
#fine-jewelry .fine-image{mask-image:linear-gradient(180deg,transparent 0,#000 100px,#000 calc(100% - 150px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 100px,#000 calc(100% - 150px),transparent 100%)}
.shared-boutique #selected-pieces{background:#f4f7fa}
@media(max-width:650px){#home.diamond-hero::after{height:85px}#fine-jewelry .fine-image{mask-image:linear-gradient(180deg,transparent 0,#000 65px,#000 calc(100% - 95px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 65px,#000 calc(100% - 95px),transparent 100%)}}
/* Longer, eased fade reaches the shared white before the portrait ends. */
#fine-jewelry .fine-image{mask-image:linear-gradient(180deg,transparent 0,#000 100px,#000 calc(100% - 280px),#0009 calc(100% - 180px),#0003 calc(100% - 100px),transparent calc(100% - 35px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 100px,#000 calc(100% - 280px),#0009 calc(100% - 180px),#0003 calc(100% - 100px),transparent calc(100% - 35px),transparent 100%)}
@media(max-width:650px){#fine-jewelry .fine-image{mask-image:linear-gradient(180deg,transparent 0,#000 65px,#000 calc(100% - 150px),#0009 calc(100% - 100px),#0003 calc(100% - 55px),transparent calc(100% - 15px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 65px,#000 calc(100% - 150px),#0009 calc(100% - 100px),#0003 calc(100% - 55px),transparent calc(100% - 15px),transparent 100%)}}
/* Alan editorial portrait and signature. */
.shared-boutique #meet-allan{background:#f4f7fa;display:grid;grid-template-columns:53% 47%;align-items:center;min-height:850px;padding:0;isolation:isolate;color:#09243e}
.shared-boutique #meet-allan::before,.shared-boutique #meet-allan::after{display:none}
.shared-boutique #meet-allan .allan-reference{position:absolute;inset:0 auto 0 0;width:57%;height:100%;max-height:none;object-fit:cover;object-position:center 22%;transform:none;mask:linear-gradient(90deg,#000 0 78%,transparent 100%);-webkit-mask:linear-gradient(90deg,#000 0 78%,transparent 100%);z-index:0}
.shared-boutique #meet-allan .allan-mobile-copy{grid-column:2;position:relative;inset:auto;width:auto;margin:0;padding:90px 10% 90px 5%;min-height:0;background:none;transform:none;text-shadow:none;z-index:1}
.shared-boutique #meet-allan .alan-eyebrow{display:block;font:500 10px/1.6 Inter,Arial,sans-serif;letter-spacing:.33em;color:#778395;margin-bottom:25px}
.shared-boutique #meet-allan h2{font:400 clamp(66px,7.4vw,116px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;color:#09243e;margin:0 0 30px;text-shadow:none}
.shared-boutique #meet-allan .alan-intro{font:400 clamp(23px,2.05vw,31px)/1.32 'Cormorant Garamond',Georgia,serif;letter-spacing:0;color:#6e798b;margin:0 0 28px;padding:0;border:0;text-shadow:none}
.shared-boutique #meet-allan .alan-description{font:500 clamp(15px,1.3vw,20px)/1.7 Inter,Arial,sans-serif;color:#172e47;margin:0;padding:0;border:0;text-shadow:none}
.alan-signature{font:400 82px/1.2 'Great Vibes','Cormorant Garamond',cursive;color:#112f50;margin:27px 0 7px;transform:rotate(-7deg);transform-origin:left}
.shared-boutique #meet-allan .alan-role{font:500 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.28em;color:#6e798b}
@media(max-width:650px){
 .shared-boutique #meet-allan{display:block;min-height:0;padding:0}
 .shared-boutique #meet-allan .allan-reference{display:block;position:relative;inset:auto;width:100%;height:auto;max-height:none;object-fit:contain;mask:linear-gradient(180deg,transparent,#000 35px,#000 82%,transparent);-webkit-mask:linear-gradient(180deg,transparent,#000 35px,#000 82%,transparent)}
 .shared-boutique #meet-allan .allan-mobile-copy{width:100%;padding:12px 26px 52px;margin:0;min-height:0;background:none}
 .shared-boutique #meet-allan .alan-eyebrow{font-size:8px;letter-spacing:.25em;margin-bottom:18px}
 .shared-boutique #meet-allan h2{font-size:64px;margin-bottom:22px}
 .shared-boutique #meet-allan .alan-intro{font-size:25px;margin-bottom:22px}
 .shared-boutique #meet-allan .alan-description{font-size:14px;line-height:1.7}
 .alan-signature{font-size:70px;margin-top:25px}
}
/* Compact desktop product cards. */
@media(min-width:651px){
 .selected-pieces .collection-track{width:100%;max-width:1060px;margin-inline:auto;gap:22px}
 .selected-pieces .piece{flex-basis:calc((100% - 44px)/3)}
 .selected-pieces .piece-details{padding:21px 65px 24px 22px;min-height:155px}
 .selected-pieces .piece h3{font-size:27px}
 .selected-pieces .piece-details p{font-size:21px}
 .selected-pieces .piece-inquire{width:38px;height:38px;right:18px;bottom:28px;font-size:25px}
 .selected-pieces .carousel-controls{max-width:1060px;margin-inline:auto}
}
/* Alan and his sofa blend into the same white as the surrounding page. */
.shared-boutique #meet-allan .allan-reference{object-fit:contain;object-position:center bottom;mask:linear-gradient(180deg,#000 0 68%,#000c 78%,#0004 89%,transparent 98%);-webkit-mask:linear-gradient(180deg,#000 0 68%,#000c 78%,#0004 89%,transparent 98%)}
#social-presence{box-shadow:inset 0 110px 75px -70px #f4f7fa}
@media(max-width:650px){.shared-boutique #meet-allan .allan-reference{mask:linear-gradient(180deg,#000 0 70%,#000b 81%,#0003 92%,transparent 100%);-webkit-mask:linear-gradient(180deg,#000 0 70%,#000b 81%,#0003 92%,transparent 100%)}}
/* Continuous white surface behind Alan and the completed sofa. */
.shared-boutique{background:#f4f7fa}
.shared-boutique .shared-boutique-background{display:none}
.shared-boutique #meet-allan{background:#f4f7fa;background-image:none}
.shared-boutique #meet-allan .allan-reference{object-position:left bottom}
/* Social section uses the continuous white page surface. */
#social-presence{background:#f4f7fa;box-shadow:none}
/* White silk contact background and reference introduction. */
#contact.contact-section{background:#f4f7fa;color:#09243e;isolation:isolate}
#contact.contact-section::before{inset:0;background:#f4f7fa url('assets/contact-ring-refined-119.png') center/cover no-repeat;transform:none;opacity:1;mask:linear-gradient(180deg,transparent,#000 100px);-webkit-mask:linear-gradient(180deg,transparent,#000 100px)}
#contact.contact-section::after{display:none}
#contact .contact-copy{color:#09243e;width:45%}
#contact .contact-copy h2{color:#09243e;text-shadow:none;margin:22px 0 22px}
.contact-eyebrow{font:500 10px/1.6 Inter,Arial,sans-serif;letter-spacing:.35em;color:#718096;display:block}
#contact .contact-intro{font:400 clamp(23px,2vw,30px)/1.3 'Cormorant Garamond',Georgia,serif;letter-spacing:0;color:#18314c;margin:0 0 30px;max-width:560px}
#contact .contact-copy address{color:#09243e;margin-top:28px}
#contact .contact-copy address a,#contact .contact-phone{color:#09243e}
#contact .contact-socials a{color:#09243e;border-color:#09243e44;background:#ffffff66}
@media(max-width:650px){#contact.contact-section{padding:65px 26px 300px;min-height:0}#contact .contact-copy{width:100%}#contact .contact-copy h2{font-size:78px}#contact .contact-intro{font-size:24px}.contact-eyebrow{font-size:8px;letter-spacing:.23em}#contact.contact-section::before{background-size:auto 380px;background-position:right bottom;background-repeat:no-repeat;mask:none;-webkit-mask:none}#contact .contact-copy address{font-size:12px}}
@media(max-width:650px){#contact.contact-section::before{mask-image:linear-gradient(180deg,transparent 0,transparent calc(100% - 380px),#000 calc(100% - 275px));-webkit-mask-image:linear-gradient(180deg,transparent 0,transparent calc(100% - 380px),#000 calc(100% - 275px))}}
/* Smaller portrait with breathing room for the white transition. */
@media(min-width:651px){
 #fine-jewelry .fine-image{inset:65px auto 0 0;width:94%;height:auto;mask-image:linear-gradient(180deg,transparent 0,#0003 65px,#000b 135px,#000 200px,#000 calc(100% - 280px),#0009 calc(100% - 180px),#0003 calc(100% - 100px),transparent calc(100% - 35px));-webkit-mask-image:linear-gradient(180deg,transparent 0,#0003 65px,#000b 135px,#000 200px,#000 calc(100% - 280px),#0009 calc(100% - 180px),#0003 calc(100% - 100px),transparent calc(100% - 35px))}
 #fine-jewelry .fine-image img{object-position:left center}
}
@media(max-width:650px){
 #fine-jewelry .fine-image{height:105vw;max-height:535px;margin-top:35px;mask-image:linear-gradient(180deg,transparent,#0003 25px,#000b 60px,#000 95px,#000 calc(100% - 150px),#0003 calc(100% - 55px),transparent calc(100% - 15px));-webkit-mask-image:linear-gradient(180deg,transparent,#0003 25px,#000b 60px,#000 95px,#000 calc(100% - 150px),#0003 calc(100% - 55px),transparent calc(100% - 15px))}
}
/* Product details without the removed circular actions. */
.selected-pieces .piece-details{padding-right:22px}
@media(max-width:650px){.selected-pieces .piece-details{padding:16px 12px 22px;min-height:160px}}
/* Product captions contain only the names. */
.selected-pieces .piece-details{min-height:0;padding-bottom:22px}
.selected-pieces .piece-details h3{margin-bottom:0}
/* Consistent editorial type across the page sections. */
#fine-jewelry .fine-image{inset:0;width:100%;height:100%;margin-top:0;mask-image:linear-gradient(180deg,transparent 0,#000 20px,#000 calc(100% - 160px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 20px,#000 calc(100% - 160px),transparent 100%)}
#fine-jewelry .fine-image img{object-position:left top}
#fine-jewelry h2{white-space:normal;overflow-wrap:normal}
#fine-jewelry .fine-image img{position:relative;left:-18%;max-width:none}
@media(max-width:650px){#fine-jewelry .fine-image img{left:-28%;width:128%}}
@media(max-width:650px){#fine-jewelry .fine-image{position:relative;inset:auto;height:105vw;max-height:535px;margin-top:0;mask-image:linear-gradient(180deg,transparent 0,#000 8px,#000 calc(100% - 80px),transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 8px,#000 calc(100% - 80px),transparent 100%)}}
#home .diamond-stage canvas{top:50%;bottom:auto;height:max(100%,49vw);transform:translateY(-50%)}
@media(max-width:650px){#home .diamond-stage canvas{height:max(100%,100vw)}}
#home .hero-editorial-copy h1,#fine-jewelry h2,#selected-pieces h2,.shared-boutique #meet-allan h2,#social-presence .social-copy h2,#contact .contact-copy h2{font-size:clamp(66px,7.4vw,116px);line-height:1.02}
#home .hero-editorial-copy .hero-description,#fine-jewelry .fine-copy p,.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description,#social-presence .social-copy p{font-size:clamp(18px,1.6vw,24px);line-height:1.5}
#home .hero-editorial-copy .hero-description,#fine-jewelry .fine-copy p,#selected-pieces .collection-heading p,.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description,#social-presence .social-copy p{font-family:Inter,Arial,sans-serif;font-weight:600;letter-spacing:0}
#fine-jewelry .fine-eyebrow,.shared-boutique #meet-allan .alan-eyebrow,#social-presence .social-copy .eyebrow,#contact .contact-eyebrow{font-family:Inter,Arial,sans-serif;font-weight:600}
@media(max-width:650px){
 #home .hero-editorial-copy h1,#fine-jewelry h2,#selected-pieces h2,.shared-boutique #meet-allan h2,#social-presence .social-copy h2,#contact .contact-copy h2{font-size:56px}
 #home .hero-editorial-copy .hero-description,#fine-jewelry .fine-copy p,.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description,#social-presence .social-copy p{font-size:18px}
}
/* Smaller type from the second section onward; the hero keeps its current sizes. */
#home .hero-editorial-copy{margin-left:24px}
#home .hero-editorial-copy .hero-description{font-size:clamp(15px,1.3vw,20px)}
#fine-jewelry .fine-eyebrow,.shared-boutique #meet-allan .alan-eyebrow,#social-presence .social-copy .eyebrow,#contact .contact-eyebrow{font-size:11px}
#fine-jewelry h2,#selected-pieces h2,.shared-boutique #meet-allan h2,#social-presence .social-copy h2,#contact .contact-copy h2{font-size:clamp(48px,5.55vw,87px)}
#fine-jewelry .fine-copy p,#selected-pieces .collection-heading p,.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description,#social-presence .social-copy p{font-size:clamp(15px,1.2vw,18px)}
#selected-pieces .piece h3{font-size:21px}
.shared-boutique #meet-allan .alan-signature{font-size:61px}
.shared-boutique #meet-allan .alan-role,#selected-pieces .collection-footer,#selected-pieces .carousel-count{font-size:8px}
#contact .contact-copy address{font-size:clamp(11px,.9vw,15px)}
#social-presence .platform-label{font-size:10px}
#social-presence .platform-handle{font-size:12px}
@media(max-width:650px){
 #fine-jewelry h2,#selected-pieces h2,.shared-boutique #meet-allan h2,#social-presence .social-copy h2,#contact .contact-copy h2{font-size:42px}
 #fine-jewelry .fine-copy p,#selected-pieces .collection-heading p,.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description,#social-presence .social-copy p{font-size:15px}
 #selected-pieces .piece h3{font-size:17px}
 #fine-jewelry .fine-eyebrow,.shared-boutique #meet-allan .alan-eyebrow,#social-presence .social-copy .eyebrow,#contact .contact-eyebrow{font-size:9px}
 .shared-boutique #meet-allan .alan-signature{font-size:52px}
 .shared-boutique #meet-allan .alan-role{font-size:7px}
 #contact .contact-copy address{font-size:10px}
 #home .hero-editorial-copy{margin-left:10px;width:calc(100% - 10px)}
 #home .hero-editorial-copy .hero-description{font-size:15px}
}
/* Soft studio shadow grounds Alan's portrait in the continuous white surface. */
.shared-boutique #meet-allan{background-image:radial-gradient(ellipse at 27% 49%,rgba(56,69,83,.18) 0,rgba(56,69,83,.09) 24%,rgba(56,69,83,0) 58%)}
.shared-boutique #meet-allan .allan-reference{filter:none}
@media(max-width:650px){
 .shared-boutique #meet-allan{background-image:radial-gradient(ellipse at 50% 48%,rgba(56,69,83,.17) 0,rgba(56,69,83,.07) 38%,rgba(56,69,83,0) 71%);background-size:100% 125vw;background-repeat:no-repeat}
 .shared-boutique #meet-allan .allan-reference{filter:none}
}
/* Fade the fabric into the shared white; only transparent flowers cross sections. */
#home.diamond-hero{overflow:visible;z-index:2}
#home.diamond-hero::after{display:block;height:clamp(220px,25vw,380px);z-index:1}
#home .diamond-backdrop{bottom:0}
#home.diamond-hero::before,#contact.contact-section::after{content:'';display:block;position:absolute;right:0;width:39%;height:auto;aspect-ratio:1672/941;background:url('assets/flowers-transparent-131.webp') center/contain no-repeat;pointer-events:none;filter:blur(3px);opacity:1;transform:none;z-index:5}
#home.diamond-hero::before{top:auto;bottom:-110px;left:auto}
#fine-jewelry{padding-top:60px}
#fine-jewelry .fine-image{top:60px;height:calc(100% - 60px)}
#contact.contact-section{overflow:visible;z-index:2}
#contact.contact-section::before{top:0;mask:linear-gradient(180deg,transparent,#000 340px);-webkit-mask:linear-gradient(180deg,transparent,#000 340px);background-position:right center}
#contact.contact-section::after{top:-125px;bottom:auto;left:auto;transform:scaleX(-1)}
@media(max-width:650px){
 #home.diamond-hero::after{height:230px}
 #home.diamond-hero::before,#contact.contact-section::after{width:65%;filter:blur(2px)}
 #home.diamond-hero::before{bottom:-60px}
 #fine-jewelry{padding-top:35px}
 #fine-jewelry .fine-image{top:auto;height:105vw}
 #contact.contact-section::before{top:0;background-size:auto 380px;background-position:right bottom;mask:linear-gradient(180deg,transparent calc(100% - 380px),#000 calc(100% - 220px));-webkit-mask:linear-gradient(180deg,transparent calc(100% - 380px),#000 calc(100% - 220px))}
 #contact.contact-section::after{top:-65px}
}
#social-presence .social-copy p{color:#6e798b}
/* Restore the supplied contact composition; the ring is a cutout of the user's photo. */
#contact.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;position:relative;top:0;min-height:760px;padding:105px 6% 70px;background:#f4f7fa;overflow:hidden;isolation:isolate}
#contact.contact-section::before,#contact.contact-section::after{display:none}
#contact .contact-scene{position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/contact-fabric-only-145.webp') center/100% 100% no-repeat;transform:scaleX(-1);filter:grayscale(1) brightness(1.05);mask-image:linear-gradient(180deg,transparent,#000 12%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%)}
#contact .contact-copy{position:relative;width:100%;padding:0 0 0 28px;min-height:0}
#contact .contact-copy h2{font-size:clamp(72px,7vw,116px);line-height:1;margin:0 0 30px}
#contact .contact-copy address{display:flex;flex-direction:column;gap:20px;font:500 clamp(13px,1.05vw,16px)/1.5 Inter,Arial,sans-serif;letter-spacing:.06em;margin:0}
#contact .contact-copy address>a{display:flex;align-items:center;gap:25px;color:#09243e;text-decoration:none;margin:0;overflow-wrap:anywhere}
#contact .contact-copy address svg,#contact .contact-copy address span{width:30px;height:30px;flex:0 0 30px;font-size:32px}
#contact .contact-socials{margin-top:25px;gap:20px}
#contact .contact-socials a{width:60px;height:60px;border:1px solid #aab5c0;background:#ffffff66}
#contact .contact-map-wrap{position:relative;width:94%;height:auto;aspect-ratio:1/1;max-height:430px;justify-self:end;margin-right:9%;margin-top:0;border:5px solid #fff;border-radius:20px;box-shadow:0 8px 22px #283a4b17;overflow:hidden}
#contact .contact-map{display:block;width:100%;height:100%;border:0;background:#e9edf0}
@media(max-width:900px) and (min-width:651px){#contact .contact-copy,#contact .contact-map-wrap{width:100%}#contact .contact-copy address{font-size:clamp(13px,1.05vw,16px);letter-spacing:0}}
@media(max-width:650px){
 #contact.contact-section{grid-template-columns:1fr;gap:42px;min-height:0;padding:90px 26px 70px}
 #contact .contact-copy{width:100%;padding-left:12px}
 #contact .contact-copy h2{font-size:54px;margin-bottom:30px}
 #contact .contact-copy address{font-size:13px;gap:19px;letter-spacing:0}
 #contact .contact-copy address>a{gap:14px}
 #contact .contact-copy address svg,#contact .contact-copy address span{width:24px;height:24px;flex-basis:24px;font-size:27px}
 #contact .contact-socials{margin-top:24px;gap:18px}
 #contact .contact-socials a{width:48px;height:48px}
 #contact .contact-map-wrap{width:94%;height:auto;aspect-ratio:1/1;max-height:350px;margin-right:0;justify-self:center;margin-top:0;border-width:4px;border-radius:16px}
 #contact .contact-scene{background-size:auto 100%;background-position:65% bottom;mask-image:linear-gradient(180deg,transparent,#000 20%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%)}

}
/* Tight alpha bounds and a common baseline put every ring on the marble. */
.selected-pieces .piece-photo.original.panorama{background-repeat:no-repeat;overflow:hidden}
.selected-pieces .piece-photo.original.panorama{--surface:24%;isolation:isolate}
.selected-pieces .piece-photo.original.panorama img{inset:auto 26% var(--surface);width:48%;height:30.5%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 1px .6px rgba(53,39,25,.48));z-index:2}
/* The cast shadow sits behind the front stone, underneath the ring's full footprint. */
.selected-pieces .piece-photo.original.panorama::before{content:'';display:block;position:absolute;left:25%;width:51%;bottom:calc(var(--surface) - .6%);height:10.8%;background:radial-gradient(ellipse,rgba(63,46,28,.32) 0%,rgba(70,51,31,.24) 27%,rgba(77,57,35,.1) 52%,transparent 74%);filter:blur(2.5px);border-radius:50%;pointer-events:none;z-index:0}
.selected-pieces .piece-photo.original.panorama::after{content:'';display:block;position:absolute;left:40%;width:20%;bottom:calc(var(--surface) - .6%);height:1.8%;background:radial-gradient(ellipse,rgba(49,35,23,.55),rgba(61,43,27,.25) 35%,transparent 72%);filter:blur(.7px);border-radius:50%;pointer-events:none;z-index:1}

#contact .contact-map{pointer-events:auto}

/* Short contact shadows anchor the photographed ring to the fabric. */
#contact .contact-ring-placement::after{content:'';position:absolute;z-index:-1;left:34%;bottom:-3%;width:32%;height:12%;border-radius:50%;background:radial-gradient(ellipse,rgba(48,35,23,.52),rgba(48,35,23,.16) 48%,transparent 75%);filter:blur(2px)}
/* Fade the sofa edge into the shared background instead of casting a clipped shadow. */
.shared-boutique #meet-allan .allan-reference{mask-image:linear-gradient(180deg,#000 0 68%,#000c 78%,#0004 89%,transparent 98%),linear-gradient(90deg,#000 0 93%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(180deg,#000 0 68%,#000c 78%,#0004 89%,transparent 98%),linear-gradient(90deg,#000 0 93%,transparent 100%);-webkit-mask-composite:source-in}
.shared-boutique #meet-allan .allan-mobile-copy{transform:translateY(-100px)}
@media(max-width:650px){.shared-boutique #meet-allan .allan-mobile-copy{transform:translateY(-45px)}}

/* Alan follows the editorial serif typography of the second section. */
.shared-boutique #meet-allan h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-.045em}
.shared-boutique #meet-allan h2 em{font-family:inherit;font-weight:400;font-style:italic;color:#5e789d;-webkit-text-fill-color:#5e789d}
.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(19px,1.55vw,25px);line-height:1.5;letter-spacing:.045em}
.shared-boutique #meet-allan .alan-intro{font-style:italic}
@media(max-width:650px){.shared-boutique #meet-allan .alan-intro,.shared-boutique #meet-allan .alan-description{font-size:19px}}
/* Carry the reference typography through social and contact copy. */
#social-presence .social-copy h2,#contact .contact-copy h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-.045em}
#social-presence .social-copy h2 em,#contact .contact-copy h2 em{font-family:inherit;font-weight:400;font-style:italic;color:#5e789d;-webkit-text-fill-color:#5e789d}
#social-presence .social-copy p{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(19px,1.55vw,25px);line-height:1.5;letter-spacing:.045em}
#social-presence .social-copy p strong{font-weight:500}
#contact .contact-copy address{font-family:Inter,Arial,sans-serif;font-weight:500;letter-spacing:.06em}
@media(max-width:900px){#contact .contact-copy address{letter-spacing:0}}
@media(max-width:650px){#social-presence .social-copy p{font-size:19px}}

