/* Local typographic proposal. Brand, content and interaction remain authoritative. */
:root{--type-display:'Unbounded',sans-serif;--type-accent:'Cormorant Garamond',serif;--type-body:'Onest',sans-serif;font-family:var(--type-body);font-size:16px}
body,button,a,input{font-family:var(--type-body)}
h1,h2,h3,.catalog-panel .collection-title{font-family:var(--type-display);font-weight:400;letter-spacing:-.035em}
h2 em,.weave-word-right{font-family:var(--type-accent);font-style:italic;font-weight:500;letter-spacing:-.025em}
.scroll-stage .hero-copy h1.weave-title{font-size:clamp(64px,6.8vw,112px);column-gap:8%;line-height:1.08;top:15%}
.weave-word{line-height:1.12}
.weave-word-right{font-size:1.18em;line-height:1.02}
.hero-copy .hero-product{top:calc(15% + clamp(82px,8.2vw,134px) + 20px);font-size:16px;line-height:1.5;width:27%;text-align:right}
.hero-copy .eyebrow{font-size:12px;letter-spacing:.06em;text-transform:none}
.hero-copy .intro{font-size:16px;line-height:1.65;width:26%;max-width:360px;bottom:28px}
.hero-copy .primary-button,.hero-copy .text-link{font-size:14px;letter-spacing:0}
.scroll-invitation span{font-family:var(--type-accent);font-size:34px;line-height:1.1;font-weight:500}
.scroll-stage .drag-hint{font-size:12px}
.site-header .desktop-nav button{font-size:14px}
.site-header[data-compact=true] .desktop-nav{gap:20px}
.header-mobile-menu nav button{font-family:var(--type-body);font-size:20px}
.company-section{gap:6%;align-items:start;padding-top:120px;padding-bottom:80px}
.company-section .reference-copy h2{font-size:clamp(32px,3.1vw,50px);line-height:1.17;margin:0 0 30px;text-wrap:balance}
.company-section .reference-copy h2 br{display:none}
.company-section .reference-copy h2 em{display:block;font-size:1.43em;line-height:1.04;margin-top:10px}
.company-section .reference-copy>p{font-size:17px;line-height:1.7;max-width:60ch}
.company-section .reference-copy>p+p{margin-top:20px}
.company-section .photo-credit{font-size:12px}
.catalog-section .section-heading h2{font-size:clamp(38px,3.8vw,60px);line-height:1.12;letter-spacing:-.035em}
.catalog-section .section-heading h2 em{font-size:1.2em;line-height:1.02}
.catalog-section .section-heading>p{font-size:16px;line-height:1.65;max-width:350px}
.catalog-instruction{font-size:13px}
.catalog-panel .collection-title{font-size:clamp(24px,2.1vw,34px);line-height:1.25;text-wrap:balance}
.catalog-panel .collection-description{font-size:16px;line-height:1.6}
.catalog-panel .collection{width:min(820px,calc((100svh - 450px)*1.6),100%)}
.contact-section h2{font-size:clamp(30px,2.6vw,42px);line-height:1.2}
.contact-section h2 em{font-size:1.3em;white-space:nowrap}
.contact-section .contact-intro>p,.contact-details address,.contact-delivery p{font-size:16px;line-height:1.65}
.contact-section .primary-button,.contact-delivery .text-link{font-size:14px}
.contact-details>div>span{font-size:12px;letter-spacing:.03em}
.contact-details a:not(.text-link){font-size:18px}
.contact-details a.contact-email{font-size:14px}
.site-footer nav button{font-size:12px}
.footer-copyright{font-size:11px}
.section-notice strong{font-size:18px}.section-notice p{font-size:15px;line-height:1.6}
@media(max-width:1100px){
 .scroll-stage .hero-copy h1.weave-title{top:66px;font-size:clamp(32px,6.7vw,68px);column-gap:4%}
 .scroll-stage .hero-copy .hero-product{top:calc(66px + 9vw + 18px);width:47%;font-size:14px}
 .scroll-stage .hero-copy .intro{font-size:15px;line-height:1.6}
 .scroll-stage .hero-copy .eyebrow{font-size:12px;letter-spacing:.02em}
 .scroll-stage .hero-copy .primary-button,.scroll-stage .hero-copy .text-link{font-size:14px}
 .company-section .reference-copy h2{font-size:38px}
 .catalog-section .section-heading h2{font-size:42px}
}
@media(max-width:760px){
 .scroll-stage .hero-copy h1.weave-title{top:48px;font-size:clamp(34px,10.8vw,64px);grid-template-columns:1fr;gap:0;letter-spacing:-.035em}
 .weave-word-right{font-size:1.18em;align-self:center}
 .scroll-stage .hero-copy .hero-product{top:calc(48px + 25vw + 12px);width:70%;font-size:13px;line-height:1.4}
 .scroll-stage .hero-copy .eyebrow{font-size:12px;top:12px}
 .scroll-stage .hero-copy .intro{font-size:14px;bottom:86px;line-height:1.55}
 .scroll-stage .hero-copy .primary-button,.scroll-stage .hero-copy .text-link{font-size:12px;padding:10px 8px}
 .scroll-invitation span{font-size:27px}
 .scroll-stage .experience{top:210px;bottom:160px}
 .scroll-stage .drag-hint{font-size:11px}
 .company-section{padding-top:72px;padding-bottom:36px;gap:30px}
 .company-section .reference-copy h2{font-size:clamp(28px,7.4vw,42px);line-height:1.2;margin-bottom:24px}
 .company-section .reference-copy h2 em{font-size:1.4em}
 .company-section .reference-copy>p{font-size:16px;line-height:1.7}
 .catalog-section .section-heading h2{font-size:clamp(27px,7vw,42px);line-height:1.2}
 .catalog-section .section-heading h2 em{font-size:1.45em}
 .catalog-section .section-heading>p{font-size:16px;margin-top:22px}
 .catalog-panel .collection-title{font-size:23px;line-height:1.3;min-height:2.6em}
 .catalog-panel .collection-description{font-size:15px;min-height:3.2em}
 .contact-section h2{font-size:clamp(26px,6.9vw,37px);line-height:1.2}
 .contact-section h2 em{font-size:1.35em}
 .contact-section .contact-intro>p,.contact-delivery p{font-size:15px}
 .contact-details .contact-delivery{align-items:start;flex-wrap:wrap}
}
@media(max-width:1100px) and (max-height:700px){
 .scroll-stage .hero-copy h1.weave-title{top:38px;font-size:clamp(30px,9.8vw,54px)}
 .scroll-stage .hero-copy .hero-product{top:calc(38px + 23vw + 12px)}
 .scroll-stage .experience{top:180px;bottom:142px}
 .scroll-stage .hero-copy .intro{font-size:13px;bottom:74px}
 .scroll-invitation span{font-size:24px}
}
@media(min-width:761px) and (max-height:650px){
 .scroll-stage .hero-copy h1.weave-title{font-size:clamp(40px,5.5vw,76px)}
 .catalog-section .section-heading h2{font-size:34px}
 .catalog-section .section-heading>p{font-size:14px}
 .catalog-panel .collection-title{font-size:24px}
 .catalog-panel .collection{width:min(660px,calc((100svh - 340px)*1.6),100%)}
}
