@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_73ee6c{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_73ee6c{--font-manrope:"Manrope","Manrope Fallback"}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_07d15b{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_07d15b{--font-cormorant:"Cormorant Garamond","Cormorant Garamond Fallback"}:root{--background:#f5f3ee;--surface:rgba(255,255,255,0.82);--surface-strong:#ffffff;--line:rgba(17,24,39,0.1);--line-strong:rgba(17,24,39,0.18);--text:#161616;--text-soft:#525252;--accent:#b86e3b;--accent-soft:rgba(184,110,59,0.12);--shadow:0 24px 60px rgba(17,24,39,0.08);--radius-lg:32px;--radius-md:22px;--radius-sm:14px;--container:1160px;--font-sans:var(--font-manrope),"Hiragino Sans","Yu Gothic",sans-serif;--font-display:var(--font-cormorant),"Hiragino Mincho ProN","Yu Mincho",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(184,110,59,.1),transparent 24%),linear-gradient(180deg,#f7f5f0,#f4f2ed 48%,#f8f7f3);color:var(--text);font-family:var(--font-sans);line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}::selection{background:rgba(184,110,59,.22)}.page-shell{position:relative;overflow:clip}.page-shell:after,.page-shell:before{content:"";position:fixed;width:360px;height:360px;border-radius:999px;background:rgba(255,255,255,.5);filter:blur(20px);pointer-events:none;z-index:-1}.page-shell:before{top:10%;right:-140px}.page-shell:after{bottom:12%;left:-180px}.container{width:min(calc(100% - 40px),var(--container));margin:0 auto}.section{padding:112px 0}.section-heading{display:grid;grid-gap:18px;gap:18px;margin-bottom:48px}.section-heading__eyebrow{font-size:.85rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.section-heading h2{margin:0;font-family:var(--font-display);font-size:clamp(2.75rem,6vw,4.8rem);font-weight:600;letter-spacing:-.03em;line-height:.95}.section-heading p{max-width:640px;margin:0;font-size:1.05rem;color:var(--text-soft)}.card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.chip-list{display:flex;flex-wrap:wrap;gap:12px}.chip{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.88);color:var(--text-soft);font-size:.95rem;line-height:1}.chip__icon{width:18px;height:18px;flex:0 0 18px}.button-row{display:flex;flex-wrap:wrap;gap:14px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;border:1px solid transparent;transition:transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--text);color:#fff}.button--secondary{border-color:var(--line-strong);background:rgba(255,255,255,.72)}.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--reveal-delay,0s)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero-copy{opacity:0;transform:translateY(22px);animation:heroFade .9s ease forwards}.hero-copy:nth-child(2){animation-delay:.14s}.hero-copy:nth-child(3){animation-delay:.24s}@keyframes heroFade{to{opacity:1;transform:translateY(0)}}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:18px 0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(247,245,240,.72);border-bottom:1px solid rgba(17,24,39,.06)}.site-footer__inner,.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.site-header__brand{font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.site-header__nav{display:flex;align-items:center;gap:24px;color:var(--text-soft)}.site-header__nav a{position:relative}.site-header__nav a:after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.site-header__nav a:hover:after{transform:scaleX(1)}.site-footer{padding:32px 0 56px;color:var(--text-soft)}.site-footer__inner{padding-top:24px;border-top:1px solid var(--line)}.hero{padding-top:72px}.hero__layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.85fr);grid-gap:28px;gap:28px;align-items:end}.hero__eyebrow{display:inline-block;margin-bottom:18px;color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;font-weight:700}.hero__title{margin:0;font-family:var(--font-display);font-size:clamp(3.9rem,10vw,7.5rem);font-weight:600;line-height:.92;letter-spacing:-.05em}.hero__description{max-width:620px;margin:28px 0 0;font-size:1.12rem;color:var(--text-soft)}.hero__cta-row{margin-top:32px}.hero__visual{display:grid;grid-gap:20px;gap:20px;padding:28px}.hero__visual-header{display:grid;grid-gap:8px;gap:8px}.hero__visual-title{margin:0;color:var(--text);font-size:1rem;font-weight:700}.hero__visual-caption{margin:0;color:var(--text-soft);font-size:.95rem}.hero__preview-card{border:1px solid var(--line);border-radius:calc(var(--radius-sm) + 2px);background:rgba(255,255,255,.9);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease;.hero__all-link:hover,.hero__preview-card:hover{transform:translateY(-2px)}}.hero__visual-grid{display:grid;grid-gap:12px;gap:12px}.hero__preview-card{display:grid;grid-gap:14px;gap:14px;padding:18px 20px}.hero__preview-body{display:grid;grid-gap:8px;gap:8px}.hero__preview-body h2{margin:0;font-size:1.25rem;line-height:1.2}.hero__preview-body p{margin:0;font-size:.92rem;line-height:1.55;color:var(--text-soft)}.hero__preview-meta,.product-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.product-card__meta .product-card__category{margin-bottom:0}.hero__preview-category{color:var(--accent);font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero__all-link{display:inline-flex;align-items:center;gap:10px;justify-self:flex-start;padding-bottom:4px;border-bottom:1px solid;color:var(--text-soft);transition:transform .18s ease,color .18s ease}.hero__panel{padding:30px}.hero__panel-grid{display:grid;grid-gap:24px;gap:24px}.hero__panel-grid span,.product-card__category,.product-detail__category{display:inline-block;margin-bottom:10px;color:var(--accent);font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero__panel-grid strong{display:block;font-size:1.2rem;line-height:1.4}.profile-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-gap:24px;gap:24px}.detail-panel,.profile-card{padding:30px}.profile-card__role{margin:0 0 18px;color:var(--accent);font-size:.92rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.detail-panel li,.profile-body p,.profile-card__lead,.skills-note p{margin:0;color:var(--text-soft);font-size:1.02rem}.profile-body{display:grid;grid-gap:20px;gap:20px;align-content:start;padding:10px 8px}.profile-career{margin-top:8px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);background:rgba(255,255,255,.58)}.profile-career h3{margin:0;color:var(--accent);font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.profile-career ul{margin:12px 0 0;padding-left:18px;display:grid;grid-gap:10px;gap:10px}.profile-career li{color:var(--text-soft);font-size:.96rem;line-height:1.7}.products-grid,.skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.skill-card{display:grid;grid-gap:18px;gap:18px;padding:28px}.skill-card--centered{grid-template-rows:auto auto 1fr}.skill-card--centered .chip-list{align-self:center;justify-content:center}.skill-card__title{margin:0;font-size:1.25rem;font-weight:700}.skill-card__description{margin:0;color:var(--text-soft)}.skills-note{margin-top:24px}.product-card__problem{margin:0;color:var(--text-soft);font-size:.94rem;line-height:1.6}.products-section__footer{margin-top:32px}.contact-shell{display:grid;grid-gap:18px;gap:18px;padding:36px}.contact-heading{margin-bottom:0}.contact-lead,.contact-note,.contact-status{margin:0;color:var(--text-soft)}.contact-note{font-size:.96rem}.contact-form{display:grid;grid-gap:16px;gap:16px;margin-top:8px}.form-field{display:grid;grid-gap:8px;gap:8px}.form-field span{color:var(--text);font-size:.95rem;font-weight:700}.form-field em,.form-field small{color:var(--accent);font-style:normal;font-weight:700}.form-field input,.form-field textarea{width:100%;padding:15px 16px;border:1px solid var(--line-strong);border-radius:16px;background:rgba(255,255,255,.88);color:var(--text);font:inherit;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.form-field textarea{min-height:180px;resize:vertical}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:rgba(184,110,59,.42);box-shadow:0 0 0 4px rgba(184,110,59,.12);background:#fff}.contact-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:4px}.contact-submit{cursor:pointer}.product-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;background:var(--text);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.product-card{overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.product-card:hover{transform:translateY(-4px);border-color:rgba(184,110,59,.26);box-shadow:0 24px 56px rgba(17,24,39,.12)}.product-card__link{display:block}.product-card__image,.product-detail__cover,.product-detail__shot{position:relative;overflow:hidden}.product-card__image{aspect-ratio:4/3;border-bottom:1px solid var(--line)}.product-card__body{display:grid;grid-gap:14px;gap:14px;padding:24px}.product-app-icon,.product-detail__icon{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 12px 30px rgba(17,24,39,.08)}.product-app-icon{width:72px;height:72px}.detail-panel h2,.product-card__body h3{margin:0;font-family:var(--font-display);font-size:2rem;line-height:1}.product-card__body p{margin:0;color:var(--text-soft)}.product-card__cta{font-weight:700}.product-detail__hero{padding-top:72px}.product-detail__hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);grid-gap:40px;gap:40px;align-items:start}.product-detail__hero-grid>*,.product-detail__intro{min-width:0}.product-detail__hero h1{margin:0 0 22px;font-family:var(--font-display);font-size:clamp(3rem,8vw,5.4rem);line-height:.95;letter-spacing:-.04em;overflow-wrap:anywhere}.product-detail__icon{width:88px;height:88px;margin-bottom:18px}.product-detail__hero p{max-width:720px;margin:0 0 28px;color:var(--text-soft);font-size:1.06rem}.product-detail__links{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}.product-detail__cover{width:100%;min-height:420px}.product-detail__cover-image{object-fit:cover}.detail-panel ul{margin:18px 0 0;padding-left:20px;display:grid;grid-gap:14px;gap:14px}.product-gallery{display:grid;grid-gap:20px;gap:20px;margin-top:28px}.product-gallery__actions,.product-gallery__header,.product-lightbox__controls,.product-lightbox__topbar{display:flex;align-items:center}.product-gallery__header,.product-lightbox__topbar{justify-content:space-between;gap:18px}.product-gallery__header h2{margin:6px 0 0;font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);line-height:.96}.product-gallery__eyebrow{margin:0;color:var(--accent);font-size:.82rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.product-gallery__actions,.product-lightbox__controls{gap:12px}.product-gallery__tabs{display:inline-flex;flex-wrap:wrap;gap:10px}.product-gallery__tab{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.82);color:var(--text-soft);transition:transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}.product-gallery__tab:hover{transform:translateY(-2px)}.product-gallery__tab--active{border-color:rgba(77,123,255,.4);background:rgba(77,123,255,.12);color:var(--text)}.product-gallery__nav,.product-lightbox__close{display:inline-flex;align-items:center;justify-content:center;min-width:52px;min-height:52px;padding:0 18px;border:1px solid var(--line-strong);border-radius:999px;background:rgba(255,255,255,.86);color:var(--text);transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.product-gallery__nav:hover,.product-gallery__stage:hover,.product-gallery__thumb:hover,.product-lightbox__close:hover{transform:translateY(-2px)}.product-gallery__stage,.product-gallery__thumb,.product-lightbox__frame{position:relative;overflow:hidden}.product-gallery__stage{aspect-ratio:16/10;padding:22px;background:radial-gradient(circle at top left,rgba(77,123,255,.16),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,245,239,.92));border:1px solid rgba(17,24,39,.08);box-shadow:0 24px 60px rgba(17,24,39,.12)}.product-gallery__stage--portrait{aspect-ratio:960/2078;max-width:420px;width:100%;justify-self:center}.product-gallery__stage-image,.product-gallery__thumb-image,.product-lightbox__image{object-fit:contain}.product-gallery__hint{position:absolute;right:20px;bottom:18px;padding:8px 12px;border-radius:999px;background:rgba(17,24,39,.72);color:#fff;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.product-gallery__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,240px);grid-gap:14px;gap:14px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.product-gallery__thumb{aspect-ratio:4/3;padding:10px;border:1px solid rgba(17,24,39,.08);border-radius:24px;background:rgba(255,255,255,.84);box-shadow:0 14px 30px rgba(17,24,39,.08)}.product-gallery__thumb--portrait{aspect-ratio:960/2078}.product-gallery__thumb--active{border-color:rgba(77,123,255,.48);box-shadow:0 18px 36px rgba(77,123,255,.18)}.product-lightbox{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:28px}.product-lightbox__backdrop{position:absolute;inset:0;background:rgba(8,15,31,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.product-lightbox__panel{position:relative;z-index:1;width:min(1180px,calc(100vw - 40px));display:grid;grid-gap:18px;gap:18px;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(12,18,31,.92);color:#fff;box-shadow:0 32px 80px rgba(0,0,0,.38)}.product-lightbox__controls span,.product-lightbox__topbar p{margin:0;color:rgba(255,255,255,.78)}.product-lightbox__close,.product-lightbox__controls .product-gallery__nav{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff}.product-lightbox__frame{aspect-ratio:16/10;width:100%;padding:18px;border-radius:22px;background:rgba(255,255,255,.04)}.product-lightbox__frame--portrait{aspect-ratio:960/2078;max-width:min(420px,100%);justify-self:center}.product-lightbox__controls{justify-content:center}@media (max-width:960px){.hero__layout,.product-detail__hero-grid,.products-grid,.profile-grid,.skills-grid{grid-template-columns:1fr}.site-footer__inner,.site-header__inner{flex-direction:column;align-items:flex-start}.products-grid{grid-template-columns:1fr}}@media (max-width:900px){.section{padding:88px 0}.grid-two{grid-template-columns:1fr}}@media (max-width:640px){.container{width:min(calc(100% - 28px),var(--container))}.section{padding:72px 0}.section-heading{margin-bottom:36px}.site-header__nav{flex-wrap:wrap;gap:14px 20px}.hero__title{font-size:clamp(3.1rem,16vw,4.6rem)}.hero__visual{padding:18px}.button{width:100%}.contact-shell{padding:24px 20px}.contact-actions{flex-direction:column}.profile-body{padding:4px 2px;gap:18px}.profile-career{padding:16px}.product-detail__cover,.product-gallery__stage{min-height:auto}.product-gallery__header,.product-lightbox__topbar{align-items:flex-start;flex-direction:column}.product-gallery__rail{grid-auto-columns:minmax(150px,190px)}.product-gallery__stage--portrait,.product-lightbox__frame--portrait{max-width:360px}.product-lightbox{padding:16px}.product-lightbox__panel{width:min(100vw - 20px,960px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.hero-copy,.hero__all-link,.hero__preview-card,.product-card,.reveal{opacity:1!important;transition-duration:.01ms!important;animation:none!important;transform:none!important}}