.content-wrap{padding-top:60px}:root{--color-background: #F1F0F2;--color-background-rgb: 241, 240, 242;--color-text: #0e0f0d;--color-text-rgb: 14, 15, 13;--color-text-light: #6c6581;--color-text-gray: #6b7280;--color-secondary: #CCB81F;--color-primary: #5E25CC;--color-primary-light: #6b32da;--color-primary-rgb: 94, 37, 204;--color-accent: #83CC25;--color-accent-rgb: 131, 204, 37;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--font-sans: "PPNeueMontreal", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif: "EB Garamond", ui-serif, Georgia, serif;--font-weight-thin: 100;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--font-weight-extra-bold: 900;--text-xs: 12px;--text-sm: 14px;--text-h1: 26px;--text-h2: 22px;--text-h3: 20px;--text-base: 14px}@media (min-width: 815px){:root{--text-h3: 20px;--text-h2: 24px;--text-h1: 32px;--text-base: 16px}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-sans);font-weight:var(--font-weight-regular);line-height:1.6}.title-text{font-family:var(--font-sans);font-weight:var(--font-weight-bold);margin:0 0 var(--space-4);font-size:var(--text-h2)}.title-text-thin{font-family:var(--font-sans);font-weight:var(--font-weight-medium);color:var(--color-text-light);margin:0 0 var(--space-4);font-size:var(--text-h2)}p{font-size:var(--text-base);margin:0 0 var(--space-4)}small,.caption{font-size:var(--text-sm)}a{color:inherit;text-decoration:none}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 var(--space-4)}.container-wide{padding:0 200px;margin:0 auto;max-width:1920px}.section{padding:var(--space-10) 0}.btn-primary{display:inline-block;padding:10px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md)}.btn-secondary{display:inline-block;padding:10px 16px;background:var(--color-secondary);color:#04233b;border:none;border-radius:var(--radius-md)}.tag{display:inline-block;padding:2px 8px;background:#fff;border:1px solid #E5E7EB;border-radius:999px;font-size:var(--text-sm)}.btn{display:inline-block;border-radius:100px;text-decoration:none;font-weight:var(--font-weight-medium);transition:all .3s ease,box-shadow .3s ease;text-align:center;border:2px solid transparent}.btn-solid{background:var(--color-primary);color:#fff}.btn-solid:hover,.btn-primary:hover{background:var(--color-primary-light);box-shadow:0 8px 24px rgba(var(--color-primary-rgb),.35);color:#fff;filter:brightness(1.05)}.btn-outline{color:var(--color-primary);background:transparent;border-color:var(--color-primary)}.btn-outline:hover{color:var(--color-primary);background:#fff;box-shadow:0 8px 24px rgba(var(--color-primary-rgb),.25)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-Thin.otf) format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-Book.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-Italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:PPNeueMontreal;src:url(/fonts/PPNeueMontreal-SemiBolditalic.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}.nav-root{position:fixed;width:100%;top:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background-color .3s ease-in-out,border-color .3s ease-in-out,box-shadow .3s ease-in-out}.nav-root.scrolled{background:rgba(var(--color-background-rgb),.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.05);box-shadow:0 4px 12px #00000026}.nav-bar{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 100px}.brand-link{display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:8px;color:var(--color-text);font-weight:var(--font-weight-bold);font-family:var(--font-sans);white-space:nowrap;text-decoration:none;font-size:28px;transition:color .2s ease,padding .3s ease-out}.brand-link:hover{color:var(--color-primary)}.nav-links{display:none;gap:16px}.link{position:relative;padding:8px 4px;border-radius:0;color:var(--color-text);font-weight:var(--font-weight-book);font-family:var(--font-sans);white-space:nowrap;text-decoration:none;font-size:1.1rem;letter-spacing:.05em;transition:color .2s ease}.link:hover{color:var(--color-primary)}.link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-primary);transition:width .3s ease-in-out}.link:hover:after{width:100%}.link.active{background:transparent;color:var(--color-primary)}.link.active:after{width:100%}.hamburger{width:40px;height:40px;display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;background:transparent;border:none;cursor:pointer;transition:opacity .2s ease}.hamburger:hover{opacity:.8}.hamburger span{display:block;width:20px;height:2px;background:var(--color-text)}.mobile-menu{display:flex;flex-direction:column;background:transparent;border-top:1px solid transparent;max-height:0;opacity:0;overflow:hidden;visibility:hidden;padding-right:100px;padding-left:100px;transition:max-height .4s ease-out,opacity .3s ease-out,visibility .4s ease,padding .4s ease-out,background .3s ease-in-out,border-color .3s ease-in-out}.nav-root.scrolled .mobile-menu.open{background:rgba(var(--color-background-rgb),.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.05)}.mobile-menu.open{max-height:500px;opacity:1;visibility:visible;padding-top:8px;padding-bottom:16px;background:var(--color-background);border-top-color:#e5e7eb}.mobile-link{position:relative;padding:12px 0;color:var(--color-text);font-weight:var(--font-weight-book);font-family:var(--font-sans);text-decoration:none;font-size:var(--text-h3);letter-spacing:.05em;opacity:0;transform:translateY(-15px);transition:color .2s ease,opacity .3s ease-out,transform .3s ease-out}.mobile-menu.open .mobile-link{opacity:1;transform:translateY(0)}.mobile-menu.open .mobile-link:nth-child(1){transition-delay:.15s}.mobile-menu.open .mobile-link:nth-child(2){transition-delay:.25s}.mobile-menu.open .mobile-link:nth-child(3){transition-delay:.35s}.mobile-link:hover{color:var(--color-primary)}.mobile-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-primary);transition:width .3s ease-in-out}.mobile-link:hover:after{width:100%}@media (max-width: 1620px){.nav-bar{padding:0 100px}.mobile-menu{padding-left:100px;padding-right:100px}}@media (max-width: 1200px){.nav-bar{padding:0 80px}.mobile-menu{padding-left:80px;padding-right:80px}}@media (max-width: 1100px){.nav-bar{padding:0 60px}.mobile-menu{padding-left:60px;padding-right:60px}}@media (max-width: 1000px){.nav-bar{padding:0 40px}.mobile-menu{padding-left:40px;padding-right:40px}}@media (max-width: 816px){.nav-bar{padding:0 var(--space-10)}.mobile-menu{padding-left:var(--space-10);padding-right:var(--space-10)}}@media (min-width: 1920px){.nav-bar{margin:0 auto;padding:0 200px}.mobile-menu{padding-left:200px;padding-right:200px}}.bg-circles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}.bg-circles .circle{position:absolute;border-radius:50%;opacity:var(--circle-opacity, .25);background:var(--circle-color, var(--color-accent));transform:translate(-50%,calc(-50% + var(--circle-offset, 0px)));transition:background .16s linear,opacity .16s linear}.bg-circles .circle-1{top:20vh;left:15vw;width:40vw;height:40vw}.bg-circles .circle-2{top:110vh;left:80vw;width:56vw;height:56vw;transform:translate(-50%,calc(-50% + var(--circle-2-offset, 0px)))}.bg-circles .circle-3{top:240vh;left:12vw;width:32vw;height:32vw;transform:translate(-50%,calc(-50% + var(--circle-3-offset, 0px)))}.bg-circles .circle-4{top:300vh;left:92vw;width:48vw;height:48vw;transform:translate(-50%,calc(-50% + var(--circle-4-offset, 0px)))}@media (max-width: 767px){.bg-circles .circle-1{top:25vh;left:25vw;width:70vw;height:70vw}.bg-circles .circle-2{top:120vh;left:85vw;width:60vw;height:60vw}.bg-circles .circle-3{top:280vh;left:12vw;width:56vw;height:56vw}.bg-circles .circle-4{top:360vh;left:92vw;width:48vw;height:48vw}}.home-section{background:transparent;color:var(--color-text);font-family:var(--font-sans)}.home .home-content .text-1{animation:fadeInUp .6s ease-out .1s both}.home .home-content .text-2{animation:fadeInUp .6s ease-out .2s both}.home .home-content .text-3{animation:fadeInUp .6s ease-out .3s both}.home .links{animation:fadeInUp .6s ease-out .4s both}.hero-img{animation:fadeInUp .6s ease-out .5s both}.hero{display:flex;justify-content:space-between;text-align:left;align-items:stretch;gap:var(--space-10);flex-direction:column}.home .home-content{width:100%;flex-shrink:0}.hero-img{height:auto;margin-top:3vh;-webkit-filter:drop-shadow(0px 18px 40px rgba(var(--color-primary-rgb),.5));filter:drop-shadow(0px 18px 40px rgba(var(--color-primary-rgb),.5));width:420px;margin-left:40px;object-fit:contain;overflow:visible;display:none;opacity:0}.home .home-content .text-1{margin-top:11vh;font-family:var(--font-sans);font-weight:var(--font-weight-bold);font-size:clamp(40px,12vw,136px);line-height:1.2;white-space:nowrap;overflow:hidden;opacity:0}.home .home-content .text-2{font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:clamp(22px,6vw,32px);color:var(--color-primary);margin-top:12px;opacity:0}.home .home-content .text-3{line-height:1.8;letter-spacing:.02em;display:block;font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:clamp(16px,3vw,24px);color:var(--color-text-light);margin-top:24px;transform:scaleY(1.05);opacity:0}.home .links{margin:0;padding:20px 0;opacity:0;letter-spacing:.01em}.home .links li{list-style:none;display:block;margin:20px 0}@media (min-width: 816px){.hero{display:flex;flex-direction:row;align-items:center;justify-content:space-between}.home .home-content{width:56%}.hero-img{display:block;width:400px}.home .links li{display:inline-block;margin-top:40px}.home .links .contact{margin-left:40px}}@media (max-width: 1930px){.home .home-content .text-1{font-size:116px}}@media (max-width: 1800px){.home .home-content .text-1{font-size:108px}}@media (max-width: 1620px){.hero-img{width:360px}.container-wide{padding:0 100px}.home .links{margin:0;padding:0}}@media (max-width: 1420px){.hero-img{width:340px}.home .home-content .text-1{font-size:84px}.home .links .contact{margin-left:16px}}@media (max-width: 1200px){.container-wide{padding:0 80px}.hero-img{width:320px}.home .home-content .text-1{font-size:76px}.home .links .contact{margin-left:10px}.home .links a{font-size:28px!important;padding:12px 48px!important}.home .links .btn-outline{padding:12px 48px!important}}@media (max-width: 1100px){.container-wide{padding:0 60px}.home .links .contact{margin-left:10px}}@media (max-width: 1000px){.container-wide{padding:0 40px}.hero-img{width:300px;margin-left:40px}.home .home-content .text-1{font-size:72px}.home .home-content .text-2{font-size:36px}.home .links a{font-size:24px!important;padding:12px 40px!important}.home .links .btn-outline{padding:12px 40px!important}}@media (max-width: 910px){.hero-img{width:280px;margin-left:20px}.home .home-content .text-1{font-size:64px}.home .home-content .text-2{font-size:32px}.home .home-content .text-3{font-size:20px}.home .links .contact{margin-left:10px}}@media (max-width: 815px){.home .links a{font-size:clamp(20px,6vw,28px)!important;padding:12px 0!important;width:96%}.home .links .btn-outline{padding:12px 0}.home .links .contact{margin-left:0}.home .home-content .text-1{font-size:clamp(40px,12vw,144px)}.home .home-content .text-2{font-size:clamp(20px,6vw,48px)}.home .home-content .text-3{font-size:clamp(20px,3.6vw,28px)}.home .links{margin:0;padding:20px 0}}@media (max-width: 640px){.home .links a{font-size:clamp(20px,6vw,24px)!important;padding:10px 0!important;width:96%}.home .links .btn-outline{font-size:clamp(20px,6vw,24px)!important;padding:10px 0!important}}.home .links a{font-size:28px;padding:14px 66px}.home .links .btn-outline{padding:14px 64px}.gallery-action .btn-outline{font-size:clamp(20px,3vw,22px);padding:10px 32px;letter-spacing:.01em}.fullbleed-list{display:grid;gap:var(--space-6)}@media (min-width: 815px) and (max-width: 979px){.fullbleed-list{grid-template-columns:repeat(2,1fr);gap:var(--space-8)}.fullbleed-list>.iphone:last-child:nth-child(odd){grid-column:1 / -1}}@media (min-width: 980px){.fullbleed-list{grid-template-columns:repeat(2,1fr);gap:var(--space-8);max-width:980px;margin-left:auto;margin-right:auto}.fullbleed-list>.iphone:last-child:nth-child(odd){grid-column:1 / -1}}.project-row{display:flex;justify-content:center;align-items:flex-start;gap:var(--space-10)}@media (max-width: 768px){.project-row{flex-direction:column;align-items:center}}@media (min-width: 768px) and (max-width: 979px){.project-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-10);justify-content:center;align-items:start}.project-row>.fullbleed-list:last-child:nth-child(odd){grid-column:1 / -1}}@media (min-width: 980px){.project-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-10);max-width:980px;margin-left:auto;margin-right:auto;justify-content:center;align-items:start}}.gallery-hero{display:flex;justify-content:space-between;text-align:left;align-items:center;gap:var(--space-10);opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.gallery-hero.visible{opacity:1;transform:translateY(0)}.gallery-container{width:100%;flex-shrink:0;background:var(--color-background);border-radius:var(--radius-lg);aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;flex:1;min-width:0}@media (min-width: 1000px){.gallery-container{aspect-ratio:4/3}}.image-carousel{position:relative;width:100%;height:100%;overflow:hidden;border-radius:var(--radius-lg)}.carousel-image{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .5s ease-in-out}.carousel-image img{width:100%;height:100%;object-fit:cover}.carousel-image.active{opacity:1}.gallery-content{flex:1;min-width:0;padding-right:40px}.gallery-content .text-1{font-family:var(--font-sans);font-weight:var(--font-weight-bold);font-size:clamp(40px,8vw,56px);line-height:1.2;margin-bottom:var(--space-4)}.gallery-content .text-2{line-height:1.4;font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:clamp(22px,4vw,32px);color:var(--color-primary);margin-bottom:var(--space-5)}.gallery-content .text-3{line-height:1.8;letter-spacing:.02em;font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:clamp(16px,3vw,20px);color:var(--color-text-light)}.gallery-action{margin-top:var(--space-6)}@media (max-width: 815px){.gallery-hero{flex-direction:column;align-items:stretch}.gallery-container,.gallery-content{width:100%;flex:initial}.gallery-content{padding-right:0}}.scroll-hint{text-align:center;color:var(--color-text-light);font-family:var(--font-sans);font-weight:var(--font-weight-regular);transition:opacity .35s ease,transform .35s ease;margin-bottom:var(--space-6);opacity:0;transform:translateY(30px)}.scroll-hint.shown{opacity:1;transform:translateY(0)}.scroll-hint .label{display:block;margin-bottom:px;font-size:clamp(16px,3vw,20px)}.scroll-hint .chev{display:inline-block}@keyframes bounceY{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.85}}.scroll-hint .chev{animation:bounceY 1.8s ease-in-out infinite}.scroll-hint .label.breathe{animation:breathe 3.6s ease-in-out infinite}.scroll-hint.scroll-hint.is-hidden{opacity:0;pointer-events:none;animation:none}#hintSentinel{height:1px}.section[aria-labelledby=projects-heading]{padding-top:var(--space-5);padding-bottom:var(--space-10)}.fullbleed-item{display:block;border-radius:var(--radius-lg);overflow:hidden;border:1px solid #E5E7EB}.fullbleed-item img{width:100%;object-fit:cover;display:block}@media (min-width: 768px){.fullbleed-item img{height:75vh}}.iphone{width:min(272px,73.6vw);margin-inline:auto;text-align:center;opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out;filter:drop-shadow(0 20px 50px rgba(0,0,0,.11))}.iphone.visible{opacity:1;transform:translateY(0)}.project-info{margin-top:var(--space-2);text-align:center;letter-spacing:.01em}.project-title{display:block;margin:var(--space-8) auto var(--space-6);height:36px;width:auto;max-width:100%}.project-description{line-height:1.6;letter-spacing:.02em;font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:20px;color:var(--color-text-light);margin:0 0 var(--space-3);transform:scaleY(1.05)}.project-link{font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:20px;color:var(--color-primary);text-decoration:none;display:inline-block;transform:translateY(0);text-shadow:0 0 0 rgba(var(--color-primary-rgb),0);transition:color .2s ease,transform .2s ease,text-shadow .2s ease}.project-link:hover{color:var(--color-primary-light);text-shadow:0 0 16px rgba(var(--color-primary-rgb),.25);transform:translateY(-2px)}.iphone-bezel{position:relative;width:100%;aspect-ratio:488 / 910;border-radius:28px;background:linear-gradient(180deg,#0f1113,#1a1d21);box-shadow:0 16px 48px #00000059,inset 0 0 0 2px #ffffff0f,inset 0 0 0 8px #000;padding:clamp(10px,3.5%,16px);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.iphone-bezel:hover{transform:translateY(-2px);box-shadow:0 28px 80px #0006,inset 0 0 0 2px #ffffff0f,inset 0 0 0 10px #000}.iphone-screen{width:100%;height:100%;border-radius:18px;display:block;object-fit:cover;object-position:center;background:var(--color-text);box-shadow:inset 0 0 0 1px #ffffff0a;position:relative;top:0;left:0}@media (max-width: 815){.iphone-screen{width:auto;height:100%;max-width:100%;object-fit:contain;object-position:center}}@media (max-width: 815){.iphone-bezel{aspect-ratio:488 / 920}.iphone-screen{width:100%;height:99%;object-fit:contain;object-position:top;background:#fff}}.iphone-notch{position:absolute;z-index:2;top:22px;left:50%;transform:translate(-50%);width:20%;max-width:160px;min-width:80px;height:20px;border-radius:18px;background:var(--color-text);display:flex;align-items:center;justify-content:center;gap:8px}.iphone-notch:before{content:"";position:absolute;inset:-6px;border-radius:inherit;z-index:-1;pointer-events:none}.notch-speaker{width:29px;height:5px;border-radius:2px;background:var(--color-text)}.notch-camera{width:8px;height:8px;border-radius:50%;background:var(--color-text);box-shadow:0 0 0 2px #141414f2,inset 0 1px 2px #ffffff26}.iphone-bezel:after{content:"";position:absolute;inset:0;border-radius:36px;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 40%),linear-gradient(90deg,rgba(255,255,255,.04),transparent 30%,transparent 70%,rgba(255,255,255,.04));pointer-events:none}@media (prefers-color-scheme: dark){.iphone-caption{color:#9ca3af}}@media (prefers-reduced-motion: reduce){.iphone-bezel{transition:none}}@media (min-width: 1920px){.container-wide{margin:0 auto;padding:0 200px}.home .home-content .text-1{font-size:136px}.hero-img{width:420px}}.section.experience{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.section.experience.visible{opacity:1;transform:translateY(0)}.section.contact{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.section.contact.visible{opacity:1;transform:translateY(0)}.section.experience,.section.contact{padding:var(--space-10) var(--space-5);max-width:1000px;margin:0 auto}.section-title{font-size:36px;margin:0 0 var(--space-5);line-height:1.2}.exp-card{display:grid;gap:18px;align-items:start;grid-template-columns:64px 1fr;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-5);box-shadow:0 4px 20px #0000000f;color:var(--color-text);margin-bottom:var(--space-5)}.exp-logo{width:64px;height:64px;border-radius:1px;transform:translateY(4px)}.exp-head{margin-bottom:var(--space-3)}.exp-role{margin:0;padding-bottom:var(--space-1);font-size:clamp(20px,4vw,28px);line-height:1.4}.exp-meta{color:var(--color-text-gray);font-size:clamp(16px,3vw,20px);line-height:1.4;letter-spacing:.02em}.exp-points{margin:var(--space-3) var(--space-5) var(--space-3) var(--space-5);padding-left:0}.exp-points li{margin:var(--space-2) 0;font-size:clamp(16px,3vw,20px);line-height:1.6;letter-spacing:.02em}.exp-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.exp-tags span{font-size:clamp(14px,2.5vw,18px);color:var(--color-primary);background:rgba(var(--color-primary-rgb),.08);border:1px solid rgba(var(--color-primary-rgb),.16);padding:4px 12px;border-radius:999px;margin-bottom:var(--space-1);margin-top:var(--space-1)}.section-divider{border:0;height:1px;background:rgba(var(--color-text-rgb),.08);width:min(90%,1000px)}.contact-sub{color:var(--color-text-gray);margin:var(--space-4) 0 var(--space-5);font-size:clamp(16px,3vw,20px)}.contact-form{display:grid;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 20px #0000000f;border-radius:var(--radius-lg);padding:var(--space-5);color:var(--color-text);letter-spacing:.02em}.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:clamp(14px,2.5vw,18px);min-width:0}.contact-form label.full{grid-column:1 / -1}.contact-form input,.contact-form textarea{border:1px solid rgba(0,0,0,.12);border-radius:10px;padding:10px 12px;font-size:clamp(14px,2.5vw,18px);background:#fafafb;font-family:var(--font-sans);color:var(--color-text);letter-spacing:.02em;resize:none;min-width:0;width:100%}.contact-form .btn-primary{grid-column:1 / -1;justify-self:start;display:inline-block;border-radius:100px;color:#fff;background:var(--color-primary);font-size:var(--text-md);padding:12px 36px;border:none;font-weight:600;cursor:pointer;transition:all .3s ease;text-align:center}.contact-form .btn-primary:hover{background:var(--color-primary-light);filter:brightness(1.05);box-shadow:0 8px 24px rgba(var(--color-primary-rgb),.35)}.form-footer{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center}.social-links{display:flex;align-items:center;gap:var(--space-4)}.social-links a{display:inline-block;line-height:0}.social-links img{height:32px;width:32px;transition:all .2s ease}.social-links a:hover img{opacity:.9;box-shadow:0 8px 24px rgba(var(--color-primary-rgb),.35)}.contact-alt{margin-top:12px;color:#6b7280}.contact-alt a{color:#5e25cc;text-decoration:none}.contact-alt a:hover{text-decoration:underline}.form-success{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 4px 20px #0000000f;border-radius:var(--radius-lg);padding:var(--space-8) var(--space-5);text-align:center}.form-success h3{font-size:clamp(20px,4vw,28px);margin:0 0 var(--space-2)}.form-success p{color:var(--color-text-gray);font-size:clamp(16px,3vw,20px);margin:0}.form-error{grid-column:1 / -1;color:#ef4444;margin-top:var(--space-2);font-size:clamp(14px,2.5vw,16px)}@media (max-width: 815){.exp-card{grid-template-columns:48px 1fr;padding:var(--space-5)}.exp-logo{width:48px;height:48px;font-size:20px;transform:translateY(8px)}.contact-form{grid-template-columns:1fr}}.site-footer{padding:var(--space-8) 0;text-align:center;letter-spacing:.02em}.site-footer a,.site-footer p{font-size:clamp(16px,3vw,20px);color:var(--color-text-light);text-decoration:none;margin:0}.site-footer a:hover{text-decoration:underline}.site-footer p{margin-top:var(--space-1)}.tippit-tea-page{font-family:var(--font-sans);color:var(--color-text);letter-spacing:.02em;padding-bottom:var(--space-10)}.tippit-tea-page .container{max-width:1000px;margin:0 auto;padding:0 var(--space-5)}.tippit-tea-page .section{padding:var(--space-10) 0;border-bottom:1px solid rgba(var(--color-text-rgb),.08)}.tippit-tea-page h2{font-size:clamp(40px,3vw,48px);margin-bottom:var(--space-5);margin-top:0}.tippit-tea-page p{font-size:clamp(20px,3vw,28px);line-height:1.8;letter-spacing:.02em;font-family:var(--font-sans);font-weight:var(--font-weight-medium);font-size:clamp(16px,4.2vw,24px);color:var(--color-text-light)}.section-fade{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}.section-fade.visible{opacity:1;transform:translateY(0)}.hero-tea{padding:var(--space-10) 0;text-align:center;border-bottom:1px solid rgba(var(--color-text-rgb),.08)}.hero-tea h1{font-size:clamp(36px,8vw,72px);max-width:800px;margin:var(--space-8) auto 0;line-height:1.2}.hero-carousel-placeholder,.image-placeholder,.design-grid-placeholder{background:var(--color-background-light);border:1px dashed rgba(var(--color-text-rgb),.2);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;overflow:hidden}.image-placeholder{aspect-ratio:16 / 9;margin-bottom:var(--space-1)}.image-placeholder img{width:100%;height:100%;object-fit:cover}.tippit-tea-page figcaption{font-style:italic;line-height:1.6;font-size:clamp(18px,3vw,22px);color:var(--color-text-gray);text-align:center;margin-top:var(--space-3);margin-bottom:var(--space-5)}h3{font-size:clamp(20px,4vw,28px);line-height:1.6;margin-bottom:var(--space-4);font-weight:var(--font-weight-bold)}a.hover-underline:hover{text-decoration:underline}.flowchart{display:flex;justify-content:center;align-items:center;text-align:center;margin-top:var(--space-5);font-size:clamp(20px,2.8vw,26px);color:var(--color-text-gray);flex-wrap:wrap;gap:var(--space-3)}.flowchart i{font-style:italic}.flowchart span{line-height:1.5}.results-layout{display:flex;align-items:center;gap:var(--space-8)}.results-text,.results-image{flex:1;min-width:0}.results-image img{width:100%;height:auto;border-radius:var(--radius-lg)}.results-list{list-style:none;padding-left:0;margin:0}.results-list li{font-size:clamp(16px,4.2vw,24px);letter-spacing:.02em;line-height:1.8;color:var(--color-text-light);font-weight:var(--font-weight-medium);margin-bottom:var(--space-3);padding-left:32px;position:relative}.results-list li:before{content:"✓";position:absolute;left:0;color:var(--color-primary);font-weight:700}@media (max-width: 767px){.results-layout{flex-direction:column-reverse}}.design-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);align-items:start}.grid-item{aspect-ratio:1 / 1;overflow:hidden;border-radius:var(--radius-lg)}.grid-item.tall{grid-row:span 2;aspect-ratio:1 / 2.06;align-items:center}.grid-item.tall img{object-fit:cover}.grid-item img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:transform .2s ease-in-out}.grid-item:hover img{transform:scale(1.05)}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lightbox-content{position:relative;max-width:80vw;max-height:90vh}.lightbox-content img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-lg)}.close-btn,.prev-btn,.next-btn{position:absolute;background:transparent;border:none;color:#fff;font-size:36px;cursor:pointer;transition:opacity .2s ease}.close-btn:hover,.prev-btn:hover,.next-btn:hover{opacity:.7}.close-btn{top:20px;right:30px;font-size:48px}.prev-btn{left:20px}.next-btn{right:20px}.hero-carousel-placeholder{padding:0;min-height:0}.tippittea-video{width:100%;height:100%;object-fit:cover}.design-grid-placeholder{min-height:500px}.cta-footer{padding:var(--space-10) 0 0 0;text-align:center;letter-spacing:.02em}.cta-footer .btn-primary{font-size:clamp(18px,3.5vw,24px);padding:12px 40px}.cta-footer p{font-size:clamp(16px,3vw,20px);font-weight:var(--font-weight-regular);color:var(--color-text-light);text-decoration:none;margin-top:var(--space-10);margin-bottom:0}.cta-footer a:hover{text-decoration:underline}
