:root{--header-height: 68px;--color-text: #1d1d1f;--color-secondary: #6e6e73;--color-accent: #2c5f8a;--color-bg: #fdfcfb;--color-surface: #f7f5f2;--radius: 16px;--transition: .4s cubic-bezier(.4, 0, .2, 1)}@media(max-width:768px){:root{--header-height: 52px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--color-text);background-color:var(--color-bg);min-height:100vh;overflow-x:hidden;display:flex;flex-direction:column;align-items:center;word-break:keep-all;overflow-wrap:break-word}header{background-color:#fdfcfbe0;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06);position:fixed;top:0;left:0;z-index:100;width:100%;height:var(--header-height);padding:0 40px;display:flex;align-items:center;justify-content:space-between;transition:box-shadow .3s ease,border-color .3s ease}header.scrolled{box-shadow:0 4px 24px #00000012;border-bottom-color:#0000001a}.header-logo{display:flex;align-items:center;gap:10px}header img{height:calc(var(--header-height) - 28px);object-fit:contain}.header-nav{display:flex;align-items:center;gap:32px}.header-nav a{font-size:14px;font-weight:500;color:var(--color-secondary);text-decoration:none;transition:color var(--transition);white-space:nowrap}.header-nav a:hover{color:var(--color-text)}.header-cta{background:var(--color-accent)!important;color:#fff!important;padding:8px 20px;border-radius:100px;font-weight:600!important;font-size:14px!important;transition:background var(--transition)!important}.header-cta:hover{background:#1e4d73!important;color:#fff!important}@media(max-width:768px){header{padding:0 20px}.header-nav{display:none}}.content{width:100%}.section{width:100%;padding:100px 48px;display:flex;align-items:center;justify-content:center}.section:first-child{min-height:100vh;padding-top:calc(var(--header-height) + 80px)}.section+.section{border-top:1px solid rgba(0,0,0,.07)}.section-content{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1100px;gap:80px}.section:nth-child(2n) .section-content:not(.profile-layout):not(.program-layout):not(.map-layout){flex-direction:row-reverse}@media(max-width:900px){.section{padding:80px 28px}.section:first-child{padding-top:calc(var(--header-height) + 60px)}.section-content{gap:40px}}@media(max-width:768px){.section{padding:60px 20px}.section:first-child{min-height:100svh;padding-top:calc(var(--header-height) + 40px)}.section-content,.section:nth-child(2n) .section-content{flex-direction:column;gap:28px;text-align:center}}.text{width:46%;flex-shrink:0}@media(max-width:768px){.text{width:100%}}.badge{display:inline-block;background-color:#2c5f8a14;color:var(--color-accent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:20px;margin-bottom:20px;border:1px solid rgba(44,95,138,.15)}.text h2{font-size:clamp(34px,4.5vw,60px);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--color-text);margin-bottom:24px}.text p{font-size:clamp(17px,1.9vw,21px);color:var(--color-secondary);white-space:pre-line;font-weight:400;line-height:1.85;letter-spacing:-.02em}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.cta-btn{display:inline-flex;align-items:center;background:var(--color-accent);color:#fff;padding:15px 32px;border-radius:100px;font-size:clamp(15px,1.5vw,17px);font-weight:600;text-decoration:none;letter-spacing:-.01em;transition:background var(--transition),transform var(--transition),box-shadow var(--transition);box-shadow:0 8px 24px #2c5f8a40}.cta-btn:hover{background:#1e4d73;transform:translateY(-2px);box-shadow:0 12px 32px #2c5f8a59}.text-link{color:var(--color-accent);font-weight:600;text-decoration:underline;text-decoration-color:#2c5f8a59;text-underline-offset:3px;transition:text-decoration-color var(--transition)}.text-link:hover{text-decoration-color:var(--color-accent)}.cta-btn--outline{background:transparent;color:var(--color-accent);border:1.5px solid rgba(44,95,138,.4);box-shadow:none}.cta-btn--outline:hover{background:#2c5f8a0f;box-shadow:none}.image{width:48%;flex-shrink:0}@media(max-width:768px){.image{width:70%;max-width:280px;margin:0 auto}}.image img{width:100%;height:auto;border-radius:var(--radius);display:block}.image img{box-shadow:0 20px 60px #00000014}.section .text,.section .image,.section .profile-header,.section .cv-category,.section .program-header,.section .program-card,.section .map-header,.section .map-body{opacity:0;will-change:transform,opacity}.section-content.profile-layout{flex-direction:column;align-items:flex-start;gap:40px}.profile-header{display:flex;flex-direction:column;gap:10px}.profile-role{font-size:clamp(16px,1.8vw,20px);color:var(--color-secondary);font-weight:500;letter-spacing:-.01em;margin-top:4px}.profile-header h2{font-size:clamp(36px,5vw,64px);font-weight:700;line-height:1.1;letter-spacing:-.04em;color:var(--color-text);margin:0}.cv-grid{display:grid;grid-template-columns:1fr 1.6fr 1.6fr;gap:48px;width:100%}@media(max-width:900px){.cv-grid{grid-template-columns:1fr 1fr;gap:32px}}@media(max-width:768px){.section-content.profile-layout{text-align:left;gap:28px}.cv-grid{grid-template-columns:1fr;gap:24px}}.cv-category{padding-left:20px;border-left:2px solid rgba(44,95,138,.25)}.cv-title{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.08)}.cv-list{list-style:none;display:flex;flex-direction:column;gap:14px}.cv-list li{font-size:clamp(15px,1.6vw,18px);color:var(--color-secondary);line-height:1.65;padding-left:18px;position:relative}.cv-list li:before{content:"";width:4px;height:4px;border-radius:50%;background-color:var(--color-accent);opacity:.5;position:absolute;left:3px;top:8px}.cv-current{color:var(--color-accent);font-weight:700;font-style:normal}.cv-prev{color:var(--color-secondary);opacity:.6;font-size:13px}.cv-note{font-size:14px;color:#6e6e73b3}.section-content.program-layout{flex-direction:column;align-items:flex-start;gap:32px}.program-header{display:flex;flex-direction:column;gap:8px}.program-header h2{font-size:clamp(34px,4.5vw,60px);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--color-text);margin:0}.program-subtitle{font-size:clamp(17px,1.9vw,21px);color:var(--color-secondary);margin:0;line-height:1.8}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;width:100%}@media(max-width:1100px){.program-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.section-content.program-layout{text-align:left;flex-direction:column;gap:24px}.program-grid{grid-template-columns:1fr;gap:16px}}.program-card{background-color:var(--color-bg);border-radius:var(--radius);padding:32px 28px;display:flex;flex-direction:column;gap:12px;border:1px solid rgba(0,0,0,.04);transition:transform var(--transition),box-shadow var(--transition)}.program-card:hover{transform:translateY(-5px);box-shadow:0 20px 56px #00000017}.program-number{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--color-accent);opacity:.7}.program-card h3{font-size:clamp(18px,1.8vw,22px);font-weight:700;color:var(--color-text);letter-spacing:-.02em;line-height:1.3;margin:0}.program-card>p{font-size:clamp(14px,1.5vw,17px);color:var(--color-secondary);line-height:1.75;margin:0}.program-card ul{list-style:none;display:flex;flex-direction:column;gap:7px;padding:4px 0 0;margin:0;border-top:1px solid rgba(0,0,0,.06)}.program-card li{font-size:clamp(13px,1.4vw,16px);color:var(--color-secondary);padding-left:14px;position:relative;line-height:1.6}.program-card li:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--color-accent);opacity:.5;position:absolute;left:2px;top:7px}.program-contact{font-size:clamp(14px,1.4vw,16px);color:var(--color-secondary);margin:0;display:inline-flex;align-items:center;gap:6px;background:#2c5f8a0f;border:1px solid rgba(44,95,138,.15);padding:10px 22px;border-radius:100px}.program-contact a{color:var(--color-accent);font-weight:700;text-decoration:none}.section-content.map-layout{flex-direction:column;align-items:flex-start;gap:32px}.map-header{display:flex;flex-direction:column;gap:8px}.map-header h2{font-size:clamp(34px,4.5vw,60px);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--color-text);margin:0}.map-address{font-size:clamp(16px,1.7vw,19px);color:var(--color-secondary);font-style:normal;line-height:1.6}.map-body{display:grid;grid-template-columns:1fr 280px;gap:32px;width:100%;align-items:start}@media(max-width:900px){.map-body{grid-template-columns:1fr}}@media(max-width:768px){.section-content.map-layout{text-align:left;gap:24px}}.map-container{width:100%;height:340px;border-radius:var(--radius);overflow:hidden;background-color:var(--color-surface)}.map-info{display:flex;flex-direction:column;gap:20px}.transport-item{padding-bottom:18px;border-bottom:1px solid rgba(0,0,0,.07)}.transport-item:last-child{padding-bottom:0;border-bottom:none}.transport-item h4{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:10px}.transport-item ul{list-style:none;display:flex;flex-direction:column;gap:6px;padding:0;margin:0}.transport-item li,.transport-item p{font-size:clamp(14px,1.5vw,16px);color:var(--color-secondary);line-height:1.6;margin:0}.dot-nav{position:fixed;right:28px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:14px;z-index:50}@media(max-width:768px){.dot-nav{display:none}}.dot{width:8px;height:8px;border-radius:50%;background-color:transparent;border:1.5px solid rgba(0,0,0,.25);cursor:pointer;padding:0;transition:background-color var(--transition),border-color var(--transition),transform var(--transition)}.dot:hover{border-color:#00000080;transform:scale(1.2)}.dot.active{background-color:var(--color-accent);border-color:var(--color-accent);transform:scale(1.4)}footer{background:linear-gradient(135deg,#1a1a1c,#252528);color:#ffffff80;padding:40px 24px;width:100%;text-align:center;flex-shrink:0;display:flex;flex-direction:column;gap:8px;border-top:1px solid rgba(255,255,255,.05)}footer p{font-size:13px;line-height:1.6;letter-spacing:-.01em}footer a{color:#ffffffbf;text-decoration:none;transition:color var(--transition)}footer a:hover{color:#fff}
