.text-type{display:inline-block;white-space:pre-wrap}.text-type__cursor{margin-left:.08em;display:inline-block;opacity:1;animation:text-type-blink var(--text-type-blink, .5s) ease-in-out infinite alternate}.text-type__cursor--hidden{display:none}@keyframes text-type-blink{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.text-type__cursor{animation:none}}.circular-text{margin:0 auto;border-radius:50%;position:relative;font-weight:900;text-align:center;transform-origin:50% 50%;-webkit-transform-origin:50% 50%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.circular-text span{position:absolute;display:inline-block;left:0;right:0;top:0;bottom:0;transition:all .5s cubic-bezier(0,0,0,1)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Poppins,Noto Sans SC,-apple-system,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{scroll-behavior:smooth}body{font-family:Poppins,Noto Sans SC,-apple-system,sans-serif;--tw-text-opacity: 1;color:rgb(122 18 37 / var(--tw-text-opacity, 1));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-moz-selection{background-color:#f5a9c666;--tw-text-opacity: 1;color:rgb(122 18 37 / var(--tw-text-opacity, 1))}::selection{background-color:#f5a9c666;--tw-text-opacity: 1;color:rgb(122 18 37 / var(--tw-text-opacity, 1))}a,button,label,select,summary,[role=button],input[type=checkbox],input[type=radio],input[type=range],.cursor-pointer.cursor-pointer{cursor:url(/cursor.png) 4 0,pointer}.toolbox-wrap{width:min(1120px,94vw);margin:0 auto}.toolbox-heading{margin-bottom:34px}.toolbox-heading h2{margin-top:3px;color:#421d31;font-family:var(--heading-font);font-weight:900;line-height:.94;letter-spacing:-.035em}.toolbox-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:clamp(34px,5vw,72px);align-items:center}.toolbox-machine-wrap{min-width:0}.toolbox-machine-stage{position:relative;aspect-ratio:3 / 2;filter:drop-shadow(15px 17px 0 rgba(135,74,81,.22)) drop-shadow(0 20px 24px rgba(54,37,42,.16))}.toolbox-machine-image{position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;pointer-events:none}.toolbox-reels{position:absolute;z-index:2;top:36.15%;left:21.72%;display:grid;grid-template-columns:repeat(3,1fr);gap:2.08%;width:52.25%;height:32.42%;overflow:hidden}.tool-reel{position:relative;min-width:0;overflow:hidden;background:linear-gradient(90deg,#e8e0d3,#fffaf0 15%,#fffdf7,#fffaf0 85%,#dfd5c7);perspective:260px}.tool-reel:after{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none;background:linear-gradient(180deg,rgba(52,42,42,.3) 0%,rgba(79,65,64,.08) 20%,transparent 34%,transparent 66%,rgba(79,65,64,.08) 80%,rgba(52,42,42,.3) 100%);box-shadow:inset 6px 0 9px #3a2d2b1f,inset -6px 0 9px #3a2d2b1f}.tool-reel-track{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(-19%)}.tool-reel-track.is-spinning{animation:toolbox-reel-spin .36s linear infinite;animation-delay:var(--reel-delay)}.tool-reel-item{display:grid;place-items:center;width:100%;height:46%;opacity:.34;filter:blur(.35px) saturate(.76);transform:rotateX(27deg) scale(.64);transition:opacity .18s ease,filter .18s ease,transform .18s ease}.tool-reel-item:nth-child(4n+2){z-index:2;opacity:1;filter:none;transform:rotateX(0) scale(.98)}.tool-reel-item:nth-child(4n+1){transform-origin:50% 100%}.tool-reel-item:nth-child(4n+3){transform-origin:50% 0}.tool-app-icon{position:relative;display:grid;place-items:center;width:clamp(34px,3.8vw,52px);aspect-ratio:1;padding:clamp(5px,.55vw,8px);overflow:hidden;border:1px solid rgba(54,43,47,.12);border-radius:23%;background:var(--app-bg);box-shadow:0 3px #4d3d4152,0 5px 7px #32222624,inset 0 1px #ffffffb8}.tool-app-icon:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(145deg,rgba(255,255,255,.24),transparent 46%);content:"";pointer-events:none}.tool-app-icon img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.toolbox-lever-button{position:absolute;z-index:5;top:23%;right:6.7%;width:8.5%;height:39%;border:0;border-radius:999px;background:transparent;transform-origin:50% 79%}.toolbox-lever-button:not(:disabled):hover{transform:rotate(4deg)}.toolbox-lever-button:active{transform:rotate(11deg) translateY(4px)}.toolbox-lever-button:focus-visible{outline:3px dashed #b8214a;outline-offset:3px}.toolbox-lever-tip{position:absolute;z-index:6;top:12.5%;right:-1%;display:grid;justify-items:center;border:0;background:transparent;color:#7a1225;transform:rotate(4deg);transform-origin:50% 100%;animation:toolbox-pull-hint 1.65s ease-in-out infinite}.toolbox-lever-tip span{padding:7px 10px 6px;border:2px solid #7a1225;background:#f08fb6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(8px,.8vw,10px);font-weight:900;line-height:1;letter-spacing:.12em;white-space:nowrap;box-shadow:3px 3px #7a1225}.toolbox-lever-tip i{margin-top:3px;margin-right:18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:23px;font-style:normal;font-weight:900;line-height:.8}.toolbox-lever-tip.is-spinning{opacity:.55;animation:none}.toolbox-lever-tip:focus-visible span{outline:3px dashed #b8214a;outline-offset:3px}.toolbox-spin-hint{display:block;margin:-5px auto 0;padding:8px 13px;border:2px solid #7a1225;background:#f08fb6;color:#55142a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900;letter-spacing:.12em;box-shadow:4px 4px #7a1225;transform:rotate(-.7deg)}.toolbox-copy{color:#421d31}.toolbox-copy-kicker{display:flex;align-items:center;gap:9px;width:-moz-fit-content;width:fit-content;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:900;letter-spacing:.12em;color:#9f3d60}.toolbox-copy-kicker:before{width:8px;height:8px;border-radius:50%;background:#e96d86;box-shadow:0 0 0 4px #e96d8626;content:""}.toolbox-copy-kicker:after{width:clamp(30px,3.5vw,48px);height:1px;background:#7a12256b;content:""}.toolbox-copy h3{margin-top:27px;font-family:var(--heading-font);font-size:clamp(34px,4vw,53px);font-weight:900;line-height:1.05;letter-spacing:-.04em}.toolbox-copy>p:not(.toolbox-note){margin-top:20px;color:#421d31b8;font-size:15px;line-height:1.8}.toolbox-capabilities{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.toolbox-capabilities span{padding:7px 10px;border:1.5px solid rgba(122,18,37,.44);border-radius:999px;background:#fffaf2ad;color:#6f2948;font-size:11px;font-weight:700}.toolbox-note{margin-top:25px;color:#a84668;font-family:var(--hand-font);font-size:17px;transform:rotate(-1deg)}@keyframes toolbox-reel-spin{0%{transform:translateY(-19%)}to{transform:translateY(-203%)}}@keyframes toolbox-pull-hint{0%,to{transform:translateY(0) rotate(4deg)}45%{transform:translateY(5px) rotate(1deg)}65%{transform:translateY(2px) rotate(5deg)}}@media (max-width: 820px){.toolbox-layout{grid-template-columns:1fr;gap:38px}.toolbox-machine-wrap{width:min(680px,100%);margin:0 auto}.toolbox-copy{max-width:560px}.toolbox-copy h3 br{display:none}}@media (max-width: 520px){.toolbox-heading{margin-bottom:22px}.toolbox-layout{gap:28px}.toolbox-machine-stage{width:112%;margin-left:-6%}.toolbox-copy h3{font-size:32px}.tool-logo-figma{grid-template-columns:repeat(2,14px);grid-template-rows:repeat(3,14px)}.tool-logo-python,.tool-logo-database,.tool-logo-cursor{transform:scale(.72)}.toolbox-lever-tip{top:8%;right:-2%}.toolbox-lever-tip span{padding:5px 7px}.toolbox-lever-tip i{margin-right:12px;font-size:18px}}@media (prefers-reduced-motion: reduce){.tool-reel-track.is-spinning{animation-duration:.9s;animation-iteration-count:1}.toolbox-lever-tip{animation:none}}.portfolio-work-wrap{width:min(1160px,94vw)}.portfolio-work-wrap>header{margin-bottom:58px}.portfolio-work-wrap>header p{margin-top:16px;font-size:19px}.portfolio-category-title:first-of-type,.ai-web-browser{width:min(1020px,100%);margin-right:auto;margin-left:auto}.portfolio-category-title{display:flex;align-items:center;margin-bottom:18px;color:#421d31}.portfolio-category-title strong{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border:2px solid #7a1225;background:#f08fb6;color:#55142a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800;line-height:1;letter-spacing:.11em;box-shadow:4px 4px #7a1225;transform:rotate(-.5deg)}.ai-web-browser,.mini-program-lab,.skill-library-window{border:3px solid #641d44;box-shadow:13px 15px #7a12257a,0 28px 45px #27182438}.ai-web-browser{overflow:hidden;background:#f7b8d5}.ai-web-browser-tabs{display:flex;align-items:flex-end;min-height:50px;padding:8px 10px 0;border-bottom:2px solid #641d44;background:linear-gradient(90deg,#f8c9df,#ef95bf)}.ai-web-tab{display:flex;align-items:center;gap:8px;min-width:150px;padding:10px 14px 9px;border:2px solid transparent;border-bottom:0;color:#682344;font-size:13px;font-weight:900;opacity:.58}.ai-web-tab.is-active{border-color:#641d44;background:#fff9f1;opacity:1}.ai-web-tab-dot{width:9px;height:9px;border:1px solid #641d44;border-radius:50%}.ai-web-tab-close{margin-left:auto;font-family:monospace}.ai-web-toolbar{display:flex;align-items:center;gap:7px;padding:7px 10px;border-bottom:2px solid #641d44;background:#f7b8d5;color:#682344;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ai-web-tool{display:grid;place-items:center;width:27px;height:25px;border:1.5px solid #743054;background:#ffe6f1;font-size:18px;font-weight:900}.ai-web-address{min-width:0;flex:1;padding:6px 10px;overflow:hidden;border:1.5px solid #743054;background:#fffaf4;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.ai-web-page{display:grid;grid-template-columns:1.08fr .92fr;min-height:455px;overflow:hidden;background:radial-gradient(circle at 83% 30%,rgba(240,143,182,.2),transparent 30%),linear-gradient(135deg,#fffaf2,#f5eadf 62%,#eed9d9);animation:portfolio-page-in .32s ease-out both}@keyframes portfolio-page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ai-web-copy{align-self:center;padding:clamp(34px,4.5vw,58px)}.ai-web-eyebrow{margin-bottom:15px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:900;letter-spacing:.14em}.ai-web-copy h3{max-width:600px;color:#401d33;font-family:var(--heading-font);font-size:clamp(38px,4.6vw,60px);font-weight:950;line-height:.94;letter-spacing:-.04em;text-shadow:4px 4px 0 rgba(240,143,182,.55)}.ai-web-tagline{margin-top:24px;color:#7a1225;font-family:var(--heading-font);font-size:clamp(20px,2.1vw,29px);font-weight:900;line-height:1.15}.ai-web-description{max-width:610px;margin-top:14px;color:#2d2028b8;font-size:15px;font-weight:600;line-height:1.75}.ai-web-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px}.ai-web-tags span{padding:6px 10px;border:1.5px solid rgba(122,18,37,.36);border-radius:999px;color:#6a253b;background:#ffffff73;font-size:10px;font-weight:900;letter-spacing:.08em}.ai-web-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}.ai-action-primary,.ai-action-secondary,.ai-action-disabled,.mini-case-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;font-size:11px;font-weight:950;letter-spacing:.1em}.ai-action-primary,.mini-case-link{border:2px solid #55142a;background:#ef8fbd;color:#411829;box-shadow:4px 4px #55142a}.ai-action-secondary{border:2px solid #55142a;color:#55142a;background:#fffaf2}.ai-action-disabled{border:2px dashed rgba(85,20,42,.38);color:#55142a8c;background:#ffffff47}.ai-web-visual{position:relative;min-height:395px}.ai-orbit{position:absolute;border:2px dashed rgba(122,18,37,.24);border-radius:50%}.ai-orbit-one{top:12%;right:8%;bottom:12%;left:2%;animation:orbit-spin 18s linear infinite}.ai-orbit-two{top:24%;right:19%;bottom:23%;left:13%;animation:orbit-spin 14s linear infinite reverse}@keyframes orbit-spin{to{transform:rotate(360deg)}}.ai-flow-core{position:absolute;top:50%;left:48%;display:grid;place-items:center;width:132px;height:132px;transform:translate(-50%,-50%) rotate(-4deg);border:4px solid;border-radius:32% 68% 55% 45%/43% 43% 57% 57%;background:#4a3142;color:#fff7ec;box-shadow:9px 10px #7a122566}.ai-flow-core span{font-family:var(--heading-font);font-size:42px;font-weight:950;line-height:.8}.ai-flow-core strong{font-family:monospace;font-size:10px;letter-spacing:.12em}.ai-flow-node{position:absolute;width:126px;padding:15px 13px;border:2px solid #6d2947;background:#fffaf2;color:#4a2134;box-shadow:6px 7px #ef9dc4}.ai-flow-node small{display:block;color:#b8214a;font-family:monospace;font-weight:900}.ai-flow-node span{display:block;margin-top:4px;font-size:14px;font-weight:900}.mini-program-lab{display:grid;grid-template-columns:minmax(300px,.78fr) 1.22fr;gap:clamp(36px,6vw,80px);align-items:center;padding:clamp(34px,6vw,72px);background:linear-gradient(135deg,#f1c0d6,#f6eadf 48%,#c7d8ce)}.mini-phone-screen{overflow:hidden;min-height:520px;border:3px solid #632143;border-radius:27px;background:#fffaf2}.mini-app-nav{display:flex;justify-content:space-between;padding:13px 16px;border-bottom:1px solid #e6c8d3;color:#571b3a;font-size:13px;font-weight:900}.mini-app-hero{padding:23px 17px;background:linear-gradient(140deg,#7a1225,#b8214a);color:#fff5eb}.mini-app-hero small{font-size:10px;opacity:.72}.mini-app-hero strong{display:block;margin-top:8px;font-family:var(--heading-font);font-size:23px;line-height:1.15}.mini-app-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:15px}.mini-app-grid div{display:grid;gap:8px;min-height:78px;padding:12px;border:1.5px solid #d9a9bb;border-radius:13px;color:#5a243b;background:#fff8f2;font-size:12px;font-weight:900}.mini-app-grid div span{color:#d45b88;font-size:19px}.mini-lab-copy{color:#421d31}@keyframes status-pulse{50%{transform:scale(.72);opacity:.6}}.mini-lab-copy h3{margin-top:18px;font-family:var(--heading-font);font-size:clamp(44px,5.4vw,76px);font-weight:950;line-height:.95;letter-spacing:-.04em;text-shadow:4px 4px 0 #f08fb6}.mini-lab-tagline{margin-top:22px;color:#7a1225;font-family:var(--heading-font);font-size:25px;font-weight:900}.mini-lab-copy>p:not(.mini-lab-tagline){max-width:610px;margin-top:13px;color:#34232db3;font-size:15px;font-weight:600;line-height:1.75}.skill-library-sidebar nav span.is-active{border:2px solid #f08fb6;background:#f08fb6;color:#4e1530;opacity:1;box-shadow:4px 4px #321020}.skill-library-list{margin-top:18px;border-top:2px solid #d9b8c6}.skill-library-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;align-items:center;padding:26px 0;border-bottom:2px solid #dfc4ce}.skill-info{min-width:0;color:#401d31}.skill-info small{color:#b8214a;font-family:monospace;font-size:9px;font-weight:900;letter-spacing:.12em}.skill-info h3{margin-top:4px;font-family:var(--heading-font);font-size:25px;font-weight:950}.skill-info p{max-width:590px;margin-top:5px;color:#37232ea6;font-size:13px;line-height:1.55}.skill-info>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.skill-info>div span{padding:4px 7px;border-radius:999px;background:#f3d4e2;color:#7a2448;font-size:9px;font-weight:900}.skill-open-link{padding:10px 12px;border:2px solid #641d44;color:#641d44;background:#fffaf2;font-family:monospace;font-size:10px;font-weight:900;box-shadow:4px 4px #ef8fbd;white-space:nowrap}@media (max-width: 860px){.ai-web-page{grid-template-columns:1fr}.ai-web-copy{padding-bottom:20px}.ai-web-visual{min-height:360px}.mini-program-lab,.skill-library-window{grid-template-columns:1fr}.skill-library-sidebar{min-height:0;border-right:0;border-bottom:3px solid #641d44}.skill-library-sidebar nav{grid-template-columns:repeat(3,1fr);margin-top:25px}.skill-library-sidebar small{margin-top:25px}}@media (max-width: 600px){.portfolio-story-label{display:block}.portfolio-story-label p{margin-top:18px;text-align:left}.ai-web-browser-tabs{overflow-x:auto}.ai-web-tab{min-width:125px}.ai-web-window-controls{display:none}.ai-web-copy{padding:34px 24px 16px}.ai-web-visual{min-height:330px;transform:scale(.86);transform-origin:center}.ai-flow-node-1{left:0}.ai-flow-node-2{right:0}.ai-flow-node-3{right:4%}.portfolio-divider{margin:70px 0}.mini-program-lab{padding:34px 20px}.skill-library-main{padding:20px 16px}.skill-library-item{grid-template-columns:48px minmax(0,1fr)}.skill-icon{width:44px;height:44px}.skill-open-link{grid-column:2;justify-self:start}}.stamp{display:inline-flex;align-items:center;gap:.375rem;border-radius:9999px;border-width:2px;--tw-border-opacity: 1;border-color:rgb(122 18 37 / var(--tw-border-opacity, 1));padding:.375rem .75rem;font-size:.75rem;line-height:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;box-shadow:2px 2px #7a1225;transform:rotate(-2deg);transition:all .2s ease}.stamp:hover{transform:rotate(0) translate(-1px,-1px);box-shadow:3px 3px #7a1225}.press{--press-x: 5px;--press-y: 6px;--press-color: #7a1225;box-shadow:var(--press-x) var(--press-y) 0 var(--press-color);transition:transform .13s ease-out,box-shadow .13s ease-out}.press:hover{transform:translate(calc(var(--press-x) * .55),calc(var(--press-y) * .55));box-shadow:calc(var(--press-x) * .4) calc(var(--press-y) * .4) 0 var(--press-color)}.press:active{transform:translate(var(--press-x),var(--press-y));box-shadow:0 0 0 var(--press-color)}.underline-scribble{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M0,7 Q50,2 100,7 T200,7' stroke='%23B8214A' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:bottom;background-size:100% 8px;padding-bottom:8px}.portfolio-category-title:first-of-type,.ai-web-browser{width:min(1020px,100%)}.ai-web-browser{position:relative;aspect-ratio:1717 / 916;overflow:visible;border:0;background:transparent;box-shadow:none;filter:drop-shadow(10px 12px 0 rgba(122,18,37,.2)) drop-shadow(0 22px 26px rgba(39,24,36,.15))}.ai-web-browser-frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;-o-object-fit:fill;object-fit:fill;pointer-events:none}.ai-web-browser-tabs{position:absolute;top:2.75%;left:4.8%;z-index:3;align-items:center;width:52%;min-height:5.8%;padding:0;overflow:hidden;border:0;background:transparent}.ai-web-tab{min-width:0;max-width:205px;flex:1;height:37px;padding:7px 12px;border:1px solid rgba(65,65,65,.5);border-bottom-color:#2d2d2dad;border-radius:3px 3px 0 0;background:#e0e0ddc2;color:#4a3440;font-size:11px;font-weight:600;opacity:.68;box-shadow:inset 0 1px #ffffffb8}.ai-web-tab+.ai-web-tab{margin-left:5px}.ai-web-tab.is-active{border-color:#343434b8;background:#fffcf5f5;opacity:1;box-shadow:inset 0 1px #fff,0 2px #ffffffb3}.ai-web-tab-close{font-size:10px;font-weight:500}.ai-web-viewport{position:absolute;top:9.93%;right:2.45%;bottom:4.37%;left:2.45%;z-index:1;overflow:hidden;border:1px solid rgba(74,49,65,.38);background:#fffaf2}.ai-web-toolbar{height:38px;padding:5px 8px;border-bottom:1px solid rgba(100,29,68,.35);background:#e1e1deeb}.ai-web-tool{width:25px;height:24px;font-size:15px;border-color:#41414185;background:#f5f4ef}.ai-web-address{padding:5px 9px;font-size:9px;border-color:#4141417a;background:#fffdf8}.ai-web-page{height:calc(100% - 38px);min-height:0}.ai-web-copy{padding:clamp(28px,4vw,46px)}.ai-web-copy h3{font-size:clamp(34px,4.2vw,52px)}.ai-web-tagline{margin-top:18px;font-size:clamp(18px,2vw,24px)}.ai-web-description{font-size:13px}.ai-web-visual{min-height:0}@media (max-width: 700px){.ai-web-browser-tabs{width:61%}.ai-web-tab{height:30px;padding:5px 7px;font-size:9px}.ai-web-tab-close{display:none}.ai-web-page{grid-template-columns:1fr;overflow-y:auto}.ai-web-copy{padding:28px 22px 14px}.ai-web-visual{min-height:290px}}.portfolio-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:stretch;margin-top:92px}.portfolio-secondary-panel{display:flex;min-width:0;flex-direction:column}.portfolio-secondary-grid .mini-program-lab,.portfolio-secondary-grid .skill-library-window{flex:1;min-height:382px;box-shadow:9px 10px #7a12256b,0 20px 30px #27182429}.portfolio-secondary-grid .mini-program-lab{grid-template-columns:185px minmax(0,1fr);gap:24px;padding:28px}.portfolio-secondary-grid .mini-phone-shell{width:180px;padding:10px 7px 9px;border-width:3px;border-radius:28px;box-shadow:7px 8px #7a1225}.portfolio-secondary-grid .mini-phone-speaker{width:46px;height:4px;margin-bottom:7px}.portfolio-secondary-grid .mini-phone-screen{min-height:282px;border-width:2px;border-radius:18px}.portfolio-secondary-grid .mini-app-nav{padding:8px 9px;font-size:9px}.portfolio-secondary-grid .mini-app-hero{padding:14px 10px}.portfolio-secondary-grid .mini-app-hero small{font-size:7px}.portfolio-secondary-grid .mini-app-hero strong{font-size:15px}.portfolio-secondary-grid .mini-app-grid{gap:6px;padding:9px}.portfolio-secondary-grid .mini-app-grid div{min-height:55px;gap:3px;padding:7px;border-radius:8px;font-size:8px}.portfolio-secondary-grid .mini-app-grid div span{font-size:13px}.portfolio-secondary-grid .mini-lab-copy h3{margin-top:12px;font-size:clamp(30px,3.2vw,43px);line-height:.98;text-shadow:3px 3px 0 #f08fb6}.portfolio-secondary-grid .mini-lab-tagline{margin-top:15px;font-size:17px;line-height:1.25}.portfolio-secondary-grid .mini-case-link{min-height:36px;padding:8px 11px;font-size:9px}.portfolio-secondary-grid .skill-library-window{display:block;background:#fffaf2}.portfolio-secondary-grid .skill-library-list{margin:0;padding:0 21px;border:0}.portfolio-secondary-grid .skill-library-item{grid-template-columns:44px minmax(0,1fr) 34px;gap:13px;padding:24px 0}.portfolio-secondary-grid .skill-icon{width:42px;height:42px;box-shadow:3px 4px #7a1225;font-size:16px}.portfolio-secondary-grid .skill-info small{font-size:7px}.portfolio-secondary-grid .skill-info h3{font-size:20px}.portfolio-secondary-grid .skill-info p{display:-webkit-box;overflow:hidden;margin-top:4px;font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.portfolio-secondary-grid .skill-open-link{display:grid;place-items:center;width:30px;height:30px;padding:0;font-size:13px;box-shadow:3px 3px #ef8fbd}@media (max-width: 900px){.portfolio-secondary-grid{grid-template-columns:1fr;gap:58px}.portfolio-secondary-grid .mini-program-lab{grid-template-columns:185px minmax(0,1fr)}}@media (max-width: 560px){.portfolio-secondary-grid{margin-top:70px}.portfolio-secondary-grid .mini-program-lab{grid-template-columns:145px minmax(0,1fr);gap:15px;padding:20px 15px}.portfolio-secondary-grid .mini-phone-shell{width:140px}.portfolio-secondary-grid .mini-phone-screen{min-height:275px}.portfolio-secondary-grid .mini-lab-copy h3{font-size:27px}.portfolio-secondary-grid .mini-lab-tagline{font-size:14px}.mini-capability-tags{margin:13px 0 17px}.portfolio-secondary-grid .skill-library-list{padding:0 15px}}.portfolio-secondary-grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(42px,4vw,58px);align-items:center}.portfolio-secondary-panel{position:relative}.portfolio-secondary-grid .portfolio-compact-label{justify-content:flex-start;gap:12px;margin-bottom:26px}.portfolio-secondary-grid .portfolio-category-title{margin-bottom:24px}.portfolio-secondary-grid .portfolio-compact-label strong{color:#421d31;font-family:"Noto Serif SC",Georgia,serif;font-size:30px;font-weight:600;line-height:1;letter-spacing:-.02em}.portfolio-secondary-grid .portfolio-compact-label span{padding:4px 7px;border-width:1px;font-size:7px;font-weight:700;box-shadow:2px 2px #7a1225b8}.portfolio-secondary-grid .mini-program-lab{grid-template-columns:minmax(250px,292px) minmax(0,1fr);gap:25px;min-height:0;padding:0;overflow:visible;border:0;background:transparent;box-shadow:none}.mini-phone-device{position:relative;width:min(292px,100%);aspect-ratio:699 / 1439;margin:0 auto;filter:drop-shadow(9px 12px 0 rgba(122,18,37,.2)) drop-shadow(0 16px 18px rgba(48,25,38,.14));transform:rotate(-1.2deg);transition:transform .22s ease}.mini-phone-device:hover{transform:rotate(-.8deg) translateY(-5px)}.mini-phone-frame{position:absolute;top:-3.13%;left:50%;z-index:2;width:auto;height:106.32%;max-width:none;transform:translate(-50%);pointer-events:none}.portfolio-secondary-grid .mini-phone-screen{position:absolute;z-index:1;top:2.71%;right:7.15%;bottom:2.78%;left:7.58%;min-height:0;overflow:hidden;border:0;border-radius:11%/5%;background:#fffaf2}.portfolio-secondary-grid .mini-app-nav{padding:15px 14px 10px;font-size:10px}.portfolio-secondary-grid .mini-app-hero{padding:28px 17px}.portfolio-secondary-grid .mini-app-hero small{font-size:8px}.portfolio-secondary-grid .mini-app-hero strong{font-size:18px;font-weight:600;line-height:1.35}.portfolio-secondary-grid .mini-app-grid{gap:9px;padding:14px}.portfolio-secondary-grid .mini-app-grid div{min-height:76px;padding:10px;border-radius:10px;font-size:10px;font-weight:600}.portfolio-secondary-grid .mini-lab-copy h3{margin-top:0;font-family:"Noto Serif SC",Georgia,serif;font-size:clamp(25px,2.2vw,31px);font-weight:600;line-height:1.14;letter-spacing:-.03em;text-shadow:none;white-space:nowrap}.portfolio-secondary-grid .mini-lab-tagline{margin-top:12px;color:#421d31c7;font-family:Poppins,Noto Sans SC,-apple-system,sans-serif;font-size:14px;font-weight:500;line-height:1.55}.portfolio-secondary-grid .mini-status{gap:7px;font-size:8px;font-weight:700}.portfolio-secondary-grid .mini-status span{width:7px;height:7px;box-shadow:0 0 0 3px #e64d6221}.portfolio-secondary-grid .mini-capability-tags{gap:5px;margin:18px 0 20px}.portfolio-secondary-grid .mini-capability-tags span{padding:5px 7px;font-size:8px;font-weight:600}.portfolio-secondary-grid .mini-case-link{min-height:0;margin-top:22px;padding:0 0 3px;border:0;border-bottom:1px solid currentColor;background:transparent;box-shadow:none;color:#7a1225;font-size:11px;font-weight:600;letter-spacing:.04em}.skill-list-sheet{position:relative;box-sizing:border-box;min-height:0;aspect-ratio:1412 / 1114;padding:0;overflow:visible;border:0;background:transparent;color:#421d31;box-shadow:none;transform:none}.skill-list-sheet:before{content:none}.skill-manager-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(8px 11px 0 rgba(122,18,37,.18)) drop-shadow(0 18px 20px rgba(39,24,36,.12));pointer-events:none}.portfolio-secondary-grid .skill-library-list{position:absolute;z-index:1;top:19.75%;right:7.65%;bottom:16.7%;left:12.46%;display:grid;grid-template-rows:repeat(4,1fr);gap:2.65%;margin:0;padding:0;border-top:0;transform:none;background:linear-gradient(#fffaf2e0 0,#fffaf2e0 0) 0 0 / 100% 23% no-repeat,linear-gradient(#fffaf2e0 0,#fffaf2e0 0) 0 33.34% / 100% 23% no-repeat,linear-gradient(#fffaf2e0 0,#fffaf2e0 0) 0 66.67% / 100% 23% no-repeat,linear-gradient(#fffaf2e0 0,#fffaf2e0 0) 0 100% / 100% 23% no-repeat}.portfolio-secondary-grid .skill-library-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px;align-items:center;min-height:0;padding:13px 18px;border-bottom:0;background:#fffaf2e0;color:inherit;transition:padding .16s ease,background .16s ease,transform .16s ease}.portfolio-secondary-grid .skill-library-item:hover{padding-right:21px;padding-left:21px;background:#fffaf2fa;transform:translate(2px)}.portfolio-secondary-grid .skill-info small{color:#8e294fc2;font-size:7px;font-weight:700}.portfolio-secondary-grid .skill-info h3{margin-top:0;font-family:Georgia,Times New Roman,"Noto Serif SC",serif;font-size:clamp(17px,1.55vw,21px);font-weight:600;line-height:1.15;letter-spacing:-.025em;white-space:nowrap}.portfolio-secondary-grid .skill-info p{display:block;max-width:none;margin-top:4px;overflow:visible;color:#37232eb3;font-size:10px;font-weight:400;line-height:1.65}.portfolio-secondary-grid .skill-open-link{display:inline;width:auto;height:auto;padding:0;border:0;background:transparent;box-shadow:none;color:#8e294f;font-size:8px;font-weight:700;letter-spacing:.08em}@media (max-width: 900px){.portfolio-secondary-grid{grid-template-columns:1fr;gap:78px}.portfolio-secondary-grid .mini-program-lab{grid-template-columns:minmax(290px,.8fr) minmax(220px,1fr)}.mini-phone-device{width:292px}}@media (max-width: 560px){.portfolio-secondary-grid .mini-program-lab{grid-template-columns:190px minmax(0,1fr);gap:14px;padding:0}.mini-phone-device{width:190px}.portfolio-secondary-grid .mini-phone-screen{min-height:0}.portfolio-secondary-grid .mini-app-nav{padding:7px 6px 5px;font-size:5px}.portfolio-secondary-grid .mini-app-hero{padding:10px 6px}.portfolio-secondary-grid .mini-app-hero small{font-size:4px}.portfolio-secondary-grid .mini-app-hero strong{font-size:7px}.portfolio-secondary-grid .mini-app-grid{gap:3px;padding:5px}.portfolio-secondary-grid .mini-app-grid div{min-height:27px;padding:3px;font-size:4px}.portfolio-secondary-grid .mini-app-grid div span{font-size:8px}.portfolio-secondary-grid .mini-lab-copy h3{font-size:23px}.portfolio-secondary-grid .mini-lab-tagline{font-size:12px}.mini-capability-tags span{font-size:7px}.portfolio-secondary-grid .skill-library-item{grid-template-columns:minmax(0,1fr) auto;gap:8px}.portfolio-secondary-grid .skill-info h3{font-size:14px}.portfolio-secondary-grid .skill-info p{font-size:8px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-x-\[2\%\]{left:2%;right:2%}.-bottom-11{bottom:-2.75rem}.-bottom-2\.5{bottom:-.625rem}.-bottom-\[16\%\]{bottom:-16%}.-left-4{left:-1rem}.-left-\[26\%\]{left:-26%}.-left-\[30\%\]{left:-30%}.-left-\[4\%\]{left:-4%}.-right-2\.5{right:-.625rem}.-right-\[27\%\]{right:-27%}.-right-\[29\%\]{right:-29%}.-top-2\.5{top:-.625rem}.-top-\[18px\]{top:-18px}.-top-\[76px\]{top:-76px}.bottom-1\.5{bottom:.375rem}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.bottom-\[60px\]{bottom:60px}.left-0{left:0}.left-1\/2{left:50%}.left-10{left:2.5rem}.left-2\.5{left:.625rem}.left-3{left:.75rem}.left-\[28\.5\%\]{left:28.5%}.left-\[34\%\]{left:34%}.left-\[4\%\]{left:4%}.left-\[52\%\]{left:52%}.right-0{right:0}.right-4{right:1rem}.right-8{right:2rem}.right-\[1\%\]{right:1%}.right-\[132px\]{right:132px}.top-0{top:0}.top-1\.5{top:.375rem}.top-\[12\%\]{top:12%}.top-\[20\.5\%\]{top:20.5%}.top-\[30\.5\%\]{top:30.5%}.top-\[38\%\]{top:38%}.top-\[4\%\]{top:4%}.top-\[53\%\]{top:53%}.top-\[55\%\]{top:55%}.top-\[72\%\]{top:72%}.top-\[76\%\]{top:76%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[2\]{z-index:2}.z-\[4\]{z-index:4}.mx-auto{margin-left:auto;margin-right:auto}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-9{margin-top:2.25rem}.mt-\[3\%\]{margin-top:3%}.mt-\[4\%\]{margin-top:4%}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[2\/3\]{aspect-ratio:2/3}.aspect-\[37\/40\]{aspect-ratio:37/40}.aspect-\[4\/5\]{aspect-ratio:4/5}.aspect-\[67\/75\]{aspect-ratio:67/75}.h-0{height:0px}.h-2{height:.5rem}.h-20{height:5rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-\[29\%\]{height:29%}.h-\[300px\]{height:300px}.h-\[48\%\]{height:48%}.h-full{height:100%}.min-h-\[0\.95em\]{min-height:.95em}.min-h-\[1\.02em\]{min-height:1.02em}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-2{width:.5rem}.w-20{width:5rem}.w-36{width:9rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[108\%\]{width:108%}.w-\[112\%\]{width:112%}.w-\[170px\]{width:170px}.w-\[30\%\]{width:30%}.w-\[46\%\]{width:46%}.w-\[47\%\]{width:47%}.w-\[48\%\]{width:48%}.w-\[86\%\]{width:86%}.w-\[min\(1020px\,92vw\)\]{width:min(1020px,92vw)}.w-\[min\(1120px\,92vw\)\]{width:min(1120px,92vw)}.w-\[min\(700px\,90vw\)\]{width:min(700px,90vw)}.w-\[min\(880px\,92vw\)\]{width:min(880px,92vw)}.w-full{width:100%}.min-w-\[300px\]{min-width:300px}.max-w-2xl{max-width:42rem}.max-w-\[1240px\]{max-width:1240px}.max-w-\[190px\]{max-width:190px}.max-w-\[460px\]{max-width:460px}.max-w-\[560px\]{max-width:560px}.max-w-\[76px\]{max-width:76px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-2{--tw-rotate: -2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-6{--tw-rotate: -6deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-\[8deg\]{--tw-rotate: -8deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[-2deg\]{--tw-rotate: -2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[2deg\]{--tw-rotate: 2deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-\[1\.2\]{--tw-scale-x: 1.2;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-marquee{animation:marquee 20s linear infinite}.cursor-pointer{cursor:pointer}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-10{gap:2.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-y-2{row-gap:.5rem}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-9>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.25rem * var(--tw-space-y-reverse))}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded-\[3px\]{border-radius:3px}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-\[\#7A1225\]\/40{border-color:#7a122566}.border-brick{--tw-border-opacity: 1;border-color:rgb(184 33 74 / var(--tw-border-opacity, 1))}.border-cream-light\/50{border-color:#fdf7ec80}.border-ink{--tw-border-opacity: 1;border-color:rgb(122 18 37 / var(--tw-border-opacity, 1))}.border-ink\/25{border-color:#7a122540}.bg-\[\#F2C8D4\]{--tw-bg-opacity: 1;background-color:rgb(242 200 212 / var(--tw-bg-opacity, 1))}.bg-brick{--tw-bg-opacity: 1;background-color:rgb(184 33 74 / var(--tw-bg-opacity, 1))}.bg-cream{--tw-bg-opacity: 1;background-color:rgb(246 237 221 / var(--tw-bg-opacity, 1))}.bg-cream-deep{--tw-bg-opacity: 1;background-color:rgb(248 241 228 / var(--tw-bg-opacity, 1))}.bg-cream-light{--tw-bg-opacity: 1;background-color:rgb(253 247 236 / var(--tw-bg-opacity, 1))}.bg-ink{--tw-bg-opacity: 1;background-color:rgb(122 18 37 / var(--tw-bg-opacity, 1))}.bg-mustard\/70{background-color:#e8c15ab3}.bg-cover{background-size:cover}.bg-center{background-position:center}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-\[30px\]{padding-left:30px;padding-right:30px}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-\[15px\]{padding-top:15px;padding-bottom:15px}.pb-10{padding-bottom:2.5rem}.pb-24{padding-bottom:6rem}.pb-5{padding-bottom:1.25rem}.pb-8{padding-bottom:2rem}.pb-9{padding-bottom:2.25rem}.pl-6{padding-left:1.5rem}.pr-\[18\%\]{padding-right:18%}.pt-14{padding-top:3.5rem}.pt-16{padding-top:4rem}.pt-20{padding-top:5rem}.pt-7{padding-top:1.75rem}.pt-\[3\%\]{padding-top:3%}.pt-\[4\%\]{padding-top:4%}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-hand{font-family:Yellowtail,cursive}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-serif{font-family:Poppins,Noto Sans SC,Georgia,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[clamp\(13px\,1\.55vw\,21px\)\]{font-size:clamp(13px,1.55vw,21px)}.text-\[clamp\(17px\,1\.9vw\,25px\)\]{font-size:clamp(17px,1.9vw,25px)}.text-\[clamp\(19px\,2\.1vw\,28px\)\]{font-size:clamp(19px,2.1vw,28px)}.text-\[clamp\(34px\,5\.5vw\,64px\)\]{font-size:clamp(34px,5.5vw,64px)}.text-\[clamp\(3px\,\.34vw\,5px\)\]{font-size:clamp(3px,.34vw,5px)}.text-\[clamp\(4\.5px\,\.38vw\,5\.5px\)\]{font-size:clamp(4.5px,.38vw,5.5px)}.text-\[clamp\(40px\,6\.4vw\,92px\)\]{font-size:clamp(40px,6.4vw,92px)}.text-\[clamp\(52px\,7\.8vw\,108px\)\]{font-size:clamp(52px,7.8vw,108px)}.text-\[clamp\(58px\,11\.5vw\,168px\)\]{font-size:clamp(58px,11.5vw,168px)}.text-\[clamp\(5px\,\.42vw\,6px\)\]{font-size:clamp(5px,.42vw,6px)}.text-\[clamp\(9px\,1vw\,14px\)\]{font-size:clamp(9px,1vw,14px)}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[0\.82\]{line-height:.82}.leading-\[0\.85\]{line-height:.85}.leading-\[0\.95\]{line-height:.95}.leading-\[0\.9\]{line-height:.9}.leading-\[1\.02\]{line-height:1.02}.leading-\[1\.6\]{line-height:1.6}.leading-\[1\.7\]{line-height:1.7}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.06em\]{letter-spacing:-.06em}.tracking-\[-0\.07em\]{letter-spacing:-.07em}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#7A1225\]{--tw-text-opacity: 1;color:rgb(122 18 37 / var(--tw-text-opacity, 1))}.text-brick{--tw-text-opacity: 1;color:rgb(184 33 74 / var(--tw-text-opacity, 1))}.text-cream-light{--tw-text-opacity: 1;color:rgb(253 247 236 / var(--tw-text-opacity, 1))}.text-ink{--tw-text-opacity: 1;color:rgb(122 18 37 / var(--tw-text-opacity, 1))}.text-ink\/30{color:#7a12254d}.text-ink\/40{color:#7a122566}.text-ink\/60{color:#7a122599}.text-ink\/65{color:#7a1225a6}.text-ink\/70{color:#7a1225b3}.text-ink\/85{color:#7a1225d9}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-\[3px_4px_0_rgba\(122\,18\,37\,\.14\)\]{--tw-shadow: 3px 4px 0 rgba(122,18,37,.14);--tw-shadow-colored: 3px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-\[9px_12px_0_rgba\(122\,18\,37\,\.16\)\]{--tw-drop-shadow: drop-shadow(9px 12px 0 rgba(122,18,37,.16));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.film-strip-divider{--film-frame-step: 108px;--film-roll-distance: -216px;--film-roll-duration: 5.8s;position:absolute;left:50%;top:0;width:100%;height:clamp(34px,3.8vw,48px);transform:translate(-50%,-50%);overflow:hidden;pointer-events:none;background:linear-gradient(180deg,#390314a3,#7a122514 17%,#de5b7d17 48%,#56071c57 83%,#300211b3),radial-gradient(ellipse at 16% 52%,rgba(245,169,198,.16) 0%,transparent 11%),radial-gradient(ellipse at 61% 42%,rgba(253,217,194,.1) 0%,transparent 8%),repeating-linear-gradient(90deg,#5b081d2e 0,#5b081d2e 92px,#901a3429 92px,#901a3429 184px),#7a1225;border-top:1px solid rgba(66,4,22,.82);border-bottom:1px solid rgba(58,3,19,.86);box-shadow:inset 0 1px #ffdccd14,inset 0 -1px #26000c52,0 2px 5px #580a1c21}.film-strip-divider:before,.film-strip-divider:after{content:"";position:absolute;z-index:2;left:0;width:100%;height:clamp(5px,.5vw,6px);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='6' viewBox='0 0 18 6'%3E%3Crect x='6' y='1' width='6' height='4' rx='1' fill='%23F8E7CC' fill-opacity='.9'/%3E%3C/svg%3E");background-size:18px 6px;background-repeat:repeat-x;filter:drop-shadow(0 .5px 0 rgba(42,0,12,.5))}.film-strip-divider:before{top:2px;background-position-x:2px}.film-strip-divider:after{bottom:2px;background-position-x:9px}.film-strip-divider:before{animation:film-holes-top var(--film-roll-duration) linear infinite}.film-strip-divider:after{animation:film-holes-bottom var(--film-roll-duration) linear infinite}.film-strip-divider__frames{position:absolute;inset:clamp(10px,1.05vw,13px) 0;background:repeating-linear-gradient(90deg,transparent 0 var(--film-frame-step),rgba(249,194,205,.18) var(--film-frame-step) calc(var(--film-frame-step) + 1px)),linear-gradient(90deg,#ffd2ca06 0,#ffd2ca06 50%,#3201110d 50%,#3201110d);background-size:auto,calc(var(--film-frame-step) * 2) 100%;border-top:1px solid rgba(248,198,199,.1);border-bottom:1px solid rgba(62,3,21,.32);box-shadow:inset 0 0 7px #2d000e3d;animation:film-frames-roll var(--film-roll-duration) linear infinite}.film-strip-divider__frames:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.32;background-image:radial-gradient(rgba(255,225,204,.16) .45px,transparent .65px);background-size:4px 3px;mix-blend-mode:screen;animation:film-grain-drift .7s steps(2,end) infinite}.film-strip-divider__frames:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.38;background:linear-gradient(91deg,transparent 0 27%,rgba(255,222,205,.22) 27.08%,transparent 27.18%),linear-gradient(89deg,transparent 0 72%,rgba(57,1,18,.34) 72.08%,transparent 72.2%),linear-gradient(176deg,transparent 0 47%,rgba(255,210,198,.12) 47.2%,transparent 47.7%);background-size:100% 100%;background-repeat:repeat-x;animation:film-scratches-roll var(--film-roll-duration) linear infinite}@keyframes film-holes-top{0%{background-position-x:2px}to{background-position-x:calc(2px + var(--film-roll-distance))}}@keyframes film-holes-bottom{0%{background-position-x:9px}to{background-position-x:calc(9px + var(--film-roll-distance))}}@keyframes film-frames-roll{0%{background-position:0 0,0 0}to{background-position:var(--film-roll-distance) 0,var(--film-roll-distance) 0}}@keyframes film-scratches-roll{0%{background-position:0 0,0 0,0 0}to{background-position:var(--film-roll-distance) 0,var(--film-roll-distance) 0,var(--film-roll-distance) 0}}@keyframes film-grain-drift{0%{background-position:0 0}50%{background-position:-3px 2px}to{background-position:2px -2px}}@media (max-width: 640px){.film-strip-divider{--film-frame-step: 84px;--film-roll-distance: -168px;width:100%;height:32px}.film-strip-divider:before,.film-strip-divider:after{height:4px;background-size:14px 4px}.film-strip-divider__frames{top:9px;right:0;bottom:9px;left:0}}@media (prefers-reduced-motion: reduce){.film-strip-divider:before,.film-strip-divider:after,.film-strip-divider__frames,.film-strip-divider__frames:before,.film-strip-divider__frames:after{animation:none}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(248 241 228 / var(--tw-bg-opacity, 1))}::-webkit-scrollbar-thumb{border-radius:9999px;background-color:#b8214a99}::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(184 33 74 / var(--tw-bg-opacity, 1))}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-0:hover{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:text-peach:hover{--tw-text-opacity: 1;color:rgb(245 169 198 / var(--tw-text-opacity, 1))}@media (prefers-reduced-motion: reduce){.motion-reduce\:animate-none{animation:none}}@media (min-width: 640px){.sm\:block{display:block}.sm\:w-40{width:10rem}.sm\:w-\[260px\]{width:260px}.sm\:flex-row{flex-direction:row}}@media (min-width: 768px){.md\:right-12{right:3rem}.md\:mb-14{margin-bottom:3.5rem}.md\:mb-20{margin-bottom:5rem}.md\:block{display:block}.md\:h-\[380px\]{height:380px}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-10{gap:2.5rem}.md\:gap-12{gap:3rem}.md\:p-10{padding:2.5rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:py-14{padding-top:3.5rem;padding-bottom:3.5rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-24{padding-top:6rem;padding-bottom:6rem}.md\:pb-10{padding-bottom:2.5rem}.md\:pb-14{padding-bottom:3.5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-28{padding-bottom:7rem}.md\:pt-16{padding-top:4rem}.md\:pt-20{padding-top:5rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-\[15px\]{font-size:15px}.md\:text-\[17px\]{font-size:17px}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:translate-x-3{--tw-translate-x: .75rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-\[minmax\(360px\,\.9fr\)_minmax\(520px\,1\.1fr\)\]{grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr)}.lg\:justify-self-end{justify-self:end}}@media (min-width: 1280px){.xl\:absolute{position:absolute}.xl\:bottom-10{bottom:2.5rem}.xl\:bottom-2\.5{bottom:.625rem}.xl\:bottom-3{bottom:.75rem}.xl\:left-4{left:1rem}.xl\:left-\[18px\]{left:18px}.xl\:left-\[var\(--hero-photo-bleed\)\]{left:var(--hero-photo-bleed)}.xl\:right-\[var\(--hero-photo-bleed\)\]{right:var(--hero-photo-bleed)}.xl\:top-1\.5{top:.375rem}.xl\:z-\[2\]{z-index:2}.xl\:z-\[4\]{z-index:4}.xl\:mb-20{margin-bottom:5rem}.xl\:mt-0{margin-top:0}.xl\:block{display:block}.xl\:w-\[190px\]{width:190px}.xl\:w-\[var\(--hero-photo-w\)\]{width:var(--hero-photo-w)}.xl\:max-w-none{max-width:none}.xl\:translate-x-6{--tw-translate-x: 1.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.xl\:gap-12{gap:3rem}.xl\:p-3\.5{padding:.875rem}.xl\:p-\[15px\]{padding:15px}.xl\:pb-\[46px\]{padding-bottom:46px}.xl\:pb-\[52px\]{padding-bottom:52px}.xl\:text-2xl{font-size:1.5rem;line-height:2rem}.xl\:text-\[13px\]{font-size:13px}}
