/* A finished invitation, followed by the same quiet horizontal rhythm as HortPassport. */
.contact{overflow:hidden;background:radial-gradient(ellipse at 85% 30%,#fff9,transparent 55%),linear-gradient(125deg,#e1c7ff,#c59aff 65%,#bd90f4);padding-top:64px;padding-bottom:68px;isolation:isolate}
.contact>.ambient-lights{z-index:0;opacity:.65}.contact .light-base{stroke:#8a4bd2;opacity:.24}.contact .light-glow{stroke:#b582ed;opacity:.13}.contact .light-travel{stroke:#7e40c7;opacity:.55}
.contact-top,.contact-grid,.contact-picker{position:relative;z-index:1}
.contact-top{gap:24px;padding-bottom:23px;border-bottom:1px solid #5d26bf26}
.contact-top .eyebrow{font-size:10px;letter-spacing:.12em}.contact-top-note{font-size:8px;letter-spacing:.09em;color:#63427e;text-align:right}
.contact-grid{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:7%;padding:35px 0 42px}
.contact-copy{min-width:0}.contact h2{font-size:clamp(62px,7.7vw,112px);line-height:.98;letter-spacing:-.055em;word-spacing:.025em;margin:0}
.contact-intro{font-size:17px;line-height:1.6;color:#533768;margin-top:26px}
.contact-cta{margin-top:28px;min-width:225px;background:#281044;border-radius:999px;padding-inline:25px;min-height:56px;box-shadow:0 8px 22px #4b21801a}
.contact-cta:hover{background:#3d1960}.contact-small{font-size:10px;color:#684981;line-height:1.5;margin-top:15px}
.contact-visual{position:relative;min-width:0;align-self:stretch;min-height:425px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:130px 130px 20px 20px;background:linear-gradient(145deg,#fbf9fd33,#fff2);border:1px solid #ffffff80;box-shadow:inset 0 1px 0 #fff7,0 25px 50px #5d26bf0a;padding:20px 20px 0}
.contact-art{position:relative;isolation:isolate;flex:1;min-height:340px}
.contact-art>img{position:absolute;bottom:0;left:-4%;width:108%;height:148%;max-width:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 16px 20px #4a237119)}
.brand-enhanced .contact-visual[data-revealed=true]{clip-path:inset(-30px -30px -38px)}
.contact-art-light{position:absolute;inset:12% -8% 0;background:radial-gradient(ellipse,#ffffffa8,transparent 68%);z-index:-1}
.contact-visual-caption{display:flex;align-items:center;gap:13px;background:#ffffff9c;border:1px solid #fff9;backdrop-filter:blur(12px);border-radius:13px;padding:14px 15px;position:relative;z-index:2;transform:translateY(17px);box-shadow:0 12px 24px #5d26bf0b}
.contact-caption-mark{flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--purple);color:white;display:grid;place-items:center;font-size:23px}
.contact-visual-caption p{font-weight:700;font-size:14px;line-height:1.35;letter-spacing:-.015em}.contact-visual-caption small{display:block;font-weight:400;font-size:10px;color:#765a87;margin-top:4px;letter-spacing:0}
.contact-picker{border-top:1px solid #5d26bf32;padding-top:30px;display:grid;grid-template-columns:1fr 3fr;gap:32px;align-items:start;margin-top:28px}
.contact-label{font-size:9px;letter-spacing:.1em;margin-bottom:8px;line-height:1.5}.contact-picker-note{font-size:12px;line-height:1.5;color:#63427e;max-width:190px}
.contact-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.contact-options button{display:grid;grid-template-columns:1fr auto;gap:8px;padding:15px 16px;min-height:83px;border:1px solid #7040a438;background:#ffffff30;border-radius:10px;font-size:12px;line-height:1.3;transition:background .3s,color .3s,border-color .3s,translate .4s var(--surface-ease)}
.contact-options button:last-child{grid-column:span 2;background:#ffffff6e}
.contact-options button>.contact-option-number{grid-column:1/-1;font-size:9px;line-height:1;color:#754f95;font-weight:400}
.contact-options button>span:last-child{grid-column:2;grid-row:2;font-size:19px;line-height:1}
.contact-options button:hover{background:#5d26bf;color:#fff;border-color:#5d26bf;translate:0 -3px}
.contact-options button:hover>.contact-option-number{color:#e4cfff}
.footer{position:relative;z-index:5;background:#0b0511;padding-top:58px;padding-bottom:40px;color:white;font-size:13px;line-height:1.5}
.footer-intro{display:flex;align-items:center;gap:38px;flex-wrap:wrap}.footer-intro>.brand{align-self:center}.footer-intro>p{font-size:16px;line-height:1.6;color:#e9e1f5;max-width:38ch}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:28px}.footer ul{list-style:none;margin:0;padding:0}
.footer-row ul{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:center}
.footer-primary{border-bottom:1px solid #ffffff38;margin-top:36px;padding-bottom:24px;align-items:flex-start}
.footer-primary nav{min-width:0}.footer-primary a{font-size:13px;font-weight:700}.footer-country{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:12px;font-weight:700;min-height:44px}
.footer-secondary{padding-top:18px}.footer-secondary ul{width:100%;gap:6px 24px}.footer-secondary a,.footer-secondary button{font-size:12px;color:#d3c6e0}
.footer a:not(.brand),.footer button{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:100%;line-height:1.5;overflow-wrap:anywhere}
.footer button{background:transparent;padding:0;text-align:left;font:inherit;font-size:12px;color:#d3c6e0;cursor:pointer}
.footer-copy{font-size:11px;color:#a99cbf;min-height:44px;display:flex;align-items:center;gap:4px}
.footer a:hover,.footer button:hover{text-decoration:underline;text-underline-offset:4px}
.footer a:focus-visible,.footer button:focus-visible,.footer summary:focus-visible{outline:2px solid #fff;outline-offset:4px}
.footer-operator{border-top:1px solid #ffffff1c;margin-top:16px;padding-top:22px;font-size:12px;color:#a99cbf;line-height:1.7}
.footer-operator strong{color:#d3c6e0;font-weight:400}
.footer-disclosures{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-top:9px;align-items:start}
.footer-professional,.footer-privacy{max-width:680px;margin:0;min-width:0;font-size:12px}
.footer-disclosures summary{display:inline-flex;align-items:center;gap:20px;cursor:pointer;list-style:none;padding:9px 0;min-height:44px;color:#c9bbd8;font-size:12px}
.footer-disclosures summary::-webkit-details-marker{display:none}
.footer-disclosures summary>span{font-size:18px;display:inline-block;transition:transform .25s}
.footer-disclosures details[open] summary>span{transform:rotate(45deg)}
.footer-disclosures .disclosure-content>div{padding:8px 0 14px;color:#bcaecd;font-size:12px;line-height:1.75}
.footer-disclosures details a{color:#e9e1f5;text-decoration:underline;text-underline-offset:3px;min-height:28px}
.footer-tertiary{display:flex;align-items:center;gap:10px 30px;flex-wrap:wrap;margin-top:16px}
.footer-tertiary>a,.footer-tertiary>span{font-size:11px;color:#a99cbf}.footer-tertiary>span{line-height:1.6}
.footer .draft-note{border-top:0;font-size:9px;color:#8e7fa0;line-height:1.7;margin-top:14px}
@media(min-width:2200px){.contact-intro{font-size:20px}.contact-grid{gap:9%}.contact-visual{min-height:475px}.contact-art{min-height:385px}.contact-options button{font-size:14px}.footer-primary a{font-size:15px}.footer-secondary a,.footer-secondary button{font-size:14px}.footer-operator{font-size:14px}}
@media(max-width:1100px){.contact-grid{gap:5%}.contact h2{font-size:clamp(61px,8vw,90px)}.contact-visual{min-height:390px;padding-inline:14px;border-top-left-radius:100px;border-top-right-radius:100px}.contact-art{min-height:310px}.contact-intro{font-size:15px}.contact-picker{grid-template-columns:1fr 2.6fr;gap:25px}.contact-options button{font-size:11px;padding:13px}.footer-primary{flex-direction:column;gap:10px}.footer-row ul{gap:7px 24px}}
@media(max-width:740px){
 .contact{padding-top:35px;padding-bottom:44px;border-radius:20px 20px 0 0}.contact-top{padding-bottom:17px;gap:15px}.contact-top .eyebrow{font-size:8px}.contact-top-note{font-size:8px;max-width:125px;line-height:1.6}
 .contact-grid{grid-template-columns:1fr;gap:36px;padding-top:29px;padding-bottom:25px}.contact h2{font-size:clamp(53px,13.6vw,88px)}.contact-intro{font-size:15px;margin-top:22px}.contact-intro br{display:none}.contact-cta{margin-top:24px;min-height:54px;font-size:13px;min-width:220px}.contact-small{font-size:9px;margin-top:13px}
 .contact-visual{width:100%;max-width:440px;justify-self:center;min-height:350px;border-radius:100px 100px 16px 16px;padding-inline:14px}.contact-art{min-height:300px}.contact-visual-caption{padding:12px;transform:translateY(14px)}.contact-caption-mark{width:32px;height:32px;flex-basis:32px;font-size:20px}.contact-visual-caption p{font-size:13px}.contact-visual-caption small{font-size:9px}
 .contact-picker{grid-template-columns:1fr;gap:20px;margin-top:16px;padding-top:24px}.contact-label{margin-bottom:5px}.contact-picker-note{max-width:none;font-size:12px}.contact-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.contact-options button{font-size:12px;min-height:80px;padding:13px 14px}.contact-options button:last-child{grid-column:1/-1;min-height:72px}
 .footer{padding-top:42px;padding-bottom:max(34px,env(safe-area-inset-bottom));font-size:12px}.footer-intro{gap:22px;align-items:center}.footer-intro>p{font-size:13px;line-height:1.6}.footer-intro .brand{min-width:97px}
 .footer-primary{margin-top:28px;padding-bottom:16px;gap:12px}.footer-primary nav{width:100%}.footer-primary ul{display:grid;grid-template-columns:1fr 1fr;gap:2px 20px}.footer-primary a{font-size:12px}.footer-country{font-size:11px}.footer-secondary{padding-top:14px}.footer-secondary ul{gap:0 22px}.footer-secondary a,.footer-secondary button{font-size:11px}.footer-copy{font-size:10px}
 .footer-operator{font-size:11px;padding-top:18px;margin-top:12px}.footer-disclosures{grid-template-columns:1fr;gap:0}.footer-disclosures summary{font-size:11px}.footer-disclosures .disclosure-content>div{font-size:11px}.footer-tertiary{gap:2px 20px;margin-top:10px}.footer-tertiary>a,.footer-tertiary>span{font-size:10px}.footer .draft-note{font-size:8px;margin-top:15px}
}
@media(max-width:359px){.contact-top-note{display:none}.contact-grid{gap:29px}.contact h2{font-size:clamp(46px,14vw,54px)}.contact-visual{min-height:295px;border-radius:80px 80px 14px 14px}.contact-art{min-height:250px}.contact-visual-caption{gap:9px;padding:10px}.contact-visual-caption p{font-size:12px}.contact-visual-caption small{font-size:8px}.contact-caption-mark{width:28px;height:28px;flex-basis:28px}.contact-options button{font-size:11px;padding:12px}.footer-intro{gap:16px}.footer-intro>p{font-size:11px}.footer-primary ul{gap:0 12px}.footer-primary a{font-size:11px}.footer-secondary ul{gap:0 17px}}
html[data-motion=paused] .contact-options button,html[data-motion=paused] .footer-disclosures summary>span{transition:none}
@media(prefers-reduced-motion:reduce){.contact-options button,.footer-disclosures summary>span{transition:none!important}.contact-options button:hover{translate:none}}
