/* css/stile.css */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Sora:wght@300;400;500;600;700;800&display=swap'); :root {/* Colors */ --primary-blue: #174261; /* Deep academic navy */ --accent-yellow: #FBCC09; /* Academic gold #A9915A */ --deep-navy: #174261; --soft-blue: #F0F4F8; /* Soft parchment/grey-blue */ --academic-grey: #F5F6F8; --text-charcoal: #1E2433; --muted-text: #5C677D; --white: #FFFFFF; --border-grey: #DCE1E9; /* Typography */ --font-main: 'Inter', sans-serif; --font-heading: 'Sora', 'Inter', sans-serif; /* Spacing & Layout */ --max-width: 1540px; --section-padding-desktop: 120px; --section-padding-mobile: 80px; --card-radius: 16px; /* Slightly less rounded for a formal look */ --button-radius: 100px; --transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1); } /* Reset */ * {box-sizing: border-box; margin: 0; padding: 0; } body {font-family: var(--font-main); color: var(--text-charcoal); background-color: var(--white); line-height: 1.6; -webkit-font-smoothing: antialiased; overflow-x: hidden; } img {max-width: 100%; height: auto; display: block; } a {text-decoration: none; color: inherit; transition: var(--transition-smooth); } /* Typography */ h1, h2, h3, h4, h5, h6 {font-family: var(--font-heading); color: var(--primary-blue); line-height: 1.2; font-weight: 700; letter-spacing: -0.025em; } h1.hero-title {font-size: clamp(36px, 5vw, 72px); } h2.section-title {font-size: clamp(28px, 4vw, 48px); margin-bottom: 24px; } h3.card-title {font-size: clamp(20px, 3vw, 24px); margin-bottom: 12px; } p {font-size: clamp(15px, 1.2vw, 17px); color: var(--muted-text); } .label {font-size: 13px; text-transform: uppercase; letter-spacing: 0.1em; font-weight: 600; color: var(--primary-blue); display: flex; align-items: center; gap: 8px; margin-bottom: 16px; } .label::before {content: ''; display: block; width: 8px; height: 8px; background-color: var(--accent-yellow); border-radius: 50%; } /* Layout */ .container {width: 100%; max-width: var(--max-width); margin: 0 auto; padding: 0 20px; } @media (min-width: 768px) {.container { padding: 0 36px; } } @media (min-width: 1200px) {.container { padding: 0 48px; } } @media (min-width: 1600px) {.container { padding: 0 64px; } } .grid-12 {display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px; } section {padding: var(--section-padding-mobile) 0; } @media (min-width: 1024px) {section { padding: var(--section-padding-desktop) 0; } } .bg-soft-blue { background-color: var(--soft-blue); } .bg-navy { background-color: var(--deep-navy); color: var(--white); } .bg-academic-grey { background-color: var(--academic-grey); } .bg-navy h2, .bg-navy h3, .bg-navy .label { color: var(--white); } .bg-navy p { color: rgba(255, 255, 255, 0.8); } /* Header & Nav */ .site-header {position: fixed; top: 0; left: 0; width: 100%; z-index: 100; transition: var(--transition-smooth); background: transparent; padding: 24px 0; } .site-header.scrolled {background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); padding: 16px 0; box-shadow: 0 4px 20px rgba(0,0,0,0.05); } .nav-container {display: flex; justify-content: space-between; align-items: center; } .logo {font-weight: 700; font-size: 20px; color: var(--primary-blue); display: inline-flex; align-items: center; gap: clamp(14px, 1.6vw, 24px); flex-shrink: 0; } .nav-links {display: flex; gap: 32px; list-style: none; } .nav-links a {font-weight: 500; font-size: 15px; position: relative; color: var(--text-charcoal); } .nav-links a::after {content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 2px; background-color: var(--primary-blue); transition: var(--transition-smooth); } .nav-links a:hover::after, .nav-links a.active::after {width: 100%; } .mobile-menu-btn {display: none; background: none; border: none; cursor: pointer; flex-direction: column; gap: 5px; z-index: 101; } .mobile-menu-btn span {display: block; width: 24px; height: 2px; background-color: var(--primary-blue); transition: var(--transition-smooth); } @media (max-width: 991px) {.nav-links {position: fixed; top: 0; right: -100%; width: 100%; height: 100vh; background: var(--white); flex-direction: column; justify-content: center; align-items: center; transition: right 0.5s cubic-bezier(0.77, 0, 0.175, 1); z-index: 100; } .nav-links.open { right: 0; } .nav-links a { font-size: 24px; } .mobile-menu-btn { display: flex; } .mobile-menu-btn.open span:nth-child(1) {transform: translateY(7px) rotate(45deg); } .mobile-menu-btn.open span:nth-child(2) {opacity: 0; } .mobile-menu-btn.open span:nth-child(3) {transform: translateY(-7px) rotate(-45deg); } .header-actions .btn { display: none; } } /* Buttons */ .btn {display: inline-flex; align-items: center; gap: 8px; padding: 14px 28px; border-radius: var(--button-radius); font-weight: 600; font-size: 15px; cursor: pointer; border: 2px solid transparent; transition: var(--transition-smooth); } .btn-primary {background-color: var(--accent-yellow); color: var(--primary-blue); } .btn-primary:hover {transform: translateY(-2px); box-shadow: 0 8px 20px rgba(255, 219, 115, 0.4); } .btn-secondary {background-color: transparent; color: var(--primary-blue); border-color: var(--primary-blue); } .btn-secondary:hover {background-color: var(--primary-blue); color: var(--white); } .btn-icon {transition: transform 0.3s ease; } .btn:hover .btn-icon {transform: translateX(4px); } /* Base Cards */ .card {background: var(--white); border-radius: var(--card-radius); padding: 40px; border: 1px solid var(--border-grey); box-shadow: 0 4px 12px rgba(0,0,0,0.02); transition: var(--transition-smooth); position: relative; overflow: hidden; } .card:hover {transform: translateY(-4px); box-shadow: 0 12px 30px rgba(13, 34, 115, 0.08); } /* Expandable Inline Cards */ .expandable-card {cursor: pointer; display: flex; flex-direction: column; } .expandable-header {display: flex; justify-content: space-between; align-items: center; gap: 16px; } .expand-icon {width: 32px; height: 32px; border-radius: 50%; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; color: var(--primary-blue); font-weight: bold; transition: var(--transition-smooth); flex-shrink: 0; } .expandable-card.expanded .expand-icon {transform: rotate(45deg); background: var(--accent-yellow); } .expandable-content {max-height: 0; overflow: hidden; opacity: 0; transition: max-height 0.5s ease-out, opacity 0.5s ease-out, margin-top 0.3s; } .expandable-card.expanded .expandable-content {max-height: 800px; opacity: 1; margin-top: 24px; } /* Horizontal Scroll Container (Method Page) */ .horizontal-scroll-wrapper {width: 100%; overflow: hidden; position: relative; } .horizontal-scroll-container {display: flex; width: 300vw; height: 100vh; } .horizontal-slide {width: 100vw; height: 100vh; display: flex; align-items: center; padding: 0 80px; } .method-card {background: var(--white); border: 1px solid var(--border-grey); padding: 48px; border-radius: var(--card-radius); max-width: 500px; box-shadow: 0 10px 30px rgba(0,0,0,0.04); } .method-card h3 { color: var(--deep-navy); font-size: 28px; margin-bottom: 16px; } .method-card p { color: var(--muted-text); font-size: 17px; } @media (max-width: 768px) {.horizontal-scroll-container {width: 100%; height: auto; flex-direction: column; } .horizontal-slide {width: 100%; height: auto; padding: 80px 24px; } .method-card {max-width: 100%; } } /* Bento Grid */ .bento-grid {display: grid; grid-template-columns: repeat(12, 1fr); gap: 24px; } .bento-card-large { grid-column: span 8; } .bento-card-small { grid-column: span 4; } .bento-card-tall { grid-column: span 6; grid-row: span 2; } .bento-card-wide { grid-column: span 12; } @media (max-width: 1024px) {.bento-card-large { grid-column: span 12; } .bento-card-small { grid-column: span 12; } .bento-card-tall { grid-column: span 12; grid-row: auto; } } /* Animation Classes */ .gsap-reveal {opacity: 0; transform: translateY(40px); } /* Footer */ .site-footer {background-color: var(--deep-navy); color: var(--white); padding: 80px 0 40px; } .footer-grid {display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 48px; margin-bottom: 64px; } @media (max-width: 768px) {.footer-grid { grid-template-columns: 1fr; } } .footer-logo {font-size: 24px; font-weight: 700; color: var(--white); margin-bottom: 16px; display: block; } .footer-text {color: rgba(255,255,255,0.6); max-width: 300px; } .footer-links h4 {color: var(--white); margin-bottom: 24px; font-size: 16px; } .footer-links ul { list-style: none; } .footer-links li { margin-bottom: 12px; } .footer-links a { color: rgba(255,255,255,0.6); } .footer-links a:hover { color: var(--accent-yellow); } .footer-bottom {border-top: 1px solid rgba(255,255,255,0.1); padding-top: 32px; display: flex; justify-content: space-between; align-items: center; color: rgba(255,255,255,0.4); font-size: 14px; } @media (max-width: 768px) {.footer-bottom { flex-direction: column; gap: 16px; text-align: center; } } /* --- Giant Typography Hero --- */ .hero-giant-text {display: flex; flex-direction: column; gap: 0; line-height: 0.85; } .hero-word-row {display: flex; align-items: center; gap: 24px; } .gsap-hero-word {font-size: clamp(60px, 12vw, 160px); font-weight: 700; color: var(--deep-navy); letter-spacing: -0.04em; display: inline-block; opacity: 0; transform: translateY(80px); } .text-navy { color: var(--deep-navy) !important; } /* --- Subtle Gantt Background --- */ .massive-gantt-bg {position: absolute; top: 150px; left: 0; width: 100%; height: 100vh; z-index: 1; opacity: 0.2; } .g-row {height: 60px; width: 100%; position: relative; } .g-bar {height: 40px; position: absolute; top: 10px; border-radius: 6px; } .light-g-row { border-bottom: 1px solid rgba(13,34,115,0.03); } .light-g-bar { background: rgba(13,34,115,0.08); } .light-g-bar-alt { background: rgba(13,34,115,0.04); } @media (max-width: 768px) {.massive-gantt-bg { top: 100px; } .g-row { height: 40px; } .g-bar { height: 24px; } } /* --- Dashboard Rings --- */ .dashboard-card {border-radius: 24px; padding: 32px; text-align: center; } .light-dashboard-card {background: var(--white); border: 1px solid var(--border-grey); box-shadow: 0 4px 16px rgba(0,0,0,0.02); } .svg-ring-container {position: relative; width: 100px; height: 100px; margin: 0 auto 20px; } .svg-ring-container svg {width: 100%; height: 100%; transform: rotate(-90deg); } .ring-bg {fill: none; stroke-width: 6; } .light-ring-bg { stroke: var(--border-grey); } .ring-progress {fill: none; stroke-width: 6; stroke-dasharray: 251.2; stroke-dashoffset: 251.2; stroke-linecap: round; } .light-ring-progress { stroke: var(--primary-blue); } .ring-text {position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 22px; font-weight: 700; } .light-ring-text { color: var(--deep-navy); } .dash-label {font-size: 15px; font-weight: 600; } .light-dash-label { color: var(--text-charcoal); } /* --- Kanban Board --- */ .kanban-board {display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; } @media (max-width: 991px) {.kanban-board { grid-template-columns: 1fr; } } .kanban-column {border-radius: 16px; display: flex; flex-direction: column; min-height: 520px; } .light-kanban-column {background: var(--white); border: 1px solid var(--border-grey); box-shadow: 0 4px 15px rgba(0,0,0,0.02); } .kanban-col-header {padding: 20px 24px; font-weight: 600; display: flex; justify-content: space-between; align-items: center; border-radius: 16px 16px 0 0; } .light-kanban-col-header {color: var(--deep-navy); border-bottom: 1px solid var(--border-grey); border-top: 3px solid var(--primary-blue); } .kanban-col-body {padding: 24px; flex: 1; } /* Absolutely positioned Kanban cards for GSAP animation */ .k-card-abs {position: absolute; background: var(--white); border-radius: 12px; padding: 20px; border: 1px solid var(--border-grey); box-shadow: 0 4px 12px rgba(13,34,115,0.05); width: calc(33.333% - 16px); z-index: 5; will-change: transform; } .k-card-abs h4 {font-size: 16px; margin-bottom: 8px; color: var(--deep-navy); } .k-card-abs p {font-size: 13px; color: var(--muted-text); margin: 0; line-height: 1.5; } .k-tag {font-size: 10px; font-weight: 700; padding: 4px 8px; border-radius: 4px; display: inline-block; margin-bottom: 8px; letter-spacing: 0.05em; } /* Position the three cards inside the first column area (desktop) */ .k-card-1 { top: 65px; left: 0; } .k-card-2 { top: 220px; left: 0; } .k-card-3 { top: 365px; left: 0; } @media (max-width: 991px) {.kanban-section .container {padding-top: 40px !important; padding-bottom: 40px !important; } .kanban-section h2.section-title {font-size: 28px; } .kanban-board {position: relative; /* The board needs to be tall enough to show all 3 column areas */ min-height: 70vh; } .kanban-column {/* Each column is a compact zone — header + landing area for cards */ min-height: calc(70vh / 3); position: relative; } .kanban-col-body {/* Compact body on mobile */ padding: 12px; min-height: 120px; } .k-card-abs {position: absolute; width: calc(100% - 32px); left: 16px; padding: 12px 16px; z-index: 5; } .k-card-abs h4 {font-size: 14px; margin-bottom: 4px; } .k-card-abs p {font-size: 11px; line-height: 1.4; } .k-tag {font-size: 9px; padding: 2px 6px; margin-bottom: 4px; } /* Position cards inside the first column body on mobile */ .k-card-1 { top: 50px; left: 16px; } .k-card-2 { top: 150px; left: 16px; } .k-card-3 { top: 250px; left: 16px; } } /* --- WBS Network Diagram (Program Page) --- */ .wbs-node {position: absolute; background: var(--white); border: 2px solid var(--border-grey); border-radius: 12px; padding: 16px 20px; width: 180px; cursor: pointer; z-index: 2; transition: var(--transition-smooth); box-shadow: 0 4px 12px rgba(0,0,0,0.02); transform: translate(-50%, -50%); } .wbs-node:hover {border-color: var(--primary-blue); transform: translate(-50%, -55%); box-shadow: 0 12px 24px rgba(13, 34, 115, 0.1); } .wbs-node.active {border-color: var(--primary-blue); background: var(--deep-navy); color: var(--white); } .wbs-node.active .wbs-node-id { color: var(--accent-yellow); } .wbs-node.active .wbs-node-title { color: var(--white); } .wbs-node-id {font-size: 12px; color: var(--muted-text); margin-bottom: 4px; font-weight: 600; transition: color 0.3s; } .wbs-node-title {font-size: 15px; font-weight: 700; color: var(--deep-navy); line-height: 1.3; transition: color 0.3s; } .wbs-path {stroke: var(--border-grey); stroke-width: 2; fill: none; stroke-dasharray: 6,6; transition: stroke 0.3s ease; } .wbs-path.active-path {stroke: var(--primary-blue); stroke-width: 3; stroke-dasharray: none; } /* Side Panel Drawer */ .wbs-panel-overlay {position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(7, 19, 61, 0.4); backdrop-filter: blur(4px); z-index: 999; opacity: 0; visibility: hidden; transition: var(--transition-smooth); } .wbs-panel-overlay.open {opacity: 1; visibility: visible; } .wbs-side-panel {position: fixed; top: 0; right: -500px; width: 100%; max-width: 500px; height: 100%; background: var(--white); z-index: 1000; box-shadow: -10px 0 30px rgba(0,0,0,0.1); transition: right 0.5s cubic-bezier(0.16, 1, 0.3, 1); display: flex; flex-direction: column; } .wbs-side-panel.open { right: 0; } .wbs-panel-header {padding: 32px 40px; border-bottom: 1px solid var(--border-grey); display: flex; justify-content: space-between; align-items: flex-start; background: var(--academic-grey); } .wbs-close-btn {background: none; border: none; font-size: 32px; line-height: 1; color: var(--muted-text); cursor: pointer; transition: color 0.3s; } .wbs-close-btn:hover { color: var(--primary-blue); } .wbs-panel-content {padding: 40px; overflow-y: auto; flex: 1; } @media (max-width: 768px) {.wbs-node {position: relative; top: auto !important; left: auto !important; transform: none !important; width: 100%; margin-bottom: 16px; } .wbs-node:hover { transform: translateY(-4px) !important; } .wbs-network-container {height: auto !important; padding: 24px; display: flex; flex-direction: column; } } /* --- PM Progress Meters (Professors) --- */ .resource-meter {height: 6px; background: var(--border-grey); border-radius: 4px; margin-top: 8px; overflow: hidden; } .meter-fill {height: 100%; background: var(--primary-blue); width: 0%; border-radius: 4px; } /* Sprint Progress Bar (Method) */ .sprint-progress-bar {position: absolute; bottom: 40px; left: 80px; right: 80px; height: 4px; background: rgba(13,34,115,0.1); z-index: 10; border-radius: 2px; } .sprint-fill {height: 100%; background: var(--primary-blue); width: 0%; border-radius: 2px; } /* Network Diagram (Alumni) */ .network-container {position: relative; min-height: 800px; } .network-node {position: absolute; background: var(--white); border: 1px solid var(--border-grey); border-radius: 12px; padding: 16px; box-shadow: 0 10px 30px rgba(0,0,0,0.05); display: flex; align-items: center; gap: 16px; width: 300px; z-index: 2; } .network-svg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; } .network-line {fill: none; stroke: var(--primary-blue); stroke-width: 2; stroke-dasharray: 1000; stroke-dashoffset: 1000; } /* Utility styles */ .why-choose-card {transition: all 0.4s ease; } .why-choose-card:hover {transform: translateY(-6px); box-shadow: 0 12px 30px rgba(13,34,115,0.08); } .explore-nav-card:hover .explore-bg-shape {transform: scale(1.15); } .explore-nav-card:hover .explore-arrow {transform: translateX(8px); } /* --- HERO ANIMATED CANVAS BACKGROUND --- */ #gantt-canvas {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; } /* --- HERO INLINE STATS --- */ .hero-inline-stats {display: flex; gap: 24px; padding: 16px 0; border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } .hero-stat {display: flex; flex-direction: column; align-items: center; flex: 1; } .hero-stat-num {font-size: 28px; font-weight: 700; color: var(--primary-blue); line-height: 1; } .hero-stat-unit {font-size: 16px; font-weight: 600; color: var(--primary-blue); } .hero-stat-label {font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted-text); margin-top: 4px; font-weight: 600; } @media (max-width: 480px) {.hero-inline-stats { gap: 12px; } .hero-stat-num { font-size: 22px; } } /* --- PROGRAM PAGE: GANTT CHART --- */ .gantt-chart {border: 1px solid var(--border-grey); border-radius: 16px; overflow: hidden; background: var(--white); } .gantt-header {display: flex; background: var(--academic-grey); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--muted-text); border-bottom: 2px solid var(--border-grey); } .gantt-label-col {width: 260px; min-width: 260px; padding: 16px 24px; border-right: 1px solid var(--border-grey); } .gantt-timeline-cols {display: flex; flex: 1; } .gantt-timeline-cols > div {flex: 1; padding: 16px 8px; text-align: center; border-right: 1px solid rgba(227,231,240,0.5); position: relative; } .gantt-timeline-cols > div:last-child { border-right: none; } .gantt-row {display: flex; border-bottom: 1px solid var(--border-grey); transition: background 0.2s; } .gantt-row-interactive {cursor: pointer; } .gantt-row-interactive:hover {background: var(--soft-blue); } .gantt-row-interactive.active {background: var(--soft-blue); } .gantt-row .gantt-label-col {display: flex; flex-direction: column; justify-content: center; gap: 4px; } .gantt-row .gantt-label-col strong {font-size: 15px; color: var(--deep-navy); } .gantt-sub {font-size: 12px; color: var(--muted-text); font-weight: 400; } .gantt-row .gantt-timeline-cols > div {display: flex; align-items: center; padding: 20px 4px; } .gantt-bar-vis {height: 12px; border-radius: 6px; opacity: 0; transform: scaleX(0); transform-origin: left; } .gantt-detail {max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.3s ease; padding: 0 24px 0 284px; background: var(--soft-blue); border-bottom: 1px solid var(--border-grey); } .gantt-detail.open {max-height: 300px; padding: 24px 24px 24px 284px; } .gantt-detail p {font-size: 15px; margin-bottom: 12px; } .gantt-detail ul {padding-left: 20px; color: var(--muted-text); font-size: 14px; } .gantt-detail li {margin-bottom: 6px; } @media (max-width: 768px) {.gantt-label-col {width: 140px; min-width: 140px; padding: 12px 16px; } .gantt-row .gantt-label-col strong {font-size: 13px; } .gantt-detail.open {padding-left: 16px; } .gantt-timeline-cols > div {padding: 12px 2px; font-size: 10px; } } /* --- PROFESSORS: RACI MATRIX --- */ .raci-table-wrapper {overflow-x: auto; border-radius: 16px; border: 1px solid var(--border-grey); background: var(--white); } .raci-table {width: 100%; border-collapse: collapse; min-width: 700px; } .raci-table thead {background: var(--academic-grey); } .raci-table th {padding: 20px 16px; text-align: center; font-size: 13px; font-weight: 600; color: var(--deep-navy); border-bottom: 2px solid var(--border-grey); vertical-align: bottom; } .raci-table th .raci-avatar {display: block; width: 48px; height: 48px; border-radius: 50%; margin: 0 auto 8px; object-fit: cover; } .raci-role {display: block; font-size: 11px; color: var(--muted-text); margin-top: 4px; font-weight: 400; } .raci-module-col {text-align: left !important; font-weight: 600; color: var(--deep-navy); padding-left: 24px; width: 240px; min-width: 200px; } .raci-table td {padding: 16px; text-align: center; border-bottom: 1px solid var(--border-grey); font-size: 14px; } .raci-table tbody tr {transition: background 0.2s; } .raci-table tbody tr:hover {background: var(--soft-blue); } .raci-badge {display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 8px; font-weight: 700; font-size: 14px; } .raci-r { background: var(--primary-blue); color: var(--white); } .raci-a { background: var(--accent-yellow); color: var(--deep-navy); } .raci-c { background: var(--soft-blue); color: var(--primary-blue); border: 1px solid var(--border-grey); } .raci-i { background: var(--academic-grey); color: var(--muted-text); } /* --- ENROLL: CRITICAL PATH --- */ .cpm-container {position: relative; width: 100%; height: 400px; } .cpm-svg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; } .cpm-svg line {stroke: var(--border-grey); stroke-width: 2; stroke-dasharray: 8, 6; } .cpm-svg line.cpm-line-active {stroke: var(--primary-blue); stroke-width: 3; stroke-dasharray: none; } .cpm-node {position: absolute; z-index: 2; transform: translate(-50%, -50%); transition: var(--transition-smooth); } .cpm-node-inner {background: var(--white); border: 2px solid var(--border-grey); border-radius: 12px; padding: 16px 20px; min-width: 160px; text-align: center; transition: var(--transition-smooth); box-shadow: 0 4px 12px rgba(0,0,0,0.03); } .cpm-node:hover .cpm-node-inner {border-color: var(--primary-blue); box-shadow: 0 12px 24px rgba(13,34,115,0.1); transform: translateY(-4px); } .cpm-start .cpm-node-inner, .cpm-end .cpm-node-inner {background: var(--primary-blue); color: var(--white); border-color: var(--primary-blue); } .cpm-start .cpm-id, .cpm-end .cpm-id { color: rgba(255,255,255,0.7); } .cpm-start .cpm-title, .cpm-end .cpm-title { color: var(--white); } .cpm-id {font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted-text); font-weight: 600; margin-bottom: 4px; } .cpm-title {font-size: 15px; font-weight: 700; color: var(--deep-navy); } .cpm-dur {font-size: 11px; color: var(--muted-text); margin-top: 6px; } @media (max-width: 768px) {.cpm-container {height: auto; display: flex; flex-direction: column; gap: 16px; padding: 16px 0; } .cpm-node {position: relative; left: auto !important; top: auto !important; transform: none; } .cpm-svg { display: none; } } /* --- METHOD: SCRUM BOARD (reuse Kanban structure with light theme) --- */ .scrum-board {display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; } @media (max-width: 991px) {.scrum-board { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 600px) {.scrum-board { grid-template-columns: 1fr; } } .scrum-col {background: var(--white); border: 1px solid var(--border-grey); border-radius: 16px; min-height: 320px; display: flex; flex-direction: column; } .scrum-col-header {padding: 16px 20px; font-weight: 700; font-size: 14px; color: var(--deep-navy); border-bottom: 1px solid var(--border-grey); border-top: 3px solid var(--border-grey); border-radius: 16px 16px 0 0; text-transform: uppercase; letter-spacing: 0.05em; } .scrum-col-header.backlog-h { border-top-color: var(--muted-text); } .scrum-col-header.todo-h { border-top-color: var(--primary-blue); } .scrum-col-header.doing-h { border-top-color: var(--accent-yellow); } .scrum-col-header.done-h { border-top-color: #2E9E5A; } .scrum-col-body {padding: 16px; flex: 1; display: flex; flex-direction: column; gap: 12px; } .scrum-card {background: var(--academic-grey); border: 1px solid var(--border-grey); border-radius: 10px; padding: 14px 16px; transition: var(--transition-smooth); } .scrum-card:hover {border-color: var(--primary-blue); box-shadow: 0 4px 12px rgba(13,34,115,0.06); } .scrum-card h4 {font-size: 14px; color: var(--deep-navy); margin-bottom: 4px; } .scrum-card p {font-size: 12px; color: var(--muted-text); margin: 0; line-height: 1.4; } /* --- Hero Canvas Background --- */ .hero {position: relative; overflow: hidden; } .hero-canvas-bg {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.8; pointer-events: none; } .hero > .container {position: relative; z-index: 1; } /* --- Global CTA --- */ .global-cta {background-color: var(--soft-blue); text-align: center; padding: 80px 24px; border-top: 1px solid var(--border-grey); } .global-cta h2 {font-size: clamp(28px, 4vw, 42px); color: var(--deep-navy); margin-bottom: 16px; } .global-cta p {font-size: 18px; color: var(--muted-text); margin-bottom: 32px; max-width: 600px; margin-left: auto; margin-right: auto; } .global-cta .btn {font-size: 16px; padding: 16px 32px; } /* --- Alumni Page Additions --- */ .alumni-intro {text-align: center; max-width: 800px; margin: 0 auto 60px; } .alumni-intro p {font-size: 20px; color: var(--text-charcoal); line-height: 1.8; } /* Companies Bubble Cluster */ .companies-cluster-container {position: relative; width: 100%; height: 600px; overflow: hidden; background: var(--academic-grey); border-radius: var(--card-radius); border: 1px solid var(--border-grey); } .company-bubble {position: absolute; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--white); box-shadow: 0 4px 15px rgba(0,0,0,0.05); border: 1px solid var(--border-grey); font-weight: 600; color: var(--primary-blue); font-size: 14px; text-align: center; padding: 12px; will-change: transform; transform: translate(-50%, -50%); } .bubble-tech { border-color: #A3D8F4; color: #1E3A8A; } .bubble-finance { border-color: #FCD34D; color: #78350F; } .bubble-consulting { border-color: #D8B4E2; color: #4A044E; } .cluster-label {position: absolute; font-family: var(--font-heading); font-size: 24px; color: var(--muted-text); opacity: 0.5; pointer-events: none; text-transform: uppercase; letter-spacing: 0.1em; } /* Testimonials */ .testimonials-grid {display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; margin-top: 40px; } .testimonial-card {background: var(--white); padding: 40px; border-radius: var(--card-radius); border: 1px solid var(--border-grey); box-shadow: 0 4px 12px rgba(0,0,0,0.02); transition: var(--transition-smooth); } .testimonial-card:hover {transform: translateY(-4px); box-shadow: 0 12px 24px rgba(13,34,115,0.08); } .testimonial-text {font-style: italic; font-size: 16px; color: var(--text-charcoal); margin-bottom: 24px; position: relative; } .testimonial-text::before {content: '"'; font-family: var(--font-heading); font-size: 60px; color: var(--accent-yellow); position: absolute; top: -20px; left: -20px; opacity: 0.3; } .testimonial-author {display: flex; align-items: center; gap: 16px; } .testimonial-author img {width: 48px; height: 48px; border-radius: 50%; object-fit: cover; } .testimonial-author-info h4 {font-family: var(--font-main); font-size: 15px; margin: 0; } .testimonial-author-info span {font-size: 13px; color: var(--muted-text); } /* --- FAQ Accordion --- */ .faq-category {margin-bottom: 40px; } .faq-item {border-bottom: 1px solid var(--border-grey); margin-bottom: 16px; overflow: hidden; } .faq-question {font-family: var(--font-heading); font-size: 20px; color: var(--deep-navy); padding: 20px 0; cursor: pointer; display: flex; justify-content: space-between; align-items: center; font-weight: 600; transition: var(--transition-smooth); } .faq-question::after {content: '+'; font-size: 24px; color: var(--primary-blue); transition: transform 0.3s ease; } .faq-item.active .faq-question {color: var(--accent-yellow); } .faq-item.active .faq-question::after {transform: rotate(45deg); color: var(--accent-yellow); } .faq-answer {max-height: 0; opacity: 0; transition: max-height 0.4s ease, opacity 0.4s ease, padding 0.4s ease; } .faq-item.active .faq-answer {max-height: 500px; opacity: 1; padding-bottom: 24px; } body[data-page="faq"] .faq-section {background: linear-gradient(180deg, rgba(240, 244, 248, 0.62) 0%, rgba(255, 255, 255, 0) 38%), var(--white); } body[data-page="faq"] .faq-search-panel {margin-bottom: clamp(44px, 6vw, 76px); padding: clamp(24px, 3.2vw, 42px); border: 1px solid rgba(23, 66, 97, 0.16); border-radius: 8px; background: rgba(255, 255, 255, 0.92); box-shadow: 0 18px 42px rgba(23, 66, 97, 0.08); } body[data-page="faq"] .faq-search-title {margin: 0 0 clamp(20px, 2.8vw, 32px); color: var(--deep-navy); font-size: clamp(2rem, 3.2vw, 3.75rem); line-height: 1.06; letter-spacing: 0; } body[data-page="faq"] .faq-search-controls {display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: stretch; } body[data-page="faq"] .faq-search-input {width: 100%; min-height: 58px; padding: 0 18px; border: 1px solid var(--border-grey); border-radius: 8px; background: var(--white); color: var(--text-charcoal); font: 600 1rem var(--font-main); transition: border-color 0.25s ease, box-shadow 0.25s ease; } body[data-page="faq"] .faq-search-input:focus {outline: none; border-color: var(--primary-blue); box-shadow: 0 0 0 4px rgba(23, 66, 97, 0.12); } body[data-page="faq"] .faq-search-clear {min-height: 58px; padding: 0 18px; border: 1px solid var(--primary-blue); border-radius: 8px; background: var(--white); color: var(--primary-blue); font: 700 0.95rem var(--font-main); cursor: pointer; transition: background 0.25s ease, color 0.25s ease; } body[data-page="faq"] .faq-search-clear:hover, body[data-page="faq"] .faq-search-clear:focus-visible {background: var(--primary-blue); color: var(--white); } body[data-page="faq"] .faq-search-status {margin: 16px 0 0; color: #253348; font-size: 0.98rem; font-weight: 600; } body[data-page="faq"] .faq-empty {display: none; margin: 8px 0 0; padding: 18px 0; border-top: 1px solid var(--border-grey); color: var(--muted-text); font-size: 1rem; } body[data-page="faq"] .faq-category.is-filtered-empty .faq-empty {display: block; } body[data-page="faq"] .faq-category.is-search-visible {opacity: 1 !important; transform: none !important; } body[data-page="faq"] .faq-item[hidden] {display: none; } body[data-page="faq"] .faq-item.search-match {border-color: rgba(23, 66, 97, 0.3); } body[data-page="faq"] .faq-item.search-match .faq-question {color: var(--deep-navy); } .sr-only {position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; } @media (max-width: 680px) {body[data-page="faq"] .faq-search-controls {grid-template-columns: 1fr; } body[data-page="faq"] .faq-search-clear {width: 100%; } } /* --- Horizontal Marquee (Alumni Testimonials) --- */ .marquee-container {width: 100%; overflow: hidden; position: relative; padding: 40px 0; display: flex; } .marquee-track {display: flex; gap: 32px; width: max-content; /* GSAP animates this */ } .marquee-card {width: 400px; background: var(--white); padding: 32px; border-radius: var(--card-radius); border: 1px solid var(--border-grey); box-shadow: 0 10px 30px rgba(0,0,0,0.02); flex-shrink: 0; transition: var(--transition-smooth); } .marquee-card:hover {transform: scale(1.02); border-color: var(--primary-blue); } /* --- Faculty Sliding Cards (Mobile Friendly) --- */ .faculty-grid {display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 32px; } .faculty-card {position: relative; background: var(--white); border-radius: var(--card-radius); overflow: hidden; border: 1px solid var(--border-grey); box-shadow: 0 4px 20px rgba(0,0,0,0.03); } .faculty-card-main {padding: 32px; display: flex; flex-direction: column; align-items: center; text-align: center; } .faculty-card-main img {width: 120px; height: 120px; border-radius: 50%; object-fit: cover; margin-bottom: 24px; border: 4px solid var(--soft-blue); } .faculty-card-main h3 {font-size: 22px; margin-bottom: 8px; } .faculty-card-main .role {color: var(--primary-blue); font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 4px; } .faculty-card-main .job {color: var(--muted-text); font-size: 13px; margin-bottom: 24px; } .faculty-card-btn {background: var(--soft-blue); color: var(--primary-blue); border: none; padding: 10px 20px; border-radius: 20px; font-weight: 600; font-size: 14px; cursor: pointer; transition: var(--transition-smooth); } .faculty-card-btn:hover {background: var(--primary-blue); color: var(--white); } .faculty-card-overlay {position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; background: var(--primary-blue); color: var(--white); padding: 32px; display: flex; flex-direction: column; justify-content: center; transform: translateY(100%); transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1); z-index: 2; } .faculty-card.open .faculty-card-overlay {transform: translateY(0); } .faculty-card-overlay .close-btn {position: absolute; top: 16px; right: 16px; background: none; border: none; color: var(--white); font-size: 24px; cursor: pointer; } .faculty-card-overlay h4 {color: var(--accent-yellow); font-size: 16px; margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.1em; } .faculty-card-overlay p {color: rgba(255,255,255,0.8); font-size: 14px; line-height: 1.6; } /* --- Partners Sector Accordion --- */ .partner-sector {margin-bottom: 24px; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); overflow: hidden; } .partner-sector-header {padding: 24px 32px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; background: var(--white); transition: var(--transition-smooth); } .partner-sector-header h3 {font-size: 24px; margin: 0; } .partner-sector-header .icon {font-size: 24px; color: var(--primary-blue); transition: transform 0.3s ease; } .partner-sector.active .partner-sector-header {background: var(--soft-blue); } .partner-sector.active .partner-sector-header .icon {transform: rotate(45deg); } .partner-sector-content {max-height: 0; opacity: 0; transition: max-height 0.5s ease, opacity 0.5s ease, padding 0.5s ease; } .partner-sector.active .partner-sector-content {max-height: 800px; opacity: 1; padding: 32px; } .partner-bento-grid {display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 16px; } .partner-bento-item {background: var(--academic-grey); border: 1px solid var(--border-grey); border-radius: 8px; padding: 24px 16px; text-align: center; font-weight: 600; color: var(--deep-navy); transition: var(--transition-smooth); } .partner-bento-item:hover {background: var(--white); border-color: var(--primary-blue); transform: translateY(-4px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); } /* --- Vertical Timeline (Enroll) --- */ .timeline-container {position: relative; max-width: 800px; margin: 0 auto; padding: 40px 0; } .timeline-line-bg {position: absolute; top: 0; bottom: 0; left: 50%; width: 4px; background: var(--border-grey); transform: translateX(-50%); } .timeline-line-fill {position: absolute; top: 0; left: 50%; width: 4px; background: var(--primary-blue); transform: translateX(-50%); height: 0; /* GSAP animates this */ } .timeline-step {position: relative; width: 50%; padding: 0 40px 40px; opacity: 0; /* GSAP animates this */ transform: translateY(20px); } .timeline-step:nth-child(odd) {left: 0; text-align: right; } .timeline-step:nth-child(even) {left: 50%; text-align: left; } .timeline-step::before {content: ''; position: absolute; top: 0; width: 20px; height: 20px; background: var(--white); border: 4px solid var(--accent-yellow); border-radius: 50%; z-index: 2; } .timeline-step:nth-child(odd)::before { right: -10px; } .timeline-step:nth-child(even)::before { left: -10px; } .timeline-step-content {background: var(--white); padding: 24px; border-radius: var(--card-radius); border: 1px solid var(--border-grey); box-shadow: 0 4px 15px rgba(0,0,0,0.02); } .timeline-step-id {font-size: 12px; font-weight: 700; color: var(--accent-yellow); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 8px; } .timeline-step-title {font-family: var(--font-heading); font-size: 20px; color: var(--deep-navy); margin-bottom: 8px; } @media (max-width: 768px) {.timeline-line-bg, .timeline-line-fill { left: 20px; } .timeline-step { width: 100%; left: 0 !important; text-align: left !important; padding: 0 0 40px 50px; } .timeline-step::before { left: 10px !important; } } /* --- Alumni Bubble Colors --- */ .bubble-tech { border-color: #0B192C !important; color: #0B192C !important; } .bubble-finance { border-color: #BFA15F !important; color: #BFA15F !important; } .bubble-consulting { border-color: #5C677D !important; color: #5C677D !important; } /* Testimonial pause state */ .marquee-track.paused {animation-play-state: paused; } .companies-cluster-container {background: transparent !important; border: none !important; box-shadow: none !important; } /* ───────────────────────────────────────── PARTNERS: always-visible bento items ───────────────────────────────────────── */ .partner-sector.active .partner-sector-content {opacity: 1; } /* ───────────────────────────────────────── FULL RESPONSIVE OVERRIDES ───────────────────────────────────────── */ /* Grid collapses from 12-col to 1-col on mobile */ @media (max-width: 900px) {.grid-12 { grid-template-columns: 1fr !important; } .grid-12 > [style*="grid-column"] { grid-column: 1 / -1 !important; } } /* Faculty grid: 2 cols on tablet, 1 on phone */ @media (max-width: 900px) {.faculty-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 580px) {.faculty-grid { grid-template-columns: 1fr; } .faculty-card { height: auto; min-height: 360px; } } /* Testimonial marquee cards narrower on mobile */ @media (max-width: 640px) {.marquee-card { width: 85vw; } } /* Timeline fully single-column */ @media (max-width: 768px) {.timeline-container { padding: 20px 0; } } /* Hero headline font clamp adjusted for small phones */ @media (max-width: 400px) {h1.hero-title { font-size: 28px; } h2.section-title { font-size: 24px; } } /* Partner sector accordion header wraps on small screens */ @media (max-width: 580px) {.partner-sector-header h3 { font-size: 18px; } .partner-bento-grid { grid-template-columns: 1fr 1fr; } } /* Alumni bubble cluster: constrain height on mobile */ @media (max-width: 640px) {.companies-cluster-container { height: 400px !important; } } /* Nav: hide nav-links & show mobile btn by default on mobile */ @media (max-width: 900px) {.nav-links {display: none; position: absolute; top: 100%; left: 0; width: 100%; background: rgba(255,255,255,0.98); backdrop-filter: blur(10px); padding: 20px 32px; flex-direction: column; gap: 16px; border-top: 1px solid var(--border-grey); box-shadow: 0 12px 40px rgba(0,0,0,0.08); } .nav-links.open { display: flex; } .mobile-menu-btn { display: flex; } .header-actions .btn-primary { display: none; } } @media (min-width: 901px) {.mobile-menu-btn { display: none; } } /* Hero sections: reduce top padding on mobile */ @media (max-width: 768px) {.hero { padding-top: 130px !important; padding-bottom: 60px !important; } } /* Global CTA: full width button on mobile */ @media (max-width: 580px) {.global-cta .btn { width: 100%; justify-content: center; } } /* Footer grid collapses */ @media (max-width: 768px) {.footer-grid { grid-template-columns: 1fr !important; gap: 32px; } } /* ═══════════════════════════════════════════ CONTENT PAGE: Pillar Cards ═══════════════════════════════════════════ */ .content-pillars {display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; } .content-pillar-card {background: var(--white); border: 1px solid var(--border-grey); border-radius: var(--card-radius); padding: 40px 32px; transition: var(--transition-smooth); position: relative; overflow: hidden; } .content-pillar-card::after {content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 4px; background: var(--primary-blue); transform: scaleX(0); transition: transform 0.4s ease; } .content-pillar-card:hover::after { transform: scaleX(1); } .content-pillar-card:hover {transform: translateY(-6px); box-shadow: 0 16px 40px rgba(0,0,0,0.06); } .pillar-icon-wrap {width: 72px; height: 72px; border-radius: 16px; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; margin-bottom: 24px; } .pillar-tags {list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; } .pillar-tags li {background: var(--soft-blue); color: var(--primary-blue); padding: 4px 12px; border-radius: 20px; font-size: 12px; font-weight: 600; } @media (max-width: 900px) { .content-pillars { grid-template-columns: 1fr; } } /* ═══════════════════════════════════════════ CONTENT PAGE: Project Advantages ═══════════════════════════════════════════ */ .project-advantages {display: grid; grid-template-columns: 1fr 1fr; gap: 24px; } .advantage-card {background: var(--soft-blue); border-radius: var(--card-radius); padding: 32px; transition: var(--transition-smooth); } .advantage-card:hover {background: var(--white); box-shadow: 0 8px 24px rgba(0,0,0,0.04); transform: translateY(-4px); } .advantage-number {font-family: var(--font-heading); font-size: 36px; font-weight: 700; color: var(--accent-yellow); line-height: 1; margin-bottom: 12px; } .advantage-card h4 {font-size: 18px; margin-bottom: 8px; color: var(--deep-navy); } @media (max-width: 640px) { .project-advantages { grid-template-columns: 1fr; } } /* ═══════════════════════════════════════════ CONTENT PAGE: Evaluation Rings ═══════════════════════════════════════════ */ .eval-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 48px; max-width: 700px; margin: 0 auto; } .eval-card {text-align: center; } .eval-ring-wrap {position: relative; width: 140px; height: 140px; margin: 0 auto 24px; } .eval-ring {width: 100%; height: 100%; } .eval-ring-label {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-family: var(--font-heading); font-size: 32px; font-weight: 700; color: var(--deep-navy); } .eval-card h3 {font-size: 20px; margin-bottom: 8px; } @media (max-width: 580px) { .eval-grid { grid-template-columns: 1fr; gap: 32px; } } /* ═══════════════════════════════════════════ ENROLL PAGE: Info Grid (Requirements, Dates, Seats, Tuition) ═══════════════════════════════════════════ */ .enroll-info-grid {display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; } .enroll-info-card {background: var(--white); border: 1px solid var(--border-grey); border-radius: var(--card-radius); padding: 36px 32px; transition: var(--transition-smooth); } .enroll-info-card:hover {box-shadow: 0 8px 30px rgba(0,0,0,0.04); transform: translateY(-4px); } .enroll-info-icon {width: 56px; height: 56px; border-radius: 12px; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; margin-bottom: 20px; } .enroll-info-card h3 {font-size: 22px; margin-bottom: 16px; } .enroll-checklist {list-style: none; display: flex; flex-direction: column; gap: 12px; } .enroll-checklist li {display: flex; align-items: center; gap: 12px; color: var(--text-charcoal); } .enroll-checklist li::before {content: '✓'; color: var(--primary-blue); font-weight: 700; flex-shrink: 0; } .enroll-dates-list {list-style: none; display: flex; flex-direction: column; gap: 16px; } .enroll-dates-list li {display: flex; justify-content: space-between; padding-bottom: 12px; border-bottom: 1px solid var(--border-grey); color: var(--text-charcoal); } .enroll-dates-list li:last-child { border-bottom: none; } /* Seats counter */ .seats-grid {display: flex; flex-direction: column; gap: 20px; } .seat-item {display: flex; align-items: center; gap: 16px; } .seat-number {font-family: var(--font-heading); font-size: 36px; font-weight: 700; color: var(--primary-blue); min-width: 60px; } .seat-label {font-size: 15px; color: var(--muted-text); } @media (max-width: 768px) { .enroll-info-grid { grid-template-columns: 1fr; } } /* Call for Applications download card */ .cta-download-card {background: var(--primary-blue); border-radius: var(--card-radius); padding: 48px; display: flex; align-items: center; gap: 32px; text-align: left; transition: var(--transition-smooth); } .cta-download-card:hover {transform: translateY(-4px); box-shadow: 0 20px 40px rgba(11,25,44,0.3); } .cta-download-icon {width: 80px; height: 80px; border-radius: 50%; background: rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: center; flex-shrink: 0; } @media (max-width: 768px) {.cta-download-card { flex-direction: column; text-align: center; } .cta-download-card .btn { width: 100%; } } /* ═══════════════════════════════════════════ ORGANIZATION PAGE: Weekly Schedule ═══════════════════════════════════════════ */ .schedule-visual {display: grid; grid-template-columns: repeat(7, 1fr); gap: 12px; } .schedule-day {border-radius: var(--card-radius); padding: 24px 12px; text-align: center; transition: var(--transition-smooth); min-height: 160px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; } .schedule-day-off {background: var(--academic-grey); border: 1px solid var(--border-grey); } .schedule-day-active {background: var(--primary-blue); color: var(--white); border: 2px solid var(--accent-yellow); box-shadow: 0 8px 24px rgba(11,25,44,0.15); } .schedule-day-name {font-family: var(--font-heading); font-size: 18px; font-weight: 700; } .schedule-day-off .schedule-day-name { color: var(--muted-text); } .schedule-day-active .schedule-day-name { color: var(--accent-yellow); } .schedule-day-status { color: var(--border-grey); font-size: 20px; } .schedule-day-time {font-size: 15px; font-weight: 600; } .schedule-day-label {font-size: 12px; opacity: 0.7; text-transform: uppercase; letter-spacing: 0.05em; } @media (max-width: 768px) {.schedule-visual { grid-template-columns: repeat(4, 1fr); } } @media (max-width: 480px) {.schedule-visual { grid-template-columns: repeat(2, 1fr); } } /* Organization Rules Grid */ .org-rules-grid {display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; } .org-rule-card {background: var(--white); border: 1px solid var(--border-grey); border-radius: var(--card-radius); padding: 36px 32px; transition: var(--transition-smooth); } .org-rule-card:hover {box-shadow: 0 8px 24px rgba(0,0,0,0.04); transform: translateY(-4px); } .org-rule-icon {width: 64px; height: 64px; border-radius: 16px; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; margin-bottom: 20px; } .org-rule-card h3 {font-size: 20px; margin-bottom: 12px; } @media (max-width: 768px) { .org-rules-grid { grid-template-columns: 1fr; } } /* ═══════════════════════════════════════════ HOMEPAGE: "Who Is This For" Section ═══════════════════════════════════════════ */ .who-profile-list {display: flex; flex-direction: column; gap: 32px; } .who-profile-item {display: flex; gap: 20px; align-items: flex-start; } .who-profile-dot {width: 14px; height: 14px; border-radius: 50%; background: var(--primary-blue); margin-top: 6px; flex-shrink: 0; } .who-profile-item h4 {font-size: 18px; margin-bottom: 4px; color: var(--deep-navy); } .who-stats-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 24px; } .who-stat-card {background: var(--soft-blue); border-radius: var(--card-radius); padding: 36px 28px; text-align: center; position: relative; transition: var(--transition-smooth); } .who-stat-card:hover {background: var(--white); box-shadow: 0 8px 24px rgba(0,0,0,0.05); transform: translateY(-4px); } .who-stat-number {font-family: var(--font-heading); font-size: 48px; font-weight: 700; color: var(--primary-blue); line-height: 1; display: inline; } .who-stat-unit {font-family: var(--font-heading); font-size: 28px; font-weight: 700; color: var(--accent-yellow); display: inline; } .who-stat-label {font-size: 14px; color: var(--muted-text); margin-top: 8px; font-weight: 500; } @media (max-width: 640px) { .who-stats-grid { grid-template-columns: 1fr 1fr; gap: 16px; } } /* ═══════════════════════════════════════════ FACULTY PAGE: Intro Stats ═══════════════════════════════════════════ */ .faculty-intro-stats {display: grid; grid-template-columns: 1fr 1fr; gap: 24px; } .faculty-stat-card {background: var(--soft-blue); border-radius: var(--card-radius); padding: 36px 28px; text-align: center; transition: var(--transition-smooth); position: relative; } .faculty-stat-card:hover {background: var(--white); box-shadow: 0 8px 24px rgba(0,0,0,0.05); transform: translateY(-4px); } .faculty-stat-num {font-family: var(--font-heading); font-size: 48px; font-weight: 700; color: var(--primary-blue); line-height: 1; display: inline; } .faculty-stat-unit {font-family: var(--font-heading); font-size: 28px; font-weight: 700; color: var(--accent-yellow); display: inline; } .faculty-stat-label {display: block; font-size: 14px; color: var(--muted-text); margin-top: 8px; font-weight: 500; } @media (max-width: 640px) { .faculty-intro-stats { grid-template-columns: 1fr 1fr; } } /* ═══════════════════════════════════════════ CONTACT PAGE: Reason Cards ═══════════════════════════════════════════ */ .contact-reasons-grid {display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; } .contact-reason-card {background: var(--white); border: 1px solid var(--border-grey); border-radius: var(--card-radius); padding: 40px 32px; transition: var(--transition-smooth); position: relative; overflow: hidden; } .contact-reason-card::before {content: ''; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--primary-blue); transform: scaleY(0); transform-origin: bottom; transition: transform 0.4s ease; } .contact-reason-card:hover::before { transform: scaleY(1); } .contact-reason-card:hover {transform: translateY(-6px); box-shadow: 0 16px 40px rgba(0,0,0,0.06); } .contact-reason-icon {width: 64px; height: 64px; border-radius: 16px; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; margin-bottom: 20px; } .contact-reason-card h3 {font-size: 20px; margin-bottom: 10px; } .contact-reason-card p {color: var(--muted-text); margin-bottom: 16px; font-size: 15px; } .contact-email-link {font-weight: 600; color: var(--primary-blue); font-size: 14px; text-decoration: none; border-bottom: 1px solid transparent; transition: border-color 0.2s ease; } .contact-email-link:hover { border-color: var(--primary-blue); } @media (max-width: 768px) { .contact-reasons-grid { grid-template-columns: 1fr; } } /* CONTACT PAGE: Info List */ .contact-info-list {display: flex; flex-direction: column; gap: 32px; } .contact-info-item {display: flex; align-items: flex-start; gap: 20px; } .contact-info-icon {width: 48px; height: 48px; border-radius: 12px; background: var(--soft-blue); display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .contact-info-label {font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--muted-text); margin-bottom: 4px; } .contact-info-value {font-size: 16px; color: var(--deep-navy); text-decoration: none; font-weight: 500; line-height: 1.5; } a.contact-info-value { color: var(--primary-blue); } a.contact-info-value:hover { text-decoration: underline; } /* ═══════════════════════════════════════════ IMAGE - Homepage ═══════════════════════════════════════════ */ /* Full Width Cohort Image */ .cohort-image-section {width: 100%; position: relative; z-index: 2; background: var(--white); overflow: hidden; padding: 0; margin: 0; } .cohort-image-wrapper {position: relative; width: 100%; height: 68vh; min-height: 420px; overflow: hidden; clip-path: inset(4% 4% 4% 4% round 24px); transform-origin: center center; } .cohort-image {width: 100%; height: 108%; object-fit: cover; object-position: center; display: block; transform: scale(1.08); filter: saturate(0.92) contrast(1.05); } @media (max-width: 768px) {.cohort-image-wrapper {height: 54vh; min-height: 340px; clip-path: inset(3% 3% 3% 3% round 18px); } .cohort-image {height: 104%; } } /* ═══════════════════════════════════════════ IMAGE - Alumni ═══════════════════════════════════════════ */ /* Alumni Ceremony Image — elegant full-width reveal */ .alumni-ceremony-section {background: var(--soft-blue); padding: 0; position: relative; z-index: 2; overflow: hidden; } .alumni-ceremony-inner {width: 100%; } .alumni-ceremony-frame {position: relative; width: 100%; height: 82vh; min-height: 560px; overflow: hidden; border-radius: 0; box-shadow: none; clip-path: inset(45% 0% 45% 0%); } .alumni-ceremony-image {width: 100%; height: 115%; object-fit: cover; object-position: center; display: block; transform: scale(1.08); filter: saturate(0.96) contrast(1.03); } .alumni-ceremony-shine {display: none; } @media (max-width: 768px) {.alumni-ceremony-frame {height: 64vh; min-height: 420px; } .alumni-ceremony-image {height: 108%; } } /* ========================================================= HOME HERO — Lecture Hall Light refined ========================================================= */ .hero-lecture {--hero-scroll-overlay-opacity: 0; --hero-gold-alpha: 0.07; --hero-cyan-alpha: 0.12; --hero-violet-alpha: 0; --hero-overlay-scale: 1.02; min-height: 100vh; display: flex; align-items: center; position: relative; overflow: hidden; padding-top: 96px; isolation: isolate; background: radial-gradient(circle at 78% 18%, rgba(251, 204, 9, var(--hero-gold-alpha)) 0%, transparent 30% ), radial-gradient(circle at 18% 76%, rgba(90, 177, 230, var(--hero-cyan-alpha)) 0%, transparent 36% ), linear-gradient(120deg, #12365a 0%, #24698f 40%, #3b89ad 70%, #174261 100% ); background-size: 120% 120%, 120% 120%, 100% 100%; background-position: 70% 18%, 18% 76%, center; } /* Overlay cromatico che entra durante lo scroll */ .hero-lecture::before {content: ""; position: absolute; inset: -8%; z-index: 0; pointer-events: none; opacity: var(--hero-scroll-overlay-opacity); transform: scale(var(--hero-overlay-scale)); transform-origin: center; will-change: opacity, transform, filter; background: radial-gradient(circle at 18% 22%, rgba(251, 204, 9, 0.16) 0%, transparent 32% ), radial-gradient(circle at 82% 72%, rgba(96, 165, 250, 0.22) 0%, transparent 36% ), radial-gradient(circle at 54% 48%, rgba(124, 58, 237, var(--hero-violet-alpha)) 0%, transparent 42% ), linear-gradient(120deg, #06111f 0%, #173f5b 40%, #25516f 70%, #091827 100% ); filter: saturate(1.08) contrast(1.02); } /* Luce da aula/proiezione: molto leggera */ .hero-light-beam {position: absolute; top: 2%; right: 2%; width: 62vw; height: 44vh; z-index: 2; pointer-events: none; opacity: 0.11; filter: blur(34px); transform: rotate(-7deg); mix-blend-mode: screen; background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.045) 38%, rgba(255, 255, 255, 0.014) 62%, transparent 80% ); } /* Pattern quasi invisibile, non SaaS */ .hero-lecture::after {content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; opacity: 0.12; background: linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px ), linear-gradient(180deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px ); background-size: 112px 112px; mask-image: linear-gradient(90deg, transparent 0%, black 20%, black 78%, transparent 100% ); } .hero-lecture .hero-canvas-bg {z-index: 1; opacity: 0.8; } .hero-lecture > .container {position: relative; z-index: 3; } /* Header leggibile su fondo scuro */ body[data-page="home"] .site-header:not(.scrolled) .logo, body[data-page="home"] .site-header:not(.scrolled) .nav-links a {color: rgba(255, 255, 255, 0.84); } body[data-page="home"] .site-header:not(.scrolled) .nav-links a::after {background-color: rgba(221, 232, 240, 0.9); } body[data-page="home"] .site-header:not(.scrolled) .mobile-menu-btn span {background-color: rgba(255, 255, 255, 0.86); } /* Label senza oro */ .hero-label {margin-bottom: 22px; color: rgba(230, 238, 244, 0.74); } .hero-label::before {background-color: rgba(221, 232, 240, 0.82); } /* Headline più raffinata e non tagliata */ .hero-lecture .hero-giant-text {max-width: 900px; line-height: 1; } .hero-lecture .hero-word-row {display: flex; align-items: baseline; gap: clamp(12px, 1.8vw, 24px); /* Correzione fondamentale: niente clipping */ overflow: visible; padding-bottom: 0.08em; } .hero-lecture .gsap-hero-word {font-family: var(--font-heading); font-size: clamp(48px, 8.3vw, 118px); font-weight: 600; line-height: 1.03; letter-spacing: -0.035em; color: rgba(246, 249, 251, 0.94) !important; text-wrap: balance; will-change: transform, opacity, filter; } .hero-lecture .hero-word-muted {color: rgba(202, 219, 232, 0.86) !important; margin-left: 0; } /* Hero academic editorial card */ .hero-program-card {margin-top: clamp(32px, 4vw, 44px); max-width: 620px; padding: 24px 28px 22px; background: rgba(248, 250, 252, 0.92); border: 1px solid rgba(220, 225, 233, 0.9); border-radius: 10px; backdrop-filter: blur(12px); box-shadow: 0 18px 48px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.7); } .hero-card-kicker {margin-bottom: 10px; } .hero-card-lead {font-size: clamp(15px, 1.05vw, 17px); line-height: 1.45; } .hero-card-rule {margin: 16px 0 14px; } .hero-academic-stats {gap: 12px; } .hero-academic-stat .hero-stat-num {font-size: 24px; } .hero-academic-stat .hero-stat-unit {font-size: 13px; } .hero-academic-stat .hero-stat-label {margin-top: 4px; font-size: 9px; line-height: 1.2; } .hero-card-actions {margin-top: 18px; padding-top: 16px; gap: 10px; } .hero-card-actions .btn {padding: 11px 18px; font-size: 14px; } .hero-card-kicker {font-family: var(--font-main); font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--muted-text); margin-bottom: 16px; } .hero-card-lead {font-family: var(--font-main); font-size: clamp(17px, 1.25vw, 20px); line-height: 1.65; letter-spacing: -0.01em; font-weight: 400; color: var(--muted-text); margin: 0; } .hero-card-rule {width: 100%; height: 1px; margin: 26px 0 22px; background: linear-gradient(90deg, var(--deep-navy), rgba(5, 13, 26, 0.08) ); } .hero-academic-stats {display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; } .hero-academic-stat {min-width: 0; } .hero-academic-stat .hero-stat-num, .hero-academic-stat .hero-stat-unit {display: inline; font-family: var(--font-heading); font-weight: 600; color: var(--deep-navy); } .hero-academic-stat .hero-stat-num {font-size: 30px; line-height: 1; letter-spacing: -0.03em; } .hero-academic-stat .hero-stat-unit {font-size: 15px; margin-left: 1px; } .hero-academic-stat .hero-stat-label {display: block; margin-top: 8px; font-size: 10px; line-height: 1.25; letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted-text); } .hero-card-actions {display: flex; gap: 14px; flex-wrap: wrap; margin-top: 28px; padding-top: 24px; border-top: 1px solid rgba(220, 225, 233, 0.9); } @media (max-width: 620px) {.hero-program-card {padding: 20px 18px; margin-top: 30px; } .hero-academic-stats {grid-template-columns: repeat(2, 1fr); gap: 14px 18px; } .hero-card-lead {font-size: 16px; line-height: 1.45; } .hero-card-actions {flex-direction: column; } .hero-card-actions .btn {width: 100%; justify-content: center; } } /* ========================================================= New shared sections and animations ========================================================= */ .master-story-section {position: relative; z-index: 2; background: var(--white); overflow: hidden; } .story-layout {display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr); gap: clamp(40px, 6vw, 96px); align-items: center; } .story-copy p + p, .experience-copy p + p, .testimonial-value-copy p + p {margin-top: 18px; } .story-timepiece {position: relative; min-height: 560px; border: 1px solid var(--border-grey); border-radius: 12px; overflow: hidden; background: linear-gradient(135deg, rgba(240, 244, 248, 0.95), rgba(255, 255, 255, 0.92)), repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.04) 0 1px, transparent 1px 88px); } .story-time-core {position: absolute; left: 50%; top: 50%; width: 170px; height: 170px; transform: translate(-50%, -50%); border-radius: 50%; background: var(--deep-navy); color: var(--white); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; z-index: 4; box-shadow: 0 24px 60px rgba(23, 66, 97, 0.18); } .story-core-year {font-family: var(--font-heading); font-size: 36px; line-height: 1; } .story-core-label {margin-top: 8px; font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(255, 255, 255, 0.72); } .story-orbit {position: absolute; left: 50%; top: 50%; border: 1px solid rgba(23, 66, 97, 0.18); border-radius: 50%; transform: translate(-50%, -50%); pointer-events: none; } .story-orbit-one {width: 340px; height: 340px; border-style: dashed; } .story-orbit-two {width: 470px; height: 470px; } .story-milestone {position: absolute; width: min(230px, 38%); padding: 18px 20px; border-radius: 10px; border: 1px solid rgba(23, 66, 97, 0.16); background: rgba(255, 255, 255, 0.9); box-shadow: 0 16px 34px rgba(23, 66, 97, 0.08); z-index: 5; } .story-milestone span {display: block; margin-bottom: 6px; font-size: 11px; font-weight: 700; color: #8A6D00; text-transform: uppercase; letter-spacing: 0.08em; } .story-milestone strong {display: block; font-size: 15px; line-height: 1.35; color: var(--deep-navy); } .story-milestone-1 { left: 8%; top: 14%; } .story-milestone-2 { right: 7%; top: 20%; } .story-milestone-3 { left: 10%; bottom: 16%; } .story-milestone-4 { right: 8%; bottom: 12%; } .story-season {position: absolute; width: 14px; height: 14px; border-radius: 50%; background: var(--accent-yellow); z-index: 3; box-shadow: 0 0 0 12px rgba(251, 204, 9, 0.12); } .story-season-a { left: 50%; top: 72px; } .story-season-b { right: 78px; top: 50%; background: #2E9E5A; box-shadow: 0 0 0 12px rgba(46, 158, 90, 0.12); } .story-season-c { left: 78px; top: 52%; background: #9B5E38; box-shadow: 0 0 0 12px rgba(155, 94, 56, 0.12); } .master-calendar-timeline {margin-top: 72px; padding: clamp(28px, 4vw, 46px); border-radius: 12px; border: 1px solid var(--border-grey); background: var(--white); box-shadow: 0 18px 48px rgba(23, 66, 97, 0.06); position: relative; overflow: hidden; } .calendar-timeline-header {display: flex; justify-content: space-between; align-items: flex-end; gap: 32px; margin-bottom: 34px; } .calendar-timeline-header h3 {font-size: clamp(26px, 3vw, 38px); margin: 0; } .calendar-timeline-header p {max-width: 420px; margin: 0; font-size: 15px; } .calendar-months {display: grid; grid-template-columns: repeat(13, 1fr); gap: 4px; margin-bottom: 16px; color: var(--muted-text); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; } .calendar-track {display: flex; width: 100%; min-height: 92px; border-radius: 999px; overflow: hidden; background: var(--academic-grey); border: 1px solid var(--border-grey); transform-origin: left center; } .calendar-segment {width: var(--segment); position: relative; display: flex; align-items: center; justify-content: center; min-width: 34px; } .calendar-segment span {position: relative; z-index: 2; color: var(--white); font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; white-space: nowrap; } .class-segment {background: linear-gradient(90deg, #174261, #2D6F8E); } .break-segment {background: repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.22) 0 8px, rgba(23, 66, 97, 0.02) 8px 16px), rgba(251, 204, 9, 0.8); } .break-segment span {color: var(--deep-navy); } .summer-break {background: repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.2) 0 8px, rgba(23, 66, 97, 0.02) 8px 16px), rgba(46, 158, 90, 0.65); } .calendar-now-marker {position: absolute; left: 42px; right: 42px; bottom: 28px; height: 2px; background: rgba(23, 66, 97, 0.08); } .calendar-now-marker span {position: absolute; left: 0; top: -5px; width: 12px; height: 12px; border-radius: 50%; background: var(--accent-yellow); box-shadow: 0 0 0 8px rgba(251, 204, 9, 0.16); } .experience-transfer-section, .testimonial-affiliation-section, .testimonial-value-section {position: relative; z-index: 2; overflow: hidden; } .experience-transfer-grid, .testimonial-value-grid {align-items: center; } .experience-copy, .testimonial-value-copy {grid-column: span 5; } .experience-visual {grid-column: span 7; position: relative; min-height: 520px; border-radius: 12px; border: 1px solid var(--border-grey); background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(240,244,248,0.92)), linear-gradient(90deg, rgba(23,66,97,0.04) 1px, transparent 1px), linear-gradient(180deg, rgba(23,66,97,0.035) 1px, transparent 1px); background-size: auto, 72px 72px, 72px 72px; overflow: hidden; } .experience-lens {position: absolute; left: 50%; top: 45%; width: 150px; height: 150px; transform: translate(-50%, -50%); border-radius: 50%; background: rgba(23, 66, 97, 0.94); color: var(--white); display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-size: 28px; z-index: 4; box-shadow: 0 24px 60px rgba(23, 66, 97, 0.2); } .experience-ring {position: absolute; left: 50%; top: 45%; border-radius: 50%; border: 1px solid rgba(23, 66, 97, 0.16); transform: translate(-50%, -50%); } .experience-ring-outer {width: 380px; height: 380px; } .experience-ring-inner {width: 250px; height: 250px; border-style: dashed; } .experience-card, .experience-reflection {position: absolute; border: 1px solid rgba(23, 66, 97, 0.14); background: rgba(255, 255, 255, 0.9); box-shadow: 0 14px 32px rgba(23, 66, 97, 0.07); color: var(--deep-navy); } .experience-card {min-width: 128px; padding: 14px 16px; border-radius: 999px; font-weight: 700; text-align: center; } .exp-card-1 { left: 12%; top: 18%; } .exp-card-2 { right: 14%; top: 20%; } .exp-card-3 { left: 13%; bottom: 24%; } .exp-card-4 { right: 12%; bottom: 24%; } .experience-reflection {padding: 16px 18px; border-radius: 10px; font-size: 14px; font-weight: 600; } .exp-reflection-1 { left: 18%; bottom: 8%; } .exp-reflection-2 { left: 44%; bottom: 7%; } .exp-reflection-3 { right: 11%; bottom: 8%; } .testimonial-value-cards {grid-column: span 7; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; } .testimonial-value-card {min-height: 0; padding: 36px 28px; border-radius: 12px; border: 1px solid var(--border-grey); background: var(--white); text-align: center; transition: var(--transition-smooth); } .testimonial-value-card span {display: inline-block; margin-bottom: 32px; font-family: var(--font-heading); font-size: 42px; color: rgba(23, 66, 97, 0.18); } .testimonial-value-card h3 {font-size: 24px; margin-bottom: 12px; } .testimonial-affiliation-header {max-width: 820px; margin-bottom: 52px; } .affiliation-field {position: relative; min-height: 620px; border-radius: 12px; border: 1px solid var(--border-grey); background: linear-gradient(135deg, rgba(255,255,255,0.96), rgba(240,244,248,0.9)), repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.035) 0 1px, transparent 1px 90px); overflow: hidden; } .affiliation-svg {position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; } .affiliation-path {fill: none; stroke-width: 2; stroke-dasharray: 12 12; stroke-linecap: round; } .path-tech { stroke: rgba(23, 66, 97, 0.24); } .path-consulting { stroke: rgba(251, 204, 9, 0.55); } .path-industry { stroke: rgba(46, 158, 90, 0.35); } .affiliation-hub {position: absolute; left: 50%; top: 50%; width: 180px; height: 180px; transform: translate(-50%, -50%); border-radius: 50%; background: var(--deep-navy); color: var(--white); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; z-index: 3; box-shadow: 0 22px 58px rgba(23, 66, 97, 0.2); } .affiliation-hub span {font-size: 12px; letter-spacing: 0.13em; text-transform: uppercase; color: rgba(255,255,255,0.7); } .affiliation-hub strong {margin-top: 8px; font-family: var(--font-heading); font-size: 28px; line-height: 1.05; } .company-token {position: absolute; left: var(--x); top: var(--y); width: 168px; min-height: 100px; transform: translate(-50%, -50%); padding: 16px; border-radius: 12px; background: rgba(255,255,255,0.92); border: 1px solid rgba(23, 66, 97, 0.14); box-shadow: 0 14px 34px rgba(23, 66, 97, 0.07); z-index: 4; } .company-token strong, .company-token span, .company-token em {display: block; } .company-token strong {color: var(--deep-navy); font-size: 16px; margin-bottom: 4px; } .company-token span {color: var(--muted-text); font-size: 12px; line-height: 1.35; } .company-token em {margin-top: 10px; color: #8A6D00; font-size: 11px; font-style: normal; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; } .company-tech { border-top: 3px solid var(--deep-navy); } .company-consulting { border-top: 3px solid var(--accent-yellow); } .company-industry { border-top: 3px solid #2E9E5A; } @media (max-width: 1024px) {.story-layout, .experience-transfer-grid, .testimonial-value-grid {grid-template-columns: 1fr; } .story-timepiece, .experience-copy, .experience-visual, .testimonial-value-copy, .testimonial-value-cards {grid-column: 1 / -1; } .story-timepiece, .experience-visual {min-height: 500px; } .testimonial-value-cards {grid-template-columns: 1fr; } .calendar-timeline-header {display: block; } .calendar-timeline-header p {margin-top: 14px; } } @media (max-width: 760px) {.story-timepiece, .experience-visual, .affiliation-field {min-height: auto; padding: 24px; display: grid; gap: 16px; } .story-time-core, .story-orbit, .story-season, .experience-lens, .experience-ring, .affiliation-svg, .affiliation-hub, .calendar-now-marker {display: none; } .story-milestone, .experience-card, .experience-reflection, .company-token {position: relative; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important; width: 100%; transform: none; } .calendar-months {grid-template-columns: repeat(7, 1fr); row-gap: 10px; } .calendar-track {min-height: 0; border-radius: 12px; flex-direction: column; } .calendar-segment {width: 100% !important; min-height: 46px; } .calendar-segment span {white-space: normal; } } /* ========================================================= Refined annotation fixes: minimal card-based visuals ========================================================= */ .story-card-flow {grid-column: span 1; min-height: 430px; border: none; border-radius: 0; background: transparent; box-shadow: none; overflow: hidden; } .story-flow-header, .experience-board-header {padding: 24px 28px; border-bottom: 1px solid var(--border-grey); display: flex; justify-content: space-between; gap: 18px; align-items: center; } .story-flow-header span, .experience-board-header span, .testimonial-detail-kicker {color: var(--muted-text); font-size: 11px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; } .story-flow-header strong, .experience-board-header strong {color: var(--deep-navy); font-size: 15px; } .story-flow-window {overflow: hidden; padding: 34px 0; } .story-flow-track {display: flex; gap: 20px; width: max-content; padding: 0 28px; will-change: transform; } .story-flow-card {width: 255px; min-height: 250px; padding: 28px 24px; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); box-shadow: 0 4px 12px rgba(0,0,0,0.02); } .story-flow-card span, .experience-board-card span {display: block; margin-bottom: 18px; color: #8A6D00; font-size: 11px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } .story-flow-card h3, .experience-board-card h3 {font-size: 22px; margin-bottom: 12px; } .story-flow-card p, .experience-board-card p, .testimonial-detail-item span {font-size: 14px; line-height: 1.55; } .experience-board {grid-column: span 7; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); box-shadow: 0 4px 12px rgba(0,0,0,0.02); overflow: hidden; } .speaker-insight-grid {grid-column: span 7; display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; } .speaker-insight-card {min-height: 300px; padding: 36px 32px; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); box-shadow: 0 4px 12px rgba(0,0,0,0.02); transition: var(--transition-smooth); } .speaker-insight-card:hover {box-shadow: 0 8px 24px rgba(0,0,0,0.04); transform: translateY(-4px); } .speaker-insight-number {width: 48px; height: 48px; border-radius: 14px; background: var(--soft-blue); color: var(--primary-blue); display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; margin-bottom: 28px; } .speaker-insight-card h3 {font-size: 24px; margin-bottom: 14px; } body[data-page="content"] .sector-mosaic {grid-column: span 7; position: relative; min-height: 420px; padding: clamp(24px, 3vw, 44px) 0 clamp(24px, 3vw, 44px) clamp(28px, 4vw, 56px); border-left: 1px solid var(--border-grey); } body[data-page="content"] .sector-mosaic-header {margin-bottom: 28px; } body[data-page="content"] .sector-mosaic-header span {color: #8A6D00; font-size: 11px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; } body[data-page="content"] .sector-mosaic-stage {position: relative; min-height: 330px; } body[data-page="content"] .sector-grid {position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: minmax(112px, auto); gap: 14px; } body[data-page="content"] .sector-tile {--sector-line-progress: 0%; position: relative; min-width: 0; min-height: 112px; padding: 26px 24px; border: 1px solid rgba(13, 79, 134, 0.14); border-radius: 8px; background: rgba(251, 253, 255, 0.72); overflow: hidden; } body[data-page="content"] .sector-tile::before {content: ''; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: linear-gradient(90deg, var(--primary-blue), var(--primary-blue)) left / var(--sector-line-progress) 100% no-repeat, linear-gradient(90deg, var(--sector-accent-a), var(--sector-accent-b)); } body[data-page="content"] .sector-tile-wide {grid-column: span 2; } body[data-page="content"] .sector-tile span {display: block; max-width: 100%; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.25rem, 1.55vw, 1.55rem); font-weight: 700; line-height: 1.15; } body[data-page="content"] .genai-pm-section {padding: 100px 0; background: var(--white); } body[data-page="content"] .genai-pm-grid {align-items: center; } body[data-page="content"] .genai-pm-copy {grid-column: span 5; } body[data-page="content"] .genai-pm-copy p + p {margin-top: 24px; } body[data-page="content"] .genai-pm-visual {grid-column: span 7; padding: clamp(24px, 3vw, 44px) 0 clamp(24px, 3vw, 44px) clamp(28px, 4vw, 56px); border-left: 1px solid var(--border-grey); } body[data-page="content"] .genai-process-intro {margin-bottom: 28px; } body[data-page="content"] .genai-process-intro span, body[data-page="content"] .genai-process-header span, body[data-page="content"] .genai-process-step > span {color: var(--deep-navy); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.14em; line-height: 1.2; text-transform: uppercase; } body[data-page="content"] .genai-process-intro strong {display: block; max-width: 520px; margin-top: 10px; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.18; } body[data-page="content"] .genai-process-visual {width: min(760px, 100%); margin: 0 auto; } body[data-page="content"] .genai-process-table {position: relative; border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } body[data-page="content"] .genai-process-header {position: relative; min-height: 98px; padding: 22px 24px 28px; background: rgba(251, 253, 255, 0.8); } body[data-page="content"] .genai-process-header h3 {display: block; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.35rem, 1.8vw, 1.7rem); line-height: 1.05; } body[data-page="content"] .genai-process-header > span {display: block; margin-top: 18px; } body[data-page="content"] .genai-process-header p {max-width: 520px; margin-top: 10px; color: var(--muted-text); font-size: 0.9rem; line-height: 1.48; } body[data-page="content"] .genai-process-progress {position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: rgba(220, 225, 233, 0.86); } body[data-page="content"] .genai-process-progress span {display: block; width: 100%; height: 100%; background: var(--primary-blue); transform: scaleX(0); transform-origin: left center; } body[data-page="content"] .genai-process-columns {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); } body[data-page="content"] .genai-process-step {min-height: 260px; padding: 24px 20px 26px; border-right: 1px solid var(--border-grey); background: rgba(251, 253, 255, 0.86); transition: background-color 0.35s ease, border-color 0.35s ease; } body[data-page="content"] .genai-process-step:last-child {border-right: 0; } body[data-page="content"] .genai-process-step h3 {margin-top: 18px; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.35rem, 1.8vw, 1.7rem); line-height: 1.05; } body[data-page="content"] .genai-process-step strong {display: block; margin-top: 22px; color: var(--deep-navy); font-size: 0.94rem; line-height: 1.35; } body[data-page="content"] .genai-process-step p {margin-top: 10px; color: var(--muted-text); font-size: 0.9rem; line-height: 1.48; } body[data-page="content"] .genai-process-step.is-active {background: rgba(240, 244, 248, 0.96); } body[data-page="content"] .genai-process-step.is-visited > span {color: var(--primary-blue); } body[data-page="content"] .genai-process-step.is-visited {border-color: rgba(23, 66, 97, 0.28); } .experience-board-row {display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 18px; padding: 22px 28px; border-bottom: 1px solid var(--border-grey); align-items: stretch; } .experience-step {width: 48px; height: 48px; border-radius: 50%; background: var(--soft-blue); color: var(--deep-navy); display: flex; align-items: center; justify-content: center; font-family: var(--font-heading); font-weight: 700; font-size: 18px; } .experience-board-card {padding: 22px 24px; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); position: relative; } .experience-board-card::before {content: ''; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--primary-blue); transform: scaleY(0); transform-origin: bottom; transition: transform 0.4s ease; } .experience-board-row.is-active .experience-board-card::before, .experience-board-card:hover::before {transform: scaleY(1); } .experience-board-notes {display: flex; flex-wrap: wrap; gap: 10px; padding: 22px 28px 28px; } .experience-board-notes span {padding: 8px 12px; border-radius: 999px; background: var(--soft-blue); color: var(--deep-navy); font-size: 12px; font-weight: 700; } .master-calendar-timeline {box-shadow: none; border: none; border-radius: 0; background: transparent; padding: 0; margin-top: 64px; overflow: visible; } .calendar-track {align-items: center; height: 86px; min-height: 0; border: none; border-radius: 0; background: transparent; overflow: visible; } .calendar-segment {min-width: 0; height: 86px; align-items: flex-start; padding-top: 6px; } .calendar-segment::before {content: ''; position: absolute; left: 0; right: 0; top: 48px; height: 4px; border-radius: 999px; } .class-segment, .break-segment, .summer-break {background: transparent; } .class-segment::before {background: var(--primary-blue); } .break-segment::before {height: 0; top: 49px; border-top: 4px dashed rgba(23, 66, 97, 0.45); background: transparent; } .calendar-segment span, .break-segment span {color: var(--muted-text); font-size: 11px; white-space: normal; text-align: center; line-height: 1.25; max-width: 96px; } .class-segment span {color: var(--deep-navy); } .testimonial-value-cards {gap: 24px; } .testimonial-value-card {min-height: 0; padding: 36px 32px; transition: var(--transition-smooth); text-align: center; } .testimonial-value-card:hover {box-shadow: 0 8px 24px rgba(0,0,0,0.04); transform: translateY(-4px); } .testimonial-card-number {display: inline-flex !important; width: 42px; height: 42px; margin-bottom: 28px !important; border-radius: 12px; background: var(--soft-blue); color: var(--primary-blue) !important; align-items: center; justify-content: center; font-family: var(--font-main) !important; font-size: 13px !important; font-weight: 800; } .testimonial-stat-number, .testimonial-stat-unit {display: inline !important; font-family: var(--font-heading) !important; font-weight: 700; color: var(--primary-blue) !important; line-height: 1; } .testimonial-stat-number {font-size: 52px !important; } .testimonial-stat-unit {font-size: 28px !important; color: var(--accent-yellow) !important; margin-left: 2px; } .testimonial-value-card p {max-width: 190px; margin: 16px auto 0; font-size: 14px; } .testimonial-directory {display: block; } .company-directory-grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; } .company-token {position: relative; left: auto; top: auto; width: auto; min-height: 116px; transform: none; padding: 20px; text-align: left; cursor: pointer; font-family: var(--font-main); transition: var(--transition-smooth); } button.company-token {appearance: none; border-left: 1px solid var(--border-grey); border-right: 1px solid var(--border-grey) !important; border-bottom: 1px solid var(--border-grey) !important; } .company-token:hover, .company-token.active {transform: translateY(-4px); box-shadow: 0 10px 26px rgba(23, 66, 97, 0.08); } .company-token.active {background: var(--soft-blue); } .testimonial-detail-panel {grid-column: 1 / -1; position: relative; top: auto; padding: 36px 32px; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--white); box-shadow: 0 4px 12px rgba(0,0,0,0.02); } .testimonial-detail-panel h3 {margin: 10px 0 12px; font-size: 32px; } .testimonial-detail-list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 26px; } .testimonial-detail-item {padding: 20px 18px; border-radius: 12px; background: var(--soft-blue); } .testimonial-detail-item strong {display: block; margin-bottom: 4px; color: var(--deep-navy); font-size: 14px; } @media (max-width: 1024px) {.story-card-flow, .experience-board, .speaker-insight-grid {grid-column: 1 / -1; } .company-directory-grid {grid-template-columns: repeat(2, 1fr); } .testimonial-detail-list {grid-template-columns: repeat(2, minmax(0, 1fr)); } body[data-page="content"] .sector-mosaic {grid-column: 1 / -1; min-height: 0; padding-left: 0; border-left: 0; } body[data-page="content"] .genai-pm-copy, body[data-page="content"] .genai-pm-visual {grid-column: 1 / -1; } body[data-page="content"] .genai-pm-visual {padding-left: 0; border-left: 0; } } @media (max-width: 760px) {.story-card-flow {min-height: 0; } .story-flow-track {width: auto; flex-direction: column; } .story-flow-card {width: 100%; } .experience-board-row {grid-template-columns: 1fr; } .speaker-insight-grid {grid-template-columns: 1fr; } body[data-page="content"] .sector-mosaic-stage {min-height: 0; } body[data-page="content"] .sector-grid {grid-template-columns: 1fr; grid-auto-rows: auto; } body[data-page="content"] .sector-tile, body[data-page="content"] .sector-tile-wide {grid-column: auto; min-height: 92px; } body[data-page="content"] .genai-process-columns {grid-template-columns: 1fr; } body[data-page="content"] .genai-process-step {min-height: 0; border-right: 0; border-bottom: 1px solid var(--border-grey); } body[data-page="content"] .genai-process-header {min-height: 0; } body[data-page="content"] .genai-process-step:last-child {border-bottom: 0; } .calendar-track {display: block; height: auto; } .calendar-segment {width: 100% !important; height: 58px; justify-content: flex-start; padding-top: 0; } .calendar-segment::before {left: 0; right: auto; width: 100%; top: 34px; } .company-directory-grid {grid-template-columns: 1fr; } .testimonial-value-cards, .testimonial-detail-list {grid-template-columns: 1fr; } } /* ========================================================= Editorial ivory redesign inspired by the provided reference ========================================================= */ :root {--primary-blue: #08284b; --deep-navy: #08284b; --accent-yellow: #c89a2b; --soft-blue: #f8f4ec; --academic-grey: #f3eee6; --text-charcoal: #142944; --muted-text: #40546d; --white: #fffdf8; --border-grey: #ded4c7; --paper: #fbf7ef; --paper-deep: #efe7dc; --gold-soft: #d7ad4a; --font-main: "Inter", "Segoe UI", Arial, sans-serif; --font-heading: "Sora", "Inter", "Segoe UI", Arial, sans-serif; --max-width: 1660px; --card-radius: 0; --button-radius: 0; --transition-smooth: all 0.28s ease; } html {background: var(--paper); } body {color: var(--text-charcoal); background: radial-gradient(circle at 20% 0%, rgba(255, 255, 255, 0.86), transparent 34rem), linear-gradient(180deg, var(--paper) 0%, #faf6ee 48%, var(--paper) 100%); } body::before {content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(rgba(8, 40, 75, 0.018) 1px, transparent 1px), linear-gradient(90deg, rgba(8, 40, 75, 0.014) 1px, transparent 1px); background-size: 78px 78px; mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.42), transparent 80%); } h1, h2, h3, h4, h5, h6 {color: var(--deep-navy); font-weight: 600; letter-spacing: 0; } h1.hero-title, .hero-lecture .gsap-hero-word {font-size: clamp(4.2rem, 8.8vw, 9.6rem); line-height: 0.95; font-weight: 500; } h2.section-title {font-size: clamp(3.1rem, 6.1vw, 7.15rem); line-height: 0.98; max-width: 980px; margin-bottom: 48px; } h3.card-title, .card h3, .content-pillar-card h3, .advantage-card h4, .contact-reason-card h3, .org-rule-card h3, .enroll-info-card h3, .faculty-card-main h3, .testimonial-value-card h3, .story-flow-card h3, .speaker-insight-card h3, .faq-category h2, .partner-sector-header h3 {font-family: var(--font-heading); color: var(--deep-navy); font-size: clamp(1.55rem, 2.1vw, 2.2rem); line-height: 1.05; font-weight: 600; letter-spacing: 0; } p, li, .gantt-sub, .contact-info-value, .faculty-card-main .job, .faculty-card-main .role, .testimonial-author-info span {color: var(--muted-text); font-size: clamp(1rem, 1.08vw, 1.18rem); line-height: 1.8; } .container {max-width: var(--max-width); padding-left: clamp(1.25rem, 4.8vw, 5.5rem); padding-right: clamp(1.25rem, 4.8vw, 5.5rem); } section {background: transparent; } .bg-soft-blue, .bg-academic-grey {background: transparent !important; } .site-header {padding: 28px 0; background: rgba(251, 247, 239, 0.92) !important; border-bottom: 1px solid rgba(222, 212, 199, 0.7); backdrop-filter: blur(18px); box-shadow: none !important; } .site-header.scrolled {padding: 18px 0; } body[data-page="home"] .site-header:not(.scrolled) .logo, body[data-page="home"] .site-header:not(.scrolled) .nav-links a {color: var(--deep-navy); } body[data-page="home"] .site-header:not(.scrolled) .mobile-menu-btn span {background: var(--deep-navy); } .logo, .footer-logo {font-family: var(--font-heading); color: var(--deep-navy); font-size: 1.6rem; font-weight: 600; letter-spacing: 0; } .nav-links {gap: clamp(16px, 1.8vw, 34px); } .nav-links a {color: var(--deep-navy); font-size: 0.76rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; } .nav-links a::after {bottom: -9px; height: 1px; background: var(--accent-yellow); } .label, .hero-card-kicker, .testimonial-detail-kicker, .contact-info-label, .seat-label, .hero-stat-label, .faculty-stat-label, .who-stat-label, .testimonial-value-card span:not(.testimonial-stat-number):not(.testimonial-stat-unit), .story-flow-card span, .experience-board-card span, .timeline-step-id, .advantage-number {display: flex; align-items: center; gap: 22px; color: var(--deep-navy); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.22em; line-height: 1.25; text-transform: uppercase; } .label::before, .hero-card-kicker::before, .testimonial-detail-kicker::before, .contact-info-label::before, .timeline-step-id::before, .advantage-number::before {content: ""; display: inline-block; width: 70px; height: 1px; flex: 0 0 70px; background: var(--accent-yellow); border-radius: 0; } .label[style*="center"]::before, .label[style*="justify-content: center"]::before {flex-basis: 48px; } .btn {min-height: 42px; padding: 0 0 7px; border: 0; border-bottom: 1px solid var(--accent-yellow); border-radius: 0; background: transparent !important; color: var(--deep-navy) !important; box-shadow: none !important; font-size: 0.86rem; font-weight: 800; letter-spacing: 0.08em; text-transform: none; } .btn:hover {transform: translateY(-2px); border-color: var(--deep-navy); } .btn-icon, .card-icon-svg, .pillar-icon-wrap, .enroll-info-icon, .org-rule-icon, .contact-reason-icon, .contact-info-icon, .cta-download-icon, .partner-sector-header .icon, .expand-icon, svg, img[src$=".svg"] {display: none !important; } .mobile-menu-btn {width: auto; min-width: 52px; color: var(--deep-navy); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; } .mobile-menu-btn span {display: none; } .mobile-menu-btn::after {content: "Menu"; } .mobile-menu-btn.open::after {content: "Close"; } .hero, .hero-lecture {min-height: auto !important; padding-top: clamp(140px, 14vw, 215px) !important; padding-bottom: clamp(80px, 9vw, 140px) !important; overflow: hidden; background: radial-gradient(circle at 72% 12%, rgba(255, 255, 255, 0.82), transparent 32rem), linear-gradient(180deg, var(--paper) 0%, var(--paper) 100%) !important; color: var(--deep-navy); border-bottom: 1px solid rgba(222, 212, 199, 0.76); } .hero::before, .hero::after, .hero-light-beam, .hero-canvas-bg, #hero-canvas, #gantt-canvas {display: none !important; } .hero > .container, .hero-lecture > .container {position: relative; z-index: 2; } .hero:not(.hero-lecture) > .container {display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(300px, 0.82fr); column-gap: clamp(3rem, 8vw, 8rem); row-gap: 40px; align-items: start; } .hero:not(.hero-lecture) .label {grid-column: 1 / -1; } .hero:not(.hero-lecture) h1 {max-width: none !important; margin: 0; } .hero:not(.hero-lecture) p {max-width: 560px !important; margin-top: 18px !important; padding-left: clamp(24px, 3.4vw, 56px); border-left: 1px solid var(--border-grey); color: var(--deep-navy) !important; font-weight: 500; } .hero-lecture > .container {display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(340px, 0.92fr); column-gap: clamp(3rem, 7vw, 8rem); row-gap: 42px; align-items: start; } .hero-label {grid-column: 1 / -1; color: var(--deep-navy) !important; } .hero-label::before {background: var(--accent-yellow) !important; opacity: 1; } .hero-giant-text {grid-column: 1; margin: 0; color: var(--deep-navy); } .hero-word-row {display: block; } .hero-lecture .gsap-hero-word {display: inline; color: var(--deep-navy) !important; text-shadow: none; background: none; } .hero-program-card {grid-column: 2; width: 100%; max-width: 560px; margin: 10px 0 0; padding: 10px 0 0 clamp(28px, 4vw, 58px); border: 0; border-left: 1px solid var(--border-grey); border-radius: 0; background: transparent; box-shadow: none; } .hero-card-lead {max-width: 520px; color: var(--deep-navy); font-size: clamp(1.06rem, 1.42vw, 1.42rem); line-height: 1.75; font-weight: 500; } .hero-card-rule {height: 1px; margin: 34px 0 28px; background: var(--border-grey); } .hero-academic-stats, .faculty-intro-stats, .who-stats-grid, .seats-grid, .testimonial-value-cards {display: grid; gap: 0; } .hero-academic-stats {grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } .hero-academic-stat, .faculty-stat-card, .who-stat-card, .seat-item, .testimonial-value-card {padding: 24px clamp(16px, 2vw, 28px); border-right: 1px solid var(--border-grey); background: transparent; border-radius: 0; box-shadow: none; } .hero-academic-stat:last-child, .faculty-stat-card:last-child, .who-stat-card:last-child, .seat-item:last-child, .testimonial-value-card:last-child {border-right: 0 !important; } .hero-academic-stat:nth-child(2n) {border-right: 0; } .hero-academic-stat:nth-child(1), .hero-academic-stat:nth-child(2) {border-bottom: 1px solid var(--border-grey); } .hero-stat-num, .hero-stat-unit, .faculty-stat-num, .faculty-stat-unit, .who-stat-number, .who-stat-unit, .seat-number, .testimonial-stat-number, .testimonial-stat-unit {font-family: var(--font-heading) !important; color: var(--deep-navy) !important; font-weight: 500 !important; letter-spacing: 0 !important; line-height: 0.92 !important; } .hero-stat-num, .faculty-stat-num, .who-stat-number, .seat-number, .testimonial-stat-number {font-size: clamp(3rem, 5vw, 5.2rem) !important; } .hero-stat-num {font-size: clamp(3rem, 4.4vw, 4.35rem) !important; } .hero-stat-unit, .faculty-stat-unit, .who-stat-unit, .testimonial-stat-unit {color: var(--accent-yellow) !important; font-size: clamp(1.2rem, 2.4vw, 2rem) !important; } .hero-card-actions {margin-top: 34px; } .card, .content-pillar-card, .advantage-card, .eval-card, .enroll-info-card, .org-rule-card, .contact-reason-card, .faculty-card, .marquee-card, .speaker-insight-card, .story-flow-card, .experience-board, .experience-board-card, .testimonial-detail-panel, .company-token, .partner-bento-item, .timeline-step-content, .faq-item, .cta-download-card, .method-card, .dashboard-card, .light-dashboard-card {border: 0; border-left: 1px solid var(--border-grey); border-radius: 0; background: transparent; box-shadow: none; transition: var(--transition-smooth); } .card:hover, .content-pillar-card:hover, .advantage-card:hover, .eval-card:hover, .enroll-info-card:hover, .org-rule-card:hover, .contact-reason-card:hover, .faculty-card:hover, .marquee-card:hover, .speaker-insight-card:hover, .company-token:hover, .partner-bento-item:hover, .faq-item:hover {transform: translateY(-3px); box-shadow: none; } .card, .content-pillar-card, .advantage-card, .eval-card, .enroll-info-card, .org-rule-card, .contact-reason-card, .faculty-card, .marquee-card, .speaker-insight-card, .story-flow-card, .partner-bento-item {padding: clamp(26px, 3vw, 46px); } .bento-grid, .content-pillars, .project-advantages, .enroll-info-grid, .org-rules-grid, .contact-reasons-grid, .faculty-grid, .eval-grid, .partner-bento-grid, .speaker-insight-grid {gap: 0; } .bento-card-small, .content-pillar-card, .advantage-card, .org-rule-card, .contact-reason-card, .enroll-info-card, .faculty-card, .speaker-insight-card, .partner-bento-item {min-height: 280px; } .bento-card-wide, .cta-download-card {position: relative; margin-top: clamp(34px, 5vw, 72px); padding: clamp(32px, 4vw, 58px) !important; border-left: 8px solid var(--accent-yellow) !important; background: rgba(239, 231, 220, 0.62) !important; color: var(--deep-navy) !important; } .bento-card-wide h3, .bento-card-wide p, .cta-download-card h3, .cta-download-card p {color: var(--deep-navy) !important; } .who-profile-list, .contact-info-list, .enroll-checklist, .enroll-dates-list {border-top: 1px solid var(--border-grey); } .who-profile-item, .contact-info-item, .enroll-checklist li, .enroll-dates-list li {border-bottom: 1px solid var(--border-grey); padding: 24px 0; } .who-profile-dot, .timeline-step::before {width: 48px; height: 1px; border-radius: 0; background: var(--accent-yellow) !important; box-shadow: none; } .timeline-container {max-width: 1040px; } .timeline-line-bg, .timeline-line-fill {width: 1px; background: var(--border-grey); } .timeline-line-fill {background: var(--accent-yellow); } .timeline-step-content {background: rgba(255, 253, 248, 0.42); } .gantt-chart, .raci-table-wrapper, .schedule-visual, .master-calendar-timeline, .companies-cluster-container, .testimonial-directory {border: 1px solid var(--border-grey); border-left: 8px solid var(--accent-yellow); border-radius: 0; background: rgba(255, 253, 248, 0.42); box-shadow: none; } .gantt-header, .gantt-row, .gantt-detail, .raci-table th, .raci-table td, .schedule-day, .calendar-months, .calendar-timeline-header {border-color: var(--border-grey); } .gantt-bar-vis, .class-segment::before, .calendar-now-marker, .meter-fill, .sprint-fill {background: var(--deep-navy) !important; } .gantt-bar-vis[style*="accent-yellow"], .break-segment::before {background: var(--accent-yellow) !important; } .eval-ring-wrap {width: auto; height: auto; margin: 0 0 28px; } .eval-ring-label {position: static; transform: none; font-family: var(--font-heading); color: var(--deep-navy); font-size: clamp(3.2rem, 5.2vw, 5.6rem); font-weight: 500; } .global-cta {background: linear-gradient(90deg, var(--accent-yellow) 0 8px, transparent 8px), rgba(239, 231, 220, 0.72) !important; color: var(--deep-navy); text-align: left; border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } .global-cta .container {display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 0.44fr); gap: clamp(28px, 5vw, 70px); align-items: end; } .global-cta h2 {color: var(--deep-navy); font-size: clamp(2.8rem, 5.6vw, 6.5rem); line-height: 0.98; margin: 0; } .global-cta p {color: var(--deep-navy); max-width: 680px; margin: 0; } .global-cta .btn {justify-self: start; } .site-footer {background: var(--deep-navy); color: var(--paper); border-top: 0; } .site-footer p, .site-footer a, .footer-bottom, .footer-links a {color: rgba(251, 247, 239, 0.72); } .footer-logo, .footer-links h4 {color: var(--paper); } .footer-grid, .footer-bottom {border-color: rgba(251, 247, 239, 0.18); } .testimonial-author img, .faculty-card-main img {display: none !important; } .testimonial-author {gap: 0 !important; } .faculty-card-main {padding-top: 0; } .faculty-card-btn, .faculty-card-overlay .close-btn, .wbs-close-btn {border: 0; border-bottom: 1px solid var(--accent-yellow); border-radius: 0; background: transparent; color: var(--deep-navy); } .faq-question {padding-right: 0; } .faq-question::after {display: none; } .partner-sector {border-radius: 0; border-color: var(--border-grey); background: transparent; } .partner-sector-header {background: transparent; } .contact-reason-card::before, .content-pillar-card::after {display: none !important; } @media (max-width: 1180px) {.hero-lecture > .container, .hero:not(.hero-lecture) > .container, .global-cta .container {grid-template-columns: 1fr; } .hero-program-card, .hero-giant-text {grid-column: 1; } .hero-program-card, .hero:not(.hero-lecture) p {max-width: 760px !important; } } @media (max-width: 900px) {.nav-links {background: var(--paper) !important; } .nav-links a {font-family: var(--font-heading); font-size: clamp(2.2rem, 10vw, 4.8rem); font-weight: 500; letter-spacing: 0; text-transform: none; } .hero-academic-stats, .faculty-intro-stats, .who-stats-grid, .seats-grid, .testimonial-value-cards {grid-template-columns: repeat(2, minmax(0, 1fr)); } .hero-academic-stat:nth-child(2), .faculty-stat-card:nth-child(2), .who-stat-card:nth-child(2), .seat-item:nth-child(2), .testimonial-value-card:nth-child(2) {border-right: 0; } } @media (max-width: 640px) {.label, .hero-card-kicker, .testimonial-detail-kicker, .contact-info-label, .timeline-step-id, .advantage-number {gap: 14px; letter-spacing: 0.16em; } .label::before, .hero-card-kicker::before, .testimonial-detail-kicker::before, .contact-info-label::before, .timeline-step-id::before, .advantage-number::before {width: 40px; flex-basis: 40px; } h1.hero-title, .hero-lecture .gsap-hero-word {font-size: clamp(3.15rem, 17vw, 5rem); } h2.section-title {font-size: clamp(2.7rem, 14vw, 4.3rem); } .hero-program-card, .hero:not(.hero-lecture) p {padding-left: 22px; } .hero-academic-stats, .faculty-intro-stats, .who-stats-grid, .seats-grid, .testimonial-value-cards {grid-template-columns: 1fr; } .hero-academic-stat, .faculty-stat-card, .who-stat-card, .seat-item, .testimonial-value-card {border-right: 0; border-bottom: 1px solid var(--border-grey); } .hero-academic-stat:last-child, .faculty-stat-card:last-child, .who-stat-card:last-child, .seat-item:last-child, .testimonial-value-card:last-child {border-bottom: 0; } .grid-12 > *, [style*="grid-column: span"] {grid-column: 1 / -1 !important; } } /* ========================================================= Reference direction v2: keep heroes familiar, refine sections ========================================================= */ :root {--primary-blue: #06294d; --deep-navy: #06294d; --accent-yellow: #d7aa39; --soft-blue: #fbf7ef; --academic-grey: #f5efe6; --text-charcoal: #102b4d; --muted-text: #425977; --white: #fffaf2; --border-grey: rgba(6, 41, 77, 0.16); --paper: #fbf7ef; --font-heading: "Sora", "Inter", "Segoe UI", Arial, sans-serif; --font-main: "Inter", "Segoe UI", Arial, sans-serif; --card-radius: 12px; --button-radius: 999px; } body {background: radial-gradient(circle at 50% 0%, rgba(255,255,255,0.9), transparent 42rem), linear-gradient(180deg, #fbf7ef 0%, #fffaf2 55%, #fbf7ef 100%); color: var(--text-charcoal); } body::before {opacity: 0.35; } .site-header {position: fixed; background: rgba(251, 247, 239, 0.78) !important; border-bottom: 0 !important; box-shadow: none !important; } .site-header.scrolled {background: rgba(251, 247, 239, 0.94) !important; border-bottom: 1px solid rgba(6, 41, 77, 0.1); } .logo, .footer-logo {font-size: clamp(1.55rem, 2vw, 2.1rem); } .nav-links a {font-size: 0.94rem; letter-spacing: 0; text-transform: none; font-weight: 700; } .nav-links a::after {height: 2px; bottom: -13px; background: var(--accent-yellow); } .btn {min-height: 54px; padding: 0 34px; border: 1.5px solid var(--deep-navy); border-radius: var(--button-radius); background: transparent !important; color: var(--deep-navy) !important; font-size: 1rem; letter-spacing: 0; text-transform: none; font-weight: 800; } .btn-primary {background: linear-gradient(180deg, #eac56c 0%, #d9a944 100%) !important; border-color: transparent; color: var(--deep-navy) !important; } .hero-card-actions .btn-primary, .global-cta .btn-primary {background: linear-gradient(180deg, #0a3b69 0%, #041e3b 100%) !important; color: #fffaf2 !important; } .btn:hover {transform: translateY(-2px); box-shadow: 0 14px 34px rgba(6, 41, 77, 0.12) !important; } .label {margin-bottom: clamp(28px, 4vw, 48px); color: var(--deep-navy); font-size: 0.83rem; letter-spacing: 0.16em; gap: 22px; } .label::before {width: 64px; flex-basis: 64px; height: 2px; background: var(--accent-yellow); } h1, h2, h3, h4, h5, h6 {color: var(--deep-navy); letter-spacing: 0; } h2.section-title {font-size: clamp(3.5rem, 5.8vw, 6.6rem); line-height: 0.98; font-weight: 500; } p {color: var(--muted-text); } .hero, .hero-lecture {background: radial-gradient(circle at 62% 8%, rgba(255,255,255,0.92), transparent 42rem), linear-gradient(180deg, #fbf7ef 0%, #fffaf2 100%) !important; border-bottom: 0; } .hero:not(.hero-lecture) {padding-top: 180px !important; padding-bottom: 92px !important; } .hero:not(.hero-lecture) > .container {display: block; } .hero:not(.hero-lecture) h1.hero-title {max-width: 900px !important; font-size: clamp(3.9rem, 6.7vw, 7rem); line-height: 0.98; font-weight: 500; } .hero:not(.hero-lecture) p {max-width: 700px !important; margin-top: 26px !important; padding-left: 0; border-left: 0; color: var(--muted-text) !important; font-size: clamp(1.05rem, 1.35vw, 1.24rem); line-height: 1.75; } .hero-canvas-bg, #hero-canvas {display: none !important; } body[data-page="home"] .hero-lecture {min-height: min(930px, 100vh) !important; padding-top: clamp(150px, 15vh, 210px) !important; padding-bottom: clamp(80px, 9vh, 120px) !important; } body[data-page="home"] .hero-lecture > .container {display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(430px, 0.95fr); grid-template-areas: "label label" "title stats" "lead stats" "actions stats"; gap: 0 clamp(72px, 9vw, 160px); align-items: center; } .hero-label {grid-area: label; } .hero-giant-text {grid-area: title; margin: 0; min-width: 0; max-width: 100%; width: 100%; contain: layout paint; overflow: clip; } .hero-lecture .gsap-hero-word {color: var(--deep-navy) !important; font-size: clamp(5rem, 7.05vw, 8.6rem); line-height: 0.95; font-weight: 500; } .hero-program-card {display: contents; } .hero-card-kicker, .hero-card-rule {display: none !important; } .hero-card-lead {grid-area: lead; max-width: 600px; margin: clamp(28px, 4vh, 46px) 0 0; color: var(--deep-navy); font-size: clamp(1.18rem, 1.6vw, 1.55rem); line-height: 1.55; font-weight: 500; overflow-wrap: anywhere; } .hero-card-actions {grid-area: actions; display: flex; flex-wrap: wrap; gap: 22px; margin-top: clamp(30px, 5vh, 54px); } .hero-academic-stats {grid-area: stats; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(70px, 11vh, 125px) clamp(76px, 8vw, 130px); padding-left: clamp(48px, 5vw, 86px); border: 0; border-left: 1px solid var(--border-grey); min-width: 0; } .hero-academic-stat {padding: 0; border: 0 !important; } .hero-stat-num, .hero-stat-unit {display: inline; font-family: var(--font-heading) !important; font-weight: 500 !important; line-height: 0.9 !important; } .hero-stat-num {font-size: clamp(4.2rem, 6vw, 6.9rem) !important; } .hero-stat-unit {color: var(--accent-yellow) !important; font-size: clamp(1.4rem, 2vw, 2.4rem) !important; } .hero-stat-label {display: block; margin-top: 30px; font-size: 0.9rem; letter-spacing: 0.11em; } .hero-stat-label::before {content: ""; display: block; width: 42px; height: 2px; margin-bottom: 24px; background: var(--accent-yellow); } .reference-section-header, .testimonial-affiliation-header {display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.72fr); gap: clamp(44px, 7vw, 110px); align-items: start; margin-bottom: clamp(54px, 6vw, 90px); } .reference-section-header .section-title, .testimonial-affiliation-header .section-title {margin-bottom: 0 !important; } .testimonial-affiliation-header {grid-template-areas: "label label" "title copy"; row-gap: 26px; } .testimonial-affiliation-header .label {grid-area: label; margin-bottom: 0; } .testimonial-affiliation-header .section-title {grid-area: title; } .testimonial-affiliation-header p {grid-area: copy; } .section-intro, .testimonial-affiliation-header p {margin: 0; padding-left: clamp(34px, 4vw, 60px); border-left: 1px solid var(--border-grey); color: var(--deep-navy); font-size: clamp(1.1rem, 1.35vw, 1.3rem); line-height: 1.8; font-weight: 500; } .bento-grid, .content-pillars, .project-advantages, .org-rules-grid, .contact-reasons-grid, .faculty-grid, .testimonial-value-cards, .speaker-insight-grid {gap: 0; } .card, .content-pillar-card, .advantage-card, .org-rule-card, .contact-reason-card, .speaker-insight-card, .testimonial-value-card {border: 0; border-left: 1px solid var(--border-grey); border-radius: 0; background: transparent; box-shadow: none; } .why-choose-card {padding-top: 0; counter-increment: why; } .bento-grid {counter-reset: why; } .why-choose-card::before, .advantage-number, .speaker-insight-number {content: counter(why, decimal-leading-zero); display: block; margin-bottom: 28px; font-family: var(--font-heading); color: var(--deep-navy); font-size: clamp(4rem, 6vw, 6.4rem); line-height: 0.92; font-weight: 500; letter-spacing: 0; } .why-choose-card::after, .advantage-number::after, .speaker-insight-number::after, .gantt-label-col strong::after, .schedule-day-name::after, .company-token strong::after, .testimonial-detail-item strong::after {content: ""; display: block; width: 34px; height: 2px; margin: 24px 0 22px; background: var(--accent-yellow); } .bento-card-wide, .cta-download-card {border-left: 8px solid var(--accent-yellow) !important; background: rgba(238, 232, 222, 0.72) !important; box-shadow: 0 22px 70px rgba(6, 41, 77, 0.06); } #gantt-program {padding: clamp(92px, 10vw, 150px) 0 !important; } #gantt-program .container > .label {margin-bottom: 22px !important; } #gantt-program .section-title {margin-bottom: clamp(38px, 5vw, 70px); } #gantt-program .container > div[style*="display: flex"] {justify-content: flex-end; margin-top: -92px; margin-bottom: 70px !important; color: var(--muted-text) !important; } .gantt-chart {min-width: 980px; border: 1px solid var(--border-grey); border-radius: 14px; overflow: hidden; background: rgba(255, 250, 242, 0.52); box-shadow: none; } .gantt-header, .gantt-row {display: grid; grid-template-columns: 330px minmax(650px, 1fr); border-bottom: 1px solid var(--border-grey); } .gantt-header {min-height: 70px; background: rgba(255, 250, 242, 0.64); } .gantt-label-col, .gantt-timeline-cols > div {border-right: 1px solid var(--border-grey); } .gantt-timeline-cols > div:last-child {border-right: 0; } .gantt-label-col {padding: 28px 34px; } .gantt-header .gantt-label-col, .gantt-timeline-cols > div {display: flex; align-items: center; color: var(--deep-navy); font-size: 0.85rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; } .gantt-timeline-cols {display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); } .gantt-row .gantt-timeline-cols > div {min-height: 118px; padding: 0 16px; justify-content: center; } .gantt-label-col strong {display: block; color: var(--deep-navy); font-family: var(--font-heading); font-size: 1.45rem; line-height: 1.1; font-weight: 600; } .gantt-sub {display: block; color: var(--muted-text); font-size: 1rem; line-height: 1.45; } .gantt-bar-vis {height: 13px; border-radius: 999px; background: var(--deep-navy) !important; box-shadow: 0 5px 14px rgba(6, 41, 77, 0.18); } .gantt-row[data-detail="gantt-detail-3"] .gantt-bar-vis, .gantt-row[data-detail="gantt-detail-4"] .gantt-bar-vis {background: var(--accent-yellow) !important; box-shadow: 0 5px 14px rgba(215, 170, 57, 0.2); } .gantt-detail {background: rgba(255, 250, 242, 0.92); border-bottom: 1px solid var(--border-grey); } .schedule-visual {display: grid; grid-template-columns: repeat(7, minmax(110px, 1fr)); gap: 16px; border: 0; border-left: 0; background: transparent; } .schedule-day {min-height: 190px; padding: 38px 24px; border: 1px solid var(--border-grey); border-radius: 12px; background: rgba(255, 250, 242, 0.48); text-align: center; box-shadow: none; } .schedule-day-active {background: radial-gradient(circle at 50% 0%, #0d4777 0%, #06294d 72%); border-color: var(--accent-yellow); box-shadow: 0 18px 48px rgba(6, 41, 77, 0.18); } .schedule-day-name {font-family: var(--font-heading); color: var(--deep-navy); font-size: 1.65rem; font-weight: 700; letter-spacing: 0.08em; } .schedule-day-active .schedule-day-name, .schedule-day-active .schedule-day-time, .schedule-day-active .schedule-day-label {color: #fffaf2; } .schedule-day-active .schedule-day-name {color: #f1c85e; } .schedule-day-name::after {margin-left: auto; margin-right: auto; } .schedule-day-status {color: var(--deep-navy); font-size: 1.4rem; } .schedule-day-time {color: #fffaf2; font-size: 1.35rem; font-weight: 800; } .schedule-day-label {color: #fffaf2; font-size: 0.78rem; letter-spacing: 0.1em; text-transform: uppercase; } .master-calendar-timeline {margin-top: 72px; padding: 44px 46px 56px; border: 0; border-left: 0; background: rgba(238, 232, 222, 0.46); box-shadow: 0 22px 80px rgba(6, 41, 77, 0.04); } .calendar-months span {color: var(--muted-text); font-size: 0.85rem; letter-spacing: 0.14em; text-transform: uppercase; } .calendar-segment::before {height: 5px; background: var(--deep-navy); } .break-segment::before {border-top: 4px dashed rgba(66, 89, 119, 0.42); } .calendar-segment span {color: var(--deep-navy); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } .testimonial-affiliation-section {background: linear-gradient(180deg, #f7fbff 0%, #f3f8fd 100%) !important; } .testimonial-directory {padding: 0; border: 0; border-left: 0; background: transparent; } .company-directory-grid {display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; align-items: stretch; } .company-token {min-height: 116px; padding: 26px 30px; border: 0 !important; border-left: 1px solid var(--border-grey) !important; border-bottom: 1px solid var(--border-grey) !important; border-radius: 0; background: transparent; box-shadow: none; } .company-token strong {display: block; color: var(--deep-navy); font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.1; } .company-token span, .company-token em {display: inline-block; color: var(--muted-text); font-size: 0.92rem; font-style: normal; } .company-token em {margin-left: 16px; color: #a68120; } .company-token.active {background: transparent; box-shadow: inset 0 -4px 0 var(--deep-navy); } .testimonial-detail-panel {grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.1fr) repeat(3, minmax(180px, 0.72fr)); gap: 44px; padding: 44px 38px; border: 1px solid var(--border-grey); border-radius: 4px; background: rgba(255, 250, 242, 0.44); } .testimonial-detail-panel h3 {font-size: clamp(3rem, 5vw, 5.5rem); margin: 18px 0; } .testimonial-detail-panel > p {grid-column: 1; color: var(--deep-navy); font-size: 1.1rem; } .testimonial-detail-list {display: contents; } .testimonial-detail-item {padding: 0 0 0 34px; border-left: 1px solid var(--border-grey); background: transparent; border-radius: 0; } .testimonial-detail-item strong {color: var(--deep-navy); font-size: 1rem; } .testimonial-detail-item span {color: var(--muted-text); font-size: 1rem; font-style: italic; } .faculty-grid {display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 28px; } .faculty-card {position: relative; min-height: 330px; overflow: hidden; border: 1px solid var(--border-grey); border-radius: 10px; background: rgba(255, 250, 242, 0.5); box-shadow: 0 16px 46px rgba(6, 41, 77, 0.06); cursor: pointer; } .faculty-card-main {height: 100%; min-height: 330px; padding: 38px 32px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; } .faculty-card-main h3 {font-size: 1.85rem; line-height: 1; } .faculty-card-main .role {margin-top: 12px; color: var(--muted-text); font-size: 0.8rem; font-weight: 800; letter-spacing: 0.12em; } .faculty-card-main .job {max-width: 220px; margin: 18px auto 28px; color: var(--muted-text); font-size: 1rem; line-height: 1.55; } .faculty-card-btn, .faculty-card-overlay .close-btn {min-height: 0; padding: 0 0 8px; border: 0; border-bottom: 2px solid var(--accent-yellow); border-radius: 0; background: transparent; color: var(--deep-navy); font-weight: 800; cursor: pointer; } .faculty-card-overlay {position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; padding: 38px 32px; background: radial-gradient(circle at 50% 0%, #0d4777 0%, #06294d 76%); color: #fffaf2; transform: translateY(100%); transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1); z-index: 2; } .faculty-card.open .faculty-card-overlay {transform: translateY(0); } .faculty-card-overlay .close-btn {position: absolute; top: 18px; right: 22px; color: #fffaf2; border-bottom-color: var(--accent-yellow); } .faculty-card-overlay h4 {color: #f1c85e; font-family: var(--font-main); font-size: 0.85rem; letter-spacing: 0.12em; text-transform: uppercase; } .faculty-card-overlay p {color: rgba(255, 250, 242, 0.82); } .global-cta {text-align: center; background: rgba(238, 232, 222, 0.54) !important; border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } .global-cta .container {display: block; } .global-cta h2 {font-size: clamp(2.8rem, 4.6vw, 4.8rem); } .global-cta p {margin: 0 auto 32px; color: var(--muted-text); } @media (max-width: 1180px) {body[data-page="home"] .hero-lecture > .container, .reference-section-header, .testimonial-affiliation-header {grid-template-columns: 1fr; grid-template-areas: "label" "title" "lead" "stats" "actions"; } .hero-academic-stats {margin-top: 56px; padding-left: 0; border-left: 0; } .testimonial-affiliation-header {grid-template-areas: "label" "title" "copy"; } #gantt-program .container > div[style*="display: flex"] {justify-content: flex-start; margin-top: 0; } .schedule-visual {grid-template-columns: repeat(4, minmax(130px, 1fr)); } .company-directory-grid {grid-template-columns: repeat(3, minmax(0, 1fr)); } .testimonial-detail-panel {grid-template-columns: 1fr; } .testimonial-detail-item {padding-left: 0; border-left: 0; } } @media (max-width: 760px) {.site-header {padding: 22px 0; } .mobile-menu-btn::after {content: "Menu"; } .hero:not(.hero-lecture), body[data-page="home"] .hero-lecture {padding-top: 128px !important; } .hero-lecture .gsap-hero-word, .hero:not(.hero-lecture) h1.hero-title, h2.section-title {font-size: clamp(3.4rem, 15vw, 5.2rem); } .hero-academic-stats {grid-template-columns: 1fr 1fr; gap: 42px 28px; } .hero-stat-num {font-size: clamp(3.5rem, 16vw, 5.1rem) !important; } .section-intro, .testimonial-affiliation-header p, .reference-section-header > p:not(.section-intro) {padding-left: 22px; } .schedule-visual, .company-directory-grid {grid-template-columns: 1fr; } .schedule-day {min-height: 150px; } #gantt-program {overflow-x: auto; } } /* ========================================================= Editorial PMGI palette: restrained blue with light yellow accents ========================================================= */ :root {--primary-blue: #0d4f86; --deep-navy: #06294d; --accent-yellow: #f4d35e; --soft-blue: #f4f8fb; --academic-grey: #eef4f8; --text-charcoal: #172131; --muted-text: #526578; --white: #fbfdff; --border-grey: #d8e2ea; --paper: #f8fbfd; --gold-soft: #fff2b8; } html, body {background: var(--paper); } body {color: var(--text-charcoal); background: var(--paper) !important; } body::before {background-image: linear-gradient(rgba(6, 41, 77, 0.018) 1px, transparent 1px), linear-gradient(90deg, rgba(13, 79, 134, 0.014) 1px, transparent 1px); background-size: 96px 96px; opacity: 0.45; } .site-header, .site-header.scrolled {background: rgba(248, 251, 253, 0.94) !important; border-bottom: 1px solid var(--border-grey); backdrop-filter: blur(14px); } .logo, .footer-logo, h1, h2, h3, h4, h5, h6 {color: var(--deep-navy); } .nav-links a {color: var(--deep-navy); } .nav-links a::after, .label::before, .hero-label::before, .hero-stat-label::before, .why-choose-card::after, .advantage-number::after, .speaker-insight-number::after, .gantt-label-col strong::after, .schedule-day-name::after, .company-token strong::after, .testimonial-detail-item strong::after, .contact-info-label::before, .timeline-step-id::before, .advantage-number::before {background: var(--accent-yellow) !important; } .label, .hero-stat-label, .faculty-stat-label, .who-stat-label, .seat-label, .testimonial-detail-kicker, .contact-info-label, .timeline-step-id {color: var(--deep-navy); } .hero, .hero-lecture, body[data-page="home"] .hero-lecture, .hero:not(.hero-lecture) {background: var(--paper) !important; } .bg-soft-blue, .bg-academic-grey, .testimonial-affiliation-section, .global-cta {background: var(--paper) !important; } .btn {border: 1px solid var(--primary-blue); background: transparent !important; color: var(--deep-navy) !important; box-shadow: none !important; } .btn-primary, .hero-card-actions .btn-primary, .global-cta .btn-primary, .header-actions .btn-primary {background: var(--accent-yellow) !important; border-color: var(--accent-yellow) !important; color: var(--deep-navy) !important; box-shadow: none !important; } .header-actions .btn-primary {background: transparent !important; color: var(--deep-navy) !important; border-color: var(--deep-navy) !important; } .header-actions .btn-primary:hover {background: var(--accent-yellow) !important; border-color: var(--accent-yellow) !important; color: var(--deep-navy) !important; } .btn:hover, .card:hover, .content-pillar-card:hover, .advantage-card:hover, .eval-card:hover, .enroll-info-card:hover, .org-rule-card:hover, .contact-reason-card:hover, .faculty-card:hover, .marquee-card:hover, .speaker-insight-card:hover, .company-token:hover, .partner-bento-item:hover, .faq-item:hover {transform: translateY(-1px); box-shadow: none !important; } .hero-stat-unit, .faculty-stat-unit, .who-stat-unit, .testimonial-stat-unit, .testimonial-stat-number, .hero-stat-num, .faculty-stat-num, .who-stat-number, .seat-number {color: var(--deep-navy) !important; } .hero-stat-unit, .faculty-stat-unit, .who-stat-unit, .testimonial-stat-unit {color: #707b88 !important; } .section-intro, .testimonial-affiliation-header p, .hero-card-lead, .hero:not(.hero-lecture) p {color: #253348 !important; } .card, .content-pillar-card, .advantage-card, .org-rule-card, .contact-reason-card, .speaker-insight-card, .testimonial-value-card, .faculty-card {background: transparent !important; border-color: var(--border-grey); box-shadow: none !important; } .bento-card-wide, .cta-download-card, .master-calendar-timeline, .testimonial-detail-panel, .gantt-chart, .companies-cluster-container, .schedule-day {background: rgba(255, 255, 255, 0.34) !important; border-color: var(--border-grey) !important; box-shadow: none !important; } .bento-card-wide, .cta-download-card {border-left: 1px solid var(--border-grey) !important; } .bento-card-wide h3, .bento-card-wide p, .cta-download-card h3, .cta-download-card p {color: var(--deep-navy) !important; } .gantt-header, .gantt-row, .gantt-detail, .raci-table th, .raci-table td, .calendar-months, .calendar-timeline-header, .company-token, .testimonial-detail-item, .contact-info-item, .who-profile-item, .faq-item {border-color: var(--border-grey) !important; } .gantt-header, .gantt-detail {background: rgba(255, 255, 255, 0.28) !important; } .gantt-bar-vis, .class-segment::before, .calendar-segment::before, .meter-fill, .sprint-fill {background: var(--primary-blue) !important; box-shadow: none !important; } .gantt-row[data-detail="gantt-detail-3"] .gantt-bar-vis, .gantt-row[data-detail="gantt-detail-4"] .gantt-bar-vis, .gantt-bar-vis[style*="accent-yellow"] {background: var(--accent-yellow) !important; box-shadow: none !important; } .break-segment::before {border-top-color: #a7b0ba !important; } .schedule-day-active {background: var(--deep-navy) !important; border-color: var(--accent-yellow) !important; box-shadow: none !important; } .schedule-day-active .schedule-day-name, .schedule-day-active .schedule-day-time, .schedule-day-active .schedule-day-label, .faculty-card-overlay .close-btn {color: #fbfcfc !important; } .schedule-day-active .schedule-day-name, .faculty-card-overlay h4 {color: var(--accent-yellow) !important; } .master-calendar-timeline {background: #f1f3f4 !important; } .testimonial-affiliation-section {background: #f3f6f8 !important; } .company-token.active {box-shadow: inset 0 -3px 0 var(--primary-blue) !important; } .company-token em {color: #9b7815 !important; } .testimonial-detail-panel {background: #f8fafb !important; border-radius: 0; } .faculty-card {border-radius: 0; } .faculty-card-overlay {background: var(--deep-navy) !important; color: #fbfcfc !important; } .faculty-card-overlay p {color: rgba(251, 252, 252, 0.78) !important; } .faculty-card-btn, .faculty-card-overlay .close-btn, .contact-email-link {border-bottom-color: var(--accent-yellow) !important; } .global-cta {border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } .site-footer {background: var(--deep-navy) !important; } .footer-links a:hover {color: var(--accent-yellow) !important; } section {border-color: var(--border-grey); } /* Targeted review-note polish */ h2.section-title {font-size: clamp(2.65rem, 4.25vw, 4.85rem) !important; line-height: 1.02; } .global-cta h2 {font-size: clamp(2.35rem, 3.6vw, 4rem) !important; } body[data-page="home"] .reference-section-header .section-title, .testimonial-affiliation-header .section-title {font-size: clamp(2.75rem, 4vw, 4.6rem) !important; } .explore-nav-card[href="partecipanti.html"], .explore-nav-card[href="partecipanti.html"].card, .bento-grid .explore-nav-card[href="partecipanti.html"] {background: var(--deep-navy) !important; border: 1px solid var(--deep-navy) !important; color: #fbfcfc !important; } .explore-nav-card[href="partecipanti.html"] h3, .explore-nav-card[href="partecipanti.html"] p, .explore-nav-card[href="partecipanti.html"] .k-tag {color: #fbfcfc !important; } .explore-nav-card[href="partecipanti.html"] p {opacity: 0.78; } .explore-nav-card[href="partecipanti.html"] .k-tag {background: rgba(251, 252, 252, 0.08) !important; border: 1px solid rgba(251, 252, 252, 0.16); } #call-for-applications .cta-download-card {background: var(--deep-navy) !important; border: 1px solid var(--deep-navy) !important; color: #fbfcfc !important; } #call-for-applications .cta-download-card h3, #call-for-applications .cta-download-card p {color: #fbfcfc !important; } #call-for-applications .cta-download-card p {opacity: 0.76; } #call-for-applications .cta-download-card .btn {background: #fbfcfc !important; border-color: #fbfcfc !important; color: var(--deep-navy) !important; } .faq-question {position: relative; padding: 24px 28px 24px 28px !important; border-right: 1px solid var(--border-grey); border-left: 4px solid var(--primary-blue); background: rgba(255, 255, 255, 0.22); cursor: pointer; } .faq-question:hover, .faq-item.active .faq-question {border-left-color: var(--accent-yellow); border-right-color: var(--border-grey); background: rgba(255, 255, 255, 0.48); } .faq-question::after {display: none !important; } .faq-item.active .faq-question::after {display: none !important; } img:not([src$=".svg"]) {filter: grayscale(18%) saturate(82%) contrast(1.04) brightness(0.96); } .cohort-image, .alumni-ceremony-image, img[src*="master_pmgi"] {filter: grayscale(20%) saturate(86%) contrast(1.05) brightness(0.95); } .cohort-image-wrapper, .alumni-ceremony-frame, [class*="image-wrapper"], [class*="image-frame"] {background: var(--deep-navy); } .faculty-card-overlay .close-btn {width: 34px; height: 34px; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(251, 252, 252, 0.42) !important; border-radius: 50%; font-family: var(--font-main); font-size: 0.85rem; line-height: 1; text-decoration: none; } /* Home hero horizontal scroll slider */ body[data-page="home"] .hero-scroll-shell {height: 100vh; height: 100svh; position: relative; background: var(--paper); z-index: 1; } body[data-page="home"] .hero-lecture {--hero-slide-x: -100%; --hero-progress: 0; --hero-left-color: #fbfcfc; --hero-muted-color: rgba(251, 252, 252, 0.82); --hero-stat-color: #fbfcfc; --hero-stat-muted: rgba(251, 252, 252, 0.72); --hero-action-color: #fbfcfc; --hero-action-border: rgba(251, 252, 252, 0.78); height: 100vh !important; height: 100svh !important; min-height: 100vh !important; max-height: 100vh !important; padding-top: clamp(96px, 11vh, 132px) !important; padding-bottom: clamp(28px, 5vh, 56px) !important; background: #174261 !important; color: var(--hero-left-color); overflow: hidden; isolation: isolate; position: relative; top: 0; } body[data-page="home"] .hero-color-slider {display: block !important; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: var(--paper); box-shadow: none; transform: translate3d(var(--hero-slide-x), 0, 0); will-change: transform; } body[data-page="home"] .hero-lecture::before {display: none !important; } body[data-page="home"] .hero-lecture::after {display: none !important; } body[data-page="home"] .hero-light-beam {display: none !important; } body[data-page="home"] .hero-lecture > .container {z-index: 3; } body[data-page="home"] .hero-label, body[data-page="home"] .hero-lecture .gsap-hero-word, body[data-page="home"] .hero-lecture .hero-scroll-word {color: var(--hero-left-color, #fbfcfc) !important; } body[data-page="home"] .hero-label {transition: color 0.1s linear; } body[data-page="home"] .hero-title-stage {position: relative; display: grid; align-self: end; justify-self: stretch; min-width: 0; max-width: 100%; inline-size: 100%; contain: none; overflow: visible; padding-bottom: 0.18em; } body[data-page="home"] .hero-title-state {grid-area: 1 / 1; width: 100%; max-width: 100%; min-width: 0; overflow: visible; will-change: opacity, transform, filter; } body[data-page="home"] .hero-title-final {position: static; opacity: 0; visibility: hidden; } body[data-page="home"] .hero-lecture .hero-scroll-word {display: inline-block; font-family: var(--font-heading); font-size: clamp(5rem, 7.05vw, 8.6rem); font-weight: 500; line-height: 1.08; letter-spacing: 0; text-wrap: balance; } body[data-page="home"] .hero-word-row {display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 0.18em; inline-size: 100%; max-width: 100%; min-width: 0; overflow: visible; padding-bottom: 0.18em; } body[data-page="home"] .hero-lecture .gsap-hero-word, body[data-page="home"] .hero-lecture .hero-scroll-word {display: inline-block; max-width: 100%; min-width: 0; flex-shrink: 1; opacity: 1; transform: none; letter-spacing: 0; line-height: 1.08; white-space: normal; overflow-wrap: anywhere; word-break: break-word; hyphens: auto; } body[data-page="home"] .hero-copy-stage {grid-area: lead; display: grid; position: relative; max-width: 600px; width: 100%; min-width: 0; margin: clamp(28px, 4vh, 46px) 0 0; } body[data-page="home"] .hero-copy-stage .hero-card-lead {grid-area: 1 / 1; max-width: none; width: 100%; margin: 0; color: var(--hero-muted-color, #d8e3eb) !important; overflow-wrap: anywhere; word-break: break-word; } body[data-page="home"] .hero-lead-final {position: static; opacity: 0; visibility: hidden; } body[data-page="home"] .hero-academic-stats {--hero-stat-color: #fbfcfc; --hero-stat-muted: rgba(251, 252, 252, 0.72); border-left-color: rgba(251, 252, 252, 0.24); } body[data-page="home"] .hero-academic-stats .hero-stat-num, body[data-page="home"] .hero-academic-stats .hero-stat-unit {color: var(--hero-stat-color) !important; } body[data-page="home"] .hero-academic-stats .hero-stat-label {color: var(--hero-stat-muted) !important; } body[data-page="home"] .hero-card-actions {--hero-action-color: #fbfcfc; --hero-action-border: rgba(251, 252, 252, 0.78); } body[data-page="home"] .hero-card-actions .btn-secondary {border-color: var(--hero-action-border) !important; color: var(--hero-action-color) !important; } @media (max-width: 900px) {body[data-page="home"] .hero-title-final, body[data-page="home"] .hero-lead-final {position: absolute; } body[data-page="home"] .hero-copy-stage {min-height: 8.5em; } } @media (max-width: 640px) {body[data-page="home"] .hero-lecture .hero-scroll-word {font-size: clamp(3.2rem, 15vw, 5.1rem); } body[data-page="home"] .hero-copy-stage {min-height: 11em; } } body[data-page="faculty"] .faculty-card {background: var(--faculty-card-bg) !important; border-color: var(--faculty-card-border) !important; } body[data-page="faculty"] .faculty-card-main h3, body[data-page="faculty"] .faculty-card-main .role, body[data-page="faculty"] .faculty-card-main .job {color: var(--faculty-card-text) !important; } body[data-page="faculty"] .faculty-card-overlay {background: var(--faculty-overlay-bg) !important; color: var(--faculty-overlay-text) !important; } body[data-page="faculty"] .faculty-card-overlay h4, body[data-page="faculty"] .faculty-card-overlay p, body[data-page="faculty"] .faculty-card-overlay .close-btn {color: var(--faculty-overlay-text) !important; } body[data-page="faculty"] .faculty-card-organizers {--faculty-card-bg: #eef6fb; --faculty-card-border: #9fc6dd; --faculty-card-text: #174261; --faculty-overlay-bg: #174261; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card-teachers {--faculty-card-bg: #fff7d8; --faculty-card-border: #e1bf42; --faculty-card-text: #4d3b00; --faculty-overlay-bg: #7a6200; --faculty-overlay-text: #fffaf0; } body[data-page="faculty"] .faculty-card-testimonials {--faculty-card-bg: #edf7ef; --faculty-card-border: #9bc9a7; --faculty-card-text: #174d2d; --faculty-overlay-bg: #215a35; --faculty-overlay-text: #f5fff7; } /* Organization Saturday schedule refinement */ body[data-page="organization"] .schedule-day-active {background: rgba(255, 250, 242, 0.48) !important; border-color: var(--border-grey) !important; box-shadow: none !important; } body[data-page="organization"] .schedule-day-active .schedule-day-name, body[data-page="organization"] .schedule-day-active .schedule-day-time, body[data-page="organization"] .schedule-day-active .schedule-day-label {color: var(--deep-navy) !important; } body[data-page="organization"] .schedule-day-saturday {background: radial-gradient(circle at 50% 0%, #0d4777 0%, #06294d 72%) !important; border-color: var(--border-grey) !important; box-shadow: none !important; } body[data-page="organization"] .schedule-day-saturday .schedule-day-name, body[data-page="organization"] .schedule-day-saturday .schedule-day-time, body[data-page="organization"] .schedule-day-saturday .schedule-day-label {color: #fffaf2 !important; } body[data-page="organization"] .schedule-day-saturday .schedule-day-name {color: #f1c85e !important; } body[data-page="organization"] .schedule-day-saturday .schedule-day-label {line-height: 1.7; } body[data-page="organization"] .schedule-day-off .schedule-day-time {display: none; } /* Program page module map, adapted from the testimonial affiliation field */ .program-map-section {padding: clamp(92px, 10vw, 150px) 0 !important; } .program-map-header {max-width: 920px; } .program-affiliation-field {position: relative; min-height: 620px; border: 1px solid var(--border-grey); border-radius: 8px; background: linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(244, 248, 251, 0.32)), repeating-linear-gradient(90deg, rgba(13, 79, 134, 0.035) 0 1px, transparent 1px 90px); overflow: hidden; } .program-affiliation-svg {position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; } .program-affiliation-path {fill: none; stroke: rgba(13, 79, 134, 0.2); stroke-width: 2; stroke-dasharray: 12 12; stroke-linecap: round; } .program-hub {position: absolute; left: 50%; top: 50%; width: 190px; height: 190px; transform: translate(-50%, -50%); border-radius: 50%; background: var(--deep-navy); color: #fbfcfc; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; z-index: 3; } .program-hub span {color: rgba(251, 252, 252, 0.72); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; } .program-hub strong {max-width: 140px; margin-top: 8px; color: #fbfcfc; font-family: var(--font-heading); font-size: 1.8rem; line-height: 1.05; } .program-module-token {position: absolute; left: var(--x); top: var(--y); width: 220px; min-height: 132px; transform: translate(-50%, -50%); padding: 20px; border: 1px solid rgba(13, 79, 134, 0.2); border-top: 4px solid var(--primary-blue); border-radius: 8px; background: rgba(251, 253, 255, 0.9); color: var(--deep-navy); text-align: left; font-family: var(--font-main); cursor: pointer; z-index: 4; transition: var(--transition-smooth); } .program-module-token:hover, .program-module-token.active {transform: translate(-50%, calc(-50% - 6px)); background: #fbfdff; border-color: var(--primary-blue); box-shadow: 0 18px 36px rgba(6, 41, 77, 0.08) !important; } .program-module-token strong, .program-module-token span, .program-module-token em {display: block; } .program-module-token strong {color: var(--deep-navy); font-family: var(--font-heading); font-size: 1.18rem; line-height: 1.1; } .program-module-token span {margin-top: 6px; color: var(--muted-text); font-size: 0.82rem; line-height: 1.35; } .program-module-token em {margin-top: 52px; color: var(--primary-blue); font-size: 0.72rem; font-style: normal; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } .program-module-detail {margin-top: 28px; padding: 36px 34px; border: 1px solid var(--border-grey); border-radius: 8px; background: rgba(251, 253, 255, 0.5); } .program-module-detail h3 {margin: 12px 0 12px; font-size: clamp(2rem, 4vw, 3.8rem); } .program-module-detail p {max-width: 760px; color: var(--deep-navy); } .program-module-detail-list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 28px; } @media (max-width: 1050px) {.program-affiliation-field {min-height: auto; padding: 24px; display: grid; gap: 16px; } .program-affiliation-svg, .program-hub {display: none; } .program-module-token {position: relative; left: auto !important; top: auto !important; width: 100%; transform: none; } .program-module-token:hover, .program-module-token.active {transform: translateY(-3px); } .program-module-detail-list {grid-template-columns: 1fr; } } /* Organization page refinements */ body[data-page="organization"] .schedule-day-saturday {background: var(--primary-blue) !important; border-color: var(--primary-blue) !important; } body[data-page="organization"] .schedule-day-saturday .schedule-day-name, body[data-page="organization"] .schedule-day-saturday .schedule-day-time, body[data-page="organization"] .schedule-day-saturday .schedule-day-label {color: #fbfcfc !important; } body[data-page="organization"] .schedule-visual .schedule-day:nth-child(5) .schedule-day-status {font-size: 0; } body[data-page="organization"] .schedule-visual .schedule-day:nth-child(5) .schedule-day-status::before {content: "\2014"; font-size: 20px; } body[data-page="organization"] .master-calendar-timeline {background: transparent !important; border-color: transparent !important; box-shadow: none !important; } body[data-page="organization"] .calendar-track {background: transparent !important; } body[data-page="organization"] .organization-glance-section {background: linear-gradient(180deg, rgba(240, 244, 248, 0.72), rgba(251, 253, 255, 0.98)); } body[data-page="organization"] .organization-glance-table-wrap {width: 100%; overflow-x: auto; background: transparent; } body[data-page="organization"] .organization-glance-table {width: 100%; min-width: 900px; border-collapse: collapse; color: var(--deep-navy); } body[data-page="organization"] .organization-glance-table th, body[data-page="organization"] .organization-glance-table td {padding: 20px 24px; border-bottom: 1px solid rgba(220, 225, 233, 0.82); text-align: left; vertical-align: top; } body[data-page="organization"] .organization-glance-table tr:last-child th, body[data-page="organization"] .organization-glance-table tr:last-child td {border-bottom: 0; } body[data-page="organization"] .organization-glance-table th {width: 17%; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.05rem, 1.45vw, 1.35rem); font-weight: 700; line-height: 1.2; background: transparent; } body[data-page="organization"] .organization-glance-table td {width: 33%; color: var(--text-charcoal); font-size: 0.98rem; font-weight: 500; line-height: 1.55; } body[data-page="organization"] .organization-glance-table tr:hover th, body[data-page="organization"] .organization-glance-table tr:hover td {background: transparent; } @media (max-width: 900px) {body[data-page="organization"] .organization-glance-table {min-width: 0; } body[data-page="organization"] .organization-glance-table tr {display: grid; grid-template-columns: minmax(120px, 0.45fr) minmax(0, 1fr); padding: 14px 0; border-bottom: 1px solid rgba(220, 225, 233, 0.82); } body[data-page="organization"] .organization-glance-table th, body[data-page="organization"] .organization-glance-table td {width: 100%; padding: 6px 0; border-bottom: 0; } body[data-page="organization"] .organization-glance-table th {font-size: 1.08rem; } body[data-page="organization"] .organization-glance-table td {font-size: 0.95rem; } } /* Faculty page compact cards and blue-only group palette */ body[data-page="faculty"] .faculty-grid {grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 22px; } body[data-page="faculty"] .faculty-card {min-height: 280px; } body[data-page="faculty"] .faculty-card-main {min-height: 280px; padding: 28px 24px; } body[data-page="faculty"] .faculty-card-main h3 {font-size: 1.45rem; } body[data-page="faculty"] .faculty-card-main .role {font-size: 0.72rem; } body[data-page="faculty"] .faculty-card-main .job {max-width: 200px; margin: 14px auto 22px; font-size: 0.9rem; } body[data-page="faculty"] .faculty-card-overlay {padding: 30px 26px; } body[data-page="faculty"] .faculty-card-btn {border-bottom-color: var(--primary-blue) !important; } body[data-page="faculty"] .faculty-card-organizers {--faculty-card-bg: #eef7ff; --faculty-card-border: #9dc9e8; --faculty-card-text: #0b3f68; --faculty-overlay-bg: #0b3f68; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card-teachers {--faculty-card-bg: #e8f2fb; --faculty-card-border: #7fb4dc; --faculty-card-text: #0d4f86; --faculty-overlay-bg: #0d4f86; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card-testimonials {--faculty-card-bg: #f3f8fd; --faculty-card-border: #b8d7ee; --faculty-card-text: #174261; --faculty-overlay-bg: #174261; --faculty-overlay-text: #fbfcfc; } /* Content page program modules: same directory object as testimonials */ body[data-page="content"] .program-affiliation-section {padding: clamp(92px, 10vw, 150px) 0 !important; } body[data-page="content"] .program-affiliation-section .testimonial-affiliation-header {display: block; max-width: none; width: 100%; } body[data-page="content"] .program-affiliation-section .section-title {width: 100%; max-width: none; margin-bottom: 22px !important; } body[data-page="content"] .program-affiliation-section .section-intro-copy {max-width: 880px; margin: 0 0 clamp(28px, 3.5vw, 44px); padding-left: 0; border-left: 0; color: #253348; font-size: clamp(1.05rem, 1.25vw, 1.24rem); line-height: 1.7; font-weight: 400; } body[data-page="content"] .program-directory {padding: 0; border: 0; border-left: 0; background: transparent; } body[data-page="content"] .program-directory-grid {grid-template-columns: repeat(4, minmax(0, 1fr)); } body[data-page="content"] .program-directory-grid .company-token {min-height: 118px; } body[data-page="content"] .program-detail-panel {display: block; text-align: left; overflow: visible; } body[data-page="content"] .program-detail-panel[hidden] {display: none !important; } body[data-page="content"] .program-detail-panel h3 {width: 100%; margin: 0 0 12px; font-family: var(--font-heading); font-size: clamp(2rem, 3vw, 3.2rem); line-height: 1.05; text-align: left; } body[data-page="content"] .program-detail-panel > p {width: 100%; max-width: 880px; margin: 0 0 34px; color: var(--deep-navy); font-size: 1rem; text-align: left; } body[data-page="content"] .program-click-hint {color: var(--muted-text); font-weight: 400; max-width: 720px; } body[data-page="content"] .program-interaction-legend {display: block; flex-wrap: wrap; gap: 14px; align-items: center; margin-top: 0; color: var(--muted-text); font-size: 0.92rem; width: 100%; } body[data-page="alumni"] .program-interaction-legend {display: block; margin-top: 0; color: var(--muted-text); font-size: 0.92rem; width: 100%; } body[data-page="alumni"] .reference-section-header > .alumni-interaction-legend {grid-column: 1; align-self: start; } body[data-page="alumni"] .reference-section-header > .alumni-interaction-legend + p {grid-column: 2; grid-row: 1 / span 2; } body[data-page="content"] .program-interaction-legend span, body[data-page="alumni"] .program-interaction-legend span {display: inline-flex; align-items: center; gap: 9px; line-height: 1.2; } body[data-page="content"] .program-action-cue, body[data-page="alumni"] .program-action-cue {color: var(--deep-navy); font-weight: 700; } body[data-page="content"] .program-action-cue i, body[data-page="alumni"] .program-action-cue i {width: 26px; height: 18px; display: inline-block; border: 1px solid var(--primary-blue); border-top: 4px solid var(--primary-blue); border-radius: 3px; background: rgba(251, 253, 255, 0.72); } body[data-page="content"] .legend-line {width: 28px; height: 3px; display: inline-block; border-radius: 999px; } body[data-page="content"] .legend-line-strategy {background: var(--deep-navy); } body[data-page="content"] .legend-line-execution {background: #1e70a1; } body[data-page="content"] .legend-line-human {background: var(--accent-yellow); } body[data-page="content"] .program-module-table-wrap {width: 100%; overflow: visible; } body[data-page="content"] .program-module-table {width: 100%; min-width: 0; border-collapse: separate; border-spacing: 0; table-layout: fixed; background: transparent; color: var(--deep-navy); } body[data-page="content"] .program-module-table th, body[data-page="content"] .program-module-table td {padding: 0 34px; border-bottom: 0; border-left: 1px solid rgba(13, 79, 134, 0.16); text-align: left; vertical-align: top; } body[data-page="content"] .program-module-table th:first-child, body[data-page="content"] .program-module-table td:first-child {border-left: 0; padding-left: 0; } body[data-page="content"] .program-module-table th:last-child, body[data-page="content"] .program-module-table td:last-child {padding-right: 0; } body[data-page="content"] .program-module-table th {position: relative; padding-bottom: 34px; color: var(--deep-navy); font-family: var(--font-main); font-size: 0.96rem; font-weight: 800; line-height: 1.25; } body[data-page="content"] .program-module-table th::after {content: ''; position: absolute; left: 34px; bottom: 16px; width: 34px; height: 2px; background: var(--accent-yellow); } body[data-page="content"] .program-module-table th:first-child::after {left: 0; } body[data-page="content"] .program-module-table td {padding-bottom: 16px; color: var(--muted-text); font-size: 0.98rem; font-style: italic; font-weight: 400; line-height: 1.55; } body[data-page="content"] .program-module-table td span {display: block; max-width: 260px; } body[data-page="content"] .program-module-table tbody tr + tr td {padding-top: 4px; } @media (max-width: 1024px) {body[data-page="content"] .program-directory-grid {grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 760px) {body[data-page="content"] .program-directory-grid {grid-template-columns: 1fr; } body[data-page="content"] .program-detail-panel {padding: 28px 22px; } } /* Faculty group legend and final card palette */ body[data-page="faculty"] .faculty-group-legend {display: flex; flex-wrap: wrap; gap: 18px 28px; align-items: center; margin: 0 0 46px; color: var(--muted-text); font-size: 0.94rem; } body[data-page="faculty"] .faculty-group-legend span {display: inline-flex; align-items: center; gap: 9px; line-height: 1.2; } body[data-page="faculty"] .legend-dot {width: 11px; height: 11px; border-radius: 50%; display: inline-block; box-shadow: 0 0 0 5px var(--legend-dot-halo); } body[data-page="faculty"] .legend-dot-organizers {--legend-dot-halo: rgba(6, 41, 77, 0.1); background: #06294d; } body[data-page="faculty"] .legend-dot-teachers {--legend-dot-halo: rgba(30, 112, 161, 0.13); background: #1e70a1; } body[data-page="faculty"] .legend-dot-testimonials {--legend-dot-halo: rgba(244, 211, 94, 0.22); background: #f4d35e; } body[data-page="faculty"] .faculty-card-organizers {--faculty-card-bg: #fbfdff; --faculty-card-border: #06294d; --faculty-card-text: #06294d; --faculty-overlay-bg: #06294d; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card-teachers {--faculty-card-bg: #fbfdff; --faculty-card-border: #1e70a1; --faculty-card-text: #06294d; --faculty-overlay-bg: #06294d; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card-testimonials {--faculty-card-bg: #fbfdff; --faculty-card-border: #f4d35e; --faculty-card-text: #06294d; --faculty-overlay-bg: #06294d; --faculty-overlay-text: #fbfcfc; } body[data-page="faculty"] .faculty-card {border-color: var(--border-grey) !important; border-top: 4px solid var(--faculty-card-border) !important; } /* Content page project-work learning table */ body[data-page="content"] .project-output-showcase {min-height: 560px; position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(24px, 4vw, 48px); border-left: 1px solid var(--border-grey); } body[data-page="content"] .project-learning-table {position: relative; width: min(690px, 100%); margin: 0 auto; background: rgba(251, 253, 255, 0.9); overflow: hidden; } body[data-page="content"] .project-learning-row {position: relative; z-index: 1; display: grid; grid-template-columns: 48px minmax(170px, 0.9fr) minmax(230px, 1.25fr); align-items: center; } body[data-page="content"] .project-learning-row {min-height: 72px; background: transparent; border-bottom: 1px solid rgba(220, 225, 233, 0.82); transition: background-color 0.35s ease; } body[data-page="content"] .project-learning-row::before {content: ''; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--primary-blue); opacity: 0; transform: scaleY(0.35); transform-origin: center; transition: opacity 0.35s ease, transform 0.35s ease; } body[data-page="content"] .project-learning-row span, body[data-page="content"] .project-learning-row strong {padding: 16px 20px; } body[data-page="content"] .project-learning-row strong {color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1rem, 1.35vw, 1.22rem); line-height: 1.25; } body[data-page="content"] .project-learning-row span:not(.learning-index) {color: var(--muted-text); font-size: 0.94rem; line-height: 1.5; } body[data-page="content"] .learning-index {display: flex; align-items: center; justify-content: center; } body[data-page="content"] .learning-index::before {content: ''; width: 6px; height: 6px; border-radius: 50%; background: rgba(23, 66, 97, 0.48); transition: background-color 0.35s ease, transform 0.35s ease; } body[data-page="content"] .project-output-caption {width: min(690px, 100%); margin: 0 auto 24px; } body[data-page="content"] .project-output-caption strong, body[data-page="content"] .project-output-caption span {display: block; } body[data-page="content"] .project-output-caption strong {color: var(--deep-navy); font-family: var(--font-heading); font-size: 1.45rem; } body[data-page="content"] .project-output-caption span {max-width: 420px; margin-top: 6px; color: var(--muted-text); font-size: 0.95rem; } body[data-page="content"] .project-learning-row.is-active {background: rgba(240, 244, 248, 0.92); } body[data-page="content"] .project-learning-row.is-active::before {opacity: 1; transform: scaleY(1); } body[data-page="content"] .project-learning-row.is-active .learning-index::before {background: var(--primary-blue); transform: scale(1.25); } @media (max-width: 1024px) {body[data-page="content"] .project-output-showcase {grid-column: 1 / -1; border-left: 0; padding-inline: 0; } } @media (max-width: 640px) {body[data-page="content"] .project-output-showcase {min-height: 0; } body[data-page="content"] .project-learning-row {grid-template-columns: 52px 1fr; align-items: start; min-height: 0; padding: 14px 0; } body[data-page="content"] .project-learning-row span:not(.learning-index) {grid-column: 2; padding-top: 4px; } body[data-page="content"] .project-learning-row strong {padding-bottom: 0; } body[data-page="content"] .project-learning-row span, body[data-page="content"] .project-learning-row strong {padding-inline: 14px; } body[data-page="content"] .learning-index {width: 100%; text-align: center; } } /* Italian site updates */ body[data-page="content"] .program-directory-grid {grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } .marquee-card {text-align: left; cursor: pointer; } button.marquee-card {border: 1px solid var(--border-grey); font: inherit; color: inherit; } body[data-page="faculty"] .faculty-group-break {grid-column: 1 / -1; margin: 18px 0 2px; padding-top: 14px; border-top: 1px solid rgba(23, 66, 97, 0.16); color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.25rem, 2vw, 1.8rem); font-weight: 700; } body[data-page="faculty"] .faculty-group-break:first-child {margin-top: 0; border-top: 0; } @media (max-width: 760px) {body[data-page="content"] .program-directory-grid {grid-template-columns: 1fr !important; } } /* Refinements requested after Italian localization */ body[data-page="home"] .home-impact-card {background: radial-gradient(circle at 100% 0%, rgba(251, 204, 9, 0.16), transparent 32%), var(--deep-navy) !important; border: 1px solid var(--deep-navy) !important; border-left: 8px solid var(--accent-yellow) !important; box-shadow: 0 18px 48px rgba(6, 41, 77, 0.16) !important; } body[data-page="home"] .home-impact-card h3, body[data-page="home"] .home-impact-card p {color: #fbfcfc !important; } body[data-page="home"] .home-impact-card .btn {background: #fbfcfc; color: var(--deep-navy); } body[data-page="organization"] .schedule-day-friday, body[data-page="organization"] .schedule-day-saturday {background: var(--primary-blue) !important; border-color: var(--primary-blue) !important; box-shadow: none !important; } body[data-page="organization"] .schedule-day-friday .schedule-day-name, body[data-page="organization"] .schedule-day-friday .schedule-day-label, body[data-page="organization"] .schedule-day-saturday .schedule-day-name, body[data-page="organization"] .schedule-day-saturday .schedule-day-label {color: #fbfcfc !important; } body[data-page="organization"] .schedule-day-friday .schedule-day-name, body[data-page="organization"] .schedule-day-saturday .schedule-day-name {color: var(--accent-yellow) !important; } body[data-page="organization"] .schedule-day-friday .schedule-day-label, body[data-page="organization"] .schedule-day-saturday .schedule-day-label {margin-top: 22px; line-height: 1.55; } body[data-page="organization"] .master-calendar-timeline .calendar-months {grid-template-columns: repeat(12, minmax(0, 1fr)); } body[data-page="organization"] .calendar-track {align-items: center; gap: 0; } body[data-page="organization"] .calendar-segment {flex: 0 0 var(--segment); } body[data-page="organization"] .break-segment {height: 2px !important; min-height: 2px !important; align-self: center; background: repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.48) 0 5px, transparent 5px 11px) !important; border: 0 !important; box-shadow: none !important; } body[data-page="organization"] .break-segment::before, body[data-page="organization"] .break-segment::after {display: none !important; } body[data-page="organization"] .break-segment span {display: none !important; } body[data-page="alumni"] .alumni-cluster-explorer {display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr); gap: clamp(20px, 4vw, 56px); align-items: stretch; margin-top: 28px; } body[data-page="alumni"] .alumni-sector-ring {min-height: 520px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: clamp(18px, 3vw, 30px); border: 1px solid var(--border-grey); background: radial-gradient(circle at 50% 50%, rgba(23, 66, 97, 0.08), transparent 34%), linear-gradient(180deg, rgba(240, 244, 248, 0.9), rgba(251, 253, 255, 0.96)); } body[data-page="alumni"] .sector-node {min-height: 82px; border: 1px solid rgba(23, 66, 97, 0.16); border-top: 4px solid rgba(23, 66, 97, 0.38); background: rgba(255, 255, 255, 0.84); color: var(--deep-navy); cursor: pointer; font: inherit; font-weight: 800; text-align: left; padding: 18px; transition: transform 0.25s ease, background-color 0.25s ease, border-color 0.25s ease; } body[data-page="alumni"] .sector-node:hover, body[data-page="alumni"] .sector-node.active {transform: translateY(-3px); background: var(--deep-navy); border-color: var(--deep-navy); color: #fbfcfc; } body[data-page="alumni"] .alumni-company-cloud {min-height: 520px; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(26px, 4vw, 48px); background: var(--deep-navy); color: #fbfcfc; } body[data-page="alumni"] .company-cloud-kicker {color: rgba(251, 252, 252, 0.66); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } body[data-page="alumni"] #company-cloud-title {margin-top: 10px; color: #fbfcfc; font-size: clamp(2.1rem, 4vw, 4rem); } body[data-page="alumni"] .company-chip-field {display: flex; flex-wrap: wrap; gap: 14px; align-items: flex-end; } body[data-page="alumni"] .company-chip {display: inline-flex; align-items: center; min-height: 54px; padding: 14px 18px; border: 1px solid rgba(251, 252, 252, 0.2); background: rgba(251, 252, 252, 0.08); color: #fbfcfc; font-weight: 800; } body[data-page="alumni"] .alumni-story-shell {overflow: hidden; } body[data-page="alumni"] .alumni-story-list {display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 360px); gap: 18px; overflow-x: auto; padding: 8px 0 18px; scroll-snap-type: x mandatory; } body[data-page="alumni"] .alumni-story-list .marquee-card {width: auto; min-height: 230px; scroll-snap-align: start; border-top: 4px solid transparent; } body[data-page="alumni"] .alumni-story-list .marquee-card.active {border-color: var(--primary-blue); background: var(--soft-blue); } body[data-page="alumni"] .alumni-story-reader {display: grid; grid-template-columns: minmax(220px, 0.36fr) minmax(0, 1fr); gap: clamp(20px, 4vw, 54px); margin-top: 28px; padding: clamp(28px, 5vw, 54px); border-left: 8px solid var(--accent-yellow); background: var(--deep-navy); color: #fbfcfc; } body[data-page="alumni"] .story-reader-meta span {display: block; margin-bottom: 12px; color: rgba(251, 252, 252, 0.66); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } body[data-page="alumni"] #story-reader-author {color: #fbfcfc; font-size: clamp(1.8rem, 3vw, 3.2rem); } body[data-page="alumni"] #story-reader-role {color: rgba(251, 252, 252, 0.72); } body[data-page="alumni"] #story-reader-text {color: #fbfcfc; font-size: clamp(1rem, 1.45vw, 1.18rem); line-height: 1.85; } @media (max-width: 860px) {body[data-page="alumni"] .alumni-cluster-explorer, body[data-page="alumni"] .alumni-story-reader {grid-template-columns: 1fr; } body[data-page="alumni"] .alumni-sector-ring, body[data-page="alumni"] .alumni-company-cloud {min-height: auto; } body[data-page="alumni"] .alumni-sector-ring {grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 560px) {body[data-page="alumni"] .alumni-sector-ring {grid-template-columns: 1fr; } body[data-page="alumni"] .alumni-story-list {grid-auto-columns: minmax(82vw, 1fr); } } /* Final UX refinements */ body[data-page="organization"] .schedule-day-friday .schedule-day-label, body[data-page="organization"] .schedule-day-saturday .schedule-day-label {display: grid !important; gap: 8px; } body[data-page="organization"] .schedule-day-friday .schedule-day-label span, body[data-page="organization"] .schedule-day-saturday .schedule-day-label span {display: block; color: rgba(251, 252, 252, 0.82); font-size: 0.84rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; } body[data-page="organization"] .schedule-day-friday .schedule-day-label strong, body[data-page="organization"] .schedule-day-saturday .schedule-day-label strong {display: block; color: #fbfcfc; font-size: clamp(1.05rem, 1.6vw, 1.35rem); line-height: 1.25; } body[data-page="organization"] .master-calendar-timeline {overflow: visible !important; } body[data-page="organization"] .calendar-months {display: grid !important; grid-template-columns: repeat(12, minmax(0, 1fr)) !important; gap: 0 !important; margin-bottom: 14px !important; } body[data-page="organization"] .calendar-months span {position: relative; text-align: left; padding-left: 4px; } body[data-page="organization"] .calendar-months span::before {content: ''; position: absolute; left: 0; bottom: -30px; width: 1px; height: 22px; background: rgba(23, 66, 97, 0.16); } body[data-page="organization"] .calendar-track {position: relative; display: grid !important; grid-template-columns: repeat(24, minmax(0, 1fr)) !important; align-items: center !important; gap: 0 !important; min-height: 52px; padding: 18px 0; background: repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.08) 0 1px, transparent 1px calc(100% / 12)), transparent !important; } body[data-page="organization"] .calendar-track::before {content: ''; position: absolute; left: 0; right: 0; top: 50%; height: 2px; transform: translateY(-50%); background: rgba(23, 66, 97, 0.12); } body[data-page="organization"] .calendar-segment {grid-column: var(--start) / var(--end) !important; grid-row: 1; position: relative; z-index: 1; width: auto !important; min-width: 0 !important; margin: 0 !important; } body[data-page="organization"] .calendar-segment::before, body[data-page="organization"] .calendar-segment::after {display: none !important; } body[data-page="organization"] .class-segment {height: 18px !important; align-self: center; border-radius: 999px; background: var(--primary-blue) !important; box-shadow: none !important; } body[data-page="organization"] .break-segment {height: 2px !important; min-height: 2px !important; align-self: center !important; border-radius: 0 !important; background: repeating-linear-gradient(90deg, rgba(23, 66, 97, 0.58) 0 5px, transparent 5px 11px) !important; } body[data-page="organization"] .class-segment span {position: absolute; left: 12px; top: -30px; white-space: nowrap; background: transparent !important; color: var(--deep-navy); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; } body[data-page="organization"] .break-segment span, body[data-page="organization"] .break-segment::before, body[data-page="organization"] .break-segment::after {display: none !important; } /* Requested refinements: homepage story, responsive organization, FAQ alignment */ body[data-page="home"] .master-story-section {padding: clamp(88px, 10vw, 140px) 0; background: linear-gradient(180deg, rgba(251, 252, 252, 0.98), rgba(240, 244, 248, 0.62)), var(--white); } body[data-page="home"] .story-layout {grid-template-columns: 1fr; align-items: start; gap: clamp(42px, 5vw, 72px); } body[data-page="home"] .story-copy {max-width: none; } body[data-page="home"] .story-lead {max-width: none; } body[data-page="home"] .story-original-copy, body[data-page="home"] .story-card-flow-legacy {display: none !important; } body[data-page="home"] .story-evidence-panel {display: grid; grid-template-columns: repeat(4, minmax(240px, 1fr)); gap: 0; position: relative; align-items: stretch; padding-top: 38px; } body[data-page="home"] .story-evidence-panel::before {content: ""; position: absolute; left: 0; right: 0; top: 10px; height: 2px; width: auto; background: var(--primary-blue); } body[data-page="home"] .story-evidence-panel::after {content: ""; position: absolute; top: -1px; left: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--accent-yellow); border: 4px solid #fbfcfc; box-shadow: 0 0 0 8px rgba(251, 204, 9, 0.18); animation: storyTimelinePulse 6.5s ease-in-out 0.35s both; } @keyframes storyTimelinePulse {0%, 8% {left: 0; } 28%, 36% {left: calc(33.333% - 10px); } 56%, 64% {left: calc(66.666% - 10px); } 84%, 92% {left: calc(100% - 20px); } 100% {left: calc(100% - 20px); } } body[data-page="home"] .story-evidence-card {position: relative; min-height: 360px; padding: clamp(22px, 2vw, 30px); border: 1px solid rgba(23, 66, 97, 0.14); border-left: 0; border-top: 6px solid var(--primary-blue); background: rgba(251, 253, 255, 0.72); display: flex; flex-direction: column; justify-content: flex-start; } body[data-page="home"] .story-evidence-card::after {content: none; position: absolute; top: -35px; left: 28px; width: 16px; height: 16px; border-radius: 50%; background: var(--white); border: 4px solid var(--primary-blue); box-shadow: 0 0 0 7px rgba(13, 79, 134, 0.08); } body[data-page="home"] .story-evidence-origin, body[data-page="home"] .story-evidence-now {background: rgba(251, 253, 255, 0.72); color: var(--deep-navy); border-color: rgba(23, 66, 97, 0.14); border-top-color: var(--primary-blue); } body[data-page="home"] .story-evidence-year {display: inline-flex; width: fit-content; margin-bottom: 18px; color: var(--primary-blue); font-family: var(--font-main); font-size: clamp(0.78rem, 1vw, 0.92rem); font-weight: 800; line-height: 1.25; letter-spacing: 0.08em; text-transform: uppercase; } body[data-page="home"] .story-evidence-origin .story-evidence-year, body[data-page="home"] .story-evidence-now .story-evidence-year, body[data-page="home"] .story-evidence-origin h3, body[data-page="home"] .story-evidence-now h3 {color: var(--primary-blue); } body[data-page="home"] .story-evidence-card h3 {margin-bottom: 12px; color: var(--primary-blue); font-size: clamp(1.45rem, 2vw, 2.15rem); line-height: 1.05; font-weight: 500; letter-spacing: 0; } body[data-page="home"] .story-evidence-card p {margin: 0; color: #253348; font-size: 0.98rem; line-height: 1.65; } body[data-page="home"] .story-evidence-origin p, body[data-page="home"] .story-evidence-now p {color: #253348; } .faq-item.active .faq-question {color: var(--deep-navy) !important; } .faq-answer {padding-left: 32px; padding-right: 28px; } .faq-answer p {margin: 0; text-align: left; } .faq-item.active .faq-answer {padding: 0 28px 24px 32px; } @media (max-width: 900px) {body[data-page="home"] .story-evidence-panel {grid-template-columns: repeat(2, minmax(0, 1fr)); } body[data-page="home"] .story-evidence-panel::before {display: none; } body[data-page="home"] .story-evidence-panel::after {display: none; } body[data-page="home"] .story-evidence-card {min-height: 0; } } @media (max-width: 700px) {body[data-page="home"] .story-evidence-panel {grid-template-columns: 1fr; gap: 14px; padding-top: 0; } body[data-page="home"] .story-evidence-card {border-top: 1px solid rgba(23, 66, 97, 0.14); border-left: 6px solid var(--primary-blue); } body[data-page="home"] .story-evidence-origin, body[data-page="home"] .story-evidence-now {border-left-color: var(--primary-blue); } body[data-page="home"] .story-evidence-card::after {content: none; } body[data-page="organization"] .schedule-visual {grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } body[data-page="organization"] .schedule-day-off {display: none !important; } body[data-page="organization"] .schedule-day {min-height: 170px; padding: 28px 18px; } body[data-page="organization"] .master-calendar-timeline {margin-top: 42px; padding: 24px 18px !important; overflow: hidden !important; } body[data-page="organization"] .calendar-months {display: none !important; } body[data-page="organization"] .calendar-track {display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 14px !important; min-height: 0 !important; padding: 0 0 0 22px !important; background: transparent !important; border: 0 !important; transform: none !important; } body[data-page="organization"] .calendar-track::before {left: 5px !important; right: auto !important; top: 8px !important; bottom: 8px !important; width: 2px !important; height: auto !important; transform: none !important; background: rgba(23, 66, 97, 0.18) !important; } body[data-page="organization"] .calendar-segment {grid-column: auto !important; width: 100% !important; min-height: 78px !important; padding: 16px 18px !important; border-radius: 8px !important; display: grid !important; align-content: center !important; justify-items: start !important; margin: 0 !important; } body[data-page="organization"] .calendar-segment::before {content: "" !important; display: block !important; position: absolute; left: -22px; top: 28px; width: 12px; height: 12px; border-radius: 50%; background: var(--accent-yellow) !important; box-shadow: 0 0 0 6px rgba(251, 204, 9, 0.16) !important; } body[data-page="organization"] .class-segment {height: auto !important; background: var(--primary-blue) !important; } body[data-page="organization"] .break-segment, body[data-page="organization"] .summer-break {height: auto !important; min-height: 58px !important; background: rgba(240, 244, 248, 0.92) !important; border: 1px dashed rgba(23, 66, 97, 0.24) !important; } body[data-page="organization"] .break-segment::before, body[data-page="organization"] .summer-break::before {top: 50% !important; transform: translateY(-50%) !important; } body[data-page="organization"] .calendar-segment span {position: static !important; display: block !important; color: #fbfcfc !important; font-size: 0.84rem !important; white-space: normal !important; } body[data-page="organization"] .break-segment::after, body[data-page="organization"] .summer-break::after {content: "Pausa"; display: block !important; color: var(--deep-navy); font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.8rem; } body[data-page="organization"] .calendar-segment[data-period]::marker {content: ""; } body[data-page="organization"] .calendar-segment[data-period] {position: relative; } body[data-page="organization"] .calendar-segment[data-period] > span::after, body[data-page="organization"] .break-segment[data-period]::before {content: ""; } body[data-page="organization"] .calendar-segment[data-period]::after {content: attr(data-period); display: block !important; margin-top: 8px; color: rgba(251, 252, 252, 0.72); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } body[data-page="organization"] .break-segment[data-period]::after, body[data-page="organization"] .summer-break[data-period]::after {content: "Pausa  " attr(data-period); color: var(--deep-navy); } } body[data-page="alumni"] .alumni-ecosystem {display: grid; grid-template-columns: minmax(260px, 0.48fr) minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); margin-top: 30px; } body[data-page="alumni"] .ecosystem-sector-list {display: grid; gap: 8px; align-content: start; padding: 10px; border: 1px solid var(--border-grey); background: rgba(240, 244, 248, 0.66); } body[data-page="alumni"] .ecosystem-sector {display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 58px; padding: 13px 14px; border: 1px solid transparent; background: transparent; color: var(--deep-navy); text-align: left; cursor: pointer; font: inherit; transition: background-color 0.24s ease, border-color 0.24s ease, transform 0.24s ease; } body[data-page="alumni"] .ecosystem-sector strong {font-size: 0.94rem; line-height: 1.25; } body[data-page="alumni"] .ecosystem-sector span {color: var(--muted-text); font-size: 0.76rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; } body[data-page="alumni"] .ecosystem-sector:hover, body[data-page="alumni"] .ecosystem-sector.active {transform: translateX(4px); border-color: rgba(23, 66, 97, 0.18); background: #fbfdff; } body[data-page="alumni"] .ecosystem-sector.active {border-left: 5px solid var(--primary-blue); } body[data-page="alumni"] .ecosystem-stage {min-height: 560px; position: relative; overflow: hidden; padding: clamp(26px, 4vw, 52px); background: radial-gradient(circle at 52% 46%, rgba(251, 204, 9, 0.16), transparent 20%), radial-gradient(circle at 50% 50%, rgba(251, 252, 252, 0.08), transparent 42%), var(--deep-navy); color: #fbfcfc; } body[data-page="alumni"] .ecosystem-stage::before {content: ''; position: absolute; inset: 56px; border: 1px dashed rgba(251, 252, 252, 0.16); border-radius: 50%; } body[data-page="alumni"] .ecosystem-stage-header {position: relative; z-index: 2; max-width: 500px; } body[data-page="alumni"] .ecosystem-stage-header span {color: rgba(251, 252, 252, 0.64); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } body[data-page="alumni"] #ecosystem-title {margin-top: 10px; color: #fbfcfc; font-size: clamp(2.2rem, 5vw, 4.8rem); line-height: 0.98; } body[data-page="alumni"] .ecosystem-company-field {position: absolute; inset: 0; z-index: 1; } body[data-page="alumni"] .ecosystem-company-node {position: absolute; display: inline-flex; align-items: center; justify-content: center; min-width: 132px; min-height: 60px; padding: 14px 18px; border: 1px solid rgba(251, 252, 252, 0.2); background: rgba(251, 252, 252, 0.1); color: #fbfcfc; font-weight: 800; text-align: center; box-shadow: 0 18px 44px rgba(0, 0, 0, 0.12); } body[data-page="alumni"] .ecosystem-node-1 { left: 16%; top: 52%; } body[data-page="alumni"] .ecosystem-node-2 { right: 12%; top: 38%; } body[data-page="alumni"] .ecosystem-node-3 { left: 38%; bottom: 13%; } body[data-page="alumni"] .ecosystem-node-4 { right: 18%; bottom: 22%; } body[data-page="alumni"] .alumni-story-browser {display: grid; grid-template-columns: minmax(260px, 0.42fr) minmax(0, 1fr); gap: clamp(22px, 4vw, 52px); align-items: start; margin-top: 30px; } body[data-page="alumni"] .story-index {display: grid; gap: 8px; max-height: 620px; overflow: auto; padding-right: 6px; } body[data-page="alumni"] .story-tab {display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 4px 12px; align-items: center; padding: 16px; border: 1px solid var(--border-grey); background: #fbfdff; text-align: left; cursor: pointer; font: inherit; transition: background-color 0.24s ease, border-color 0.24s ease, transform 0.24s ease; } body[data-page="alumni"] .story-tab:hover, body[data-page="alumni"] .story-tab.active {transform: translateX(4px); border-color: rgba(23, 66, 97, 0.3); background: var(--soft-blue); } body[data-page="alumni"] .story-tab span {grid-row: span 2; color: var(--primary-blue); font-weight: 900; } body[data-page="alumni"] .story-tab strong {color: var(--deep-navy); font-family: var(--font-heading); font-size: 1.16rem; line-height: 1.15; } body[data-page="alumni"] .story-tab em {color: var(--muted-text); font-size: 0.86rem; font-style: normal; } body[data-page="alumni"] .story-reading-panel {position: sticky; top: 110px; min-height: 520px; display: grid; grid-template-rows: auto minmax(0, 1fr); border-left: 8px solid var(--accent-yellow); background: var(--deep-navy); color: #fbfcfc; } body[data-page="alumni"] .story-panel-top {padding: clamp(28px, 4vw, 48px) clamp(28px, 5vw, 58px) 18px; border-bottom: 1px solid rgba(251, 252, 252, 0.12); } body[data-page="alumni"] .story-panel-top span {display: block; margin-bottom: 12px; color: rgba(251, 252, 252, 0.64); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; } body[data-page="alumni"] #story-reader-author {color: #fbfcfc; font-size: clamp(2rem, 4vw, 4rem); } body[data-page="alumni"] #story-reader-role {color: rgba(251, 252, 252, 0.72); } body[data-page="alumni"] .story-panel-scroll {max-height: 420px; overflow: auto; padding: 26px clamp(28px, 5vw, 58px) clamp(30px, 5vw, 58px); } body[data-page="alumni"] #story-reader-text {max-width: 820px; color: #fbfcfc; font-size: clamp(1rem, 1.45vw, 1.18rem); line-height: 1.9; } @media (max-width: 940px) {body[data-page="alumni"] .alumni-ecosystem, body[data-page="alumni"] .alumni-story-browser {grid-template-columns: 1fr; } body[data-page="alumni"] .ecosystem-sector-list {grid-template-columns: repeat(2, minmax(0, 1fr)); } body[data-page="alumni"] .ecosystem-stage {min-height: 440px; } body[data-page="alumni"] .story-reading-panel {position: relative; top: auto; min-height: 0; } } @media (max-width: 620px) {body[data-page="organization"] .class-segment span {display: none; } body[data-page="alumni"] .ecosystem-sector-list {display: flex; overflow-x: auto; scroll-snap-type: x mandatory; } body[data-page="alumni"] .ecosystem-sector {min-width: 220px; scroll-snap-align: start; } body[data-page="alumni"] .ecosystem-stage {min-height: 430px; padding: 26px; } body[data-page="alumni"] .ecosystem-stage::before {inset: 82px 30px 36px; } body[data-page="alumni"] .ecosystem-company-node {min-width: 118px; min-height: 52px; font-size: 0.9rem; } body[data-page="alumni"] .ecosystem-node-1 { left: 7%; top: 48%; } body[data-page="alumni"] .ecosystem-node-2 { right: 6%; top: 43%; } body[data-page="alumni"] .ecosystem-node-3 { left: 12%; bottom: 12%; } body[data-page="alumni"] .ecosystem-node-4 { right: 8%; bottom: 20%; } body[data-page="alumni"] .story-index {max-height: none; } body[data-page="alumni"] .story-panel-scroll {max-height: 58vh; } } /* Alumni sector tabs and quote carousel */ body[data-page="alumni"] .alumni-sector-tabs {margin-top: 30px; } body[data-page="alumni"] .sector-tab-row {display: flex; flex-wrap: wrap; gap: 10px; overflow: visible; padding: 2px 0 12px; } body[data-page="alumni"] .sector-tab {display: inline-flex; align-items: center; min-height: 48px; padding: 12px 16px; border: 1px solid rgba(23, 66, 97, 0.14); border-radius: 8px; background: #fbfdff; color: var(--primary-blue); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 850; line-height: 1.15; transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease; white-space: nowrap; } body[data-page="alumni"] .sector-tab:hover, body[data-page="alumni"] .sector-tab:focus-visible {border-color: rgba(23, 66, 97, 0.3); transform: translateY(-2px); } body[data-page="alumni"] .sector-tab.active, body[data-page="alumni"] .sector-tab.active:hover, body[data-page="alumni"] .sector-tab.active:focus, body[data-page="alumni"] .sector-tab.active:focus-visible {border-color: var(--deep-navy); background: var(--deep-navy); color: #fff; } body[data-page="alumni"] .sector-tab-panels {margin-top: 18px; border: 1px solid rgba(23, 66, 97, 0.12); border-radius: 8px; background: #fbfdff; box-shadow: 0 18px 48px rgba(23, 66, 97, 0.06); } body[data-page="alumni"] .sector-company-panel {padding: clamp(22px, 3vw, 36px); } body[data-page="alumni"] .sector-company-panel h3 {margin: 0 0 18px; color: var(--deep-navy); font-size: clamp(1.35rem, 2.2vw, 2.2rem); } body[data-page="alumni"] .sector-company-grid {display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; } body[data-page="alumni"] .sector-company-grid span {min-width: 0; min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 12px; border: 1px solid rgba(23, 66, 97, 0.12); border-radius: 8px; background: rgba(255, 255, 255, 0.9); color: var(--deep-navy); font-size: 0.82rem; font-weight: 750; line-height: 1.22; text-align: center; overflow-wrap: anywhere; } body[data-page="alumni"] .alumni-testimonial-carousel {display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; margin-top: 30px; } body[data-page="alumni"] .alumni-testimonial-track {display: grid; grid-auto-flow: column; grid-auto-columns: minmax(310px, 390px); gap: 20px; overflow-x: auto; padding: 8px 4px 22px; scrollbar-width: thin; } body[data-page="alumni"] .alumni-quote-card {min-height: 260px; display: flex; flex-direction: column; justify-content: space-between; padding: 30px; border: 1px solid var(--border-grey); border-top: 4px solid var(--primary-blue); background: #fbfdff; color: var(--deep-navy); text-align: left; cursor: pointer; font: inherit; transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease; } body[data-page="alumni"] .alumni-quote-card:hover {transform: translateY(-4px); border-color: rgba(23, 66, 97, 0.34); border-top-color: var(--accent-yellow); box-shadow: 0 18px 40px rgba(23, 66, 97, 0.08); } body[data-page="alumni"] .alumni-quote-card p {margin: 0; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(1.28rem, 2vw, 1.72rem); font-style: italic; line-height: 1.22; } body[data-page="alumni"] .alumni-quote-card small {display: block; margin-top: 26px; color: var(--muted-text); font-size: 0.78rem; font-weight: 700; line-height: 1.45; } body[data-page="alumni"] .testimonial-nav {width: 44px; height: 44px; border: 1px solid var(--border-grey); border-radius: 50%; background: #fbfdff; color: var(--deep-navy); cursor: pointer; font-size: 28px; line-height: 1; display: inline-flex; align-items: center; justify-content: center; } body[data-page="alumni"] .alumni-quote-modal {position: fixed; inset: 0; z-index: 1000; display: none; align-items: center; justify-content: center; padding: 22px; } body[data-page="alumni"] .alumni-quote-modal.open {display: flex; } body[data-page="alumni"] .alumni-quote-backdrop {position: absolute; inset: 0; background: rgba(6, 41, 77, 0.62); backdrop-filter: blur(7px); } body[data-page="alumni"] .alumni-quote-panel {position: relative; z-index: 1; width: min(820px, 100%); max-height: min(82vh, 820px); overflow: auto; padding: clamp(30px, 5vw, 58px); border-left: 8px solid var(--accent-yellow); background: #fbfdff; box-shadow: 0 30px 90px rgba(6, 41, 77, 0.28); } body[data-page="alumni"] .quote-modal-close {position: absolute; top: 18px; right: 18px; width: 40px; height: 40px; border: 1px solid var(--border-grey); background: #fbfdff; color: var(--deep-navy); cursor: pointer; font-weight: 900; } body[data-page="alumni"] .alumni-quote-panel > span {display: block; margin-bottom: 10px; color: var(--primary-blue); font-size: 0.78rem; font-weight: 900; letter-spacing: 0.1em; text-transform: uppercase; } body[data-page="alumni"] #quote-modal-text {margin: 0; color: var(--text-charcoal); font-size: clamp(1rem, 1.3vw, 1.14rem); font-style: italic; line-height: 1.9; } body[data-page="alumni"] .quote-modal-person {display: grid; gap: 4px; margin-top: 30px; padding-top: 18px; border-top: 1px solid var(--border-grey); color: var(--muted-text); font-size: 0.82rem; line-height: 1.35; } body[data-page="alumni"] #quote-modal-name {color: var(--deep-navy); font-size: 0.86rem; font-weight: 850; } body[data-page="alumni"] .quote-modal-degree {font-size: 0.78rem; font-weight: 650; } body.quote-modal-open {overflow: hidden; } @media (max-width: 720px) {body[data-page="alumni"] .sector-tab {min-height: 44px; padding: 10px 12px; font-size: 0.78rem; } body[data-page="alumni"] .sector-company-grid {grid-template-columns: repeat(auto-fit, minmax(128px, 1fr)); } body[data-page="alumni"] .alumni-testimonial-carousel {grid-template-columns: 1fr; } body[data-page="alumni"] .testimonial-nav {display: none; } body[data-page="alumni"] .alumni-testimonial-track {grid-auto-columns: minmax(82vw, 1fr); } body[data-page="alumni"] .alumni-quote-modal {align-items: flex-end; padding: 0; } body[data-page="alumni"] .alumni-quote-panel {width: 100%; max-height: 86vh; border-left: 0; border-top: 8px solid var(--accent-yellow); } } /* Final requested overrides */ body[data-page="home"] .story-original-copy, body[data-page="home"] .story-card-flow-legacy {display: none !important; } .faq-item.active .faq-question {color: var(--deep-navy) !important; } .faq-answer {padding-left: 32px !important; padding-right: 28px !important; } .faq-answer p {margin: 0 !important; text-align: left; } body[data-page="faq"] .faq-deep-link {display: inline-block; margin-left: 8px; color: var(--primary-blue); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; } .faq-item.active .faq-answer {padding: 0 28px 24px 32px !important; } body[data-page="alumni"] .alumni-ceremony-image[src*="master_pmgi_unipd_02"] {object-position: center bottom; } body[data-page="alumni"] .alumni-people-frame {height: auto !important; min-height: 0 !important; aspect-ratio: 1687 / 819; clip-path: inset(0% 0% 0% 0%) !important; background: #f3f6f8 !important; } body[data-page="alumni"] .alumni-people-image {width: 100%; height: 100% !important; object-fit: contain; object-position: center bottom; transform: none !important; } body[data-page="enroll"] #enroll-timeline.timeline-container {width: 100%; max-width: none; padding: 12px 0 18px; } body[data-page="enroll"] .hero:not(.hero-lecture) h1.hero-title {font-size: clamp(4.25rem, 7.15vw, 7.55rem) !important; line-height: 0.98; } body[data-page="enroll"] .hero:not(.hero-lecture) p {max-width: 780px !important; font-size: clamp(1.18rem, 1.45vw, 1.42rem); line-height: 1.75; } body[data-page="enroll"] .label {font-size: 0.84rem; } body[data-page="enroll"] h2.section-title {font-size: clamp(3rem, 4.75vw, 5.35rem) !important; line-height: 1; } body[data-page="enroll"] #enroll-timeline .timeline-step {padding: 0 clamp(44px, 5vw, 84px) 34px; } body[data-page="enroll"] #enroll-timeline .timeline-step-content {padding: clamp(24px, 2.8vw, 36px); } body[data-page="enroll"] #enroll-timeline .timeline-step-id {margin-bottom: 8px; font-size: 0.84rem; } body[data-page="enroll"] #enroll-timeline .timeline-step-title {margin-bottom: 10px; font-size: clamp(1.55rem, 2vw, 2.08rem); line-height: 1.08; } body[data-page="enroll"] #enroll-timeline .timeline-step-content p {margin: 0; font-size: clamp(1.08rem, 1.18vw, 1.18rem); line-height: 1.68; } .reference-section-header > p:not(.section-intro) {margin: 0; padding-left: clamp(34px, 4vw, 60px); border-left: 1px solid var(--border-grey); color: var(--deep-navy); font-size: clamp(1.1rem, 1.35vw, 1.3rem); line-height: 1.8; font-weight: 500; } body[data-page="organization"] .org-rules-grid {gap: 16px !important; } body[data-page="organization"] .org-rule-card {min-height: 260px; padding: clamp(26px, 3vw, 38px) !important; border: 1px solid rgba(23, 66, 97, 0.14) !important; border-left: 6px solid var(--primary-blue) !important; border-radius: 0 !important; background: rgba(251, 253, 255, 0.72) !important; box-shadow: none !important; display: flex; flex-direction: column; justify-content: flex-start; transition: border-color 0.24s ease, background-color 0.24s ease, transform 0.24s ease; } body[data-page="organization"] .org-rule-card:nth-child(even) {border-left-color: var(--accent-yellow) !important; } body[data-page="organization"] .org-rule-card:hover {transform: translateY(-2px); background: #fbfdff !important; box-shadow: none !important; } body[data-page="organization"] .org-rule-card h3 {margin: 0 0 18px; color: var(--primary-blue); font-size: clamp(1.55rem, 2.4vw, 2.35rem); line-height: 1.04; } body[data-page="organization"] .org-rule-card p {margin: 0; color: #253348; font-size: 1rem; line-height: 1.68; } @media (max-width: 700px) {body[data-page="organization"] .schedule-visual {grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } body[data-page="organization"] .schedule-day-off {display: none !important; } body[data-page="organization"] .master-calendar-timeline .calendar-months {display: none !important; } body[data-page="organization"] .master-calendar-timeline .calendar-track {display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 14px !important; padding: 0 0 0 22px !important; background: transparent !important; border: 0 !important; transform: none !important; } body[data-page="organization"] .master-calendar-timeline .calendar-track::before {left: 5px !important; right: auto !important; top: 8px !important; bottom: 8px !important; width: 2px !important; height: auto !important; transform: none !important; } body[data-page="organization"] .master-calendar-timeline .calendar-segment {grid-column: auto !important; width: 100% !important; min-height: 78px !important; height: auto !important; padding: 16px 18px !important; border-radius: 8px !important; display: grid !important; align-content: center !important; justify-items: start !important; position: relative; } body[data-page="organization"] .master-calendar-timeline .calendar-segment::before {content: "" !important; display: block !important; position: absolute !important; left: -22px !important; top: 28px !important; width: 12px !important; height: 12px !important; border-radius: 50% !important; background: var(--accent-yellow) !important; box-shadow: 0 0 0 6px rgba(251, 204, 9, 0.16) !important; } body[data-page="organization"] .master-calendar-timeline .class-segment {background: var(--primary-blue) !important; } body[data-page="organization"] .master-calendar-timeline .break-segment, body[data-page="organization"] .master-calendar-timeline .summer-break {min-height: 58px !important; background: rgba(240, 244, 248, 0.92) !important; border: 1px dashed rgba(23, 66, 97, 0.24) !important; } body[data-page="organization"] .master-calendar-timeline .break-segment::before, body[data-page="organization"] .master-calendar-timeline .summer-break::before {top: 50% !important; transform: translateY(-50%) !important; } body[data-page="organization"] .master-calendar-timeline .calendar-segment span {position: static !important; display: block !important; color: #fbfcfc !important; font-size: 0.84rem !important; white-space: normal !important; } body[data-page="organization"] .master-calendar-timeline .calendar-segment[data-period]::after {content: attr(data-period); display: block !important; margin-top: 8px; color: rgba(251, 252, 252, 0.72); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; } body[data-page="organization"] .master-calendar-timeline .break-segment[data-period]::after, body[data-page="organization"] .master-calendar-timeline .summer-break[data-period]::after {content: "Pausa  " attr(data-period); color: var(--deep-navy); } } @media (max-width: 768px) {body[data-page="enroll"] #enroll-timeline .timeline-step {padding: 0 0 18px 46px !important; } body[data-page="enroll"] #enroll-timeline.timeline-container {padding: 8px 0 12px !important; } } /* Enroll page admission details: clearer, balanced information board */ body[data-page="enroll"] .admission-overview {margin-top: clamp(48px, 6vw, 82px); } body[data-page="enroll"] .admission-summary-row {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-summary-item {min-height: 174px; padding: clamp(22px, 2.4vw, 34px); border-right: 1px solid var(--border-grey); display: flex; flex-direction: column; justify-content: space-between; gap: 16px; } body[data-page="enroll"] .admission-summary-item:last-child {border-right: 0; } body[data-page="enroll"] .admission-summary-item span, body[data-page="enroll"] .admission-block-heading span {color: var(--deep-navy); font-size: 0.82rem; font-weight: 800; letter-spacing: 0.18em; line-height: 1.3; text-transform: uppercase; } body[data-page="enroll"] .admission-summary-item strong {display: block; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(2.1rem, 3.25vw, 3.55rem); font-weight: 500; line-height: 0.98; } body[data-page="enroll"] .admission-summary-item small, body[data-page="enroll"] .admission-timeline-list small, body[data-page="enroll"] .admission-fee-list small, body[data-page="enroll"] .admission-note {color: #526174; font-size: 1rem; line-height: 1.55; } body[data-page="enroll"] .admission-timeline-list small {grid-column: 2; margin-top: -12px; } body[data-page="enroll"] .admission-content-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(36px, 4.8vw, 72px) clamp(34px, 5vw, 72px); margin-top: clamp(38px, 5vw, 72px); align-items: stretch; } body[data-page="enroll"] .admission-detail-card {border-left: 1px solid var(--border-grey); padding-left: clamp(24px, 3.2vw, 44px); display: flex; flex-direction: column; } body[data-page="enroll"] .admission-block-heading {margin-bottom: 24px; } body[data-page="enroll"] .admission-block-heading h3 {margin: 8px 0 0; color: var(--deep-navy); font-family: var(--font-heading); font-size: clamp(2.05rem, 2.75vw, 3rem); font-weight: 500; line-height: 1; } body[data-page="enroll"] .admission-requirements-table {flex: 1; display: grid; border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-requirements-table > div {display: grid; grid-template-columns: minmax(150px, 0.42fr) minmax(0, 1fr); gap: 24px; align-items: start; padding: 22px 0; border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-requirements-table strong {color: var(--primary-blue); font-size: 0.92rem; font-weight: 800; letter-spacing: 0.1em; line-height: 1.45; text-transform: uppercase; } body[data-page="enroll"] .admission-requirements-table span {color: #253348; font-size: clamp(1.08rem, 1.16vw, 1.18rem); line-height: 1.68; } body[data-page="enroll"] .admission-timeline-list {flex: 1; list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-timeline-list li {position: relative; display: grid; grid-template-columns: minmax(132px, 0.48fr) minmax(0, 1fr); gap: clamp(18px, 3vw, 44px); padding: 22px 0 22px 28px; border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-timeline-list li::before {content: ""; position: absolute; left: 0; top: 31px; width: 10px; height: 10px; border: 1px solid var(--accent-yellow); border-radius: 50%; background: var(--paper); } body[data-page="enroll"] .admission-timeline-list li.is-highlighted::before {background: var(--accent-yellow); } body[data-page="enroll"] .admission-timeline-date {color: var(--primary-blue); font-size: 1rem; font-weight: 800; line-height: 1.45; } body[data-page="enroll"] .admission-timeline-list strong {color: var(--deep-navy); font-size: clamp(1.1rem, 1.28vw, 1.24rem); line-height: 1.45; } body[data-page="enroll"] .admission-check-list {list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-check-list li {position: relative; padding: 20px 0 20px 28px; border-bottom: 1px solid var(--border-grey); color: #253348; font-size: clamp(1.08rem, 1.16vw, 1.18rem); line-height: 1.72; } body[data-page="enroll"] .admission-check-list li::before {content: ""; position: absolute; left: 0; top: 32px; width: 12px; height: 1px; background: var(--accent-yellow); } body[data-page="enroll"] .admission-seats-grid {flex: 1; display: grid; border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-seat-item {min-height: 0; padding: 18px 0; border-bottom: 1px solid var(--border-grey); display: flex; align-items: center; justify-content: flex-start; gap: 24px; } body[data-page="enroll"] .admission-seat-item:last-child {border-bottom: 0; } body[data-page="enroll"] .admission-seat-item .seat-number {flex: 0 0 clamp(62px, 6.5vw, 84px); min-width: 0; font-size: clamp(2.5rem, 3.55vw, 3.8rem) !important; } body[data-page="enroll"] .admission-seat-item .seat-label {display: block; gap: 0; color: #253348; font-size: 0.86rem; letter-spacing: 0.14em; line-height: 1.45; } body[data-page="enroll"] .admission-fee-list {flex: 1; border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-fee-list > div {display: grid; grid-template-columns: minmax(0, 1fr) minmax(138px, auto); gap: 12px 24px; padding: 18px 0; border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-fee-list span {color: #253348; font-size: 1.08rem; line-height: 1.55; } body[data-page="enroll"] .admission-fee-list strong {color: var(--deep-navy); font-size: 1.08rem; font-weight: 800; line-height: 1.45; text-align: right; } body[data-page="enroll"] .admission-fee-list small {grid-column: 1 / -1; } body[data-page="enroll"] .admission-note {margin: 14px 0 0; } @media (max-width: 1180px) {body[data-page="enroll"] .admission-summary-row {grid-template-columns: repeat(2, minmax(0, 1fr)); } body[data-page="enroll"] .admission-summary-item:nth-child(2n) {border-right: 0; } body[data-page="enroll"] .admission-summary-item:nth-child(-n + 2) {border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-content-grid {grid-template-columns: 1fr; } } @media (max-width: 720px) {body[data-page="enroll"] .admission-summary-row, body[data-page="enroll"] .admission-seats-grid {grid-template-columns: 1fr; } body[data-page="enroll"] .admission-summary-item, body[data-page="enroll"] .admission-seat-item {min-height: 0; border-right: 0; border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .admission-summary-item:last-child, body[data-page="enroll"] .admission-seat-item:last-child {border-bottom: 0; } body[data-page="enroll"] .admission-calendar, body[data-page="enroll"] .admission-detail-card {padding-left: 22px; } body[data-page="enroll"] .admission-timeline-list li, body[data-page="enroll"] .admission-requirements-table > div, body[data-page="enroll"] .admission-fee-list > div {grid-template-columns: 1fr; } body[data-page="enroll"] .admission-timeline-list small {grid-column: auto; margin-top: 0; } body[data-page="enroll"] .admission-timeline-list li {gap: 8px; padding-left: 24px; } body[data-page="enroll"] .admission-fee-list strong {text-align: left; } } /* Balanced intro sections: match alumni text/stat proportions */ body[data-page="home"] .audience-balance-copy, body[data-page="faculty"] .faculty-balance-copy {grid-column: span 8; } body[data-page="home"] .audience-balance-stats, body[data-page="faculty"] .faculty-balance-stats {grid-column: span 4; align-self: stretch; } body[data-page="home"] .audience-balance-copy .section-title, body[data-page="faculty"] .faculty-balance-copy .section-title {margin: 0 0 clamp(26px, 3vw, 42px); } body[data-page="home"] .audience-balance-copy > p, body[data-page="faculty"] .faculty-balance-copy > p {max-width: 1040px; margin: 0 0 22px; color: #253348; font-size: clamp(1.04rem, 1.22vw, 1.24rem); line-height: 1.78; } body[data-page="home"] .audience-balance-copy .who-profile-list {margin-top: clamp(34px, 4vw, 54px); gap: 0; border-top: 1px solid var(--border-grey); } body[data-page="home"] .audience-balance-copy .who-profile-item {padding: 24px 0; border-bottom: 1px solid var(--border-grey); } body[data-page="home"] .audience-balance-copy .who-profile-item p {margin: 0; } body[data-page="home"] .audience-balance-stats .who-stats-grid, body[data-page="faculty"] .faculty-balance-stats .faculty-intro-stats {height: 100%; min-height: 420px; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } body[data-page="home"] .audience-balance-stats .who-stat-card, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card {min-height: 210px; padding: clamp(24px, 3vw, 40px) clamp(16px, 2vw, 28px); border-right: 1px solid var(--border-grey) !important; border-bottom: 1px solid var(--border-grey) !important; display: grid; grid-template-columns: auto auto; justify-content: center; align-content: center; text-align: center; } body[data-page="home"] .audience-balance-stats .who-stat-card:nth-child(2n), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-child(2n) {border-right: 0 !important; } body[data-page="home"] .audience-balance-stats .who-stat-card:nth-last-child(-n + 2), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-last-child(-n + 2) {border-bottom: 0 !important; } body[data-page="home"] .audience-balance-stats .who-stat-number, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-num {font-size: clamp(3.2rem, 5.2vw, 5.7rem) !important; } body[data-page="home"] .audience-balance-stats .who-stat-label, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-label {grid-column: 1 / -1; justify-content: center; text-align: center; } @media (max-width: 1180px) {body[data-page="home"] .audience-balance-copy, body[data-page="home"] .audience-balance-stats, body[data-page="faculty"] .faculty-balance-copy, body[data-page="faculty"] .faculty-balance-stats {grid-column: 1 / -1; } body[data-page="home"] .audience-balance-stats .who-stats-grid, body[data-page="faculty"] .faculty-balance-stats .faculty-intro-stats {min-height: 0; margin-top: clamp(28px, 4vw, 48px); } } @media (max-width: 640px) {body[data-page="home"] .audience-balance-stats .who-stats-grid, body[data-page="faculty"] .faculty-balance-stats .faculty-intro-stats {grid-template-columns: 1fr; } body[data-page="home"] .audience-balance-stats .who-stat-card, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card {min-height: 0; border-right: 0; border-bottom: 1px solid var(--border-grey); } body[data-page="home"] .audience-balance-stats .who-stat-card:nth-last-child(-n + 2), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-last-child(-n + 2) {border-bottom: 1px solid var(--border-grey); } body[data-page="home"] .audience-balance-stats .who-stat-card:last-child, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:last-child {border-bottom: 0; } } /* ========================================================= Responsive consistency pass Keeps mobile/tablet spacing and recurring type styles aligned across pages, including sections with older inline desktop values. ========================================================= */ @media (max-width: 900px) {:root {--section-padding-mobile: 70px; } body {overflow-x: hidden; } .container {padding-left: clamp(18px, 5vw, 34px); padding-right: clamp(18px, 5vw, 34px); } section:not(.hero):not(.hero-lecture), section[style*="padding: 120px"], section[style*="padding:120px"] {padding-top: clamp(64px, 10vw, 88px) !important; padding-bottom: clamp(64px, 10vw, 88px) !important; } .label, .hero-card-kicker, .testimonial-detail-kicker, .contact-info-label, .seat-label, .hero-stat-label, .faculty-stat-label, .who-stat-label, .timeline-step-id, .advantage-number {margin-bottom: clamp(12px, 2.8vw, 18px); gap: clamp(12px, 3vw, 18px); font-size: clamp(0.68rem, 2.4vw, 0.78rem); line-height: 1.3; letter-spacing: 0.16em; } .label::before, .hero-card-kicker::before, .testimonial-detail-kicker::before, .contact-info-label::before, .timeline-step-id::before, .advantage-number::before {width: clamp(42px, 11vw, 58px); flex-basis: clamp(42px, 11vw, 58px); } h2.section-title, .reference-section-header .section-title, .testimonial-affiliation-header .section-title {max-width: 100%; font-size: clamp(2.45rem, 10.5vw, 4rem); line-height: 1.04; margin-bottom: clamp(22px, 5vw, 34px) !important; } .reference-section-header .section-title, .testimonial-affiliation-header .section-title {margin-bottom: 0 !important; } .reference-section-header, .testimonial-affiliation-header {grid-template-columns: 1fr !important; gap: clamp(16px, 4vw, 26px); margin-bottom: clamp(28px, 6vw, 44px); } .section-intro, .testimonial-affiliation-header p, .reference-section-header > p:not(.section-intro), .story-lead, .hero-card-lead, .hero:not(.hero-lecture) p {max-width: 100%; padding-left: clamp(18px, 4.5vw, 26px); color: #253348 !important; font-size: clamp(1rem, 3.7vw, 1.13rem); line-height: 1.66; } p, li, .card p, .content-pillar-card p, .advantage-card p, .org-rule-card p, .contact-reason-card p, .speaker-insight-card p, .testimonial-value-card p, .faculty-card-main .job, .faculty-card-main .role {font-size: clamp(0.98rem, 3.55vw, 1.07rem); line-height: 1.66; } h3.card-title, .card h3, .content-pillar-card h3, .advantage-card h4, .contact-reason-card h3, .org-rule-card h3, .enroll-info-card h3, .faculty-card-main h3, .testimonial-value-card h3, .story-flow-card h3, .speaker-insight-card h3, .faq-category h2, .partner-sector-header h3 {font-size: clamp(1.45rem, 6.2vw, 2rem); line-height: 1.08; margin-bottom: clamp(10px, 2.8vw, 16px); } .grid-12 {gap: clamp(24px, 6vw, 42px); } .bento-grid, .content-pillars, .project-advantages, .org-rules-grid, .contact-reasons-grid, .faculty-grid, .eval-grid, .partner-bento-grid, .speaker-insight-grid, .testimonial-value-cards {gap: clamp(18px, 5vw, 30px); } .reference-section-header + .bento-grid, .reference-section-header + .content-pillars, .reference-section-header + .project-advantages, .reference-section-header + .org-rules-grid, .reference-section-header + .contact-reasons-grid, .reference-section-header + .faculty-grid, .reference-section-header + .eval-grid, .reference-section-header + .testimonial-value-cards, .reference-section-header + .speaker-insight-grid {margin-top: -10px; } .card, .content-pillar-card, .advantage-card, .org-rule-card, .contact-reason-card, .speaker-insight-card, .testimonial-value-card, .faculty-card, .enroll-info-card {min-width: 0; min-height: 0; padding: clamp(24px, 6vw, 34px) !important; overflow: visible; } .why-choose-card {padding-left: clamp(24px, 6vw, 34px) !important; padding-top: clamp(12px, 3vw, 18px) !important; } .why-choose-card::before, .advantage-number, .speaker-insight-number {margin-bottom: clamp(16px, 4vw, 24px); font-size: clamp(3.1rem, 13vw, 4.7rem); line-height: 1; } .why-choose-card::after, .advantage-number::after, .speaker-insight-number::after, .gantt-label-col strong::after, .schedule-day-name::after, .company-token strong::after, .testimonial-detail-item strong::after {margin: clamp(18px, 4vw, 24px) 0 clamp(16px, 4vw, 22px); } .global-cta .container, .hero:not(.hero-lecture) > .container, .hero-lecture > .container {gap: clamp(28px, 7vw, 48px); } .hero:not(.hero-lecture), body[data-page="home"] .hero-lecture {padding-top: clamp(112px, 22vw, 150px) !important; padding-bottom: clamp(58px, 12vw, 84px) !important; } } @media (max-width: 640px) {:root {--section-padding-mobile: 58px; } .container {padding-left: clamp(16px, 4.6vw, 22px); padding-right: clamp(16px, 4.6vw, 22px); } section:not(.hero):not(.hero-lecture), section[style*="padding: 120px"], section[style*="padding:120px"] {padding-top: clamp(52px, 12vw, 68px) !important; padding-bottom: clamp(52px, 12vw, 68px) !important; } h2.section-title, .reference-section-header .section-title, .testimonial-affiliation-header .section-title {font-size: clamp(2.25rem, 10.6vw, 3.15rem); line-height: 1.05; } .reference-section-header, .testimonial-affiliation-header {gap: 16px; margin-bottom: clamp(24px, 7vw, 34px); } .section-intro, .testimonial-affiliation-header p, .reference-section-header > p:not(.section-intro), .story-lead, .hero-card-lead, .hero:not(.hero-lecture) p {padding-left: clamp(16px, 4.8vw, 22px); font-size: clamp(0.98rem, 4.1vw, 1.08rem); line-height: 1.62; } .bento-grid, .content-pillars, .project-advantages, .org-rules-grid, .contact-reasons-grid, .faculty-grid, .eval-grid, .partner-bento-grid, .speaker-insight-grid, .testimonial-value-cards {gap: clamp(16px, 5vw, 24px); } .reference-section-header + .bento-grid, .reference-section-header + .content-pillars, .reference-section-header + .project-advantages, .reference-section-header + .org-rules-grid, .reference-section-header + .contact-reasons-grid, .reference-section-header + .faculty-grid, .reference-section-header + .eval-grid, .reference-section-header + .testimonial-value-cards, .reference-section-header + .speaker-insight-grid {margin-top: -22px; } .card, .content-pillar-card, .advantage-card, .org-rule-card, .contact-reason-card, .speaker-insight-card, .testimonial-value-card, .faculty-card, .enroll-info-card {padding: clamp(22px, 6vw, 30px) !important; } .why-choose-card {padding-top: 10px !important; } .site-footer {padding-top: 58px; } } @media (max-width: 420px) {h2.section-title, .reference-section-header .section-title, .testimonial-affiliation-header .section-title {font-size: clamp(2.05rem, 10.2vw, 2.75rem); } .btn {max-width: 100%; white-space: normal; text-align: center; } .hero-card-actions, .global-cta-actions, .cta-actions {align-items: stretch; } } /* ========================================================= Page background and mobile component corrections ========================================================= */ :root {--site-section-gray: #f4f8fb; } html, body {background: var(--site-section-gray) !important; } body::before {display: none !important; } body > section:not(.hero):not(.hero-lecture):not(.global-cta), .bg-soft-blue, .bg-academic-grey {background: var(--site-section-gray) !important; } body:not([data-page="home"]) .hero, body:not([data-page="home"]) .hero:not(.hero-lecture), body:not([data-page="home"]) .global-cta {background: #fff !important; } body[data-page="home"] .hero-lecture {background: #174261 !important; } body[data-page="home"] .hero-scroll-shell {background: #174261 !important; } body[data-page="alumni"] .alumni-content > .container > .label:first-child {margin-top: 0 !important; } body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type {grid-template-areas: "title copy" "legend copy"; row-gap: clamp(18px, 2vw, 28px); } body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type .section-title {grid-area: title; } body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type .section-intro {grid-area: copy; } body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type .alumni-interaction-legend {grid-area: legend; } @media (max-width: 900px) {body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type {grid-template-areas: "title" "copy" "legend"; } body[data-page="alumni"] .program-interaction-legend {margin-top: 2px; padding-left: clamp(16px, 4.8vw, 22px); } body[data-page="faculty"] .faculty-grid {gap: 22px; } body[data-page="faculty"] .faculty-card {min-height: 0 !important; border-top-width: 4px !important; display: flex; flex-direction: column; align-self: start; overflow: hidden; } body[data-page="faculty"] .faculty-card-main {height: auto !important; min-height: 0 !important; padding: clamp(28px, 7vw, 42px) clamp(22px, 6vw, 34px) !important; justify-content: flex-start; } body[data-page="faculty"] .faculty-card-main h3 {max-width: 14ch; margin: 0 auto 14px; font-size: clamp(1.6rem, 6.4vw, 2.15rem); line-height: 1.03; } body[data-page="faculty"] .faculty-card-main .role {margin-top: 0; font-size: 0.72rem; letter-spacing: 0.16em; } body[data-page="faculty"] .faculty-card-main .job {max-width: 26ch; margin: 18px auto 0; font-size: 1rem; line-height: 1.55; } body[data-page="faculty"] .faculty-card-btn {display: none !important; } body[data-page="faculty"] .faculty-card-overlay {position: static !important; display: block !important; max-height: none !important; padding: 0 clamp(22px, 6vw, 34px) clamp(28px, 7vw, 38px) !important; overflow: visible; opacity: 1 !important; transform: none !important; transition: none; border-top: 0; background: transparent !important; color: var(--deep-navy) !important; } body[data-page="faculty"] .faculty-card-overlay .close-btn {display: none !important; } body[data-page="faculty"] .faculty-card-overlay h4 {margin: 0 0 12px; padding-top: 22px; border-top: 1px solid var(--border-grey); color: var(--deep-navy) !important; font-family: var(--font-main); font-size: 0.76rem; letter-spacing: 0.16em; line-height: 1.35; } body[data-page="faculty"] .faculty-card-overlay p {margin: 0; color: #253348 !important; font-size: 1rem; line-height: 1.62; } } @media (max-width: 760px) {body[data-page="faculty"] .faculty-grid {grid-template-columns: 1fr !important; } body[data-page="faculty"] .faculty-group-break {margin: 18px 0 4px; } } /* Current content corrections */ body[data-page="organization"] .org-attendance-grid {grid-template-columns: repeat(3, minmax(0, 1fr)) !important; align-items: stretch; } body[data-page="organization"] .org-attendance-grid .org-rule-card {min-height: 0; } body[data-page="organization"] .org-attendance-note {width: 100%; margin: clamp(22px, 3vw, 34px) 0 0; padding: 18px 22px; border-left: 4px solid var(--accent-yellow); background: rgba(255, 255, 255, 0.68); color: #253348; font-size: 0.98rem; font-weight: 520; line-height: 1.68; } body[data-page="organization"] .org-evaluation-criteria {max-width: none; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } body[data-page="organization"] .org-evaluation-criteria .eval-card {min-height: 260px; padding: clamp(26px, 3vw, 38px); border: 1px solid rgba(23, 66, 97, 0.14); border-left: 6px solid var(--primary-blue); background: rgba(251, 253, 255, 0.72); text-align: left; } body[data-page="organization"] .org-evaluation-criteria .eval-card:nth-child(2) {border-left-color: var(--accent-yellow); } body[data-page="organization"] .eval-criterion-label {display: block; margin: 0 0 18px; color: var(--deep-navy); font-size: 0.76rem; font-weight: 800; letter-spacing: 0.18em; line-height: 1.25; text-transform: uppercase; } body[data-page="organization"] .org-evaluation-criteria .eval-card h3 {margin: 0 0 18px; color: var(--primary-blue); font-size: clamp(1.55rem, 2.4vw, 2.35rem); line-height: 1.04; } body[data-page="organization"] .org-evaluation-criteria .eval-card p {margin: 0; color: #253348; font-size: 1rem; line-height: 1.68; } body[data-page="alumni"] .sector-tab-panels, body[data-page="alumni"] .sector-company-panel, body[data-page="alumni"] .sector-company-grid span {box-shadow: none !important; } body[data-page="alumni"] .alumni-network-copy {max-width: none; } body[data-page="alumni"] .alumni-network-copy p {max-width: 1180px; } body[data-page="alumni"] .alumni-network-cards {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: clamp(42px, 5vw, 72px); border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey); } body[data-page="alumni"] .alumni-network-card, body[data-page="alumni"] .alumni-network-card:hover {min-height: clamp(260px, 22vw, 340px); padding: clamp(30px, 3.6vw, 52px); border: 0; border-radius: 0; background: transparent; box-shadow: none; transform: none; } body[data-page="alumni"] .alumni-network-card + .alumni-network-card {border-left: 1px solid var(--border-grey); } body[data-page="alumni"] .alumni-network-card-kicker {display: block; margin-bottom: 12px; color: var(--deep-navy); font-size: 0.82rem; font-weight: 800; letter-spacing: 0.14em; line-height: 1.35; text-transform: uppercase; } body[data-page="alumni"] .alumni-network-card h3 {margin: 0 0 16px; color: var(--primary-blue); font-size: clamp(1.65rem, 2.2vw, 2.45rem); line-height: 1.08; } body[data-page="alumni"] .alumni-network-card p {max-width: 58rem; margin: 0; color: #253348; font-size: clamp(1rem, 1.12vw, 1.12rem); line-height: 1.68; } body[data-page="alumni"] .alumni-network-card .btn {margin-top: 24px; } @media (max-width: 820px) {body[data-page="alumni"] .alumni-network-cards {grid-template-columns: 1fr; } body[data-page="alumni"] .alumni-network-card, body[data-page="alumni"] .alumni-network-card:hover {min-height: 0; } body[data-page="alumni"] .alumni-network-card + .alumni-network-card {border-top: 1px solid var(--border-grey); border-left: 0; } } .explore-program-card, .explore-program-card.card, .bento-grid .explore-program-card {background: var(--deep-navy) !important; border: 1px solid var(--deep-navy) !important; color: #fbfcfc !important; } .explore-program-card h3, .explore-program-card p, .explore-program-card .k-tag {color: #fbfcfc !important; } .explore-program-card p {opacity: 0.78; } .explore-program-card .k-tag {background: rgba(251, 252, 252, 0.08) !important; border: 1px solid rgba(251, 252, 252, 0.16); } .explore-program-card .explore-bg-shape {background: rgba(251, 252, 252, 0.08) !important; } @media (max-width: 1100px) {body[data-page="organization"] .org-attendance-grid {grid-template-columns: 1fr !important; } body[data-page="organization"] .org-evaluation-criteria {grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 760px) {body[data-page="organization"] .org-evaluation-criteria {grid-template-columns: 1fr; } body[data-page="organization"] .org-evaluation-criteria .eval-card {min-height: 0; } } /* Final targeted refinements */ body[data-page="organization"] .org-attendance-grid .org-rule-card, body[data-page="organization"] .org-attendance-grid .org-rule-card:nth-child(even) {border-left-color: var(--primary-blue) !important; } body[data-page="organization"] .org-evaluation-criteria .eval-card, body[data-page="organization"] .org-evaluation-criteria .eval-card:nth-child(2) {border-left-color: var(--accent-yellow) !important; } body[data-page="contact"] .contact-reasons-grid {gap: 16px !important; margin-top: clamp(28px, 3.2vw, 44px) !important; } body[data-page="contact"] .section-intro-copy + .btn {margin: clamp(24px, 3vw, 38px) 0 0; } body[data-page="contact"] .contact-reason-card {min-height: 260px; padding: clamp(26px, 3vw, 38px) !important; border: 1px solid rgba(23, 66, 97, 0.14) !important; border-left: 6px solid var(--primary-blue) !important; border-radius: 0 !important; background: rgba(251, 253, 255, 0.72) !important; box-shadow: none !important; overflow: visible; } body[data-page="contact"] .contact-reason-card::before {display: none !important; } body[data-page="contact"] .contact-reason-card:hover {transform: translateY(-2px); background: #fbfdff !important; box-shadow: none !important; } body[data-page="contact"] .contact-reason-card h3 {margin: 0 0 18px; color: var(--primary-blue); font-size: clamp(1.55rem, 2.4vw, 2.35rem); line-height: 1.04; } body[data-page="contact"] .contact-reason-card p {margin: 0 0 24px; color: #253348; font-size: 1rem; line-height: 1.68; } body[data-page="contact"] .contact-email-link {color: var(--primary-blue); font-size: clamp(1rem, 1.18vw, 1.18rem); font-weight: 800; line-height: 1.35; border-bottom: 2px solid var(--accent-yellow); } body[data-page="home"] .explore-nav-card, body[data-page="home"] .explore-nav-card.card {border: 1px solid var(--border-grey) !important; } body[data-page="home"] .explore-program-card, body[data-page="home"] .explore-program-card.card, body[data-page="home"] .explore-nav-card[href="partecipanti.html"], body[data-page="home"] .explore-nav-card[href="partecipanti.html"].card {border-color: var(--border-grey) !important; } body[data-page="home"] .home-impact-card, body[data-page="home"] .home-impact-card.card {background: var(--deep-navy) !important; border: 1px solid var(--deep-navy) !important; border-left: 8px solid var(--accent-yellow) !important; box-shadow: none !important; } /* Final layout adjustments */ body[data-page="enroll"] .admission-content-grid {row-gap: clamp(52px, 6vw, 96px); } body[data-page="home"] .explore-nav-card, body[data-page="home"] .explore-nav-card.card {border: 0 !important; } body[data-page="home"] .explore-program-card, body[data-page="home"] .explore-program-card.card, body[data-page="home"] .explore-nav-card[href="partecipanti.html"], body[data-page="home"] .explore-nav-card[href="partecipanti.html"].card {border: 3px solid var(--border-grey) !important; } body[data-page="home"] .home-impact-card, body[data-page="home"] .home-impact-card.card {min-height: 0 !important; padding-top: clamp(24px, 3vw, 42px) !important; padding-bottom: clamp(24px, 3vw, 42px) !important; } body[data-page="home"] .home-impact-card h3 {margin-bottom: 10px !important; } body[data-page="home"] .home-impact-card p {line-height: 1.58 !important; } body[data-page="contact"] .contact-location-grid {align-items: start; gap: clamp(24px, 4vw, 42px) clamp(36px, 6vw, 78px); } body[data-page="contact"] .contact-location-heading {grid-column: 1 / span 5; grid-row: 1; } body[data-page="contact"] .contact-location-info {grid-column: 1 / span 5; grid-row: 2; } body[data-page="contact"] .contact-location-map {grid-column: 6 / -1; grid-row: 2; } body[data-page="contact"] .contact-location-map > div {height: clamp(340px, 32vw, 420px) !important; } body[data-page="contact"] .contact-info-list {gap: 0; border-top: 1px solid var(--border-grey); } body[data-page="contact"] .contact-info-item {padding: 26px 0; border-bottom: 1px solid var(--border-grey); } body[data-page="contact"] .contact-info-label {margin-bottom: 12px; } body[data-page="contact"] .contact-info-value {color: #253348; font-size: clamp(1.08rem, 1.36vw, 1.35rem); line-height: 1.55; } body[data-page="contact"] a.contact-info-value {color: var(--primary-blue); font-weight: 700; } body[data-page="contact"] .contact-info-list-legacy {display: none !important; } body[data-page="contact"] .contact-location-card {height: 100%; display: flex; flex-direction: column; justify-content: center; gap: 22px; } body[data-page="contact"] .contact-location-card p {margin: 0; color: #253348; line-height: 1.68; } body[data-page="contact"] .contact-location-list {list-style: none; display: flex; flex-direction: column; gap: 16px; color: var(--muted-text); } body[data-page="contact"] .contact-location-list li {display: grid; gap: 5px; padding: 0 0 16px; border-bottom: 1px solid var(--border-grey); } body[data-page="contact"] .contact-location-list li:last-child {padding-bottom: 0; border-bottom: 0; } body[data-page="contact"] .contact-location-list strong {color: var(--primary-blue); font-family: var(--font-heading); font-size: 1rem; } body[data-page="contact"] .contact-location-list span, body[data-page="contact"] .contact-location-list a {color: #253348; line-height: 1.5; } body[data-page="contact"] .contact-location-list a {color: var(--primary-blue); font-weight: 700; } @media (max-width: 900px) {body[data-page="contact"] .contact-location-heading, body[data-page="contact"] .contact-location-info, body[data-page="contact"] .contact-location-map {grid-column: 1 / -1; grid-row: auto; } } /* Final CTA and admissions download polish */ #call-for-applications .cta-download-card {justify-content: space-between; } #call-for-applications .cta-download-card > div {min-width: 0; } #call-for-applications .cta-download-card .btn {display: inline-flex; align-items: center; justify-content: center; text-align: center; margin-left: auto; background: var(--accent-yellow) !important; border-color: var(--accent-yellow) !important; color: var(--deep-navy) !important; } .global-cta h2 {margin-bottom: clamp(24px, 3vw, 42px) !important; } .global-cta p {margin-top: 0 !important; margin-bottom: clamp(34px, 4vw, 54px) !important; } @media (max-width: 768px) {#call-for-applications .cta-download-card {align-items: stretch; } #call-for-applications .cta-download-card .btn {margin-left: 0; } } /* Header and footer social links */ .header-actions {display: flex; align-items: center; gap: 14px; } .social-links {display: flex; align-items: center; gap: 10px; } .social-icon-link {width: 34px; height: 34px; border: 1px solid rgba(23, 66, 97, 0.22); border-radius: 50%; color: var(--primary-blue); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; transition: var(--transition-smooth); } .social-icon-link::before {content: ''; width: 16px; height: 16px; display: block; background: currentColor; -webkit-mask: var(--social-icon) center / contain no-repeat; mask: var(--social-icon) center / contain no-repeat; } .social-icon-linkedin {--social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 8.5H1.8V22H5V8.5ZM3.4 2C2.3 2 1.5 2.8 1.5 3.8c0 1 .8 1.8 1.9 1.8s1.9-.8 1.9-1.8C5.3 2.8 4.5 2 3.4 2ZM22.5 14.2V22h-3.2v-7.3c0-1.8-.7-3-2.3-3-1.2 0-2 .8-2.3 1.6-.1.3-.1.7-.1 1.1V22h-3.2V8.5h3.2v1.8c.5-.8 1.7-2.1 4-2.1 2.4 0 3.9 1.6 3.9 6Z'/%3E%3C/svg%3E"); } .social-icon-facebook {--social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 8.4V6.9c0-.7.5-.9 1-.9h2V2.3L14.3 2C11.3 2 9.4 3.8 9.4 6.5v1.9H6v4h3.4V22H14v-9.6h3.1l.5-4H14Z'/%3E%3C/svg%3E"); } .social-icon-email {--social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 5h20v14H2V5Zm2 2v.7l8 5.1 8-5.1V7H4Zm16 10V10.1l-8 5.1-8-5.1V17h16Z'/%3E%3C/svg%3E"); } .social-icon-link:hover {background: var(--accent-yellow); border-color: var(--accent-yellow); color: var(--deep-navy); transform: translateY(-2px); } .footer-social-links {margin-top: 22px; } .footer-social-links .social-icon-link {color: var(--white); border-color: rgba(255, 255, 255, 0.24); } .footer-social-links .social-icon-link:hover {background: var(--accent-yellow); border-color: var(--accent-yellow); color: var(--deep-navy); } @media (max-width: 991px) {.header-social-links {display: none; } } /* Master PMGI logo image */ .logo, .footer-logo {display: inline-flex; align-items: center; flex-shrink: 0; line-height: 0; } .site-logo-img, .site-unipd-logo-img, .footer-logo-img {display: block; width: auto; max-width: 100%; height: auto; } .site-logo-img {width: clamp(168px, 15.5vw, 238px); } .site-unipd-logo-img {width: auto; height: clamp(39px, 3.6vw, 55px); flex-shrink: 0; } .footer-logo {width: fit-content; margin-bottom: 18px; padding: 0; background: transparent; border-radius: 0; } .footer-logo-img, .footer-unipd-logo {display: block; width: clamp(230px, 24vw, 360px); max-width: 100%; height: auto; margin: 4px 0 0; } @media (max-width: 991px) {.site-logo-img {width: clamp(142px, 38vw, 190px); } .site-unipd-logo-img {width: auto; height: clamp(34px, 8.8vw, 44px); } .footer-logo-img, .footer-unipd-logo {width: min(300px, 78vw); } } @media (min-width: 992px) and (max-width: 1320px) {.site-logo-img {width: clamp(168px, 14.5vw, 220px); } .site-unipd-logo-img {width: auto; height: clamp(39px, 3.35vw, 46px); } .logo {gap: clamp(12px, 1.2vw, 18px); } .nav-links {gap: clamp(12px, 1.15vw, 18px); } .header-actions {gap: 10px; } } @media (min-width: 992px) {.nav-links {margin-left: clamp(28px, 3vw, 56px); } } /* Unified right-side statistic panels */ .hero-academic-stats, body[data-page="home"] .audience-balance-stats .who-stats-grid, body[data-page="faculty"] .faculty-balance-stats .faculty-intro-stats {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 !important; border-top: 1px solid var(--border-grey); border-bottom: 1px solid var(--border-grey) !important; } .hero-academic-stat, body[data-page="home"] .audience-balance-stats .who-stat-card, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card {min-height: clamp(180px, 15vw, 245px); padding: clamp(26px, 3vw, 42px) clamp(16px, 2vw, 28px) !important; background: transparent !important; border-radius: 0 !important; box-shadow: none !important; border-right: 1px solid var(--border-grey) !important; border-bottom: 1px solid var(--border-grey) !important; display: grid !important; grid-template-columns: auto auto; justify-content: center; align-content: center; text-align: center; } .hero-academic-stat:nth-child(2n), body[data-page="home"] .audience-balance-stats .who-stat-card:nth-child(2n), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-child(2n) {border-right: 0 !important; } .hero-academic-stat:nth-last-child(-n + 2), body[data-page="home"] .audience-balance-stats .who-stat-card:nth-last-child(-n + 2), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-last-child(-n + 2) {border-bottom: 0 !important; } .hero-stat-num, .faculty-stat-num, .who-stat-number {color: var(--deep-navy) !important; font-family: var(--font-main) !important; font-size: clamp(4.2rem, 6vw, 7rem) !important; font-weight: 700 !important; line-height: 0.9 !important; letter-spacing: 0 !important; } .hero-stat-unit, .faculty-stat-unit, .who-stat-unit {align-self: start; color: #707b88 !important; font-family: var(--font-main) !important; font-size: clamp(1.35rem, 2vw, 2.2rem) !important; font-weight: 700 !important; line-height: 1 !important; margin-left: 0.12em; } .hero-stat-label, .faculty-stat-label, .who-stat-label {grid-column: 1 / -1; display: block !important; margin: 18px 0 0 !important; color: var(--deep-navy) !important; font-size: clamp(0.72rem, 0.78vw, 0.84rem) !important; font-weight: 800 !important; line-height: 1.25 !important; letter-spacing: 0.18em !important; text-align: center; text-transform: uppercase; } .hero-stat-label::before {content: none !important; } body[data-page="home"] .hero-academic-stats {border-color: rgba(251, 252, 252, 0.28) !important; border-left: 1px solid rgba(251, 252, 252, 0.28); padding-left: 0; } body[data-page="home"] .hero-academic-stat {border-color: rgba(251, 252, 252, 0.28) !important; } body[data-page="home"] .hero-academic-stats .hero-stat-num {color: #fbfcfc !important; } body[data-page="home"] .hero-academic-stats .hero-stat-unit {color: rgba(251, 252, 252, 0.68) !important; } body[data-page="home"] .hero-academic-stats .hero-stat-label {color: #fbfcfc !important; } @media (max-width: 760px) {.hero-academic-stats, body[data-page="home"] .audience-balance-stats .who-stats-grid, body[data-page="faculty"] .faculty-balance-stats .faculty-intro-stats {grid-template-columns: 1fr; } .hero-academic-stat, body[data-page="home"] .audience-balance-stats .who-stat-card, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card {min-height: 150px; border-right: 0 !important; border-bottom: 1px solid var(--border-grey) !important; } .hero-academic-stat:nth-last-child(-n + 2), body[data-page="home"] .audience-balance-stats .who-stat-card:nth-last-child(-n + 2), body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:nth-last-child(-n + 2) {border-bottom: 1px solid var(--border-grey) !important; } .hero-academic-stat:last-child, body[data-page="home"] .audience-balance-stats .who-stat-card:last-child, body[data-page="faculty"] .faculty-balance-stats .faculty-stat-card:last-child {border-bottom: 0 !important; } } /* ========================================================= Homepage Hero Fixes & Polish ========================================================= */ /* 1. Hero Lecture Container Layout & Spacing */ body[data-page="home"] .hero-lecture {padding-top: clamp(140px, 15vh, 180px) !important; /* Push down content below fixed header */ } body[data-page="home"] .hero-lecture > .container {display: flex !important; flex-direction: column !important; align-items: flex-start !important; justify-content: center !important; min-height: calc(100vh - 220px) !important; /* Expand vertical layout to fill the page */ } body[data-page="home"] .hero-label {margin-bottom: clamp(24px, 4.5vh, 48px) !important; /* Fill space above the title */ color: var(--hero-left-color, #fbfcfc) !important; display: flex !important; align-items: center !important; gap: 22px !important; width: 100% !important; } body[data-page="home"] .hero-giant-text {margin: 0 !important; width: 100% !important; } body[data-page="home"] .hero-copy-stage {margin-top: clamp(20px, 3.2vh, 36px) !important; /* Managed vertical distance to fill page */ width: 100% !important; max-width: 760px !important; } body[data-page="home"] .hero-card-actions {margin-top: clamp(24px, 3.5vh, 44px) !important; /* Spacing below the stats bar */ width: 100% !important; display: flex !important; flex-wrap: wrap !important; gap: 16px !important; border-top: none !important; padding-top: 0 !important; } body[data-page="home"] .hero-academic-stats {display: grid !important; grid-template-columns: repeat(4, 1fr) !important; width: 100% !important; margin: clamp(32px, 4.5vh, 52px) 0 !important; /* Placed horizontally below the copy text */ border-top: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; border-bottom: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; border-left: none !important; border-right: none !important; gap: 0 !important; } /* 2. Title Typography & Wrapping */ body[data-page="home"] .hero-lecture .gsap-hero-word, body[data-page="home"] .hero-lecture .hero-scroll-word {font-size: clamp(3.5rem, 8.2vw, 8.5rem) !important; /* Enlarged title to fill horizontal space */ line-height: 1.02 !important; white-space: nowrap !important; /* Keep words intact on desktop */ } /* 3. Reinstating & Styling Homepage Buttons */ body[data-page="home"] .hero-card-actions .btn {min-height: 50px !important; padding: 0 28px !important; font-size: 0.95rem !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border-radius: 999px !important; cursor: pointer !important; font-weight: 800 !important; } body[data-page="home"] .hero-card-actions .btn-primary {background: var(--accent-yellow) !important; border: 1.5px solid var(--accent-yellow) !important; color: var(--deep-navy) !important; } body[data-page="home"] .hero-card-actions .btn-secondary {background: transparent !important; border: 1.5px solid var(--hero-action-border, rgba(251, 252, 252, 0.78)) !important; color: var(--hero-action-color, #fbfcfc) !important; } /* 4. Statistics Colors, Sizes & Divider Animations */ body[data-page="home"] .hero-academic-stats .hero-stat-num {color: var(--hero-stat-color, #fbfcfc) !important; font-size: clamp(1.5rem, 2.2vw, 2.4rem) !important; /* Size for dates and text values */ font-weight: 800 !important; line-height: 1.1 !important; margin: 0 !important; display: block !important; font-family: var(--font-heading); } body[data-page="home"] .hero-academic-stats .hero-stat-label {color: var(--hero-stat-color, #fbfcfc) !important; margin: 0 0 8px 0 !important; font-size: clamp(0.72rem, 0.8vw, 0.90rem) !important; /* Small uppercase label */ text-transform: uppercase !important; letter-spacing: 0.05em !important; display: block !important; } body[data-page="home"] .hero-academic-stats .hero-stat-sub {color: var(--hero-stat-muted, rgba(251, 252, 252, 0.68)) !important; margin: 8px 0 0 0 !important; font-size: clamp(0.72rem, 0.8vw, 0.90rem) !important; /* Muted subtext */ display: block !important; } body[data-page="home"] .hero-academic-stat {border-color: var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; border-right: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; border-bottom: none !important; border-left: none !important; border-top: none !important; padding: 24px 20px !important; display: flex !important; flex-direction: column !important; justify-content: flex-start !important; align-items: flex-start !important; min-height: auto !important; } body[data-page="home"] .hero-academic-stat:last-child {border-right: none !important; } /* 5. Mobile & Tablet Responsiveness */ @media (max-width: 991px) {body[data-page="home"] .hero-scroll-shell {height: auto !important; } body[data-page="home"] .hero-lecture {padding-top: clamp(140px, 16vh, 180px) !important; /* Push title/label below fixed mobile header */ height: auto !important; /* Allow hero height to scale with stacked elements */ min-height: 100vh !important; min-height: 100svh !important; max-height: none !important; overflow: visible !important; /* Enable scrolling for overflow content */ } body[data-page="home"] .hero-lecture > .container {min-height: auto !important; /* Standard flow on mobile to prevent scaling overflows */ } body[data-page="home"] .hero-label {margin-bottom: 16px !important; } body[data-page="home"] .hero-copy-stage {margin-top: 14px !important; min-height: auto !important; /* Remove large animation min-height gap */ } body[data-page="home"] .hero-card-actions {margin-top: 20px !important; } body[data-page="home"] .hero-academic-stats {grid-template-columns: repeat(2, 1fr) !important; margin: 32px 0 !important; } body[data-page="home"] .hero-academic-stat {border-right: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; border-bottom: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; padding: 20px 16px !important; } body[data-page="home"] .hero-academic-stat:nth-child(2n) {border-right: none !important; } body[data-page="home"] .hero-academic-stat:nth-child(3), body[data-page="home"] .hero-academic-stat:nth-child(4) {border-bottom: none !important; } body[data-page="home"] .hero-lecture .gsap-hero-word, body[data-page="home"] .hero-lecture .hero-scroll-word {font-size: clamp(2rem, 7vw, 4rem) !important; white-space: normal !important; } } @media (max-width: 760px) {body[data-page="home"] .hero-academic-stats {grid-template-columns: 1fr !important; } body[data-page="home"] .hero-academic-stat {border-right: none !important; border-bottom: 1px solid var(--hero-stat-border, rgba(251, 252, 252, 0.28)) !important; } body[data-page="home"] .hero-academic-stat:last-child {border-bottom: none !important; } } body[data-page="organization"] .campus-location-card {height: 100%; display: flex; flex-direction: column; justify-content: center; gap: 22px; } body[data-page="organization"] .campus-location-card p {margin: 0; color: #253348; line-height: 1.68; } body[data-page="organization"] .campus-location-list {list-style: none; display: flex; flex-direction: column; gap: 16px; color: var(--muted-text); } body[data-page="organization"] .campus-location-list li {display: grid; gap: 5px; padding: 0 0 16px; border-bottom: 1px solid var(--border-grey); } body[data-page="organization"] .campus-location-list li:last-child {padding-bottom: 0; border-bottom: 0; } body[data-page="organization"] .campus-location-list strong {color: var(--primary-blue); font-family: var(--font-heading); font-size: 1rem; } body[data-page="organization"] .campus-location-list span {color: #253348; line-height: 1.5; } body[data-page="organization"] .campus-map-shell {position: relative; isolation: isolate; min-height: clamp(360px, 35vw, 460px); height: 100%; overflow: hidden; border: 1px solid var(--border-grey); border-radius: var(--card-radius); background: var(--soft-blue); } body[data-page="organization"] .campus-map {position: relative; width: 100%; height: clamp(360px, 35vw, 460px); min-height: 100%; } body[data-page="organization"] .campus-google-map {width: 100%; height: 100%; min-height: clamp(360px, 35vw, 460px); display: block; pointer-events: none; } body[data-page="organization"] .campus-map-overlay {position: absolute; inset: 0; z-index: 8; pointer-events: none; } body[data-page="organization"] .campus-map-distance {position: absolute; z-index: 1; border: 2px solid rgba(23, 66, 97, 0.74); border-radius: 50%; background: rgba(23, 66, 97, 0.08); transform: translate(-50%, -50%) rotate(35deg); pointer-events: none; } body[data-page="organization"] .campus-html-marker {position: absolute; z-index: 6; display: block; width: 24px; height: 24px; color: #174261; font-weight: 800; line-height: 1.2; transform: translate(-50%, -50%); pointer-events: auto; } body[data-page="organization"] .campus-html-marker:hover, body[data-page="organization"] .campus-html-marker:focus-visible {color: #0d3150; } body[data-page="organization"] .campus-html-marker:focus-visible {outline: 3px solid rgba(251, 204, 9, 0.88); outline-offset: 6px; border-radius: 999px; } body[data-page="organization"] .campus-html-marker-dot {display: block; width: 24px; height: 24px; border: 3px solid #ffffff; border-radius: 50%; box-shadow: 0 6px 16px rgba(23, 66, 97, 0.28); transition: transform 0.2s ease, box-shadow 0.2s ease; } body[data-page="organization"] .campus-html-marker:hover .campus-html-marker-dot, body[data-page="organization"] .campus-html-marker:focus-visible .campus-html-marker-dot {transform: scale(1.16); box-shadow: 0 10px 22px rgba(23, 66, 97, 0.34); } body[data-page="organization"] .campus-html-marker-reference .campus-html-marker-dot {background: #1d5fd0; } body[data-page="organization"] .campus-html-marker-classroom .campus-html-marker-dot {background: #d82f2f; } body[data-page="organization"] .campus-html-marker-label {position: absolute; top: 50%; left: 28px; transform: translateY(-50%); max-width: 180px; padding: 7px 9px; border: 1px solid rgba(23, 66, 97, 0.12); border-radius: 8px; background: rgba(255, 255, 255, 0.92); box-shadow: 0 10px 24px rgba(23, 66, 97, 0.12); font-size: clamp(0.78rem, 1vw, 0.95rem); white-space: normal; } body[data-page="organization"] .campus-html-marker-left .campus-html-marker-label {right: 28px; left: auto; } body[data-page="organization"] .campus-html-marker-upper-left .campus-html-marker-label {right: 28px; bottom: 28px; left: auto; top: auto; transform: none; } body[data-page="organization"] .campus-map-legend {position: absolute; left: 16px; bottom: 16px; z-index: 9; display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; max-width: calc(100% - 32px); padding: 12px 14px; border: 1px solid rgba(23, 66, 97, 0.12); border-radius: 8px; background: rgba(255, 255, 255, 0.94); box-shadow: 0 16px 36px rgba(23, 66, 97, 0.12); color: #253348; font-size: 0.92rem; font-weight: 700; } body[data-page="organization"] .campus-map-legend span {display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; } body[data-page="organization"] .legend-dot, body[data-page="organization"] .campus-map-marker span {display: block; width: 14px; height: 14px; border-radius: 50%; } body[data-page="organization"] .legend-dot-references, body[data-page="organization"] .legend-dot-station, body[data-page="organization"] .campus-map-marker-station span {background: #1d5fd0; } body[data-page="organization"] .legend-dot-classrooms, body[data-page="organization"] .campus-map-marker-classroom span {background: #d82f2f; } body[data-page="organization"] .campus-map-marker span {width: 22px; height: 22px; border: 3px solid #ffffff; box-shadow: 0 4px 14px rgba(23, 66, 97, 0.26); } body[data-page="organization"] .leaflet-popup-content {color: #253348; font-family: var(--font-main); font-weight: 700; line-height: 1.45; } @media (max-width: 640px) {body[data-page="organization"] .campus-map-shell, body[data-page="organization"] .campus-map {min-height: 420px; } body[data-page="organization"] .campus-map-legend {left: 12px; right: 12px; bottom: 12px; justify-content: center; } } /* Keep section headings full-width after removing split intro copy. */ .reference-section-header {grid-template-columns: 1fr !important; grid-template-areas: none !important; gap: clamp(18px, 3vw, 34px); } .reference-section-header .section-title {grid-column: 1 / -1; max-width: 100%; } .reference-section-header > .section-intro, .reference-section-header > p:not(.section-intro) {display: none !important; } body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type .alumni-interaction-legend {grid-area: auto; } /* Match Program page's first-section clearance below the fixed header. */ body:not([data-page="home"]):not([data-page="content"]) > .site-header + section {margin-top: 26px !important; } /* Homepage static photo hero */ body[data-page="home"] .home-photo-hero {min-height: 92vh; min-height: 92svh; padding: clamp(132px, 18vh, 190px) 0 clamp(58px, 8vh, 92px) !important; position: relative; display: flex; align-items: center; overflow: hidden; background: url("../assets/master_pmgi_unipd_01.jpeg") center / cover no-repeat !important; color: #fbfcfc; } body[data-page="home"] .home-photo-hero::before {content: ""; position: absolute; inset: 0; z-index: 1; display: block !important; background: rgba(9, 31, 49, 0.64); pointer-events: none; } body[data-page="home"] .home-photo-hero::after {display: none !important; } body[data-page="home"] .home-photo-hero-container {position: relative; z-index: 2; width: 100%; display: flex; flex-direction: column; align-items: stretch; } body[data-page="home"] .home-hero-title-block {width: 100%; max-width: none; } body[data-page="home"] .home-hero-title {width: 100%; max-width: none; margin: 0; color: #fbfcfc; font-family: var(--font-heading); font-size: clamp(3.25rem, 7.1vw, 7.9rem); line-height: 0.98; font-weight: 700; letter-spacing: 0; } body[data-page="home"] .home-hero-university {margin: clamp(16px, 2.2vh, 28px) 0 0; color: #ffffff !important; font-family: var(--font-heading); font-size: clamp(1.45rem, 2.7vw, 3.1rem); line-height: 1.12; font-weight: 600; letter-spacing: 0; } body[data-page="home"] .home-hero-lead {width: 100%; max-width: 980px; margin: clamp(30px, 4.5vh, 54px) 0 0; color: #ffffff !important; font-size: clamp(1.28rem, 1.85vw, 1.75rem) !important; line-height: 1.55; font-weight: 600; } body[data-page="home"] .home-photo-hero .hero-academic-stats {display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; width: 100% !important; margin: clamp(36px, 5.2vh, 64px) 0 0 !important; border-top: 1px solid rgba(251, 252, 252, 0.34) !important; border-bottom: 1px solid rgba(251, 252, 252, 0.34) !important; border-left: 0 !important; border-right: 0 !important; gap: 0 !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat {padding: clamp(18px, 2.2vw, 28px) clamp(14px, 2vw, 24px) !important; border-top: 0 !important; border-bottom: 0 !important; border-left: 0 !important; border-right: 1px solid rgba(251, 252, 252, 0.28) !important; background: transparent !important; align-items: flex-start !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat:last-child {border-right: 0 !important; } body[data-page="home"] .home-photo-hero .hero-stat-label {color: rgba(251, 252, 252, 0.78) !important; } body[data-page="home"] .home-photo-hero .hero-stat-num, body[data-page="home"] .home-photo-hero .hero-stat-unit {color: #fbfcfc !important; } body[data-page="home"] .home-photo-hero .hero-card-actions {width: 100% !important; margin-top: clamp(26px, 4vh, 48px) !important; padding-top: 0 !important; border-top: 0 !important; display: flex !important; flex-wrap: wrap !important; gap: 16px !important; } body[data-page="home"] .home-photo-hero .btn-secondary {color: #fbfcfc !important; border-color: rgba(251, 252, 252, 0.82) !important; } body[data-page="home"] .home-photo-hero .btn-secondary:hover {background: #fbfcfc !important; color: var(--deep-navy) !important; } @media (max-width: 900px) {body[data-page="home"] .home-photo-hero {min-height: auto; padding-top: clamp(120px, 16vh, 150px) !important; } body[data-page="home"] .home-photo-hero .hero-academic-stats {grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat:nth-child(2n) {border-right: 0 !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat:nth-child(3), body[data-page="home"] .home-photo-hero .hero-academic-stat:nth-child(4) {border-top: 1px solid rgba(251, 252, 252, 0.28) !important; } } @media (max-width: 560px) {body[data-page="home"] .home-hero-title {font-size: clamp(2.45rem, 12vw, 3.8rem); line-height: 1.02; } body[data-page="home"] .home-hero-university {font-size: clamp(1.18rem, 6vw, 1.72rem); } body[data-page="home"] .home-photo-hero .hero-academic-stats {grid-template-columns: 1fr !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat, body[data-page="home"] .home-photo-hero .hero-academic-stat:nth-child(2n) {border-right: 0 !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat + .hero-academic-stat {border-top: 1px solid rgba(251, 252, 252, 0.28) !important; } } /* Homepage mission intro */ body[data-page="home"] .mission-section {position: relative; z-index: 2; background: #fbfcfc; border-bottom: 1px solid rgba(13, 34, 115, 0.12); } body[data-page="home"] .mission-layout {display: block; } body[data-page="home"] .mission-section .label {margin-bottom: clamp(28px, 4vw, 48px); } body[data-page="home"] .mission-content {max-width: none; } body[data-page="home"] .mission-content .section-title {max-width: 100%; margin: 0 0 clamp(24px, 3vw, 38px) !important; color: var(--deep-navy); font-size: clamp(2.75rem, 4vw, 4.6rem) !important; line-height: 1.02; } body[data-page="home"] .mission-content p {max-width: 100%; margin: 0; color: #253348; font-size: clamp(1.05rem, 1.22vw, 1.24rem); line-height: 1.72; } /* Homepage why-choose section spacing */ body[data-page="home"] .why-choose-section .label {margin-bottom: clamp(28px, 4vw, 48px); } body[data-page="home"] .why-choose-section .reference-section-header {margin-bottom: clamp(30px, 3.4vw, 46px); } body[data-page="home"] .why-choose-section .section-title {margin-bottom: 0 !important; } body[data-page="home"] .why-choose-section .container > p {max-width: 100%; margin: 0; color: #253348; font-size: clamp(1.05rem, 1.22vw, 1.24rem); line-height: 1.72; } body[data-page="home"] .why-choose-section .container > p + p {margin-top: 0.35em; } body[data-page="home"] .why-choose-section .bento-grid {margin-top: clamp(34px, 4vw, 56px); } body[data-page="home"] .why-choose-section .why-choose-card {padding-top: clamp(10px, 1.4vw, 20px); } /* Smaller CTA headings across the site. */ .global-cta h2 {font-size: clamp(2rem, 3vw, 3.15rem) !important; line-height: 1.08 !important; } .cta-download-card h3 {font-size: clamp(1.35rem, 2vw, 1.85rem) !important; line-height: 1.12 !important; } .section-intro-copy, body[data-page="faculty"] .faculty-team-intro {max-width: 880px; margin: 0 0 clamp(28px, 3.5vw, 44px); color: #253348; font-size: clamp(1.05rem, 1.25vw, 1.24rem); line-height: 1.7; } .testimonial-affiliation-header .section-intro-copy, .reference-section-header .section-intro-copy {width: 100%; } body[data-page="faculty"] .faculty-team-intro {width: 100%; max-width: none; } /* Faculty cards are static profile cards populated from the faculty spreadsheet. */ body[data-page="faculty"] .faculty-card, body[data-page="faculty"] .faculty-card:hover {cursor: default !important; min-height: 0 !important; } body[data-page="faculty"] .faculty-card * {cursor: default !important; } body[data-page="faculty"] .faculty-card {display: flex; flex-direction: column; } body[data-page="faculty"] .faculty-card-main {min-height: 0 !important; height: auto !important; justify-content: flex-start; } body[data-page="faculty"] .faculty-card-main h3, body[data-page="faculty"] .faculty-card-main .role, body[data-page="faculty"] .faculty-card-main .job {width: 100%; text-align: center; } body[data-page="faculty"] .faculty-card-main .job {max-width: 34ch !important; margin-bottom: 0 !important; } body[data-page="faculty"] .faculty-card-btn, body[data-page="faculty"] .faculty-card-overlay {display: none !important; } body[data-page="faculty"] .legend-dot-teachers {--legend-dot-halo: rgba(115, 199, 242, 0.22) !important; background: #73c7f2 !important; } body[data-page="faculty"] .faculty-card-teachers {--faculty-card-border: #73c7f2; } @media (min-width: 1180px) {body[data-page="faculty"] .faculty-grid {grid-template-columns: repeat(30, minmax(0, 1fr)) !important; } body[data-page="faculty"] .faculty-group-break {grid-column: 1 / -1; } body[data-page="faculty"] .faculty-card-organizers {grid-column: span 5; } body[data-page="faculty"] .faculty-card-organizers .faculty-card-main {padding-inline: clamp(18px, 1.6vw, 30px) !important; } body[data-page="faculty"] .faculty-card-teachers, body[data-page="faculty"] .faculty-card-testimonials {grid-column: span 6; } } body[data-page="content"] .program-module-point-list {columns: 2; column-gap: 34px; margin: 0; padding-left: 1.25rem; color: #253348; } body[data-page="content"] .program-module-point-list li {break-inside: avoid; margin: 0 0 12px; padding-left: 4px; font-size: 1.08rem; line-height: 1.48; } body[data-page="content"] .program-directory-grid .company-token:hover {box-shadow: inset 0 -3px 0 var(--primary-blue) !important; } @media (max-width: 760px) {body[data-page="content"] .program-module-point-list {columns: 1; } } /* Homepage audience and explore refinements */ body[data-page="home"] .audience-balance-stats .who-stats-grid {grid-template-columns: 1fr !important; min-height: 420px; } body[data-page="home"] .audience-balance-stats .who-stat-card {min-height: 210px; grid-template-columns: 1fr !important; justify-items: center; align-items: center; align-content: center; border-right: 0 !important; } body[data-page="home"] .audience-balance-stats .who-stat-card:not(:last-child) {border-bottom: 1px solid var(--border-grey) !important; } body[data-page="home"] .audience-balance-stats .who-stat-card:last-child {border-bottom: 0 !important; } body[data-page="home"] .audience-balance-stats .who-stat-label {width: 100%; max-width: 18rem; } body[data-page="home"] .explore-section-title {width: 100%; max-width: none !important; } /* Enroll page 2026/2027 structure */ body[data-page="enroll"] .section-intro-copy {max-width: 980px; } body[data-page="enroll"] .enroll-date-cards .admission-summary-item {min-height: 210px; } body[data-page="enroll"] .enroll-date-cards .admission-summary-item strong {max-width: 14ch; font-size: clamp(1.45rem, 2.05vw, 2.35rem); line-height: 1.08; } body[data-page="enroll"] .enroll-date-cards .admission-summary-item .date-year {display: block; font-size: 0.68em; line-height: 1; } body[data-page="enroll"] .enroll-action-row {display: flex; flex-wrap: wrap; gap: 14px; margin-top: clamp(28px, 3.4vw, 46px); } body[data-page="enroll"] .enroll-two-column {display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.72fr); gap: clamp(36px, 6vw, 86px); margin-top: clamp(38px, 5vw, 70px); align-items: start; } body[data-page="enroll"] .enroll-editorial-copy {border-left: 1px solid var(--border-grey); padding-left: clamp(24px, 3.2vw, 44px); } body[data-page="enroll"] .enroll-editorial-copy p, body[data-page="enroll"] .enroll-card-copy {margin: 0; color: #253348; font-size: clamp(1.06rem, 1.2vw, 1.22rem); line-height: 1.74; } body[data-page="enroll"] .enroll-requirements-panel {border-left: 1px solid var(--border-grey); padding-left: clamp(24px, 3.2vw, 44px); } body[data-page="enroll"] .enroll-requirements-panel h3 {margin: 0 0 24px; color: var(--deep-navy); font-size: clamp(2rem, 2.7vw, 3rem); font-weight: 500; line-height: 1; } body[data-page="enroll"] .enroll-requirements-panel .admission-check-list {margin-bottom: 18px; } body[data-page="enroll"] .enroll-requirements-panel .admission-note strong {color: var(--deep-navy); } body[data-page="enroll"] .enroll-requirements-table-two {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(22px, 3vw, 34px); margin-top: clamp(38px, 5vw, 68px); } body[data-page="enroll"] .enroll-requirement-column {min-height: clamp(210px, 18vw, 300px); padding: clamp(34px, 4vw, 48px) clamp(30px, 4vw, 44px); border: 1px solid var(--border-grey); border-left: 6px solid var(--primary-blue); background: rgba(255, 255, 255, 0.58); } body[data-page="enroll"] .enroll-requirement-column + .enroll-requirement-column {border-left: 6px solid var(--primary-blue); } body[data-page="enroll"] .enroll-requirement-column h3 {width: 100%; max-width: none; margin: 0 0 clamp(18px, 2.3vw, 26px); color: var(--primary-blue); font-size: clamp(1.55rem, 2.25vw, 2.25rem); font-weight: 700; letter-spacing: 0; line-height: 1.12; text-transform: none; } body[data-page="enroll"] .enroll-requirement-column p {max-width: 42rem; margin: 0; color: #001f42; font-size: clamp(1rem, 1.22vw, 1.18rem); line-height: 1.65; } body[data-page="enroll"] .enroll-requirements-note {max-width: 980px; margin-top: clamp(20px, 2.6vw, 34px); padding-left: clamp(18px, 2vw, 28px); border-left: 4px solid var(--accent-yellow); } body[data-page="enroll"] .enroll-requirements-note p {margin: 0; color: #253348; font-size: clamp(0.98rem, 1.08vw, 1.08rem); line-height: 1.7; } body[data-page="enroll"] .enroll-process-list {display: grid; gap: 0; margin-top: clamp(40px, 5vw, 72px); border-top: 1px solid var(--border-grey); } body[data-page="enroll"] .enroll-process-step {display: grid; grid-template-columns: clamp(64px, 8vw, 104px) minmax(0, 1fr); gap: clamp(22px, 3.6vw, 54px); padding: clamp(26px, 3vw, 42px) 0; border-bottom: 1px solid var(--border-grey); } body[data-page="enroll"] .enroll-step-number {color: var(--primary-blue); font-family: var(--font-heading); font-size: clamp(2.2rem, 4vw, 4.8rem); font-weight: 500; line-height: 0.95; } body[data-page="enroll"] .enroll-step-content {max-width: 980px; } body[data-page="enroll"] .enroll-step-content > span {display: block; margin-bottom: 10px; color: var(--primary-blue); font-size: 0.82rem; font-weight: 800; letter-spacing: 0.16em; line-height: 1.45; text-transform: uppercase; } body[data-page="enroll"] .enroll-step-content h3 {margin: 0 0 12px; color: var(--deep-navy); font-size: clamp(1.55rem, 2.4vw, 2.55rem); font-weight: 500; line-height: 1.08; } body[data-page="enroll"] .enroll-step-content p {max-width: 860px; margin: 0; color: #253348; font-size: clamp(1rem, 1.12vw, 1.12rem); line-height: 1.72; } body[data-page="enroll"] .enroll-step-content .btn {margin-top: 22px; } body[data-page="enroll"] .enroll-practical-note {margin-top: 16px !important; padding: 16px 18px; border-left: 4px solid var(--accent-yellow); background: rgba(255, 255, 255, 0.68); } body[data-page="enroll"] .enroll-admin-grid {margin-top: clamp(40px, 5vw, 72px); } body[data-page="enroll"] .enroll-card-copy {margin-bottom: 24px; } body[data-page="enroll"] .admission-fee-list strong {min-width: 0; } @media (max-width: 900px) {body[data-page="enroll"] .enroll-two-column, body[data-page="enroll"] .enroll-requirements-table-two, body[data-page="enroll"] .enroll-process-step {grid-template-columns: 1fr; } body[data-page="enroll"] .enroll-requirement-column {min-height: 0; } body[data-page="enroll"] .enroll-requirement-column + .enroll-requirement-column {border-top: 1px solid var(--border-grey); border-left: 6px solid var(--primary-blue); } body[data-page="enroll"] .enroll-process-step {gap: 12px; } body[data-page="enroll"] .enroll-step-number {font-size: clamp(1.9rem, 8vw, 3rem); } } @media (max-width: 620px) {body[data-page="enroll"] .enroll-action-row .btn, body[data-page="enroll"] .enroll-step-content .btn {width: 100%; justify-content: center; } body[data-page="enroll"] .enroll-date-cards .admission-summary-item {min-height: 0; } body[data-page="enroll"] .enroll-date-cards .admission-summary-item strong {max-width: none; } } /* Section headers: keep title and optional intro copy on their own full-width rows. */ .reference-section-header, .testimonial-affiliation-header, body[data-page="alumni"] .alumni-content .reference-section-header:first-of-type {display: grid !important; grid-template-columns: 1fr !important; grid-template-areas: none !important; } .reference-section-header .label, .testimonial-affiliation-header .label, .reference-section-header .section-title, .testimonial-affiliation-header .section-title, h2.section-title, .section-intro, .section-intro-copy, .reference-section-header > p, .testimonial-affiliation-header > p {grid-column: 1 / -1 !important; grid-area: auto !important; width: 100% !important; max-width: none !important; } .reference-section-header > .section-intro, .reference-section-header > p, .testimonial-affiliation-header > p {display: block !important; } .section-intro, .section-intro-copy, .reference-section-header > p, .testimonial-affiliation-header > p {padding-left: 0 !important; border-left: 0 !important; } /* Program page: formative path cards */ body[data-page="content"] .program-path-pillars {gap: clamp(18px, 2.2vw, 30px) !important; } body[data-page="content"] .program-path-pillars .content-pillar-card {min-height: clamp(360px, 34vw, 405px) !important; padding: clamp(34px, 3.4vw, 46px) clamp(28px, 3.5vw, 42px) !important; background: #f8fafc !important; border: 1px solid var(--border-grey) !important; border-left: 6px solid var(--primary-blue) !important; border-radius: 0 !important; box-shadow: none !important; } body[data-page="content"] .program-path-pillars .content-pillar-card::after {display: none !important; } body[data-page="content"] .program-path-pillars .content-pillar-card:hover {transform: none !important; box-shadow: none !important; } body[data-page="content"] .program-path-pillars .card-title {color: var(--primary-blue); font-size: clamp(1.9rem, 2.55vw, 2.55rem); line-height: 1.03; margin-bottom: clamp(20px, 2vw, 26px); } body[data-page="content"] .program-path-pillars .content-pillar-card p {color: #0c1f33; font-size: clamp(1rem, 1.08vw, 1.08rem); line-height: 1.65; } body[data-page="content"] > .site-header + .program-path-section, body[data-page="organization"] > .site-header + .organization-glance-section, body[data-page="alumni"] > .site-header + .alumni-content, body[data-page="faculty"] > .site-header + section, body[data-page="enroll"] > .site-header + .enroll-deadlines-section, body[data-page="contact"] > .site-header + section#contacts {margin-top: 26px !important; padding-top: clamp(120px, 9vw, 150px) !important; } @media (max-width: 900px) {body[data-page="content"] .program-path-pillars .content-pillar-card {min-height: 0 !important; } body[data-page="content"] > .site-header + .program-path-section, body[data-page="organization"] > .site-header + .organization-glance-section, body[data-page="alumni"] > .site-header + .alumni-content, body[data-page="faculty"] > .site-header + section, body[data-page="enroll"] > .site-header + .enroll-deadlines-section, body[data-page="contact"] > .site-header + section#contacts {margin-top: 0 !important; padding-top: clamp(112px, 24vw, 142px) !important; } } /* Responsive hardening: keep navigation, hero titles and decorative layers inside narrow viewports. */ @media (max-width: 1120px) {.nav-container {gap: 16px; } .nav-links {position: fixed !important; top: 0 !important; right: -100% !important; width: 100% !important; height: 100vh !important; height: 100svh !important; margin-left: 0 !important; background: var(--white) !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; gap: 28px !important; transition: right 0.5s cubic-bezier(0.77, 0, 0.175, 1) !important; z-index: 100 !important; } .nav-links.open {right: 0 !important; } .nav-links a {font-size: clamp(1.25rem, 5vw, 1.8rem) !important; } .mobile-menu-btn {display: flex !important; width: 44px; min-width: 44px; height: 44px; align-items: center; justify-content: center; padding: 0; } .header-actions {flex-shrink: 0; } .header-actions .btn, .header-actions .btn-primary {display: none !important; } } @media (max-width: 380px) {.container {padding-left: 16px; padding-right: 16px; } .logo {gap: 9px; min-width: 0; } .site-logo-img {width: clamp(120px, 38vw, 138px); } .site-unipd-logo-img {height: clamp(28px, 8vw, 32px); } .mobile-menu-btn {width: 40px; min-width: 40px; } } body[data-page="home"] .home-hero-title {overflow: visible; overflow-wrap: normal; word-break: normal; hyphens: manual; padding-block: 0.12em; line-height: 1.06; text-wrap: balance; } @media (min-width: 901px) {body[data-page="home"] .home-photo-hero {min-height: 100vh !important; min-height: 100svh !important; padding: clamp(142px, 15vh, 166px) 0 clamp(20px, 3vh, 34px) !important; align-items: flex-start; } body[data-page="home"] .home-hero-title {max-width: min(1160px, 100%); font-size: clamp(4rem, 5vw, 6.4rem); line-height: 1.02; padding-block: 0.06em; } body[data-page="home"] .home-hero-university {margin-top: clamp(10px, 1.6vh, 18px); font-size: clamp(1.6rem, 2.2vw, 2.55rem); line-height: 1.08; } body[data-page="home"] .home-hero-lead {max-width: 920px; margin-top: clamp(14px, 2vh, 24px); font-size: clamp(1.1rem, 1.45vw, 1.45rem) !important; line-height: 1.42; } body[data-page="home"] .home-photo-hero .hero-academic-stats {margin-top: clamp(16px, 2.4vh, 28px) !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat {padding: clamp(12px, 1.45vw, 18px) clamp(12px, 1.6vw, 20px) !important; } body[data-page="home"] .home-photo-hero .hero-stat-label {margin-bottom: 6px !important; font-size: clamp(0.62rem, 0.68vw, 0.78rem) !important; line-height: 1.18 !important; } body[data-page="home"] .home-photo-hero .hero-stat-num {font-size: clamp(1.25rem, 1.65vw, 1.85rem) !important; line-height: 1.05 !important; } body[data-page="home"] .home-photo-hero .hero-card-actions {margin-top: clamp(14px, 2vh, 24px) !important; gap: 12px !important; } body[data-page="home"] .home-photo-hero .hero-card-actions .btn {min-height: 44px !important; padding: 0 22px !important; } } @media (min-width: 901px) and (max-height: 820px) {body[data-page="home"] .home-photo-hero {padding-top: clamp(128px, 16vh, 146px) !important; padding-bottom: 16px !important; } body[data-page="home"] .home-hero-title {font-size: clamp(3.5rem, 4.5vw, 5.45rem); line-height: 1.01; } body[data-page="home"] .home-hero-university {font-size: clamp(1.35rem, 1.9vw, 2rem); } body[data-page="home"] .home-hero-lead {margin-top: 12px; font-size: clamp(1rem, 1.25vw, 1.25rem) !important; line-height: 1.34; } body[data-page="home"] .home-photo-hero .hero-academic-stats {margin-top: 14px !important; } body[data-page="home"] .home-photo-hero .hero-academic-stat {padding-top: 10px !important; padding-bottom: 10px !important; } body[data-page="home"] .home-photo-hero .hero-card-actions {margin-top: 12px !important; } } @media (max-width: 560px) {body[data-page="home"] .home-hero-title {font-size: clamp(1.78rem, 8.2vw, 2.45rem); line-height: 1.08; } body[data-page="home"] .home-hero-lead {font-size: clamp(1.05rem, 5.1vw, 1.34rem) !important; line-height: 1.48; } } @media (max-width: 380px) {body[data-page="home"] .home-photo-hero {padding-top: clamp(112px, 31vw, 132px) !important; } body[data-page="home"] .home-hero-title {font-size: clamp(1.72rem, 8.1vw, 2.15rem); } } body[data-page="home"] .explore-nav-card .explore-bg-shape {pointer-events: none; max-width: 100%; max-height: 100%; } @media (max-width: 900px) {body[data-page="home"] .explore-nav-card .explore-bg-shape {width: min(220px, 54vw) !important; height: min(220px, 54vw) !important; right: 0 !important; bottom: 0 !important; top: auto !important; transform: translate(34%, 34%); } body[data-page="home"] .explore-nav-card[href="partecipanti.html"] .explore-bg-shape {top: 0 !important; bottom: auto !important; transform: translate(34%, -34%); } } @media (max-width: 640px) {body[data-page="organization"] .campus-map-shell, body[data-page="organization"] .campus-map {overflow: hidden; } body[data-page="organization"] .campus-html-marker-label, body[data-page="organization"] .campus-html-marker-left .campus-html-marker-label, body[data-page="organization"] .campus-html-marker-upper-left .campus-html-marker-label {top: 28px; right: auto; bottom: auto; left: 50%; width: max-content; max-width: min(132px, 36vw); transform: translateX(-50%); text-align: center; font-size: 0.74rem; line-height: 1.2; } body[data-page="organization"] .campus-map-distance {max-width: 120%; max-height: 120%; } } @media (max-width: 700px) {body[data-page="organization"] .master-calendar-timeline .calendar-track {--timeline-gutter: 22px; --timeline-axis: 6px; --timeline-marker-size: 12px; padding-left: var(--timeline-gutter) !important; } body[data-page="organization"] .master-calendar-timeline .calendar-track::before {left: calc(var(--timeline-axis) - 1px) !important; } body[data-page="organization"] .master-calendar-timeline .calendar-track .calendar-segment::before {left: calc(var(--timeline-axis) - var(--timeline-gutter) - (var(--timeline-marker-size) / 2) ) !important; width: var(--timeline-marker-size) !important; height: var(--timeline-marker-size) !important; border: 0 !important; z-index: 1; } body[data-page="organization"] .master-calendar-timeline .calendar-track .break-segment::before, body[data-page="organization"] .master-calendar-timeline .calendar-track .summer-break::before {top: 50% !important; transform: translateY(-50%) !important; } } /* Keep every map label close to its marker and separated at every size. */ body[data-page="organization"] .campus-html-marker-fiera .campus-html-marker-label {top: 50%; right: 28px; bottom: auto; left: auto; transform: translateY(-50%); } body[data-page="organization"] .campus-html-marker-station .campus-html-marker-label {top: 50%; right: auto; bottom: auto; left: 28px; transform: translateY(-50%); } body[data-page="organization"] .campus-html-marker-hub .campus-html-marker-label {top: 50%; right: auto; bottom: auto; left: 28px; transform: translateY(-50%); } body[data-page="organization"] .campus-html-marker-psychology .campus-html-marker-label {top: 50%; right: 28px; bottom: auto; left: auto; transform: translateY(-50%); }