.navigation{position:sticky;top:0;z-index:1000;background:#f8f6f3f7;border-bottom:1px solid rgba(66,99,148,.15);padding:var(--spacing-md) 0;box-shadow:0 2px 8px #0000000a}.nav-content{display:flex;justify-content:space-between;align-items:center;position:relative}.nav-logo{font-size:var(--font-size-xl);font-weight:700;font-family:var(--font-family-serif);text-decoration:none;transition:transform var(--transition-fast)}.nav-logo:hover{transform:scale(1.05)}.nav-links{display:flex;gap:var(--spacing-lg);list-style:none;align-items:center}.nav-link{color:var(--color-text-secondary);font-weight:500;font-size:var(--font-size-sm);font-family:var(--font-family-serif);text-decoration:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:2px;background:var(--gradient-primary);transition:transform var(--transition-base)}.nav-link:hover{color:var(--color-text-primary)}.nav-link:hover:after{transform:translate(-50%) scaleX(1)}.nav-link.active{color:var(--color-primary)}.nav-link.active:after{transform:translate(-50%) scaleX(1)}.nav-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;background:transparent;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);transition:background var(--transition-fast);flex-shrink:0}.nav-hamburger:hover{background:#42639414}.hamburger-bar{display:block;width:22px;height:2px;background:var(--color-text-primary);border-radius:2px;transition:transform var(--transition-base),opacity var(--transition-base);transform-origin:center}.nav-hamburger.open .hamburger-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open .hamburger-bar:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger.open .hamburger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width: 768px){.nav-hamburger{display:flex}.nav-links{display:none;position:absolute;top:calc(100% + var(--spacing-md));left:0;right:0;flex-direction:column;gap:0;background:#f8f6f3fc;border:1px solid rgba(66,99,148,.15);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-xs) 0;z-index:999}.nav-links.open{display:flex}.nav-links li{width:100%}.nav-link{display:block;width:100%;font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-lg);border-radius:0;text-align:left}.nav-link:after{display:none}.nav-link:hover{background:#4263940f}.nav-link.active{background:#4263941a}.nav-logo{font-size:var(--font-size-lg)}}.site-footer{background:var(--color-text-primary);color:#b6bec9;padding:var(--spacing-2xl) 0 var(--spacing-lg);margin-top:auto;position:relative}.site-footer:before{content:"";position:absolute;top:-24px;left:0;right:0;height:24px;background:linear-gradient(to bottom,transparent,rgba(43,57,74,.08));pointer-events:none}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.footer-heading{font-family:var(--font-family-serif);font-size:var(--font-size-base);font-weight:600;color:#e7eaef;margin-bottom:var(--spacing-md)}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:var(--spacing-xs)}.footer-links a{color:#98a4b3;font-size:var(--font-size-sm);text-decoration:none;transition:color var(--transition-fast);display:inline-flex;align-items:center;gap:.4rem}.footer-links a:hover{color:#8cb3d9}.footer-icon{font-size:.9rem}.footer-note{font-size:var(--font-size-sm);line-height:1.7;color:#7b899d;margin:0}.footer-bottom{padding-top:var(--spacing-lg);text-align:center}.footer-bottom p{font-size:var(--font-size-xs);color:#737d8c;margin:0}@media (max-width: 768px){.footer-grid{grid-template-columns:1fr;gap:var(--spacing-lg);text-align:center}.footer-links a{justify-content:center}}.home{min-height:100vh}.scroll-fade{opacity:0;transform:translateY(24px);transition:opacity .6s ease-out,transform .6s ease-out}.scroll-fade.visible{opacity:1;transform:translateY(0)}.scroll-fade .thumbnail-card{opacity:0;transform:translateY(16px);transition:opacity .5s ease-out,transform .5s ease-out,box-shadow var(--transition-base)}.scroll-fade.visible .thumbnail-card{opacity:1;transform:translateY(0)}.welcome-letter{min-height:50vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--color-bg-lighter) 0%,var(--color-bg-light) 100%)}.welcome-letter:before{content:"";position:absolute;top:-50%;right:-20%;width:800px;height:800px;background:radial-gradient(circle,rgba(66,99,148,.08) 0%,transparent 70%);animation:pulse 4s ease-in-out infinite;will-change:opacity}.letter-card{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:var(--spacing-2xl);background:#ffffffeb;border:1px solid rgba(66,99,148,.15);border-left:4px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.letter-title{font-family:var(--font-family-serif);font-size:var(--font-size-2xl);font-weight:600;margin-bottom:var(--spacing-lg);line-height:1.3}.passcode-link{font-size:var(--font-size-base);font-weight:700}.letter-sign-off{text-align:center;margin-top:var(--spacing-sm);padding-bottom:0}.letter-closing{font-family:var(--font-family-serif);font-style:italic;color:var(--color-text-primary)!important;margin:0}.scroll-caret{display:inline-block;font-size:2rem;color:var(--color-text-muted);opacity:.5;animation:bounce 2s ease-in-out infinite;line-height:0;margin-top:0}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.letter-card.scroll-fade{transform:translateY(24px) scale(.98)}.letter-card.scroll-fade.visible{transform:translateY(0) scale(1)}.letter-photo{float:right;width:160px;height:160px;object-fit:cover;border-radius:var(--radius-lg);margin:0 0 var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-md);shape-outside:margin-box}.letter-body p{font-size:var(--font-size-base);line-height:1.8;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.letter-body p:last-child{margin-bottom:0}.letter-body strong{color:var(--color-text-primary);font-weight:600}.experiments-strip.section,.resume-strip.section,.whatdoing-strip.section{padding:5rem 0}.experiments-strip{background:var(--color-surface)}.resume-strip{background:var(--color-bg-light)}.whatdoing-strip{background:var(--color-surface)}.strip-heading{text-align:center;margin-bottom:var(--spacing-sm);font-size:var(--font-size-2xl)}.strip-subtitle{text-align:center;max-width:640px;margin:0 auto var(--spacing-sm);font-size:var(--font-size-sm);line-height:1.7;color:var(--color-text-muted)}.strip-cta{text-align:center;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-style:italic}.section-divider{width:80px;height:2px;margin:0 auto;background:var(--gradient-primary);border-radius:1px;opacity:.4}.thumbnail-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);text-decoration:none;color:inherit}.thumbnail-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16 / 10;box-shadow:var(--shadow-sm);transition:transform var(--transition-base),box-shadow var(--transition-base)}.thumbnail-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-lg)}.thumbnail-img{width:100%;height:100%;object-fit:cover;display:block}.thumbnail-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;transition:background var(--transition-base)}.thumbnail-card:hover .thumbnail-overlay{background:#0003}.thumbnail-lock{font-size:1.5rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}@media (max-width: 768px){.welcome-letter{min-height:auto}.letter-card{padding:var(--spacing-lg)}.letter-photo{float:none;display:block;margin:0 auto var(--spacing-lg)}.letter-body p{font-size:var(--font-size-sm)}.thumbnail-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 420px){.letter-card{padding:var(--spacing-md)}.thumbnail-row{grid-template-columns:1fr}}.resume{min-height:100vh;padding-top:0}.resume-content{max-width:1000px;margin:0 auto}.resume-card{padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.resume-header .header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.resume-header .header-text{flex:1}.resume-header h1{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.resume-header h3{font-size:1.5rem}.professional-summary{line-height:1.8;color:var(--color-text-secondary);font-size:var(--font-size-md)}.image-placeholder{background:#ffffff0d;border:2px dashed var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;min-height:120px;padding:var(--spacing-md);transition:all .3s ease}.image-placeholder span{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center}.image-placeholder:hover{background:#ffffff14;border-color:var(--color-accent)}.profile-photo-placeholder .image-placeholder{width:150px;height:150px;border-radius:50%;min-height:unset}.profile-photo-placeholder img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid var(--color-primary);box-shadow:0 4px 12px #0000004d}.project-section{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-2xl);border-bottom:1px solid rgba(255,255,255,.1)}.project-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.project-content{display:flex;gap:var(--spacing-2xl);align-items:flex-start}.project-text-column{flex:1;min-width:0}.project-text-column h3{color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:1.3rem}.project-text-column p{line-height:1.7;color:var(--color-text-secondary)}.project-image-column{flex-shrink:0;width:320px}.project-image-column img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.project-image-column img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.ivory-section{display:flex;flex-direction:column;gap:var(--spacing-xl)}.ivory-text h3{color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:1.3rem}.ivory-text p{line-height:1.7;color:var(--color-text-secondary)}.ivory-images{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.ivory-images img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.ivory-images img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-md)}.project-text{flex:1}.project-text h3{color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:1.3rem}.project-image-placeholder{flex-shrink:0}.project-image-placeholder .image-placeholder{width:180px;height:120px;min-height:unset}.project-image-placeholder img{width:180px;height:120px;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.project-image-placeholder img:hover{transform:scale(1.05);border-color:var(--color-primary);box-shadow:0 4px 12px #0000004d}.project-section p{line-height:1.7;color:var(--color-text-secondary)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.skill-category{background:#ffffff08;padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:3px solid var(--color-primary);transition:all .3s ease}.skill-category:hover{background:#ffffff0d;transform:translate(4px)}.skill-category h4{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:1.1rem}.skill-category p{color:var(--color-text-secondary);line-height:1.6;font-size:var(--font-size-sm)}.education-section{margin-bottom:var(--spacing-xl)}.education-section:last-child{margin-bottom:0}.education-section h4{color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-size:1.1rem}.education-section p{color:var(--color-text-secondary);line-height:1.6}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.product-item{padding:var(--spacing-xl)}.product-item h3{color:var(--color-primary);margin-bottom:var(--spacing-xs)}.product-item p{margin-bottom:var(--spacing-md);font-size:var(--font-size-sm)}.product-item strong{color:var(--color-text-primary)}.timeline{position:relative;padding-left:var(--spacing-xl)}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--gradient-primary)}.timeline-item{position:relative;margin-bottom:var(--spacing-xl)}.timeline-marker{position:absolute;left:calc(-1 * var(--spacing-xl) - 6px);top:0;width:14px;height:14px;border-radius:50%;background:var(--color-primary);border:3px solid var(--color-bg-dark);box-shadow:0 0 0 2px var(--color-primary)}.timeline-content{background:#ffffff08;padding:var(--spacing-lg);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.timeline-content h4{color:var(--color-primary);margin-bottom:var(--spacing-sm)}.timeline-content p{color:var(--color-text-secondary);line-height:1.7}@media (max-width: 768px){.resume-header .header-content{flex-direction:column-reverse;align-items:center;text-align:center}.resume-header .header-text{width:100%}.profile-photo-placeholder{margin-bottom:var(--spacing-lg)}.project-content{flex-direction:column;gap:var(--spacing-lg)}.project-image-column{width:100%;max-width:400px;margin:0 auto}.project-header{flex-direction:column}.project-image-placeholder .image-placeholder{width:100%;max-width:300px;margin:0 auto}.ivory-images,.products-grid,.skills-grid{grid-template-columns:1fr}}.experiments{min-height:100vh;padding-top:0}.experiments-content{max-width:1000px;margin:0 auto}.intro-text{font-size:var(--font-size-base);line-height:1.8;margin-bottom:var(--spacing-lg)}.intro-badges{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.badge{padding:var(--spacing-xs) var(--spacing-md);background:#3b82f61a;border:1px solid var(--color-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-primary-light);font-weight:500}.access-notice{padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl);border:2px solid var(--color-primary);background:#42639414}.experiments-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.experiment-tile{padding:var(--spacing-xl);position:relative;cursor:pointer;aspect-ratio:4/3;min-height:auto;overflow:hidden;isolation:isolate}.experiment-tile:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;z-index:0}.experiment-tile.clickable{cursor:pointer}.experiment-tile.clickable:hover{transform:translateY(-4px)}.experiment-tile.locked{cursor:pointer}.view-link{color:var(--color-primary);font-weight:500;font-size:var(--font-size-sm);transition:color var(--transition-fast)}.experiment-tile:hover .view-link{color:var(--color-primary-dark)}.lock-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:flex-end;justify-content:center;border-radius:var(--radius-xl);z-index:10;padding-bottom:20%}.lock-icon{font-size:3rem;opacity:.9;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.experiment-tile h3{color:#fff!important;margin-bottom:var(--spacing-md);position:relative;z-index:15;text-shadow:0 2px 4px rgba(0,0,0,.8)}.experiment-tile p{position:relative;z-index:15;color:#fff!important;opacity:1;text-shadow:0 1px 2px rgba(0,0,0,.8)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.modal-content{max-width:500px;width:90%;padding:var(--spacing-lg);animation:slideIn .3s ease;max-height:90dvh;overflow-y:auto}.passphrase-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);background:var(--color-surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--color-text-primary);margin-bottom:var(--spacing-md);font-family:var(--font-family)}.passphrase-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.error-message{color:var(--color-accent);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:#f43f5e1a;border-radius:var(--radius-sm);border-left:3px solid var(--color-accent)}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.experiments.loading{display:flex;align-items:center;justify-content:center;min-height:60vh}@media (max-width: 768px){.experiments-grid{grid-template-columns:1fr}.intro-badges{flex-direction:column;align-items:center}.modal-content{width:95%;padding:var(--spacing-md);max-height:85dvh}.modal-content .contact-method{padding:var(--spacing-sm)}.modal-content .method-icon{font-size:1.25rem;margin-bottom:var(--spacing-xs)}.modal-content .linkedin-logo{width:32px;height:32px}.modal-content h3{font-size:var(--font-size-base);margin-bottom:var(--spacing-xs)}.modal-content .copy-button{width:100%}}.contact{min-height:100vh;padding-top:0}.contact-content{max-width:800px;margin:0 auto}.contact-card{padding:var(--spacing-2xl)}.contact-intro{font-size:var(--font-size-base);text-align:center;margin-bottom:var(--spacing-2xl);line-height:1.8}.contact-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.contact-method{padding:var(--spacing-lg);text-align:center;text-decoration:none;color:inherit;display:block;transition:all var(--transition-base)}.contact-method:hover{transform:translateY(-4px)}.method-icon{font-size:2rem;margin-bottom:var(--spacing-md)}.contact-method h3{color:var(--color-primary);margin-bottom:var(--spacing-xs)}.email-method{cursor:default}.email-container{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center;margin-top:var(--spacing-md)}.email-link{color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);-webkit-user-select:text;user-select:text;cursor:text;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);word-break:break-all;overflow-wrap:break-word}.email-link:hover{color:var(--color-primary);background:#3b82f61a}.copy-button{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-family)}.copy-button:hover{background:var(--color-primary-dark, #0052cc);transform:scale(1.05)}.copy-button:active{transform:scale(.98)}.linkedin-method{background:linear-gradient(135deg,#0a66c21a,#0a66c20d)}.linkedin-method:hover{background:linear-gradient(135deg,#0a66c226,#0a66c214)}.linkedin-logo-container{display:flex;justify-content:center;align-items:center;margin-bottom:var(--spacing-md)}.linkedin-logo{width:50px;height:50px;transition:transform var(--transition-base)}.linkedin-method:hover .linkedin-logo{transform:scale(1.1)}.linkedin-container{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center;margin-top:var(--spacing-md)}.linkedin-link{color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);-webkit-user-select:text;user-select:text;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);word-break:break-all;overflow-wrap:break-word}.linkedin-link:hover{color:#0a66c2;background:#0a66c21a}@media (max-width: 768px){.contact-card{padding:var(--spacing-lg)}.contact-methods{grid-template-columns:1fr}.email-container,.linkedin-container{min-width:0;width:100%;align-items:stretch}.email-link,.linkedin-link{text-align:center}.copy-button{width:100%}.linkedin-logo{width:60px;height:60px}}.what-ive-been-doing{min-height:100vh;padding-top:0}.content{max-width:1000px;margin:0 auto}.intro-card{padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl);text-align:left}.intro-card h1{font-size:2.5rem}.lead-text{font-size:var(--font-size-base);line-height:1.8;color:var(--color-text-secondary)}.story-card{padding:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.story-content{display:flex;gap:var(--spacing-2xl);align-items:flex-start;margin-bottom:var(--spacing-xl)}.story-content:last-child{margin-bottom:0}.story-content.reverse{flex-direction:row-reverse}.story-text{flex:1;min-width:0}.story-text h2{font-size:1.8rem}.story-text h3{color:var(--color-primary);margin-bottom:var(--spacing-md);font-size:1.4rem}.story-text p{line-height:1.7;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.story-text p:last-child{margin-bottom:0}.fun-note{background:#ffffff0d;border-left:3px solid var(--color-accent);padding:var(--spacing-md);border-radius:var(--radius-sm);font-style:italic;color:var(--color-text-muted);margin-top:var(--spacing-md)}.story-content-stacked{display:flex;flex-direction:column;gap:var(--spacing-xl)}.story-text-full{width:100%}.story-text-full p{line-height:1.7;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.story-text-full p:last-child{margin-bottom:0}.story-image{flex-shrink:0;width:380px}.story-image img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.story-image img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.story-images-dual{flex-shrink:0;width:380px;display:flex;flex-direction:column;gap:var(--spacing-md)}.story-images-dual img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.story-images-dual img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.story-images-triple{flex-shrink:0;width:380px;display:flex;flex-direction:column;gap:var(--spacing-md)}.story-images-triple img{width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.story-images-triple img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.story-images-grid-2x2{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.story-images-grid-2x2 img{width:100%;height:auto;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.story-images-grid-2x2 img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.story-images-horizontal{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.story-images-horizontal img{width:100%;height:auto;object-fit:cover;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.story-images-horizontal img:hover{transform:scale(1.03);border-color:var(--color-primary);box-shadow:0 8px 24px #0006}.closing-card{padding:var(--spacing-2xl);text-align:center;background:linear-gradient(135deg,#ffffff0d,#ffffff05)}.closing-card h2{font-size:1.8rem}.closing-card .lead-text{font-size:var(--font-size-md)}@media (max-width: 768px){.intro-card h1{font-size:2rem}.story-content,.story-content.reverse{flex-direction:column;gap:var(--spacing-lg)}.story-image,.story-images-dual,.story-images-triple,.story-images-grid-2x2,.story-images-horizontal{width:100%;max-width:500px;margin:0 auto}.story-images-grid-2x2,.story-images-horizontal{grid-template-columns:1fr}.story-text h2{font-size:1.5rem}.story-text h3{font-size:1.2rem}.lead-text{font-size:var(--font-size-md)}.closing-card h2{font-size:1.5rem}}:root{--color-primary: hsl(210, 45%, 45%);--color-primary-light: hsl(210, 50%, 55%);--color-primary-dark: hsl(210, 50%, 35%);--color-secondary: hsl(215, 40%, 60%);--color-accent: hsl(205, 55%, 50%);--color-bg-light: hsl(40, 20%, 94%);--color-bg-lighter: hsl(40, 25%, 96%);--color-surface: hsl(40, 18%, 91%);--color-surface-dark: hsl(40, 15%, 88%);--color-text-primary: hsl(215, 25%, 25%);--color-text-secondary: hsl(215, 15%, 45%);--color-text-muted: hsl(215, 10%, 60%);--gradient-primary: linear-gradient(135deg, hsl(210, 40%, 50%) 0%, hsl(210, 55%, 60%) 100%);--gradient-accent: linear-gradient(135deg, hsl(205, 45%, 55%) 0%, hsl(210, 50%, 65%) 100%);--gradient-surface: linear-gradient(135deg, var(--color-surface) 0%, var(--color-bg-light) 100%);--gradient-text: linear-gradient(135deg, hsl(210, 50%, 40%) 0%, hsl(210, 60%, 55%) 100%);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--spacing-3xl: 3rem;--font-family-serif: "Merriweather", Georgia, serif;--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3rem;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-glow: 0 0 20px rgba(66, 99, 148, .15);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}*{margin:0;padding:0;box-sizing:border-box}html,body{overflow-x:hidden}html{scroll-behavior:smooth}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);background:var(--color-bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-serif);font-weight:600;line-height:1.2;margin-bottom:var(--spacing-md);color:var(--color-text-primary)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-3xl) 0}.glass-card{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(66,99,148,.15);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.glass-card:hover{background:#ffffffd9;border-color:#42639440;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);text-decoration:none;font-family:var(--font-family-serif)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow);color:#fff}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border:1px solid rgba(66,99,148,.2)}.btn-secondary:hover{background:var(--color-surface-dark);border-color:#4263944d;color:var(--color-text-primary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.fade-in{animation:fadeIn .6s ease-out}.slide-in{animation:slideIn .6s ease-out}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-gradient{background:var(--gradient-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}@media (max-width: 768px){:root{--font-size-5xl: 2rem;--font-size-4xl: 1.75rem;--font-size-3xl: 1.5rem}.section{padding:var(--spacing-2xl) 0}.container{padding:0 var(--spacing-md)}}
