:root{
  color-scheme:light;
  --plum:#360636;--plum-2:#f5f1ee;--plum-3:#ffffff;--cyan:#00bcd8;
  --ivory:#241b25;--muted:#716773;--line:rgba(54,6,54,.14);
  --surface:rgba(255,255,255,.92);--surface-soft:rgba(54,6,54,.035);
  --surface-hover:rgba(0,188,216,.07);--shadow:0 24px 70px rgba(54,6,54,.13);
  --font:'Montserrat',Arial,sans-serif;
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --plum:#360636;--plum-2:#211321;--plum-3:#2b1b2b;--cyan:#33DDFF;
  --ivory:#F5F1EE;--muted:#bdb0bd;--line:rgba(245,241,238,.13);
  --surface:rgba(31,20,33,.98);--surface-soft:rgba(255,255,255,.025);
  --surface-hover:rgba(51,221,255,.055);--shadow:0 28px 90px rgba(0,0,0,.42);
}
*{box-sizing:border-box}[hidden]{display:none!important}
html{min-height:100%;background:var(--plum-2);color-scheme:light}
html[data-theme="dark"]{color-scheme:dark}
body{margin:0;min-height:100vh;font-family:var(--font);color:var(--ivory);background:radial-gradient(ellipse at 50% -10%,rgba(92,32,91,.10),transparent 52%),linear-gradient(155deg,#fff 0%,#f5f1ee 100%);-webkit-font-smoothing:antialiased;transition:background .2s ease,color .2s ease}
:root[data-theme="dark"] body{background:radial-gradient(ellipse at 50% -10%,rgba(92,32,91,.34),transparent 52%),linear-gradient(155deg,#211321 0%,#160f19 100%)}
.shell{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px 18px 22px;overflow:hidden}
.ambient{position:fixed;pointer-events:none;border:1px solid rgba(0,188,216,.13);border-radius:50%;filter:blur(.2px)}
:root[data-theme="dark"] .ambient{border-color:rgba(51,221,255,.10)}
.ambient-one{width:420px;height:420px;top:-260px;right:-170px}.ambient-two{width:520px;height:520px;bottom:-370px;left:-280px}
.business-card{position:relative;width:min(100%,440px);padding:30px 28px 20px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(250,247,250,.98) 62%);border:1px solid rgba(54,6,54,.13);border-radius:26px;box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.7);overflow:hidden}
:root[data-theme="dark"] .business-card{background:linear-gradient(155deg,rgba(58,33,59,.96),rgba(31,20,33,.98) 62%);border-color:rgba(245,241,238,.14);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.035)}
.business-card:before{content:"";position:absolute;top:0;left:28px;right:28px;height:2px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.9}
.brand-area{text-align:center;padding:2px 0 21px;border-bottom:1px solid var(--line)}
.brand-logo{display:block;width:min(100%,290px);height:auto;max-height:100px;object-fit:contain;margin:0 auto 11px}
.brand-kicker,.eyebrow,.social-label{display:block;font-size:9px;letter-spacing:.19em;font-weight:700;color:var(--cyan)}
.brand-kicker{font-size:8px;color:#766a78}:root[data-theme="dark"] .brand-kicker{color:#a99aaa}
.identity{text-align:center;padding:27px 0 23px}
.institutional-description{max-width:340px;margin:0 auto 18px;color:var(--ivory);font-size:13px;line-height:1.75;font-weight:500;letter-spacing:.005em}
.specialties{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;column-gap:7px;row-gap:3px;margin:0 auto;max-width:100%;text-align:center;font-size:8px;line-height:1.8;font-weight:600;letter-spacing:.105em;color:var(--muted);text-transform:uppercase}
.specialty-name{white-space:nowrap}
.specialty-separator{color:var(--cyan);font-weight:800;padding:0 1px}
.actions{display:grid;gap:9px}
.action{display:flex;align-items:center;gap:13px;min-height:62px;padding:11px 14px;text-decoration:none;color:var(--ivory);border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.action:hover,.action:focus-visible{transform:translateY(-2px);border-color:rgba(0,188,216,.6);background:var(--surface-hover);outline:none}
.action-primary{background:linear-gradient(105deg,#360636,#551b55);border-color:rgba(0,188,216,.48);color:#fff}
.action-primary:hover,.action-primary:focus-visible{background:linear-gradient(105deg,#421044,#641d64)}
:root[data-theme="dark"] .action-primary{background:linear-gradient(105deg,#360636,#4a1649);border-color:rgba(51,221,255,.42)}
:root[data-theme="dark"] .action-primary:hover,:root[data-theme="dark"] .action-primary:focus-visible{background:linear-gradient(105deg,#421044,#541c53)}
.action-icon,.tool-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;background:rgba(0,188,216,.09);color:#008da3}
:root[data-theme="dark"] .action-icon,:root[data-theme="dark"] .tool-icon{background:rgba(51,221,255,.08);color:var(--cyan)}
.action-icon svg,.tool-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.action>span:nth-child(2){display:flex;flex-direction:column;gap:4px;min-width:0}.action strong{font-size:12px;font-weight:700}.action small{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.action-primary small{color:rgba(255,255,255,.76)}.action-arrow{margin-left:auto;color:var(--cyan);display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;opacity:.9}.action-arrow svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.tools{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:13px}
.tool{min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);color:var(--ivory);font:600 10px var(--font);cursor:pointer;transition:border-color .18s ease,background .18s ease}
.tool:hover,.tool:focus-visible{border-color:rgba(0,188,216,.55);background:var(--surface-hover);outline:none}.tool-icon{width:28px;height:28px;flex-basis:28px}.tool-icon svg{width:17px;height:17px}
.social{padding:20px 0 17px;text-align:center;border-bottom:1px solid var(--line)}.social-label{font-size:8px;color:#766a78}:root[data-theme="dark"] .social-label{color:#a99aaa}
.social-links{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:12px}.social-link{display:inline-flex;align-items:center;gap:7px;color:var(--ivory);text-decoration:none;padding:5px 2px;font-size:10px;font-weight:600;transition:color .18s ease,opacity .18s ease}.social-link:hover,.social-link:focus-visible{color:var(--cyan);outline:none}.social-link svg{width:17px;height:17px;display:block;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.social-link .social-facebook{fill:currentColor;stroke:none;width:15px;height:15px;flex-basis:15px}
.qr-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 0 16px}.qr-copy{display:flex;flex-direction:column;gap:8px}.qr-copy .eyebrow{font-size:8px}.qr-copy strong{font-size:15px;line-height:1.4}.qr-copy small{max-width:185px;color:var(--muted);font-size:9px;line-height:1.5}
.qr-wrap{flex:0 0 112px;width:112px;padding:7px;border-radius:10px;background:#fff;text-align:center}.qr-wrap img{display:block;width:98px;height:98px;object-fit:contain}.qr-wrap span{display:block;color:#39243a;font:700 6px var(--font);letter-spacing:.08em;padding:4px 0 1px}
.card-footer{display:flex;justify-content:space-between;gap:8px;padding-top:13px;border-top:1px solid var(--line);color:var(--muted);font-size:8px;letter-spacing:.06em}
.disclaimer{max-width:440px;text-align:center;color:var(--muted);font-size:9px;line-height:1.6;margin:15px 5px 0}
.toast{position:fixed;left:50%;bottom:22px;z-index:5;transform:translate(-50%,15px);opacity:0;pointer-events:none;padding:11px 16px;border:1px solid rgba(0,188,216,.4);border-radius:99px;background:#fff;color:#241b25;font:500 11px var(--font);box-shadow:0 10px 30px rgba(54,6,54,.18);transition:opacity .2s ease,transform .2s ease}
:root[data-theme="dark"] .toast{background:#2a1b2c;color:var(--ivory);border-color:rgba(51,221,255,.35);box-shadow:0 10px 30px rgba(0,0,0,.3)}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:390px){.shell{padding:16px 10px}.business-card{padding:25px 19px 17px;border-radius:21px}.brand-logo{max-height:82px}.identity{padding:22px 0 19px}.institutional-description{font-size:12px;line-height:1.7;margin-bottom:16px}.specialties{font-size:7px;letter-spacing:.075em;column-gap:5px}.action{min-height:59px;padding:10px 11px}.qr-copy strong{font-size:14px}.qr-wrap{flex-basis:100px;width:100px}.qr-wrap img{width:86px;height:86px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
