:root{--color-navy: #2d3269;--color-navy-deep: #232856;--color-navy-light: #3a4078;--color-accent: #ff7592;--color-accent-bright: #ff92ab;--color-accent-hover: #ffa3bc;--color-accent-rgb: 255, 117, 146;--glow-accent: 0 4px 24px rgba(var(--color-accent-rgb), .45);--glow-accent-strong: 0 6px 32px rgba(var(--color-accent-rgb), .55), 0 0 48px rgba(var(--color-accent-rgb), .3);--color-white: #ffffff;--color-off-white: #f0f2f8;--color-off-white-soft: #f8f9fc;--color-text-on-light: #2d3269;--color-muted: rgba(255, 255, 255, .72);--color-muted-soft: rgba(255, 255, 255, .5);--color-muted-on-light: rgba(45, 50, 105, .72);--color-muted-soft-on-light: rgba(45, 50, 105, .55);--color-surface: rgba(255, 255, 255, .06);--color-surface-hover: rgba(255, 255, 255, .1);--color-surface-light: #ffffff;--color-surface-light-muted: rgba(255, 255, 255, .85);--color-border: rgba(255, 255, 255, .12);--color-border-light: rgba(45, 50, 105, .1);--font-display: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--container-max: 72rem;--header-height: 5.25rem;--logo-height-nav: 3.25rem;--logo-height-footer: 3.5rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-full: 9999px;--shadow-card: 0 8px 32px rgba(0, 0, 0, .24);--shadow-card-light: 0 8px 32px rgba(45, 50, 105, .08);--glass-bg: rgba(45, 50, 105, .82);--glass-bg-light: rgba(248, 249, 252, .88);--transition: .25s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-white);background:var(--color-navy);overflow-x:hidden;-webkit-font-smoothing:antialiased}img,svg,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}ul{list-style:none}button,input,select,textarea{font:inherit;color:inherit}address{font-style:normal}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:var(--space-sm);z-index:9999;padding:.75rem 1rem;background:var(--color-accent);color:var(--color-white);border-radius:var(--radius-sm);font-weight:600}.skip-link:focus{top:var(--space-sm)}.container{width:min(100% - 2rem,var(--container-max));margin-inline:auto}.eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);text-shadow:0 0 20px rgba(var(--color-accent-rgb),.35);margin-bottom:var(--space-xs)}.text-accent{color:var(--color-accent);text-shadow:0 0 28px rgba(var(--color-accent-rgb),.4)}h1,h2,h3{font-family:var(--font-display);line-height:1.2}h1{font-size:clamp(2.25rem,5vw,3.5rem);font-weight:800}h2{font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700}h3{font-size:1.25rem;font-weight:600}.section{position:relative;padding-block:var(--space-2xl)}.section-header{text-align:center;max-width:40rem;margin-inline:auto;margin-bottom:var(--space-xl)}.section-header--left{text-align:left;margin-inline:0}.section-header__lead{margin-top:var(--space-sm);color:var(--color-muted);font-size:1.0625rem}.section--light{background:linear-gradient(180deg,var(--color-off-white-soft) 0%,var(--color-off-white) 100%);color:var(--color-text-on-light)}.section--light .section-header__lead{color:var(--color-muted-on-light)}.section--light h1,.section--light h2,.section--light h3{color:var(--color-text-on-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;font-family:var(--font-display);font-weight:600;font-size:.9375rem;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition)}.btn--primary{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-bright) 100%);color:var(--color-white);box-shadow:var(--glow-accent)}.btn--primary:hover{background:linear-gradient(135deg,var(--color-accent-bright) 0%,var(--color-accent-hover) 100%);box-shadow:var(--glow-accent-strong);transform:translateY(-2px)}.btn--outline{background:transparent;border-color:#fff6;color:var(--color-white)}.btn--outline:hover{border-color:var(--color-white);background:#ffffff1a}.section--light .btn--outline{border-color:var(--color-border-light);color:var(--color-text-on-light)}.section--light .btn--outline:hover{border-color:var(--color-accent);background:rgba(var(--color-accent-rgb),.1)}.btn--full{width:100%}.btn--ghost{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 1.75rem;font-family:var(--font-display);font-weight:600;font-size:.9375rem;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition),transform var(--transition)}.site-header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header-height);transition:background var(--transition),box-shadow var(--transition)}.site-header.is-scrolled{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--color-border)}.site-header.is-scrolled.header--on-light{background:var(--glass-bg-light);box-shadow:0 1px 0 var(--color-border-light)}.site-header.header--on-light .nav__menu a{color:var(--color-text-on-light)}.site-header.header--on-light .nav__menu a:hover,.site-header.header--on-light .nav__menu a.is-active{color:var(--color-accent)}.site-header.header--on-light .nav__toggle{background:var(--color-off-white);border-color:var(--color-border-light)}.site-header.header--on-light .nav__toggle-bar,.site-header.header--on-light .nav__toggle-bar:before,.site-header.header--on-light .nav__toggle-bar:after{background:var(--color-text-on-light)}.nav{display:flex;align-items:center;justify-content:space-between;height:100%}.nav__brand{display:flex;align-items:center;padding:.35rem .75rem;border-radius:var(--radius-md);background:#ffffff0f;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 1px #ff6b8126,0 4px 20px #ff6b8133,0 8px 32px #0000002e;transition:box-shadow var(--transition),transform var(--transition),border-color var(--transition),background var(--transition)}.nav__brand:hover{transform:translateY(-1px);border-color:#ff6b8173;background:#ffffff1a;box-shadow:0 0 0 1px #ff6b8159,0 6px 28px #ff6b8159,0 12px 40px #00000038}.site-header.header--on-light .nav__brand{background:var(--color-surface-light);border-color:#ff6b8140;box-shadow:0 0 0 1px #ff6b8133,0 4px 24px #ff6b812e,var(--shadow-card-light)}.site-header.header--on-light .nav__brand:hover{border-color:#ff6b8180;box-shadow:0 0 0 1px #ff6b8166,0 8px 32px #ff6b8147,var(--shadow-card-light)}.nav__logo{height:var(--logo-height-nav);width:auto;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(255,107,129,.25));transition:filter var(--transition)}.nav__brand:hover .nav__logo{filter:drop-shadow(0 4px 14px rgba(255,107,129,.45))}@media(max-width:900px){.nav__logo{height:2.75rem}.nav__brand{padding:.3rem .6rem}}.nav__menu{display:flex;align-items:center;gap:.25rem}.nav__menu a{padding:.5rem 1rem;font-size:.9375rem;font-weight:500;border-radius:var(--radius-full);transition:color var(--transition),background var(--transition)}.nav__menu a:hover,.nav__menu a.is-active{color:var(--color-accent)}.nav__cta{background:var(--color-accent)!important;color:var(--color-white)!important;margin-left:.5rem}.nav__cta:hover{background:var(--color-accent-hover)!important;color:var(--color-white)!important}.nav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.nav__toggle-bar,.nav__toggle-bar:before,.nav__toggle-bar:after{display:block;width:1.25rem;height:2px;background:var(--color-white);border-radius:1px;margin-inline:auto;transition:transform var(--transition),opacity var(--transition)}.nav__toggle-bar:before,.nav__toggle-bar:after{content:""}.nav__toggle-bar:before{transform:translateY(-6px)}.nav__toggle-bar:after{transform:translateY(4px)}.nav__toggle[aria-expanded=true] .nav__toggle-bar{background:transparent}.nav__toggle[aria-expanded=true] .nav__toggle-bar:before{transform:rotate(45deg) translateY(0)}.nav__toggle[aria-expanded=true] .nav__toggle-bar:after{transform:rotate(-45deg) translateY(-2px)}.section-dots{position:fixed;right:1.25rem;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:.75rem}.section-dots a{display:flex;align-items:center;justify-content:flex-end;width:1.5rem;height:1.5rem}.section-dots span{display:block;width:8px;height:8px;border-radius:50%;background:var(--color-muted-soft);border:2px solid transparent;transition:background var(--transition),transform var(--transition),border-color var(--transition)}.section-dots a:hover span,.section-dots a.is-active span{background:var(--color-accent);transform:scale(1.25);border-color:#ff6b8166}@media(max-width:900px){.section-dots{display:none}.nav__toggle{display:flex}.nav__menu{position:fixed;inset:var(--header-height) 0 0;flex-direction:column;align-items:stretch;padding:var(--space-md);gap:.5rem;background:var(--color-navy-deep);transform:translate(100%);transition:transform var(--transition)}.nav__menu.is-open{transform:translate(0)}.nav__menu a{padding:1rem;font-size:1.0625rem}.nav__cta{margin-left:0;text-align:center}}.site-footer{padding:var(--space-xl) 0;border-top:1px solid var(--color-border-light);background:linear-gradient(180deg,var(--color-off-white-soft) 0%,var(--color-off-white) 100%);color:var(--color-text-on-light)}.site-footer__inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-sm)}.site-footer__logo-wrap{display:inline-flex;padding:.5rem 1rem;border-radius:var(--radius-md);background:var(--color-surface-light);border:1px solid rgba(255,107,129,.22);box-shadow:0 0 0 1px #ff6b811f,0 6px 28px #ff6b812e,var(--shadow-card-light)}.site-footer__logo{height:var(--logo-height-footer);width:auto;object-fit:contain;filter:drop-shadow(0 2px 10px rgba(255,107,129,.2))}.site-footer__tagline{font-size:.875rem;color:var(--color-muted-soft-on-light)}.site-footer__copy{font-size:.8125rem;color:var(--color-muted-soft-on-light)}.site-footer__links{display:flex;gap:var(--space-md);margin-top:var(--space-xs)}.site-footer__links a{font-size:.875rem;font-weight:500;color:var(--color-muted-on-light)}.site-footer__links a:hover{color:var(--color-accent)}.hero{min-height:100dvh;display:flex;align-items:center;padding-top:var(--header-height);overflow:hidden;background:linear-gradient(155deg,var(--color-navy) 0%,var(--color-navy-deep) 45%,#343a6e 100%)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 55% 50% at 20% 30%,rgba(255,255,255,.14) 0%,transparent 55%),radial-gradient(ellipse 45% 40% at 90% 70%,rgba(var(--color-accent-rgb),.1) 0%,transparent 50%);pointer-events:none}.hero__decor{position:absolute;border-radius:50%;pointer-events:none}.hero__decor--pink{width:clamp(12rem,30vw,22rem);height:clamp(12rem,30vw,22rem);top:-4rem;right:-4rem;background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-bright) 100%);opacity:.88;box-shadow:var(--glow-accent-strong)}.hero__decor--white{width:clamp(10rem,25vw,18rem);height:clamp(10rem,25vw,18rem);bottom:10%;left:-5rem;background:var(--color-white);opacity:.22}.hero__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);align-items:center;position:relative;z-index:1}.hero__title{color:var(--color-white)}.hero__lead{margin-top:var(--space-md);font-size:1.125rem;color:var(--color-muted);max-width:32rem}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-lg)}.hero__stats{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.hero__stats strong{display:block;font-family:var(--font-display);font-size:1.75rem;font-weight:800;color:var(--color-accent);text-shadow:0 0 24px rgba(var(--color-accent-rgb),.45)}.hero__stats span{font-size:.875rem;color:var(--color-muted-soft)}.hero__visual{position:relative;border-radius:var(--radius-lg);overflow:hidden;border:2px solid rgba(255,255,255,.2);box-shadow:var(--shadow-card),var(--glow-accent)}.hero__visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(45,50,105,.35) 0%,transparent 55%);pointer-events:none}.hero__visual img{width:100%;aspect-ratio:4 / 3;object-fit:cover}.scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.scroll-hint__line{width:2px;height:3rem;background:linear-gradient(to bottom,var(--color-accent),rgba(var(--color-accent-rgb),.2));box-shadow:0 0 12px rgba(var(--color-accent-rgb),.6);animation:scroll-pulse 2s ease-in-out infinite}@keyframes scroll-pulse{0%,to{opacity:.5;transform:scaleY(.6);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}@media(max-width:900px){.hero__grid{grid-template-columns:1fr;text-align:center}.hero__lead{margin-inline:auto}.hero__actions,.hero__stats{justify-content:center}.hero__visual{order:-1}}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.service-card{padding:var(--space-lg);background:var(--color-surface-light);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card-light);transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)}.service-card:hover{transform:translateY(-4px);border-color:rgba(var(--color-accent-rgb),.4);box-shadow:0 12px 40px #2d32691f}.service-card__icon{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-accent-rgb),.18);border-radius:var(--radius-md);color:var(--color-accent);margin-bottom:var(--space-md)}.service-card__icon svg{width:1.5rem;height:1.5rem}.service-card h3{margin-bottom:var(--space-sm)}.service-card p{color:var(--color-muted-on-light);font-size:.9375rem;margin-bottom:var(--space-md)}.service-card__tags{display:flex;flex-wrap:wrap;gap:.5rem}.service-card__tags li{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:var(--radius-full);background:rgba(var(--color-accent-rgb),.14);color:var(--color-accent)}@media(max-width:900px){.services__grid{grid-template-columns:1fr}}.portfolio__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.portfolio-card{border-radius:var(--radius-lg);overflow:hidden;background:#ffffff0a;border:1px solid var(--color-border);transition:transform var(--transition),border-color var(--transition)}.portfolio-card:hover{transform:translateY(-4px);border-color:#ffffff38}.portfolio-card img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.portfolio-card__body{padding:var(--space-md)}.portfolio-card__category{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent)}.portfolio-card h3{margin:.5rem 0}.portfolio-card p{font-size:.9375rem;color:var(--color-muted)}@media(max-width:640px){.portfolio__grid{grid-template-columns:1fr}}.innovations__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.innovation-item{padding:var(--space-lg);background:var(--color-surface-light);border:1px solid var(--color-border-light);border-left:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0;box-shadow:var(--shadow-card-light)}.innovation-item__num{font-family:var(--font-display);font-size:2rem;font-weight:800;color:rgba(var(--color-accent-rgb),.4);line-height:1}.innovation-item h3{margin:var(--space-sm) 0}.innovation-item p{color:var(--color-muted-on-light);font-size:.9375rem}.innovations__banner{position:relative;border-radius:var(--radius-lg);overflow:hidden}.innovations__banner img{width:100%;aspect-ratio:21 / 7;object-fit:cover}.innovations__banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);background:linear-gradient(135deg,#232856f0,#2d3269e0,#232856eb);text-align:center;padding:var(--space-md);color:var(--color-white)}.innovations__banner-overlay p{font-family:var(--font-display);font-size:clamp(1.25rem,3vw,1.75rem);font-weight:700;color:var(--color-white);text-shadow:0 2px 12px rgba(0,0,0,.35);max-width:28rem}@media(max-width:768px){.innovations__grid{grid-template-columns:1fr}}.about__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);align-items:start}.about__content p{color:var(--color-muted);margin-bottom:var(--space-md)}.about__address{margin-top:var(--space-lg);padding:var(--space-md);background:#ffffff0f;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.14);line-height:1.8}.about__map{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}.about__map iframe{width:100%;height:320px;border:0;filter:grayscale(20%) contrast(1.05)}.about__map-link{display:block;padding:var(--space-sm) var(--space-md);background:var(--color-surface);font-size:.875rem;font-weight:600;color:var(--color-accent);transition:background var(--transition)}.about__map-link:hover{background:var(--color-surface-hover)}@media(max-width:900px){.about__grid{grid-template-columns:1fr}}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);align-items:start}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-row label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.375rem}.form-row input,.form-row select,.form-row textarea{width:100%;padding:.875rem 1rem;background:var(--color-surface-light);border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-on-light);transition:border-color var(--transition)}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--color-accent)}.form-row textarea{resize:vertical;min-height:120px}.form-note{font-size:.875rem;text-align:center}.form-note.is-success{color:#6ee7a0}.contact-info__card,.contact-info__hours{padding:var(--space-lg);background:var(--color-surface-light);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card-light);margin-bottom:var(--space-md)}.contact-info h3{margin-bottom:var(--space-md);color:var(--color-accent)}.contact-info ul li{margin-bottom:var(--space-sm)}.contact-info span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted-soft-on-light);margin-bottom:.25rem}.contact-info a{color:var(--color-text-on-light);font-weight:500}.contact-info a:hover{color:var(--color-accent)}.contact-info__hours p{color:var(--color-muted-on-light);font-size:.9375rem}@media(max-width:900px){.contact__grid{grid-template-columns:1fr}}.page-content__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg);padding:var(--space-sm) var(--space-md);background:var(--color-surface-light);border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-card-light)}.page-content__toolbar .btn--ghost{background:transparent;border:1px solid var(--color-border-light);color:var(--color-text-on-light);padding:.5rem 1rem;font-size:.875rem}.page-content__toolbar .btn--ghost:hover{border-color:var(--color-accent);color:var(--color-accent);background:rgba(var(--color-accent-rgb),.06)}.page-content__toolbar [data-resume-pdf]:disabled{opacity:.65;cursor:wait}.btn--small{padding:.5rem 1rem;font-size:.8125rem}.page-content__status{font-size:.875rem;color:var(--color-muted-on-light);margin-left:auto}.page-content__status--success{color:#0d9488;font-weight:600}.page-content__hint{margin-top:var(--space-md);font-size:.8125rem;color:var(--color-muted-soft-on-light);text-align:center}.resume-format-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:var(--space-md);padding:.5rem .75rem;background:var(--color-navy);border-radius:var(--radius-md);box-shadow:var(--shadow-card-light)}.resume-format-bar__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted-soft);margin-right:.25rem}.resume-format-btn,.resume-format-select{font-family:var(--font-body);font-size:.875rem;padding:.35rem .65rem;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:var(--color-white);cursor:pointer}.resume-format-btn:hover,.resume-format-select:hover{background:#ffffff2e}.resume-format-btn strong{font-weight:800}.resume-format-select{padding-right:1.5rem}.resume-format-color{display:flex;align-items:center;cursor:pointer}.resume-format-color input[type=color]{width:2rem;height:2rem;padding:0;border:2px solid rgba(255,255,255,.35);border-radius:var(--radius-sm);background:transparent;cursor:pointer}.resume__block--custom{position:relative;padding-top:var(--space-sm);border-top:1px dashed var(--color-border-light)}.resume__block-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.resume__block-header .resume__label{flex:1;margin-bottom:var(--space-sm)}.resume__remove-section{flex-shrink:0;font-size:.75rem;font-weight:600;padding:.25rem .65rem;border-radius:var(--radius-full);border:1px solid rgba(var(--color-accent-rgb),.4);background:rgba(var(--color-accent-rgb),.08);color:var(--color-accent);cursor:pointer;transition:background var(--transition),color var(--transition)}.resume__remove-section:hover{background:var(--color-accent);color:var(--color-white)}.resume-card.is-pdf-export .resume__remove-section{display:none!important}.resume-card{display:grid;grid-template-columns:280px 1fr;gap:0;background:var(--color-surface-light);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card-light);overflow:hidden}.resume-card.is-editing{border-color:rgba(var(--color-accent-rgb),.45);box-shadow:var(--shadow-card-light),0 0 0 3px rgba(var(--color-accent-rgb),.12)}.resume-card.is-pdf-export{box-shadow:none;border:1px solid var(--color-border-light)}.resume-card.is-pdf-export .resume__photo-actions,.resume-card.is-pdf-export .resume__photo-hint{display:none!important}.resume-card.is-pdf-export [data-editable],.resume-card.is-pdf-export [data-editable-custom-title],.resume-card.is-pdf-export [data-editable-custom-body]{box-shadow:none!important;background:transparent!important}.resume__sidebar{padding:var(--space-lg);background:linear-gradient(180deg,var(--color-navy) 0%,var(--color-navy-deep) 100%);color:var(--color-white)}.resume__photo-wrap{display:flex;flex-direction:column;align-items:center;gap:.625rem;width:160px;margin:0 auto var(--space-md)}.resume__photo-frame{position:relative;width:160px;height:160px;border-radius:50%;overflow:visible;flex-shrink:0}.resume__photo-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid rgba(255,255,255,.35);box-shadow:0 0 24px rgba(var(--color-accent-rgb),.35);pointer-events:none;z-index:2}.resume__photo-transform{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center;border-radius:50%;overflow:hidden;width:160px;height:160px}.resume-card.is-editing .resume__photo-transform{overflow:visible}.resume__photo{display:block;width:160px;height:160px;min-width:160px;min-height:160px;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none}.resume__photo.is-placeholder{opacity:0;pointer-events:none}.resume-card.is-editing .resume__photo:not(.is-placeholder){cursor:grab}.resume__photo.is-dragging{cursor:grabbing}.resume__photo-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffff1a;color:#fff9;pointer-events:none}.resume__photo-placeholder svg{width:4rem;height:4rem}.resume__photo-frame:has(.resume__photo:not(.is-placeholder)) .resume__photo-placeholder{display:none}.resume__photo-handles{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;pointer-events:none;z-index:3}.resume__photo-handle{position:absolute;width:11px;height:11px;background:var(--color-white);border:2px solid var(--color-accent);border-radius:2px;box-shadow:0 1px 4px #00000047;pointer-events:auto}.resume__photo-handle[data-handle=nw]{top:-6px;left:-6px;cursor:nwse-resize}.resume__photo-handle[data-handle=ne]{top:-6px;right:-6px;cursor:nesw-resize}.resume__photo-handle[data-handle=sw]{bottom:-6px;left:-6px;cursor:nesw-resize}.resume__photo-handle[data-handle=se]{bottom:-6px;right:-6px;cursor:nwse-resize}.resume-card.is-editing .resume__photo-frame{box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.35);border-radius:50%}.resume__photo-actions{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.625rem}.resume__photo-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;color:var(--color-white);cursor:pointer;transition:background var(--transition),border-color var(--transition),transform var(--transition)}.resume__photo-icon-btn svg{width:1.125rem;height:1.125rem}.resume__photo-icon-btn:hover{background:#ffffff38;border-color:#ffffff8c;transform:translateY(-1px)}.resume__photo-icon-btn--danger:hover{background:#ff6b8159;border-color:#ff6b818c}.resume__photo-hint{font-size:.6875rem;color:var(--color-muted-soft);text-align:center;line-height:1.3;max-width:10rem}.pdf-measure-host,.pdf-export-pages{position:fixed;left:-12000px;top:0;z-index:-1;pointer-events:none}.pdf-page{display:grid;grid-template-columns:280px 1fr;background:var(--color-surface-light);border:1px solid var(--color-border-light);overflow:hidden;box-sizing:border-box}.pdf-page .resume__main{padding:var(--space-xl)}.resume__sidebar--pdf-continued{min-height:100%;background:linear-gradient(180deg,var(--color-navy) 0%,var(--color-navy-deep) 100%)}.resume__name{font-family:var(--font-display);font-size:1.5rem;font-weight:800;text-align:center;margin-bottom:.25rem;color:var(--color-white)}.resume__role{text-align:center;font-size:.9375rem;color:var(--color-accent-bright);margin-bottom:var(--space-lg);text-shadow:0 0 16px rgba(var(--color-accent-rgb),.35)}.resume__sidebar-block{margin-bottom:var(--space-md)}.resume__label{font-family:var(--font-display);font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-bright);margin-bottom:var(--space-sm);padding-bottom:.35rem;border-bottom:2px solid rgba(var(--color-accent-rgb),.4)}.resume__contact li{margin-bottom:var(--space-sm)}.resume__contact span{display:block;font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted-soft);margin-bottom:.15rem}.resume__contact p{font-size:.875rem;line-height:1.4;word-break:break-word}.resume__skills{font-size:.875rem;line-height:1.6;color:var(--color-muted)}.resume__main{padding:var(--space-xl)}.resume__block{margin-bottom:var(--space-lg);break-inside:avoid;page-break-inside:avoid}.resume__block:last-child{margin-bottom:0}.resume__main .resume__label{color:var(--color-text-on-light);border-bottom-color:rgba(var(--color-accent-rgb),.35)}.resume__text{color:var(--color-muted-on-light);line-height:1.7}.resume__entry{margin-bottom:var(--space-md);padding-left:var(--space-sm);border-left:3px solid rgba(var(--color-accent-rgb),.35)}.resume__entry:last-child{margin-bottom:0}.resume__entry h5{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--color-text-on-light);margin-bottom:.25rem}.resume__dates{display:block;font-size:.8125rem;font-weight:600;color:var(--color-accent);margin-bottom:.35rem}.resume__entry p{font-size:.9375rem}.resume-card [data-editable]{outline:none;border-radius:var(--radius-sm);transition:background var(--transition),box-shadow var(--transition)}.resume-card.is-editing [data-editable]{cursor:text}.resume-card.is-editing .resume__sidebar [data-editable]:hover,.resume-card.is-editing .resume__sidebar [data-editable]:focus{background:#ffffff1a;box-shadow:0 0 0 2px rgba(var(--color-accent-rgb),.4)}.resume-card.is-editing .resume__main [data-editable]:hover,.resume-card.is-editing .resume__main [data-editable]:focus,.resume-card.is-editing [data-editable-custom-title]:hover,.resume-card.is-editing [data-editable-custom-title]:focus,.resume-card.is-editing [data-editable-custom-body]:hover,.resume-card.is-editing [data-editable-custom-body]:focus{background:rgba(var(--color-accent-rgb),.08);box-shadow:0 0 0 2px rgba(var(--color-accent-rgb),.3)}@media(max-width:768px){.resume-card{grid-template-columns:1fr}.resume__sidebar{padding-bottom:var(--space-md)}.resume__main{padding:var(--space-lg)}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal--delay{transition-delay:.1s}.reveal--delay-2{transition-delay:.2s}.reveal--delay-3{transition-delay:.3s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-hint__line{animation:none}}
