@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600&family=Manrope:wght@300;400;500;600;700&display=swap');
:root{--bg:#080909;--panel:#111211;--line:rgba(255,255,255,.15);--muted:#a6a39f;--text:#f2f0eb;--red:#ed102d;--serif:'Noto Serif SC','Songti SC',serif;--sans:'Manrope','Microsoft YaHei',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(6,7,7,.93);position:relative;z-index:20}.brand{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:10px;position:relative;min-width:245px}.brand-mark{font-size:27px;font-weight:700;letter-spacing:-1.8px}.brand-mark span{color:var(--red)}.brand-cn{font-size:20px;font-weight:600;letter-spacing:2px}.brand small{grid-column:1/3;font-size:8px;letter-spacing:3.2px;color:#898783;margin-top:-2px}.site-header nav{display:flex;gap:clamp(24px,4vw,64px);margin-left:auto;margin-right:5vw}.site-header nav a{font-size:14px;color:#c7c5c1;position:relative;padding:30px 0}.site-header nav a.current,.site-header nav a:hover{color:white}.site-header nav a.current:after{content:"";position:absolute;bottom:17px;left:0;right:0;height:2px;background:var(--red)}.header-cta,.pill-link{border:1px solid #aaa8a3;border-radius:99px;padding:12px 20px;font-size:12px;white-space:nowrap;transition:.25s}.header-cta span,.text-link b{color:var(--red);margin-left:10px}.header-cta:hover,.pill-link:hover{border-color:var(--red);background:var(--red)}.header-cta:hover span{color:white}.menu-toggle{display:none;background:none;border:0;font-size:24px}.home-hero{min-height:calc(100vh - 82px);height:760px;max-height:900px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 72% 45%,#3c3027 0,#171614 34%,#070808 70%)}.home-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050606 0%,rgba(5,6,6,.96) 29%,rgba(5,6,6,.52) 56%,rgba(5,6,6,.06) 100%),repeating-linear-gradient(90deg,transparent 0 8.2%,rgba(255,255,255,.025) 8.25% 8.35%)}.hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#070808 0%,transparent 28%)}.hero-content{position:absolute;z-index:2;left:6.2vw;top:19%;max-width:570px}.eyebrow{font-size:10px;letter-spacing:3px;color:#9e9b95;margin:0 0 24px;text-transform:uppercase}.hero-content h1,.inner-hero h1,.services-hero h1,.works-hero h1,.contact-hero h1{font-family:var(--serif);font-size:clamp(48px,5.2vw,82px);line-height:1.28;letter-spacing:1px;font-weight:400;margin:0}.hero-content h1 span,.inner-hero h1 span,.services-hero h1 span,.works-hero h1 span,.contact-hero h1 span{color:var(--red)}.hero-copy{font-family:var(--serif);font-size:17px;line-height:2;color:#d1cfca;margin:25px 0 35px}.round-link{display:inline-flex;align-items:center;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;font-size:15px}.round-link b{width:56px;height:56px;border:1px solid #aaa;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:400;transition:.25s}.round-link:hover b{background:var(--red);border-color:var(--red);transform:rotate(45deg)}.scroll-note{display:flex;align-items:center;gap:14px;margin-top:70px;font-size:10px;letter-spacing:2px;color:#aaa}.scroll-note i{height:48px;width:1px;background:#eee}.scroll-note span{height:1px;width:120px;background:#555}.scroll-note em{width:40px;height:28px;background:var(--red);transform:skew(-35deg);margin-left:-28px}.hero-door{position:absolute;right:9%;top:7%;height:83%;width:37%;display:flex;align-items:center;justify-content:center;opacity:.88}.hero-door:before{content:"";position:absolute;inset:5% 10%;background:linear-gradient(110deg,transparent,rgba(201,174,143,.12),transparent);filter:blur(20px)}.hero-door img{height:100%;width:100%;object-fit:contain;mix-blend-mode:screen;filter:brightness(.7) contrast(1.08);position:relative}.hero-index{position:absolute;right:5%;top:42%;display:flex;align-items:center;flex-direction:column;gap:16px;font-size:13px}.hero-index span{width:1px;height:100px;background:linear-gradient(var(--red) 0 30%,#555 30%)}.hero-index small{color:#8a8883}.hero-bottom{position:absolute;bottom:22px;left:5vw;right:5vw;display:flex;justify-content:space-between;color:#76746f;font-size:9px;letter-spacing:2px}.section-pad{padding:100px 5vw}.intro-section{display:grid;grid-template-columns:1fr .7fr;gap:10vw;border-bottom:1px solid var(--line);align-items:end}.intro-section h2,.section-heading h2,.process-copy h2,.material-note h2,.contact-layout h2{font-family:var(--serif);font-size:clamp(32px,3.4vw,52px);font-weight:400;line-height:1.5;margin:0}.intro-copy p{font-family:var(--serif);font-size:15px;line-height:2.1;color:#b8b5af;margin:0 0 24px}.text-link{font-size:13px;display:inline-block;border-bottom:1px solid #5b5955;padding:0 0 12px}.text-link b{font-size:18px}.service-strip{background:#0b0c0c}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:45px}.section-heading h2{font-size:clamp(28px,3vw,44px)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-card{min-height:270px;padding:30px 32px 28px 0;position:relative;border-right:1px solid var(--line)}.service-card+.service-card{padding-left:32px}.service-card:last-child{border-right:0}.service-no{font-size:9px;letter-spacing:2px;color:#8e8b85}.service-card h3{font-family:var(--serif);font-size:29px;font-weight:400;margin:40px 0 15px}.service-card p{font-family:var(--serif);font-size:13px;color:#aaa7a1;line-height:1.9;max-width:310px}.service-card>b{position:absolute;right:25px;bottom:25px;color:var(--red);font-size:23px}.service-card:hover h3{color:var(--red)}.home-works{background:#101110}.home-product-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.home-product{padding:0;border:1px solid var(--line);background:#292722;position:relative;min-width:0;text-align:left;cursor:pointer;overflow:hidden}.home-product img{display:block;width:100%;height:370px;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s}.home-product:hover img{transform:scale(1.04)}.product-index{position:absolute;z-index:2;left:18px;top:18px;font-size:9px;letter-spacing:2px;color:#9d9991}.home-product-name{display:flex;justify-content:space-between;padding:20px 18px;background:#111211;font-family:var(--serif);font-size:18px}.home-product-name b{color:var(--red)}.closing-band{padding:90px 5vw;text-align:center;background:linear-gradient(110deg,#151513,#080909 70%);border-top:1px solid var(--line)}.closing-band .eyebrow{margin-bottom:18px}.closing-band h2{font-family:var(--serif);font-size:clamp(27px,3vw,44px);font-weight:400;margin:0 0 28px}.site-footer{display:flex;align-items:center;gap:40px;padding:36px 5vw;border-top:1px solid var(--line);flex-wrap:wrap}.footer-brand{min-width:210px}.footer-brand .brand-mark{font-size:22px}.footer-brand .brand-cn{font-size:16px}.footer-brand small{font-size:7px}.site-footer>p{font-family:var(--serif);font-size:13px;color:#8f8c86}.footer-links{display:flex;gap:22px;margin-left:auto}.footer-links a{font-size:12px;color:#b1aea8}.copyright{width:100%;font-size:9px;letter-spacing:2px;color:#6d6b66}.inner-hero{min-height:640px;display:grid;grid-template-columns:42% 58%;position:relative;overflow:hidden;background:#0a0b0b}.inner-hero-copy{padding:100px 0 90px 6vw;position:relative;z-index:2}.inner-hero h1{font-size:clamp(55px,6vw,88px)}.inner-hero-copy>p:not(.eyebrow){font-family:var(--serif);line-height:2;font-size:15px;color:#c6c3bd;margin:24px 0 32px}.about-art{position:relative;background:radial-gradient(ellipse at 52% 48%,#51463b,#191817 54%,#0b0b0b 80%);overflow:hidden}.about-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a0b0b 0%,transparent 28%,rgba(0,0,0,.25) 100%)}.about-art img{height:100%;width:100%;object-fit:contain;mix-blend-mode:screen;opacity:.72;filter:brightness(.7)}.art-lines{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 16%,rgba(255,255,255,.04) 16.1% 16.2%)}.principles{background:#0d0e0e}.principles-intro{max-width:370px;font-family:var(--serif);font-size:14px;line-height:2;color:#aaa7a1}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:45px}.principle-grid article{padding:28px 35px 24px 0;border-right:1px solid var(--line)}.principle-grid article+article{padding-left:35px}.principle-grid article:last-child{border:0}.principle-grid article>span{font-size:11px;color:#aaa}.principle-grid h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:25px 0 15px}.principle-grid p{font-family:var(--serif);font-size:13px;line-height:1.9;color:#aaa7a1;min-height:75px}.principle-grid small{font-size:9px;letter-spacing:2px;color:var(--red)}.process-section{display:grid;grid-template-columns:minmax(290px,34%) 1fr;background:#d9d4cc;color:#151514;min-height:360px;padding:58px 5vw;gap:5vw;align-items:center}.process-copy .eyebrow{color:#716e68}.process-copy h2{font-size:35px}.process-copy>p:last-child{font-family:var(--serif);font-size:13px;line-height:1.9;color:#5d5a55;max-width:360px}.process-visual{height:210px;position:relative;display:flex;align-items:end;justify-content:space-around;background-image:url("assets/backgrounds/about-process-sketch.png");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}.process-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(217,212,204,.03),rgba(217,212,204,.03))}.process-line{position:absolute;left:0;right:0;top:44%;height:1px;background:#999187;opacity:.75}.process-visual span{font-size:9px;letter-spacing:2px;color:#6d6860;z-index:1;background:rgba(217,212,204,.78);padding:5px 8px}.process-visual span:first-of-type{margin-left:5%}.process-visual span:last-of-type{margin-right:4%}.services-hero{min-height:430px;padding:85px 5vw 60px;display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 40%,#36302a,#0b0c0c 60%)}.services-hero h1{font-size:clamp(45px,5vw,72px)}.services-lead{font-family:var(--serif);font-size:14px;line-height:2;color:#bbb7b1;position:relative;z-index:2}.services-hero-image{position:absolute;right:6%;top:0;bottom:0;width:32%;opacity:.28;pointer-events:none}.services-hero-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;filter:brightness(.7)}.services-list{padding-top:0}.service-detail{display:grid;grid-template-columns:100px 1fr 35%;gap:32px;padding:60px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.detail-number{font-size:13px;color:#c9c5bf;display:flex;align-items:start;gap:10px}.detail-number i{display:block;width:25px;height:2px;background:var(--red);margin-top:7px}.detail-main .eyebrow{margin-bottom:15px}.detail-main h2{font-family:var(--serif);font-weight:400;font-size:36px;margin:0 0 18px}.detail-main>p:not(.eyebrow){font-family:var(--serif);font-size:14px;line-height:2;color:#aaa7a1;max-width:560px}.detail-main ul{list-style:none;padding:0;display:flex;gap:15px;flex-wrap:wrap;margin-top:26px}.detail-main li{font-size:11px;color:#d1cec8;border:1px solid var(--line);padding:9px 12px}.detail-image{height:280px;background:#272522;border:1px solid var(--line);overflow:hidden;display:grid;place-items:center}.detail-image img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply}.space-placeholder{background:linear-gradient(135deg,#252320,#5d5042,#171716);position:relative}.space-placeholder span{font-family:var(--serif);font-size:26px;letter-spacing:3px;line-height:1.6;position:relative;z-index:1}.space-block{position:absolute;inset:20% 12%;border:1px solid rgba(255,255,255,.25);box-shadow:0 0 35px rgba(0,0,0,.5)}.brochure-placeholder{background:linear-gradient(135deg,#353431,#0d0e0e);padding:25px;justify-items:start;align-items:end}.brochure-placeholder span{font-family:var(--serif);font-size:33px;letter-spacing:2px;transform:rotate(-6deg);display:block;border-left:4px solid var(--red);padding:18px 24px;box-shadow:10px 10px 0 rgba(0,0,0,.2)}.brochure-placeholder small{font-family:var(--sans);font-size:8px;letter-spacing:3px;color:#aaa}.works-hero{padding:95px 5vw 70px;display:grid;grid-template-columns:1fr .55fr;align-items:end;background:radial-gradient(ellipse at 70% 50%,#28221c,#080909 60%)}.works-hero h1{font-size:clamp(46px,5.3vw,76px)}.works-hero>p{font-family:var(--serif);font-size:14px;line-height:2;color:#b7b3ad;margin-bottom:10px}.works-categories{padding-top:0;padding-bottom:28px;display:flex;gap:10px;border-bottom:1px solid var(--line)}.category{padding:14px 18px;background:transparent;border:1px solid #3a3935;font-size:12px;color:#c3c0ba;cursor:pointer}.category small{font-size:9px;color:#8e8a83;margin-left:12px}.category.active,.category:hover{background:var(--red);border-color:var(--red);color:white}.category.active small{color:white}.works-section{padding-top:45px}.works-section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.works-section-heading .eyebrow{margin-bottom:10px}.works-section-heading h2{font-family:var(--serif);font-size:38px;font-weight:400;margin:0}.works-section-heading h2 span{color:var(--red)}.works-section-heading p{font-family:var(--serif);font-size:13px;color:#a5a19a}.works-count{font-size:12px;color:#a5a19a}.works-count span{font-size:24px;color:white;margin-right:5px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 22px}.product-card{min-width:0}.product-visual{display:block;width:100%;height:clamp(320px,35vw,510px);background:radial-gradient(circle at 50% 42%,rgba(255,244,228,.08) 0,rgba(72,62,53,.2) 26%,rgba(24,21,19,.96) 68%,#100f0e 100%);position:relative;border:1px solid #3e3932;overflow:hidden;padding:0;cursor:pointer;transition:background .4s,border-color .35s,box-shadow .35s}.product-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(150deg,rgba(255,255,255,.05),transparent 38%),linear-gradient(180deg,rgba(0,0,0,.18),transparent 30%)}.product-visual:after{content:"";position:absolute;left:14%;right:14%;top:12%;bottom:12%;background:radial-gradient(circle at 50% 42%,rgba(255,245,230,.18) 0,rgba(255,245,230,.08) 34%,transparent 72%);filter:blur(16px);opacity:.52;transition:opacity .35s,transform .45s}.product-visual img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;filter:drop-shadow(0 24px 28px rgba(0,0,0,.42)) brightness(1.03) contrast(1.05);transition:transform .55s cubic-bezier(.22,.61,.36,1),filter .35s;padding:10px 14px}.product-visual:hover{background:radial-gradient(circle at 50% 42%,rgba(255,245,229,.14) 0,rgba(95,82,70,.28) 28%,rgba(21,18,16,.96) 68%,#0f0e0d 100%);border-color:#7a6c5b;box-shadow:0 14px 34px rgba(0,0,0,.26)}.product-visual:hover:after{opacity:1;transform:scale(1.08)}.product-visual:hover img{transform:scale(1.14);filter:drop-shadow(0 30px 44px rgba(0,0,0,.42)) brightness(1.15) contrast(1.08)}.product-arrow{position:absolute;z-index:2;right:16px;bottom:16px;width:42px;height:42px;display:grid;place-items:center;border:1px solid #c2bdb5;border-radius:50%;background:rgba(15,15,14,.55);font-size:20px;transition:background .3s,border-color .3s,transform .3s}.product-visual:hover .product-arrow{background:var(--red);border-color:var(--red);transform:translateY(-2px) scale(1.04)}.product-text h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:18px 0 7px}.product-type{font-size:11px;color:#89867f;margin:0 0 16px;letter-spacing:1px}.material-line,.product-desc{font-family:var(--serif);font-size:12px;line-height:1.9;color:#b6b2ab;margin:0 0 10px}.material-line b{color:#e4e0d9;font-weight:400}.product-desc{color:#8f8b84}.detail-link{background:none;border:0;border-bottom:1px solid #4c4943;padding:10px 0;margin-top:8px;display:flex;justify-content:space-between;width:100%;cursor:pointer;font-size:12px}.detail-link span{color:var(--red);font-size:17px}.material-note{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr .7fr auto;gap:30px;align-items:center}.material-note .eyebrow{margin-bottom:14px}.material-note h2{font-size:29px}.material-note>p{font-family:var(--serif);font-size:13px;line-height:1.9;color:#aaa7a1}.contact-hero{padding:100px 8vw 80px;background:radial-gradient(ellipse at 80% 50%,#30271f,#080909 60%)}.contact-hero h1{font-size:clamp(50px,6vw,88px)}.contact-hero>p:last-child{font-family:var(--serif);font-size:15px;line-height:2;color:#b9b5af;margin-top:25px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12vw;border-top:1px solid var(--line)}.contact-layout h2{font-size:38px}.contact-message>p:not(.eyebrow){font-family:var(--serif);font-size:14px;line-height:2;color:#a6a39d;max-width:380px}.contact-signature{margin-top:70px;font-size:28px;font-weight:700;letter-spacing:-1px}.contact-signature span{font-family:var(--serif);font-size:17px;letter-spacing:2px;margin-left:12px}.contact-form{display:grid;gap:22px}.contact-form label{font-size:12px;color:#c6c2bc;display:grid;gap:10px}.contact-form input,.contact-form textarea,.contact-form select{background:transparent;border:0;border-bottom:1px solid #4a4843;padding:12px 0;color:#eee;outline:none;resize:vertical}.contact-form select option{background:#111}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--red)}.submit-button{display:flex;justify-content:space-between;align-items:center;background:var(--red);border:0;padding:15px 18px;cursor:pointer;font-size:13px}.submit-button b{font-size:20px}.form-hint{font-size:11px;color:#88857f;line-height:1.8;margin:0}.product-modal{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.88);display:none;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);padding:5vh 5vw;gap:5vw;overflow:auto}.product-modal.open{display:grid}.modal-close{position:fixed;top:20px;right:28px;border:1px solid #555;background:#111;border-radius:50%;width:44px;height:44px;font-size:27px;cursor:pointer;z-index:3}.modal-image{background:#fff;display:flex;align-items:center;justify-content:center;min-height:80vh}.modal-image img{width:100%;height:80vh;object-fit:contain;background:white}.modal-info{align-self:center;max-width:480px}.modal-info .eyebrow{margin-bottom:18px}.modal-info h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3vw,48px);margin:0 0 12px}.modal-category{font-size:12px;color:#aaa;margin:0}.modal-rule{height:1px;background:#494743;margin:28px 0}.modal-label{font-size:11px;letter-spacing:1px;color:#a6a29b;margin:22px 0 10px}.modal-info p:not(.eyebrow):not(.modal-category):not(.modal-label){font-family:var(--serif);font-size:14px;line-height:2;color:#d0ccc5}.modal-info .modal-note{font-size:10px!important;letter-spacing:1px;color:#777!important;margin-top:35px}body.modal-open{overflow:hidden}
/* Product detail image zoom controls — scoped to the existing modal */
.modal-image{position:relative;overflow:hidden;min-width:0;touch-action:pan-y}
.modal-image img{flex:0 0 auto;max-width:none;transform:translate(0px,0px) scale(1);transform-origin:center center;transition:transform .16s ease;will-change:transform;cursor:grab;user-select:none;-webkit-user-drag:none}
.modal-image img.is-dragging{cursor:grabbing;transition:none}
.image-zoom-controls{position:absolute;z-index:4;right:18px;bottom:18px;display:flex;align-items:center;gap:7px;padding:7px;background:rgba(10,10,10,.82);border:1px solid rgba(255,255,255,.2);color:#fff}
.image-zoom-controls button{min-width:34px;height:34px;padding:0 9px;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font:inherit;font-size:18px;cursor:pointer}
.image-zoom-controls button:hover{background:#ed1234;border-color:#ed1234}
.image-zoom-controls [data-zoom="reset"]{font-size:11px;letter-spacing:1px}
#zoom-level{min-width:46px;text-align:center;font-size:11px;color:#ddd;font-variant-numeric:tabular-nums}
.zoom-hint{position:absolute;z-index:3;left:16px;bottom:14px;margin:0!important;color:#777!important;font:10px/1.5 Arial,sans-serif!important;letter-spacing:.6px;background:rgba(255,255,255,.72);padding:4px 7px}
@media(max-width:900px){.site-header{padding:0 5vw;height:72px}.brand{min-width:unset}.brand-mark{font-size:23px}.brand-cn{font-size:16px}.site-header nav{gap:20px;margin-right:20px}.site-header nav a{font-size:12px}.header-cta{padding:10px 12px;font-size:10px}.hero-content{top:17%;left:6vw}.hero-door{right:0;width:48%;opacity:.55}.service-detail{grid-template-columns:60px 1fr 30%;gap:18px}.detail-image{height:240px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-visual{height:420px}.material-note{grid-template-columns:1fr 1fr}.material-note .text-link{grid-column:1/-1;justify-self:start}.product-modal{grid-template-columns:1fr .8fr;gap:25px;padding:5vh 3vw}.modal-image img{height:70vh}.contact-layout{gap:6vw}}
@media(max-width:640px){.site-header{height:68px}.brand-cn{font-size:15px}.brand small{letter-spacing:2px}.site-header nav{display:none;position:absolute;left:0;right:0;top:68px;background:#090a0a;border-bottom:1px solid var(--line);padding:18px 5vw;flex-direction:column;gap:0;margin:0}.site-header.menu-open nav{display:flex}.site-header nav a{padding:14px 0}.site-header nav a.current:after{bottom:7px;right:auto;width:25px}.header-cta{margin-left:auto;margin-right:14px}.menu-toggle{display:block}.home-hero{height:760px;min-height:calc(100vh - 68px)}.hero-content{top:13%;right:7vw}.hero-content h1{font-size:50px}.hero-copy{font-size:14px}.hero-door{width:76%;height:48%;top:auto;bottom:7%;right:-10%;opacity:.45}.hero-index{right:5%;top:55%}.hero-bottom{font-size:7px;letter-spacing:1px}.scroll-note{margin-top:42px}.scroll-note span{width:55px}.section-pad{padding:65px 6vw}.intro-section,.contact-layout{grid-template-columns:1fr;gap:32px}.intro-section h2{font-size:34px}.section-heading{align-items:start;flex-direction:column;margin-bottom:28px}.section-heading h2{font-size:30px}.service-grid{grid-template-columns:1fr}.service-card,.service-card+.service-card{padding:25px 40px 25px 0;border-right:0;border-bottom:1px solid var(--line);min-height:220px}.service-card h3{margin-top:25px}.service-card>b{right:5px}.home-product-row{grid-template-columns:1fr}.home-product img{height:360px}.site-footer{gap:20px}.footer-links{margin-left:0;width:100%;order:3;justify-content:space-between}.copyright{order:4}.inner-hero{grid-template-columns:1fr;min-height:760px}.inner-hero-copy{padding:75px 6vw 50px}.about-art{position:absolute;inset:30% 0 0 20%;opacity:.5}.inner-hero h1{font-size:58px}.principles-intro{max-width:none}.principle-grid{grid-template-columns:1fr}.principle-grid article,.principle-grid article+article{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.principle-grid p{min-height:0}.process-section{grid-template-columns:1fr;padding:55px 6vw}.process-copy h2{font-size:30px}.process-visual{height:140px}.services-hero{grid-template-columns:1fr;padding:65px 6vw 50px;gap:20px}.services-hero h1{font-size:46px}.services-lead{font-size:12px}.services-hero-image{right:-10%;width:55%;opacity:.18}.service-detail{grid-template-columns:36px 1fr;padding:38px 0;gap:10px}.detail-main h2{font-size:29px}.detail-main>p:not(.eyebrow){font-size:13px}.detail-image{grid-column:2;height:260px;margin-top:12px}.detail-main ul{gap:8px}.detail-main li{font-size:10px;padding:8px}.works-hero{grid-template-columns:1fr;padding:65px 6vw 40px;gap:24px}.works-hero h1{font-size:47px}.works-hero>p br{display:none}.works-categories{padding:0 6vw 22px;gap:7px;overflow-x:auto}.category{white-space:nowrap;padding:12px 13px;font-size:11px}.category small{margin-left:6px}.works-section{padding:38px 6vw 60px}.works-section-heading h2{font-size:29px}.works-section-heading p{max-width:260px;line-height:1.8}.works-count{font-size:10px;white-space:nowrap}.works-count span{font-size:18px}.product-grid{grid-template-columns:1fr;gap:34px}.product-visual{height:min(112vw,520px)}.product-visual img{padding:10px 20px}.product-text h3{font-size:22px}.material-note{grid-template-columns:1fr;gap:12px}.material-note h2{font-size:28px}.material-note .text-link{grid-column:auto}.contact-hero{padding:75px 6vw 55px}.contact-hero h1{font-size:53px}.contact-layout{padding-top:55px}.contact-signature{margin-top:35px}.product-modal.open{display:flex;flex-direction:column;padding:65px 5vw 30px;gap:25px}.modal-image{min-height:0;height:54vh;flex:none}.modal-image img{height:54vh}.modal-info{align-self:stretch}.modal-info h2{font-size:31px}.modal-rule{margin:20px 0}.modal-label{margin:14px 0 7px}.modal-info p:not(.eyebrow):not(.modal-category):not(.modal-label){font-size:13px}.modal-close{top:12px;right:12px}.closing-band{padding:65px 6vw}.closing-band h2{font-size:29px}}


/* APPROVED PAGE ART DIRECTION — keep the existing navigation and page framework */
.home-hero{background:#070808;isolation:isolate}
.home-hero:after{content:"";position:absolute;z-index:0;inset:0 0 0 27%;background-image:url("assets/backgrounds/home-room-crop.jpg");background-size:cover;background-position:center center;background-repeat:no-repeat;opacity:1}
.home-hero:before{z-index:1;background:linear-gradient(90deg,#050606 0%,rgba(5,6,6,.98) 20%,rgba(5,6,6,.83) 37%,rgba(5,6,6,.24) 63%,rgba(5,6,6,.03) 100%),repeating-linear-gradient(90deg,transparent 0 8.2%,rgba(255,255,255,.015) 8.25% 8.35%)}
.hero-shade{z-index:1;background:linear-gradient(0deg,rgba(3,4,4,.55),transparent 30%)}
.hero-content{left:4.6vw;top:19%;max-width:650px}
.hero-content h1{font-size:clamp(46px,4.4vw,70px);line-height:1.28;letter-spacing:0;max-width:640px;white-space:normal}
.hero-door{display:none}
.hero-copy{margin-top:24px}
.hero-bottom{z-index:2}
.hero-index{z-index:2}
/* About: full studio photograph on the right, text panel on the left. */
.inner-hero.about-hero{grid-template-columns:34% 66%;min-height:640px;background:#080909}
.about-hero .inner-hero-copy{padding:85px 20px 80px 5.2vw;max-width:100%;}
.about-hero .inner-hero h1{font-size:clamp(52px,5.3vw,78px);line-height:1.16}
.about-art{background-image:linear-gradient(90deg,#080909 0%,rgba(8,9,9,.08) 22%,rgba(0,0,0,.06) 100%),url("assets/backgrounds/about-studio.jpg");background-size:cover;background-position:center center;min-height:640px}
.about-art:after{background:linear-gradient(90deg,#080909 0%,rgba(8,9,9,.2) 13%,transparent 38%,rgba(0,0,0,.1) 100%)}
.about-art img{display:none}
.art-lines{background:repeating-linear-gradient(90deg,transparent 0 18%,rgba(255,255,255,.018) 18.1% 18.2%)}
/* Services: material still-life at the top and three distinct service columns below. */
.services-hero{min-height:350px;padding:66px 5vw 48px;grid-template-columns:1.1fr .9fr;background:#090a0a}
.services-hero:before{content:"";position:absolute;inset:0 0 0 48%;background:linear-gradient(90deg,#090a0a 0%,rgba(9,10,10,.18) 35%,rgba(9,10,10,.03) 100%),url("assets/backgrounds/services-material-crop.jpg") center/cover no-repeat;opacity:.92}
.services-hero>div:first-child,.services-hero .services-lead{z-index:2;position:relative}
.services-hero h1{font-size:clamp(44px,4.5vw,68px);line-height:1.25}
.services-hero-image{display:none}
.services-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:12px;padding-bottom:75px}
.service-detail{display:flex;flex-direction:column;gap:14px;padding:20px 0 0;border-bottom:0;border-right:1px solid var(--line);padding-right:24px;min-width:0}
.service-detail:last-child{border-right:0;padding-right:0}
.detail-number{order:0}
.detail-main{order:1}
.detail-main .eyebrow{margin-bottom:13px}
.detail-main h2{font-size:clamp(24px,2.2vw,34px);margin-bottom:12px}
.detail-main>p:not(.eyebrow){font-size:13px;line-height:1.9}
.detail-main ul{gap:7px;margin-top:18px}
.detail-main li{font-size:10px;padding:7px 9px}
.detail-image{order:2;height:clamp(190px,18vw,290px);margin-top:8px;width:100%}
.detail-image img{object-fit:contain}
.space-placeholder{background-image:linear-gradient(0deg,rgba(0,0,0,.12),rgba(0,0,0,.12)),url("assets/backgrounds/about-studio.jpg");background-size:cover;background-position:center}
.space-placeholder span,.space-block{display:none}
.brochure-placeholder{background-image:linear-gradient(0deg,rgba(0,0,0,.16),rgba(0,0,0,.16)),url("assets/backgrounds/services-material-crop.jpg");background-size:cover;background-position:center}
.brochure-placeholder span{font-size:20px;background:rgba(10,10,10,.78)}
/* Works keeps the approved dark portfolio grid and shows the actual door collection. */
.works-hero{background:radial-gradient(ellipse at 72% 50%,#211c18,#080909 62%);padding-top:78px;padding-bottom:54px}
.works-hero h1{font-size:clamp(44px,4.7vw,70px);line-height:1.25}
.works-hero>p{max-width:350px}
.product-visual{background:linear-gradient(135deg,#37312b,#51473d 58%,#262522)}
/* Preserve the existing contact page and form styling. */
@media(max-width:900px){
 .home-hero:after{inset:0 0 0 18%;background-position:58% center}
 .hero-content{max-width:60vw}
 .hero-content h1{font-size:clamp(42px,5.2vw,58px)}
 .inner-hero.about-hero{grid-template-columns:42% 58%}
 .about-art{min-height:600px}
 .services-list{grid-template-columns:1fr;gap:24px}
 .service-detail{display:grid;grid-template-columns:55px minmax(0,1fr) 32%;gap:18px;border-right:0;border-bottom:1px solid var(--line);padding:28px 0}
 .detail-image{height:220px;margin-top:0}
}
@media(max-width:640px){
 .home-hero:after{inset:34% 0 0 0;background-position:center;background-size:cover;opacity:.7}
 .home-hero:before{background:linear-gradient(180deg,#050606 0%,rgba(5,6,6,.96) 30%,rgba(5,6,6,.5) 65%,rgba(5,6,6,.12) 100%)}
 .hero-content{left:6vw;right:6vw;top:10%;max-width:none}
 .hero-content h1{font-size:clamp(38px,10vw,50px);line-height:1.3}
 .inner-hero.about-hero{grid-template-columns:1fr;min-height:760px}
 .about-hero .inner-hero-copy{padding:60px 6vw 35px}
 .about-art{position:absolute;inset:30% 0 0 0;min-height:0;opacity:.78}
 .services-hero{grid-template-columns:1fr;min-height:520px;padding:60px 6vw 35px}
 .services-hero:before{inset:35% 0 0 0;background-position:center;background-size:cover;opacity:.65}
 .services-hero h1{font-size:44px}
 .services-list{padding:0 6vw 55px}
 .service-detail{display:flex;border-bottom:1px solid var(--line);padding:25px 0;gap:12px}
 .detail-image{height:250px}
 .works-hero{padding:65px 6vw 40px}
}

/* Works page: modern, focused architectural design studio background only. */
.works-hero{position:relative;isolation:isolate;overflow:hidden;background:#080909;min-height:300px;align-items:center}
.works-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,9,9,.97) 0%,rgba(8,9,9,.88) 22%,rgba(8,9,9,.60) 43%,rgba(8,9,9,.18) 72%,rgba(8,9,9,.12) 100%),url("assets/backgrounds/works-studio.png") center 48%/cover no-repeat}
.works-hero>div,.works-hero>p{position:relative;z-index:1}
@media(max-width:640px){.works-hero{min-height:360px}.works-hero:before{background:linear-gradient(180deg,rgba(8,9,9,.94) 0%,rgba(8,9,9,.72) 50%,rgba(8,9,9,.35) 100%),url("assets/backgrounds/works-studio.png") 62% center/cover no-repeat}}

/* Works hero revision: show the complete panoramic studio image without cropping. */
.works-hero{min-height:0;height:auto;aspect-ratio:2048/600;padding:70px 5vw 54px;align-items:center;background:#080909}
.works-hero:before{inset:0;z-index:0;background:linear-gradient(90deg,rgba(8,9,9,.24) 0%,rgba(8,9,9,.08) 48%,rgba(8,9,9,.03) 100%),url("assets/backgrounds/works-studio.png") center/100% 100% no-repeat}
.works-hero>div,.works-hero>p{position:relative;z-index:1}
@media(max-width:900px){.works-hero{aspect-ratio:auto;min-height:500px;padding:65px 6vw 40px;background:#080909}.works-hero:before{background:linear-gradient(180deg,rgba(8,9,9,.82) 0%,rgba(8,9,9,.56) 58%,rgba(8,9,9,.3) 100%),url("assets/backgrounds/works-studio.png") center/100% 100% no-repeat}}
@media(max-width:900px){.works-hero{min-height:0;height:auto;aspect-ratio:auto;padding:58px 6vw 0;display:grid;grid-template-columns:1fr;gap:22px;background:#080909}.works-hero:before{inset:0 0 0 0;background:linear-gradient(180deg,rgba(8,9,9,.96) 0%,rgba(8,9,9,.85) 45%,rgba(8,9,9,.18) 100%),url("assets/backgrounds/works-studio.png") center bottom/100% auto no-repeat}.works-hero>p{margin-bottom:0;padding-bottom:calc(100vw * .293);max-width:100%}}


/* Contact page: location map section, matching the approved dark visual system. */
.location-section{padding-top:36px;padding-bottom:110px;border-top:1px solid var(--line);background:linear-gradient(180deg,#0b0c0c 0%,#080909 100%)}
.location-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:32px}
.location-heading .eyebrow{margin-bottom:18px}
.location-heading h2{font-family:var(--serif);font-size:clamp(32px,3.4vw,52px);font-weight:400;line-height:1.35;margin:0}
.location-heading h2 span{color:var(--red)}
.location-address{font-family:var(--serif);font-size:15px;line-height:2;color:#aaa7a1;margin:20px 0 0}
.location-link{display:inline-flex;align-items:center;gap:24px;padding:14px 0;border-bottom:1px solid #575650;font-size:13px;white-space:nowrap}
.location-link b{color:var(--red);font-size:18px;font-weight:400}
.location-map{height:430px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.17);background:radial-gradient(ellipse at 70% 35%,#39332c,#181918 55%,#101111 100%)}
.location-map iframe{width:100%;height:100%;display:block;border:0;filter:grayscale(.85) invert(.88) contrast(.86) brightness(.78);opacity:.88}
.map-caption{position:absolute;left:24px;bottom:24px;display:flex;align-items:center;gap:14px;padding:16px 20px;background:rgba(8,9,9,.94);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px)}
.map-pin{width:34px;height:34px;display:grid;place-items:center;background:var(--red);color:#fff;font-size:17px}
.map-caption strong,.map-caption small{display:block}
.map-caption strong{font-size:13px;font-weight:500}
.map-caption small{font-size:10px;color:#aaa7a1;margin-top:6px;letter-spacing:.7px}
@media(max-width:640px){
 .location-section{padding:45px 6vw 65px}
 .location-heading{align-items:flex-start;flex-direction:column;gap:20px}
 .location-address{font-size:13px}
 .location-map{height:340px}
 .map-caption{left:12px;bottom:12px;padding:12px}
}


/* Contact page: static map artwork integrated into the existing hero background.
   No embedded map service or sign-in required. */
.contact-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#080909;
  min-height:390px;
}
.contact-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;right:0;bottom:0;
  width:72%;
  background-image:linear-gradient(90deg,rgba(8,9,9,.98) 0%,rgba(8,9,9,.72) 24%,rgba(8,9,9,.16) 68%,rgba(8,9,9,.28) 100%),url("assets/backgrounds/contact-map-static.png");
  background-size:cover;
  background-position:center 52%;
  opacity:.9;
  pointer-events:none;
}
.contact-hero .eyebrow,
.contact-hero h1,
.contact-hero>p{position:relative;z-index:1;max-width:760px}
.contact-hero .contact-address{
  margin-top:26px;
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,.16);
  max-width:620px;
  font-family:var(--sans);
  font-size:12px;
  line-height:1.8;
  letter-spacing:.3px;
  color:#d0ccc5;
}
.contact-hero .contact-address span{
  color:var(--red);
  font-size:9px;
  letter-spacing:2px;
  margin-right:12px;
}
@media(max-width:640px){
  .contact-hero{min-height:410px;padding-bottom:50px}
  .contact-hero::before{width:100%;opacity:.5;background-position:58% center}
  .contact-hero .contact-address{font-size:11px;max-width:100%}
}

@media(max-width:900px){.process-section{grid-template-columns:1fr;gap:26px;padding:48px 5vw}.process-visual{height:180px}}

/* Mobile works page: keep every portfolio category visible without horizontal clipping. */
@media (max-width: 640px) {
  body[data-page="works"] .works-categories {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    overflow: visible;
    padding: 0 6vw 22px;
    align-items: stretch;
  }
  body[data-page="works"] .works-categories .category {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 10px 11px;
    font-size: clamp(10px, 2.8vw, 12px);
    line-height: 1.4;
    white-space: normal;
    text-align: left;
  }
  body[data-page="works"] .works-categories .category small {
    flex: 0 0 auto;
    margin-left: auto;
    font-size: 9px;
  }
}

/* Brand image logo: shared horizontal wordmark, sized without distortion. */
.brand.image-brand{display:flex;align-items:center;min-width:0;width:max-content;max-width:min(30vw,260px);padding:0;border:0;gap:0}
.brand-logo-image{display:block;width:clamp(150px,15vw,238px);height:auto;max-height:54px;object-fit:contain;object-position:left center}
.footer-brand.image-brand{max-width:240px}
.footer-brand .brand-logo-image{width:220px;max-height:50px}
@media(max-width:760px){.brand.image-brand{max-width:190px}.brand-logo-image{width:clamp(145px,42vw,190px);max-height:42px}.footer-brand .brand-logo-image{width:190px}}


/* KINFOR premium motion layer — subtle, responsive, and respectful of reduced-motion settings */
:root { --motion-ease: cubic-bezier(.22,.61,.36,1); }
html { scroll-behavior: smooth; }
body::after {
  content:""; position:fixed; z-index:1000; left:0; top:0; width:100%; height:2px;
  transform:scaleX(var(--scroll-progress,0)); transform-origin:left center;
  background:var(--red,#ed1235); pointer-events:none; opacity:.9;
}
.site-header { transition: background .35s ease, border-color .35s ease, backdrop-filter .35s ease; }
.site-header.is-scrolled { background:rgba(5,6,6,.97); border-color:rgba(255,255,255,.16); backdrop-filter:blur(14px); }
.site-header nav a { position:relative; }
.site-header nav a::after {
  content:""; position:absolute; left:0; right:0; bottom:-9px; height:1px;
  background:var(--red,#ed1235); transform:scaleX(0); transform-origin:left;
  transition:transform .32s var(--motion-ease);
}
.site-header nav a:hover::after,.site-header nav a.current::after { transform:scaleX(1); }
.hero-content > * { animation: kinfor-rise-in .8s var(--motion-ease) both; }
.hero-content > *:nth-child(1) { animation-delay:.08s; }
.hero-content > *:nth-child(2) { animation-delay:.18s; }
.hero-content > *:nth-child(3) { animation-delay:.32s; }
.hero-content > *:nth-child(4) { animation-delay:.44s; }
.hero-content > *:nth-child(5) { animation-delay:.56s; }
.hero-door { transform:translate3d(var(--hero-shift-x,0px),var(--hero-shift-y,0px),0); transition:transform .45s ease-out; }
.hero-door img { animation:kinfor-door-arrive 1.25s var(--motion-ease) both; }
.eyebrow { transition:color .3s ease; }
.round-link b,.pill-link b,.header-cta span,.text-link b { display:inline-block; transition:transform .3s var(--motion-ease); }
.round-link:hover b,.pill-link:hover b,.header-cta:hover span,.text-link:hover b { transform:translate(3px,-3px); }
.motion-reveal { opacity:0; transform:translate3d(0,24px,0); transition:opacity .75s var(--motion-ease), transform .75s var(--motion-ease); }
.motion-reveal.is-visible { opacity:1; transform:translate3d(0,0,0); }
.motion-reveal[data-motion-delay="1"] { transition-delay:.08s; }
.motion-reveal[data-motion-delay="2"] { transition-delay:.16s; }
.motion-reveal[data-motion-delay="3"] { transition-delay:.24s; }
.product-card { transition:transform .45s var(--motion-ease); }
.product-visual { isolation:isolate; }
.product-visual::before { transition:opacity .45s ease, background-position .6s ease; background-position:0 0, 0 0; }
.product-visual:hover::before { opacity:1; background-position:100% 100%, 0 0; }
.product-visual .product-index { transition:color .35s ease,letter-spacing .35s ease; }
.product-visual:hover .product-index { color:#e8dfd3; letter-spacing:2px; }
.detail-image img,.services-hero-image img,.about-art { transition:transform .9s var(--motion-ease), filter .7s ease; }
.service-detail:hover .detail-image img { transform:scale(1.025); }
.process-visual .process-line { transform:scaleX(.08); transform-origin:left; transition:transform 1.2s var(--motion-ease); }
.process-visual.is-visible .process-line { transform:scaleX(1); }
.category { transition:color .25s ease,background .3s ease,border-color .3s ease,transform .3s var(--motion-ease); }
.category:hover { transform:translateY(-2px); }
.contact-form input,.contact-form textarea,.contact-form select { transition:border-color .25s ease,background .25s ease; }
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { border-color:rgba(237,18,53,.7); background:rgba(255,255,255,.025); }
@keyframes kinfor-rise-in { from {opacity:0;transform:translate3d(0,18px,0)} to {opacity:1;transform:translate3d(0,0,0)} }
@keyframes kinfor-door-arrive { from {opacity:0;transform:translate3d(0,18px,0) scale(.975);filter:brightness(.55)} to {opacity:1;transform:translate3d(0,0,0) scale(1);filter:brightness(.7) contrast(1.08)} }
@media (hover:none), (max-width:760px) {
  .hero-door { transform:none !important; }
  .motion-reveal { transform:translate3d(0,14px,0); transition-duration:.55s; }
  .product-visual:hover { transform:none; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
  .motion-reveal { opacity:1 !important; transform:none !important; }
}


/* KINFOR cinematic motion v2 */
.kinfor-cinema-hero { isolation:isolate; }
.kinfor-cinema-item { animation:kinfor-cinema-enter .95s cubic-bezier(.2,.65,.25,1) both; animation-delay:var(--cinema-delay,0ms); }
.kinfor-cinema-image { animation:kinfor-image-reveal 1.35s cubic-bezier(.2,.65,.25,1) both; }
@keyframes kinfor-cinema-enter {
  0% { opacity:0; transform:translate3d(0,24px,0); filter:blur(3px); }
  100% { opacity:1; transform:translate3d(0,0,0); filter:blur(0); }
}
@keyframes kinfor-image-reveal {
  0% { opacity:.25; transform:scale(1.045); filter:brightness(.65) saturate(.78); }
  100% { opacity:1; transform:scale(1); filter:brightness(1) saturate(1); }
}
.kinfor-scroll-enter { opacity:0; translate:0 22px; transition:opacity .8s cubic-bezier(.2,.65,.25,1), translate .8s cubic-bezier(.2,.65,.25,1); transition-delay:var(--enter-delay,0ms); }
.kinfor-scroll-enter.kinfor-entered { opacity:1; translate:0 0; }
.kinfor-parallax-layer { translate:0 var(--kinfor-parallax-y,0px); will-change:translate; }
.home-hero .hero-shade { will-change:transform; }
.process-visual.kinfor-drawing-panel { isolation:isolate; }
.kinfor-line-art { position:absolute; z-index:1; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; opacity:.95; }
.kinfor-line-art path { fill:none; stroke:#756e64; stroke-width:1.15; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; stroke-dasharray:1200; stroke-dashoffset:1200; }
.kinfor-line-art .kinfor-drawing-fine path { stroke:#8f877b; stroke-width:.7; stroke-dasharray:700; stroke-dashoffset:700; opacity:.8; }
.kinfor-drawing-active .kinfor-line-art .kinfor-drawing-group path { animation:kinfor-draw-line 2.6s cubic-bezier(.4,0,.2,1) forwards; }
.kinfor-drawing-active .kinfor-line-art .kinfor-drawing-group path:nth-child(2n) { animation-delay:.18s; }
.kinfor-drawing-active .kinfor-line-art .kinfor-drawing-group path:nth-child(3n) { animation-delay:.34s; }
.kinfor-drawing-active .kinfor-line-art .kinfor-drawing-fine path { animation:kinfor-draw-line 2.2s ease forwards; animation-delay:.55s; }
@keyframes kinfor-draw-line { to { stroke-dashoffset:0; } }
.process-visual > span { position:relative; z-index:2; }
@media(max-width:760px) {
  .kinfor-cinema-item { animation-duration:.7s; }
  .kinfor-parallax-layer { translate:0 0; }
  .kinfor-line-art { opacity:.75; }
  .kinfor-drawing-active .kinfor-line-art .kinfor-drawing-group path { animation-duration:2s; }
}
@media(prefers-reduced-motion:reduce) {
  .kinfor-cinema-item,.kinfor-cinema-image { animation:none!important; opacity:1!important; filter:none!important; transform:none!important; }
  .kinfor-scroll-enter { opacity:1!important; translate:0 0!important; transition:none!important; }
  .kinfor-parallax-layer { translate:0 0!important; }
  .kinfor-line-art path { stroke-dashoffset:0!important; animation:none!important; }
}


/* KINFOR Works: cinematic product-growth sequence.
   Layout and category controls remain unchanged; this is a visual overlay only. */
.works-growth-enabled { position: relative; isolation: isolate; }
.works-growth-enabled .works-growth-scene {
  position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none;
}
.works-growth-enabled > div:not(.works-growth-scene),
.works-growth-enabled > p { z-index:2; }
.works-growth-enabled .growth-blueprint {
  position:absolute; inset:0; width:100%; height:100%;
  opacity:.96; overflow:visible;
}
.growth-blueprint .construction-lines path,
.growth-blueprint .dimension-line,
.growth-blueprint .surface-detail,
.growth-blueprint .surface-edge {
  fill:none; stroke:#e0c7a7; stroke-width:1.05; vector-effect:non-scaling-stroke;
  stroke-linecap:round; stroke-linejoin:round;
}
.growth-blueprint .construction-lines path {
  stroke-dasharray:650; stroke-dashoffset:650;
  animation: kinfor-line-grow 12s cubic-bezier(.55,.05,.25,1) infinite;
}
.growth-blueprint .construction-lines .guide-line {
  stroke:#b7b4ac; stroke-width:.65; opacity:.48;
  animation-delay:.7s;
}
.growth-blueprint .construction-lines .dimension-line {
  stroke:#cbb28e; stroke-width:.7; opacity:.7;
  animation-delay:1.8s;
}
.growth-blueprint .door-surface {
  opacity:0; transform-origin:700px 290px;
  animation: kinfor-product-form 12s ease-in-out infinite;
}
.growth-blueprint .surface-detail { stroke:#e7d3b8; stroke-width:1.1; }
.growth-blueprint .surface-edge { stroke:#f0d2a6; stroke-width:1.2; opacity:.8; }
.growth-blueprint .handle { fill:#1b1917; stroke:#c5a47e; stroke-width:1; }
.growth-blueprint .lock-detail { fill:#d3b18a; }
.growth-blueprint .light-sweep {
  fill:none; stroke:url(#growthSweep); stroke-width:28;
  stroke-dasharray:120 1100; stroke-dashoffset:800; opacity:0;
  animation: kinfor-light-pass 12s ease-in-out infinite;
}
.growth-caption {
  position:absolute; right:5%; bottom:7%; display:flex; align-items:center; gap:10px;
  color:rgba(226,207,181,.62); font:8px/1.2 Arial,sans-serif; letter-spacing:2px;
  opacity:0; animation: kinfor-caption-in 12s ease-in-out infinite;
}
.growth-caption i { display:block; width:30px; height:1px; background:#c4a27b; }
@keyframes kinfor-line-grow {
  0%, 5% { stroke-dashoffset:650; opacity:0; }
  10% { opacity:.8; }
  43%, 82% { stroke-dashoffset:0; opacity:.8; }
  92%, 100% { stroke-dashoffset:0; opacity:0; }
}
@keyframes kinfor-product-form {
  0%, 30% { opacity:0; filter:brightness(.8); }
  42% { opacity:.2; }
  58%, 79% { opacity:1; filter:brightness(1.12); }
  88%, 100% { opacity:0; }
}
@keyframes kinfor-light-pass {
  0%, 48% { opacity:0; stroke-dashoffset:800; }
  55% { opacity:.8; }
  70% { opacity:.55; stroke-dashoffset:-400; }
  82%, 100% { opacity:0; }
}
@keyframes kinfor-caption-in {
  0%, 45% { opacity:0; transform:translateY(6px); }
  60%, 80% { opacity:1; transform:translateY(0); }
  92%, 100% { opacity:0; transform:translateY(-3px); }
}
@media (max-width:900px) {
  .works-growth-enabled .growth-blueprint { opacity:.62; }
  .works-growth-enabled .growth-caption { right:6%; bottom:5%; font-size:7px; letter-spacing:1.2px; }
  .growth-blueprint .construction-lines path { animation-duration:14s; }
}
@media (max-width:640px) {
  .works-growth-enabled .growth-blueprint { opacity:.34; }
  .works-growth-enabled .growth-caption { display:none; }
}
@media (prefers-reduced-motion: reduce) {
  .growth-blueprint *, .growth-caption { animation:none!important; }
  .growth-blueprint .construction-lines path { stroke-dashoffset:0; opacity:.35; }
  .growth-blueprint .door-surface { opacity:.3; }
}
