@import "tailwindcss";

:root { --ink:#123f63; --muted:#63747c; --forest:#0d4d78; --deep:#093653; --mint:#d8e7ed; --aqua:#5d7f54; --ivory:#f8f6f0; --paper:#fffdf9; --orange:#b79b55; --sand:#ddcfa5; --line:rgba(13,77,120,.16); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--ivory); color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
h1,h2,h3,p { text-wrap:pretty; }
main { position:relative; overflow:hidden; }
main > :not(.site-watermark) { position:relative; z-index:1; }
.site-watermark { position:absolute; z-index:0; top:47%; left:50%; width:min(700px,72vw); transform:translate(-50%,-50%); opacity:.055; pointer-events:none; mix-blend-mode:multiply; }
.site-watermark img { display:block; width:100%; height:auto; border-radius:50%; }

.site-header { width:min(1180px,calc(100% - 48px)); height:96px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand,.footer-brand { display:flex; align-items:center; gap:14px; }
.brand-logo-frame { width:59px; height:59px; display:block; flex:0 0 59px; overflow:hidden; border-radius:50%; }
.brand-logo { display:block; width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; }
.brand-copy,.footer-brand div { display:flex; flex-direction:column; gap:2px; }
.brand-copy strong,.footer-brand strong { font-size:23px; letter-spacing:.025em; }
.brand-copy span,.footer-brand span { color:var(--muted); font-size:11px; letter-spacing:.025em; }
.footer-logo { display:block; width:78px; height:78px; object-fit:cover; border-radius:50%; mix-blend-mode:multiply; }
.desktop-nav { display:flex; align-items:center; gap:28px; font-size:14px; font-weight:700; }
.desktop-nav a { padding:12px 0; transition:opacity .2s; }
.desktop-nav a:hover { opacity:.58; }
.desktop-nav .nav-cta { border:1px solid var(--ink); border-radius:999px; padding:12px 20px; }
.desktop-nav .lang-switch { min-width:40px; padding-left:16px; border-left:1px solid var(--line); color:var(--forest); font-size:12px; letter-spacing:.08em; }
main[lang="el"] .desktop-nav { gap:20px; font-size:13px; }
main[lang="el"] h1 { font-size:clamp(48px,5.3vw,76px); }
.mobile-menu { display:none; position:relative; }
.mobile-menu summary { cursor:pointer; list-style:none; border:1px solid var(--ink); border-radius:999px; padding:10px 17px; font-size:13px; font-weight:700; }
.mobile-menu div { position:absolute; z-index:20; right:0; top:48px; width:220px; padding:10px; background:var(--paper); border:1px solid var(--line); border-radius:18px; box-shadow:0 18px 50px rgba(9,54,83,.16); }
.mobile-menu a { display:block; padding:12px 14px; border-radius:10px; font-weight:700; }
.mobile-menu a:hover { background:var(--mint); }
.mobile-menu .lang-switch { margin-bottom:5px; background:var(--mint); color:var(--forest); }

.hand-mark { position:relative; display:inline-block; width:42px; height:52px; flex:0 0 auto; transform:rotate(-5deg); }
.palm { position:absolute; width:29px; height:31px; left:8px; top:19px; background:var(--forest); border-radius:12px 12px 16px 16px; }
.finger { position:absolute; width:6px; background:var(--forest); border-radius:8px 8px 2px 2px; }
.finger-1 { height:25px; left:8px; top:5px; transform:rotate(-5deg); }.finger-2 { height:30px; left:16px; top:0; }.finger-3 { height:28px; left:24px; top:3px; transform:rotate(3deg); }.finger-4 { height:22px; left:32px; top:10px; transform:rotate(7deg); }
.thumb { position:absolute; width:8px; height:23px; left:2px; top:23px; background:var(--forest); border-radius:8px; transform:rotate(-40deg); transform-origin:bottom; }

.hero { width:min(1180px,calc(100% - 48px)); min-height:660px; margin:0 auto; display:grid; grid-template-columns:1.2fr .8fr; gap:72px; align-items:center; padding:70px 0 90px; }
.hero-copy { max-width:690px; }.eyebrow { margin:0 0 22px; color:var(--forest); font-size:13px; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
h1 { margin:0; max-width:720px; font-family:Georgia,'Times New Roman',serif; font-size:clamp(52px,6.2vw,88px); line-height:.98; letter-spacing:-.045em; font-weight:500; }
.hero-lede { max-width:640px; margin:30px 0 0; color:var(--muted); font-size:19px; line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:18px; border-radius:999px; padding:0 23px; font-size:14px; font-weight:750; transition:transform .2s,background .2s; }.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--forest); color:white; }.button-primary:hover { background:var(--deep); }.button-primary span { font-size:20px; }.button-secondary { border:1px solid var(--line); background:rgba(255,255,255,.42); }
.button-tertiary { background:var(--sand); color:var(--ink); }
.hero-panel { position:relative; min-height:480px; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:240px 240px 24px 24px; background:var(--mint); }
.hero-panel .hand-mark { z-index:2; width:150px; height:190px; transform:rotate(-8deg); }.hero-panel .palm { width:105px; height:115px; left:28px; top:68px; border-radius:42px 42px 55px 55px; }.hero-panel .finger { width:22px; border-radius:18px 18px 6px 6px; }.hero-panel .finger-1 { height:90px; left:28px; top:20px; }.hero-panel .finger-2 { height:108px; left:56px; top:0; }.hero-panel .finger-3 { height:100px; left:85px; top:10px; }.hero-panel .finger-4 { height:80px; left:114px; top:34px; }.hero-panel .thumb { width:28px; height:82px; left:7px; top:86px; border-radius:20px; }
.hero-emblem-wrap { position:relative; z-index:2; width:270px; height:270px; padding:9px; border:1px solid rgba(13,77,120,.18); border-radius:50%; background:rgba(255,255,255,.5); box-shadow:0 22px 55px rgba(9,54,83,.12); }
.hero-emblem-wrap img { display:block; width:100%; height:100%; object-fit:cover; border-radius:50%; mix-blend-mode:multiply; }
.hero-panel p { z-index:2; width:240px; margin:26px 0 0; text-align:center; font-family:Georgia,serif; font-size:20px; line-height:1.35; }.orb { position:absolute; border-radius:50%; background:rgba(255,255,255,.55); }.orb-one { width:210px; height:210px; top:-30px; right:-35px; }.orb-two { width:120px; height:120px; bottom:50px; left:-35px; background:var(--aqua); }

.urgent-bar { width:min(1180px,calc(100% - 48px)); margin:0 auto 24px; padding:17px 22px; display:flex; align-items:center; justify-content:space-between; gap:24px; border:1px solid rgba(183,155,85,.34); border-radius:14px; background:#f3eddd; font-size:13px; }.urgent-bar div { display:flex; align-items:center; gap:13px; }.urgent-bar p { margin:0; line-height:1.5; }.urgent-bar a { font-weight:800; text-decoration:underline; text-underline-offset:3px; }.urgent-icon { width:27px; height:27px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--orange); color:white; font-weight:900; }

.section { width:min(1180px,calc(100% - 48px)); margin:0 auto; }.about-section,.events-section,.mission-section { padding:120px 0; }.section-label { display:flex; align-items:center; gap:14px; padding-bottom:23px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }.section-label span { width:31px; height:31px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--forest); font-size:10px; }.section-label.light { color:rgba(255,255,255,.62); border-color:rgba(255,255,255,.17); }.section-label.light span { color:var(--mint); border-color:rgba(255,255,255,.25); }
[id] { scroll-margin-top:24px; }
.kicker { margin:0 0 18px; color:var(--aqua); font-size:13px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding:70px 0 85px; }.about-grid h2,.patient-heading h2,.professional-intro h2,.contact-inner>h2 { margin:0; font-family:Georgia,serif; font-size:clamp(42px,5vw,68px); line-height:1.03; letter-spacing:-.035em; font-weight:500; }.about-copy p { margin:0 0 22px; color:var(--muted); font-size:16px; line-height:1.72; }.about-copy .lead { color:var(--ink); font-family:Georgia,serif; font-size:23px; line-height:1.5; }.text-link { display:inline-flex; align-items:center; gap:25px; margin-top:16px; padding-bottom:7px; border-bottom:1px solid var(--ink); font-weight:800; font-size:14px; }.value-row { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.value-row article { padding:38px 38px 42px 0; }.value-row article+article { padding-left:38px; border-left:1px solid var(--line); }.value-row article>span { color:var(--aqua); font-size:11px; font-weight:900; }.value-row h3 { margin:34px 0 11px; font-size:19px; }.value-row p { margin:0; color:var(--muted); font-size:14px; line-height:1.6; }

.patient-section { padding:115px 0; background:var(--forest); color:white; }.patient-heading { display:grid; grid-template-columns:1.3fr .7fr; gap:100px; align-items:end; padding:65px 0 52px; }.patient-heading .kicker,.professional-intro .kicker { color:var(--mint); }.patient-heading>p { margin:0; color:rgba(255,255,255,.64); font-size:16px; line-height:1.7; }.topic-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.topic-card { min-height:300px; padding:25px; display:flex; flex-direction:column; border:1px solid rgba(255,255,255,.16); border-radius:18px; background:rgba(255,255,255,.04); transition:transform .2s,background .2s; }.topic-card:hover { transform:translateY(-4px); background:rgba(255,255,255,.08); }.topic-top { display:flex; align-items:center; justify-content:space-between; color:var(--mint); font-size:11px; font-weight:800; }.round-arrow { width:36px; height:36px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.22); border-radius:50%; font-size:15px; }.topic-card h3 { margin:auto 0 14px; font-family:Georgia,serif; font-size:25px; font-weight:500; }.topic-card p { margin:0; color:rgba(255,255,255,.6); font-size:14px; line-height:1.6; }.find-care { margin-top:52px; padding:42px 46px; display:flex; justify-content:space-between; align-items:center; gap:40px; border-radius:18px; background:var(--mint); color:var(--ink); }.find-care .eyebrow { margin-bottom:13px; }.find-care h3 { margin:0 0 9px; font-family:Georgia,serif; font-size:32px; font-weight:500; }.find-care p { margin:0; color:var(--muted); }.button-light { background:var(--paper); flex:0 0 auto; }

.event-feature { margin-top:65px; display:grid; grid-template-columns:250px 1fr; overflow:hidden; border-radius:22px; background:rgba(255,253,249,.95); box-shadow:0 20px 70px rgba(9,54,83,.09); }.event-date { min-height:490px; padding:55px 32px; display:flex; flex-direction:column; align-items:center; justify-content:center; background:var(--sand); text-align:center; }.event-date strong { font-family:Georgia,serif; font-size:60px; font-weight:500; letter-spacing:-.05em; }.event-date span { padding-top:18px; border-top:1px solid rgba(13,77,120,.2); font-size:15px; line-height:1.5; text-transform:uppercase; letter-spacing:.1em; }.event-content { padding:58px 65px; }.event-tag { margin:0 0 25px; color:var(--orange); font-size:12px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }.event-content h2 { max-width:760px; margin:0; font-family:Georgia,serif; font-size:clamp(36px,4vw,56px); line-height:1.06; font-weight:500; letter-spacing:-.03em; }.event-content>p:not(.event-tag) { max-width:770px; margin:25px 0; color:var(--muted); font-size:16px; line-height:1.7; }.event-meta { display:flex; gap:28px; margin-bottom:30px; font-size:13px; font-weight:700; }.event-strip { margin-top:16px; padding:25px 30px; display:flex; align-items:center; justify-content:space-between; border:1px solid var(--line); border-radius:16px; }.event-strip>div { display:flex; align-items:center; gap:20px; }.event-strip p { margin:0 0 4px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.1em; }.event-strip h3 { margin:0; font-size:18px; }.event-strip>a { font-size:13px; font-weight:800; }.date-chip { padding:13px 11px; border-radius:9px; background:var(--forest); color:white; font-size:12px; font-weight:900; }

.professional-section { padding:115px 0; background:#0a334f; color:white; }.professional-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:110px; padding:70px 0 85px; }.professional-intro>p:not(.kicker) { margin:25px 0 32px; color:rgba(255,255,255,.62); line-height:1.7; }.button-mint { background:var(--mint); color:var(--ink); }.membership-list article { display:grid; grid-template-columns:45px 1fr; gap:20px; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.14); }.membership-list article:first-child { padding-top:0; }.membership-list article>span { color:#9eb69a; font-size:11px; font-weight:900; }.membership-list h3 { margin:0 0 7px; font-size:18px; }.membership-list p { margin:0; color:rgba(255,255,255,.55); font-size:14px; }.resource-links { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.resource-links a { min-height:170px; padding:25px; display:flex; flex-direction:column; border:1px solid rgba(255,255,255,.14); border-radius:15px; }.resource-links span { color:var(--mint); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.resource-links strong { margin:auto 0 16px; max-width:230px; line-height:1.4; }.resource-links i { font-style:normal; color:#9eb69a; }

.mission-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding-top:70px; }.mission-statement { min-height:550px; padding:65px; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; border-radius:260px 260px 20px 20px; background:var(--mint); }.mission-statement:after { content:""; position:absolute; right:-80px; bottom:-100px; width:300px; height:300px; border-radius:50%; background:rgba(255,255,255,.38); }.mission-statement .hand-mark { transform:scale(1.2); transform-origin:left top; }.mission-statement blockquote { z-index:1; margin:0; font-family:Georgia,serif; font-size:clamp(30px,3.4vw,49px); line-height:1.15; letter-spacing:-.03em; }.objectives { padding-top:10px; }.objectives h2 { margin:0 0 30px; font-family:Georgia,serif; font-size:48px; font-weight:500; }.objectives ul { margin:0; padding:0; list-style:none; }.objectives li { padding:18px 0; display:grid; grid-template-columns:45px 1fr; border-bottom:1px solid var(--line); font-size:16px; font-weight:700; }.objectives li span { color:var(--aqua); font-size:11px; }.legal-note { margin:35px 0 0; padding-left:20px; border-left:3px solid var(--aqua); color:var(--muted); font-size:13px; line-height:1.6; }

.contact-section { padding:110px 0; background:var(--mint); }.contact-inner>h2 { font-size:72px; }.contact-grid { margin-top:60px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(18,52,47,.18); border-bottom:1px solid rgba(18,52,47,.18); }.contact-grid article { min-height:290px; padding:40px 35px 35px 0; display:flex; flex-direction:column; }.contact-grid article+article { padding-left:35px; border-left:1px solid rgba(18,52,47,.18); }.contact-symbol { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:var(--forest); color:white; font-size:18px; }.contact-grid h3 { margin:45px 0 12px; font-size:20px; }.contact-grid p { margin:0 0 24px; color:var(--muted); font-size:14px; line-height:1.6; }.contact-grid a { margin-top:auto; font-size:13px; font-weight:800; }.contact-note { margin:24px 0 0; color:var(--muted); font-size:12px; }

footer { width:min(1180px,calc(100% - 48px)); margin:0 auto; padding:65px 0 30px; }.footer-main { min-height:120px; display:flex; justify-content:space-between; align-items:flex-start; }.footer-links { display:flex; gap:28px; font-size:13px; font-weight:700; }.footer-bottom { padding-top:25px; display:flex; justify-content:space-between; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }

@media (max-width:960px) {
  .site-header { height:82px; width:min(100% - 32px,1180px); }.desktop-nav { display:none; }.mobile-menu { display:block; }.hero,.section,footer,.urgent-bar { width:min(100% - 32px,1180px); }.hero { grid-template-columns:1fr; gap:42px; padding:56px 0; }.hero-panel { min-height:400px; }.about-grid,.patient-heading,.professional-grid,.mission-grid { grid-template-columns:1fr; gap:45px; }.about-grid { padding-bottom:55px; }.topic-grid { grid-template-columns:repeat(2,1fr); }.event-feature { grid-template-columns:190px 1fr; }.event-content { padding:45px; }.professional-grid { padding-bottom:60px; }.resource-links { grid-template-columns:1fr; }.resource-links a { min-height:130px; }.mission-statement { min-height:450px; }.contact-grid { grid-template-columns:1fr; }.contact-grid article { min-height:auto; padding:28px 0; }.contact-grid article+article { padding-left:0; border-left:0; border-top:1px solid rgba(18,52,47,.18); }.contact-grid h3 { margin-top:22px; }
}

@media (max-width:620px) {
  .brand-logo-frame { width:50px; height:50px; flex:0 0 50px; }.brand-copy span { display:none; }.brand-copy strong { font-size:20px; }.footer-logo { width:70px; height:70px; }h1 { font-size:48px; }.hero { min-height:auto; padding:45px 0 60px; }.hero-lede { font-size:17px; }.hero-actions { flex-direction:column; align-items:stretch; }.hero-panel { min-height:380px; }.hero-emblem-wrap { width:225px; height:225px; }.urgent-bar { align-items:flex-start; flex-direction:column; }.about-section,.events-section,.mission-section { padding:80px 0; }.about-grid h2,.patient-heading h2,.professional-intro h2,.contact-inner>h2 { font-size:42px; }.value-row,.topic-grid { grid-template-columns:1fr; }.value-row article+article { padding-left:0; border-left:0; border-top:1px solid var(--line); }.value-row article { padding:28px 0; }.patient-section,.professional-section { padding:80px 0; }.topic-card { min-height:240px; }.find-care { padding:30px; align-items:flex-start; flex-direction:column; }.button-light { width:100%; }.event-feature { grid-template-columns:1fr; }.event-date { min-height:auto; padding:30px; flex-direction:row; gap:24px; }.event-date strong { font-size:46px; }.event-date span { padding:0 0 0 20px; border-top:0; border-left:1px solid rgba(18,52,47,.2); }.event-content { padding:32px 26px; }.event-meta { flex-direction:column; gap:10px; }.event-strip { align-items:flex-start; flex-direction:column; gap:24px; }.professional-grid { padding-top:50px; }.mission-statement { min-height:430px; padding:45px 35px; }.objectives h2 { font-size:40px; }.contact-inner>h2 { font-size:54px; }.footer-main { gap:45px; flex-direction:column; }.footer-links { flex-wrap:wrap; }.footer-bottom { gap:14px; flex-direction:column; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.button,.topic-card { transition:none; } }
