/* Cherry rounded rectangular contact buttons. */
.contact.section{padding:68px 6% 0}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:8%;align-items:center}
.contact h2{font-size:clamp(62px,7.3vw,112px);line-height:1.12;letter-spacing:-.045em}
.contact-main .pill{margin-top:34px}
.contact-aside{border-left:1px solid #ffffff40;padding-left:36px}
.contact-aside p{font-size:17px;line-height:1.65;margin:0 0 24px;max-width:420px}
.contact-links{display:grid}
.contact-links a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #ffffff40;font-size:22px;transition:color .2s,border-color .2s}
.contact-links a:hover,.contact-links a:focus-visible{color:#ffd6e3;border-color:#ffd6e3}
.contact-nav{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:14px;margin-top:26px}
.contact-nav a{padding:6px 0;text-underline-offset:6px;transition:color .2s}
.contact-nav a:hover,.contact-nav a:focus-visible{color:#ffd6e3;text-decoration:underline}
.contact-signature{display:flex;align-items:center;justify-content:space-between;gap:28px;border-top:1px solid #ffffff40;margin-top:58px;padding:28px 0 30px}
.signature-monogram{font-family:'Playfair Display',Georgia,serif;font-size:clamp(72px,9vw,130px);letter-spacing:-.1em;line-height:1;padding-right:.1em}
.signature-name{font-family:'Playfair Display',Georgia,serif;font-size:clamp(32px,5vw,76px);line-height:1.1;letter-spacing:-.035em;text-align:right}
.signature-name>span{display:block;font-family:Manrope,Arial,sans-serif;font-size:12px;letter-spacing:2px;margin-top:16px}
footer{background:var(--wine);color:#efdce2;padding:20px 6%;border-top:1px solid #ffffff30;font-size:12px}
footer a:hover,footer a:focus-visible{color:#ffd6e3!important}
@media(max-width:900px){.contact-grid{gap:5%;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.contact-aside{padding-left:22px}.contact h2{font-size:clamp(49px,7.4vw,70px)}}
@media(max-width:600px){.contact.section{padding:48px 5% 0}.contact-grid{grid-template-columns:1fr;gap:38px}.contact h2{font-size:clamp(46px,11vw,65px)}.contact-aside{border-left:0;border-top:1px solid #ffffff40;padding:26px 0 0}.contact-aside p{font-size:16px}.contact-nav{width:auto;order:initial;border-top:0;padding-top:0;justify-content:flex-start;gap:12px 24px}.contact-signature{margin-top:36px;padding:24px 0;gap:20px}.signature-monogram{font-size:66px}.signature-name{font-size:clamp(26px,6.5vw,38px)}.signature-name>span{font-size:10px;letter-spacing:1px;margin-top:10px}footer{padding:20px 5%}}
/* Two typefaces: Manrope for copy and headlines; Playfair Display for editorial accents. */
.brand{display:flex;align-items:center;gap:16px;flex-shrink:0;letter-spacing:0}
.brand .brand-monogram{font-family:'Playfair Display',Georgia,serif;font-size:52px;font-weight:500;line-height:1;letter-spacing:-.1em;color:var(--wine);margin:0;padding-right:6px}
.brand .brand-wordmark{font-family:'Playfair Display',Georgia,serif;font-size:23px;line-height:1.15;letter-spacing:-.025em;margin:0;padding-left:16px;border-left:1px solid var(--line)}
.brand .brand-role{font-family:Manrope,Arial,sans-serif;font-size:10px;font-weight:500;letter-spacing:1.6px;margin-top:8px}
h1.hero-title{font-family:Manrope,Arial,sans-serif;font-weight:500;font-size:clamp(52px,7.5vw,112px);line-height:1.13;letter-spacing:-.055em;display:block;color:var(--ink);margin:38px 0 48px}
.hero-title>span{display:block}
.hero-title .hero-title-accent{color:var(--wine);margin-left:15%}
@media(max-width:1100px){.brand{gap:10px}.brand .brand-wordmark{font-size:20px;padding-left:12px}.brand .brand-monogram{font-size:46px}header{gap:16px}}
@media(max-width:600px){.brand .brand-wordmark{font-size:21px}.brand .brand-monogram{font-size:46px}.brand .brand-role{font-size:9px;letter-spacing:1.2px}h1.hero-title{font-size:clamp(39px,9vw,54px);letter-spacing:-.045em;line-height:1.2;margin:30px 0 32px}.hero-title .hero-title-accent{margin-left:0}}
header nav a,.text-link,.instagram,footer a{position:relative;transition:color .2s ease,border-color .2s ease;background-image:linear-gradient(currentColor,currentColor);background-size:0 2px;background-repeat:no-repeat;background-position:left bottom;padding-bottom:8px}
header nav a{padding-top:8px}
.text-link,.instagram{border-bottom-color:transparent;background-size:100% 1px;transition:color .2s ease,background-size .2s ease}
header nav a,footer a{transition:color .2s ease,background-size .2s ease}
@media(hover:hover){header nav a:hover,footer a:hover{color:#98153a;background-size:100% 2px}.text-link:hover{color:#ae1944;background-size:100% 2px}.instagram:hover{color:#ffd6e3;background-size:100% 2px}#lang:hover,#lang:hover span{color:#98153a}}
header nav a:focus-visible,footer a:focus-visible{color:#98153a;background-size:100% 2px}
.text-link:focus-visible{color:#ae1944;background-size:100% 2px}
.instagram:focus-visible{color:#ffd6e3;background-size:100% 2px}
header nav a:active,footer a:active,.text-link:active{color:#541026;background-size:100% 2px}
.instagram:active{color:#ffc0d4;background-size:100% 2px}
#lang,#lang span{transition:color .2s ease}#lang:focus-visible,#lang:focus-visible span{color:#98153a}
.hero-copy .pill,.contact .pill,.contact-small{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;width:auto;height:auto;min-height:60px;border-radius:16px;padding:10px 12px 10px 24px;text-align:left;line-height:1.3;background:#841333;color:#fff;border:1px solid #a13350;font-size:16px;font-weight:600;box-shadow:0 7px 20px #70142d20,inset 0 1px 0 #ffffff18;transition:background .2s,box-shadow .2s,transform .2s;flex-shrink:0}
.hero-copy .pill::after,.contact .pill::after,.contact-small::after{content:'↗';display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;background:#fff;color:#78132f;border-radius:10px;font-size:22px;transition:transform .2s}
.hero-copy .pill:hover,.contact .pill:hover,.contact-small:hover{background:#a01840;box-shadow:0 10px 25px #70142d30;transform:translateY(-2px)}
.hero-copy .pill:hover::after,.contact .pill:hover::after,.contact-small:hover::after{transform:rotate(45deg)}
.hero-copy .pill:active,.contact .pill:active,.contact-small:active{transform:translateY(0);box-shadow:none}
.contact .pill{background:#541026;border-color:#dca2b5;box-shadow:0 7px 20px #24040e30}
.contact-small{min-height:48px;font-size:14px;gap:16px;padding:7px 8px 7px 18px;border-radius:13px}
.contact-small::after{width:32px;height:32px;flex-basis:32px;border-radius:8px;font-size:20px}
.hero-note{margin-top:45px}header{padding-top:20px;padding-bottom:20px}
@media(max-width:1100px){.header-right{gap:18px}nav{gap:18px}.contact-small{font-size:13px;gap:10px;padding-left:14px}}
@media(max-width:900px){.contact-small{display:none}}
@media(max-width:600px){.hero-copy .pill,.contact .pill{width:100%;max-width:340px;min-height:60px;font-size:16px;padding-left:22px;border-radius:15px}.brand{font-size:25px}.header-right{margin-left:auto}nav{font-size:13px;gap:10px}.about{padding-top:55px;padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.hero-copy .pill,.contact .pill,.contact-small,.hero-copy .pill::after,.contact .pill::after,.contact-small::after{transition:none;transform:none!important}}
