#root{min-height:100vh}:root{color:#1f2420;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}#portfolio,#ai,#contact{scroll-margin-top:88px}body{background:#fff;min-width:320px;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}h1,h2,h3,p,a,button,dt,dd,strong,small,span{word-break:keep-all;overflow-wrap:break-word}button,input,textarea{font:inherit}button{cursor:pointer}.topbar{z-index:30;color:#1f2420;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border-bottom:1px solid #1f24201c;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:72px;padding:12px clamp(20px,4vw,64px);display:grid;position:sticky;top:0}.brand,.topbar-call,nav,.hero-actions,.project-actions,.contact-actions,.generated-result-actions{align-items:center;display:flex}.brand{gap:11px;font-weight:800}.brand-mark{color:#fff;background:#243a2b;border-radius:4px;place-items:center;width:34px;height:34px;display:grid}nav{color:#555d58;justify-content:center;gap:clamp(18px,3vw,42px);font-size:14px}nav a:hover,.topbar-call:hover{color:#243a2b}.topbar-call{color:#fff;background:#243a2b;border-radius:4px;justify-content:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:800}.hero{color:#fff;background:#202521;flex-direction:column;justify-content:flex-end;min-height:calc(88svh - 72px);display:flex;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;overflow:hidden}.hero-bg:after{content:"";background:linear-gradient(90deg,#101612d1,#10161261 48%,#1016122e),linear-gradient(#10161214 42%,#101612b8);position:absolute;inset:0}.hero-bg img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity 1.4s,transform 7.2s;position:absolute;inset:0;transform:scale(1.045)}.hero-bg img.active{opacity:1;transform:scale(1)}.hero-content{width:min(760px,100% - 40px);margin:auto auto 0 clamp(20px,7vw,96px);padding:clamp(72px,11vh,130px) 0 34px;position:relative}.eyebrow{color:#7b6a4d;letter-spacing:0;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:800}.hero .eyebrow{color:#e1c6ad}.hero h1{letter-spacing:0;margin:0;font-size:clamp(48px,8vw,84px);line-height:1.02}.hero-lead{color:#f1eadf;margin-top:16px;font-size:clamp(20px,2.4vw,30px);font-weight:700;line-height:1.35}.hero p:not(.eyebrow):not(.hero-lead){color:#ffffffc2;max-width:620px;margin:16px 0 0;font-size:clamp(15px,1.6vw,18px);line-height:1.75}.hero-meta{border-top:1px solid #ffffff3d;border-bottom:1px solid #ffffff3d;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:660px;margin:28px 0 0;padding:16px 0;display:grid}.hero-meta div{padding-right:18px}.hero-meta dt{color:#ffffff9e;font-size:12px;font-weight:700}.hero-meta dd{color:#fff;margin:6px 0 0;font-size:14px;font-weight:800;line-height:1.35}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:26px}.primary-action,.secondary-action,.project-actions a,.contact-actions a,.generated-result-actions a{border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-weight:800;display:inline-flex}.primary-action{color:#fff;background:#243a2b}.secondary-action{color:#fff;border:1px solid #ffffff6b}.hero-strip{width:min(1180px,100% - 40px);height:clamp(74px,10vw,116px);margin:0 auto 20px;position:relative;overflow:hidden}.hero-strip:before,.hero-strip:after{content:"";z-index:2;pointer-events:none;width:clamp(26px,6vw,88px);position:absolute;top:0;bottom:0}.hero-strip:before{background:linear-gradient(90deg,#101612d1,#0000);left:0}.hero-strip:after{background:linear-gradient(270deg,#101612d1,#0000);right:0}.hero-strip-track{will-change:transform;gap:6px;width:max-content;height:100%;animation:48s linear infinite heroStripSlide;display:flex}.hero-strip img{object-fit:cover;opacity:.9;border-radius:3px;flex:0 0 clamp(150px,15vw,220px);width:100%;height:100%}.company-intro{background:#fff;border-bottom:1px solid #1f24201a;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:start;gap:34px;padding:clamp(64px,8vw,104px) clamp(20px,4vw,64px);display:grid}.company-intro h2{color:#202521;max-width:520px;margin:0;font-size:clamp(30px,4vw,48px);line-height:1.15}.intro-list{border-top:1px solid #20252124;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.intro-list article{border-bottom:1px solid #20252124;border-right:1px solid #20252124;min-height:210px;padding:28px 22px}.intro-list article:first-child{border-left:1px solid #20252124}.intro-list svg{color:#7b6a4d}.intro-list h3{color:#202521;margin:24px 0 10px;font-size:21px}.intro-list p{color:#6a706b;margin:0;line-height:1.7}.section{padding:clamp(70px,9vw,118px) clamp(20px,4vw,64px)}.section-heading{text-align:left;max-width:760px;margin:0 0 34px}.section-heading.wide{max-width:860px}.section-heading h2,.process-band h2,.contact-section h2{color:#202521;letter-spacing:0;margin:0;font-size:clamp(30px,4.8vw,52px);line-height:1.12}.section-heading p:not(.eyebrow),.process-band p,.contact-section p{color:#666c66;line-height:1.75}.portfolio{background:#fbfbf8}.portfolio-grid{grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:26px;max-width:1440px;margin:0 auto;display:grid}.project-list{background:#fff;border:1px solid #2025211f;align-self:start;gap:0;display:grid}.project-row{color:#2f352f;text-align:left;background:0 0;border:0;border-bottom:1px solid #2025211a;border-radius:0;grid-template-columns:74px 1fr auto;align-items:center;gap:14px;width:100%;min-height:88px;padding:10px 14px 10px 10px;display:grid}.project-row:last-child{border-bottom:0}.project-row.active{background:#f5f7f3;box-shadow:inset 4px 0 #243a2b}.project-row img{object-fit:cover;border-radius:2px;width:74px;height:58px}.project-row span{min-width:0}.project-row strong,.project-row small{display:block}.project-row strong{font-size:14px}.project-row small{color:#747970;margin-top:5px;line-height:1.4}.project-detail{overflow:hidden}.project-hero{border-bottom:1px solid #20252129;grid-template-columns:minmax(320px,1fr) minmax(260px,390px);align-items:end;gap:28px;padding-bottom:24px;display:grid}.project-hero>img{aspect-ratio:16/9;object-fit:cover;border-radius:3px;width:100%}.project-hero h3{color:#202521;margin:8px 0 18px;font-size:clamp(24px,3vw,38px);line-height:1.22}.project-hero p{color:#7b6a4d;margin:0;font-weight:800}.project-actions{flex-wrap:wrap;gap:8px}.project-actions a{color:#202521;background:#eff1ec;font-size:14px}.thumb-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin-top:18px;display:grid}.thumb-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:2px;width:100%}.ai-page-main{background:#fbfbf8;min-height:calc(100svh - 72px)}.ai-page-main .ai-section{min-height:calc(100svh - 72px);padding-top:clamp(36px,5vw,66px)}.ai-page-main .section-heading.wide{text-align:center;max-width:860px;margin-left:auto;margin-right:auto}.ai-section{color:#1f2420;background:#fbfbf8;border-top:1px solid #1f24201a;border-bottom:1px solid #1f24201a}.ai-section .section-heading h2{color:#1f2420}.ai-section .section-heading p:not(.eyebrow){color:#626a64}.ai-stepper{grid-template-columns:280px minmax(0,960px);align-items:start;gap:18px;max-width:1280px;margin:0 auto;scroll-margin-top:96px;display:grid}.step-sidebar,.step-main{color:#1f2420;background:#fff;border:1px solid #1f24201f;border-radius:4px;box-shadow:0 18px 50px #1f24200f}.step-sidebar{align-content:start;gap:0;display:grid;overflow:hidden}.step-sidebar-head{background:#f7f8f5;border-bottom:1px solid #1f24201a;justify-content:space-between;align-items:center;min-height:64px;padding:0 18px;display:flex}.step-sidebar-head span{color:#626a64;font-size:13px;font-weight:900}.step-sidebar-head strong{color:#243a2b;font-size:14px}.step-button{color:#424a44;text-align:left;background:0 0;border:0;border-bottom:1px solid #1f24201a;border-radius:0;grid-template-columns:38px 36px 1fr;align-items:center;gap:10px;width:100%;min-height:92px;padding:16px 18px;display:grid}.step-button:last-child{border-bottom:0}.step-button.active{color:#1f2420;background:#f5f7f3;box-shadow:inset 4px 0 #243a2b}.step-button:disabled{opacity:.48;cursor:not-allowed}.step-number{color:#8a918b;font-size:12px;font-weight:900}.step-icon{color:#243a2b;background:#edf1ea;border-radius:4px;place-items:center;width:36px;height:36px;display:grid}.step-button strong,.step-button small{display:block}.step-button strong{font-size:15px}.step-button small{color:#6b736d;margin-top:5px;line-height:1.45}.step-main{grid-template-rows:1fr auto;min-height:690px;padding:24px;display:grid}.step-content{align-content:start;gap:18px;display:grid}.step-title-row{border-bottom:1px solid #1f24201a;grid-template-columns:42px 1fr;align-items:start;gap:13px;padding-bottom:18px;display:grid}.step-title-row>svg{color:#243a2b;background:#edf1ea;border-radius:4px;width:42px;height:42px;padding:10px}.step-title-row h3{color:#1f2420;margin:0;font-size:clamp(22px,2.2vw,30px);line-height:1.25}.step-title-row p{color:#626a64;margin:7px 0 0;line-height:1.65}.field-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}label{color:#384038;gap:8px;font-size:14px;font-weight:800;display:grid}input,textarea{color:#1f2420;background:#fff;border:1px solid #1f242029;border-radius:4px;outline:none;width:100%;min-height:46px;padding:12px 13px}textarea{resize:vertical;line-height:1.55}input:focus,textarea:focus{border-color:#243a2b;box-shadow:0 0 0 3px #243a2b1f}.upload-box{color:#626a64;background:#f7f8f5;border:1px dashed #1f242047;border-radius:4px;place-items:center;min-height:320px;font-weight:800;display:grid;position:relative;overflow:hidden}.upload-box input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-box img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.upload-box span{color:#1f2420;background:#ffffffe6;border:1px solid #1f24201a;border-radius:4px;padding:8px 12px;position:relative}.skip-photo-button{color:#243a2b;background:#fff;border:1px solid #1f242029;border-radius:4px;justify-content:center;justify-self:start;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-weight:900;display:inline-flex}.skip-photo-button:hover{background:#eef2ea}.visual-choice-group{border:0;gap:10px;margin:0;padding:0;display:grid}.visual-choice-group legend{color:#384038;margin-bottom:2px;font-weight:900}.preset-row{flex-wrap:wrap;gap:8px;display:flex}.material-flow{gap:15px;min-height:0;display:grid;overflow:visible}.material-flow-head{grid-template-columns:52px 1fr;align-items:center;gap:14px;display:grid}.material-flow-head>span{color:#243a2b;background:#eef2ea;border-radius:4px;place-items:center;width:52px;height:52px;font-size:13px;font-weight:900;display:grid}.material-flow-head h4{color:#1f2420;margin:0;font-size:clamp(24px,2.3vw,32px)}.material-flow-head p{color:#626a64;margin:6px 0 0;line-height:1.55}.material-progress{background:#edf0eb;border-radius:999px;height:4px;overflow:hidden}.material-progress span{border-radius:inherit;background:#243a2b;height:100%;transition:width .32s;display:block}.material-flow-tools{flex-wrap:wrap;gap:8px;display:flex}.material-flow-tools button,.review-selection-row button{color:#243a2b;background:#fff;border:1px solid #1f242024;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.material-flow-tools button:hover,.review-selection-row button:hover{background:#eef2ea}.material-flow-tools button:disabled{color:#a3aaa4;cursor:not-allowed;background:#f7f8f5}.material-page{animation:.42s cubic-bezier(.2,.8,.2,1) materialPageIn}.material-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.material-choice-card{color:#1f2420;text-align:left;background:#fff;border:1px solid #1f242021;border-radius:4px;grid-template-rows:150px auto;gap:0;min-height:248px;padding:0;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:grid;position:relative;overflow:hidden}.material-choice-card:hover{border-color:#243a2b61;transform:translateY(-2px)}.material-choice-card.selected{background:#f6f8f3;border-color:#243a2b;box-shadow:inset 0 0 0 2px #243a2b,0 14px 30px #243a2b1a}.material-choice-card img{object-fit:cover;background:#f2f2ef;border-bottom:1px solid #1f242014;width:100%;height:150px}.material-card-copy{align-content:start;min-width:0;min-height:98px;padding:14px 46px 14px 15px;display:grid}.material-card-copy strong,.material-card-copy small{display:block}.material-card-copy strong{word-break:keep-all;font-size:16px}.material-card-copy small{color:#6b736d;word-break:keep-all;margin-top:5px;font-size:13px;line-height:1.35}.material-check{color:#fff;background:#243a2b;border-radius:999px;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:18px;right:14px}.custom-material-panel{background:#fbfbf8;border:1px solid #1f24201a;border-radius:4px;gap:12px;margin-top:14px;padding:14px;display:grid}.custom-material-panel strong{color:#1f2420;font-size:15px}.custom-material-panel p{color:#626a64;margin:5px 0 0;font-size:13px;line-height:1.5}.custom-material-row{grid-template-columns:1fr auto;gap:8px;display:grid}.custom-material-row button,.custom-chip-row button{color:#243a2b;background:#fff;border:1px solid #1f242024;border-radius:4px;justify-content:center;align-items:center;gap:6px;font-weight:900;display:inline-flex}.custom-material-row button{min-height:46px;padding:0 12px}.custom-chip-row{flex-wrap:wrap;gap:7px;display:flex}.custom-chip-row button{background:#eef2ea;min-height:32px;padding:0 9px;font-size:12px}.custom-material-row button:hover,.custom-chip-row button:hover{background:#e2e9dc}.prompt-preview{background:#f7f8f5;border:1px solid #1f24201a;border-radius:4px;padding:14px}.prompt-preview span{color:#7b6a4d;font-size:13px;font-weight:900}.prompt-preview p{color:#394139;white-space:pre-line;margin:8px 0 0;line-height:1.6}.review-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.review-block{background:#fbfbf8;border:1px solid #1f24201a;border-radius:4px;min-height:106px;padding:14px}.review-block.full{grid-column:1/-1}.review-block span{color:#7b6a4d;font-size:12px;font-weight:900}.review-block p{color:#394139;margin:9px 0 0;line-height:1.6}.summary-tags{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.summary-tags em{color:#243a2b;background:#eef2ea;border-radius:999px;padding:6px 9px;font-size:12px;font-style:normal;font-weight:900}.review-selection-list{gap:8px;margin-top:10px;display:grid}.review-selection-row{color:#4f5851;grid-template-columns:96px 1fr auto;align-items:center;gap:12px;margin:0;display:grid}.review-selection-row strong{color:#1f2420}.review-selection-row span{min-width:0}.step-actions{border-top:1px solid #1f24201a;justify-content:space-between;gap:10px;margin-top:22px;padding-top:18px;display:flex}.step-nav-button,.step-next-button,.generate-button{border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-weight:900;display:inline-flex}.step-nav-button{color:#384038;background:#fff;border:1px solid #1f242026}.step-nav-button:disabled{color:#a3aaa4;cursor:not-allowed}.step-next-button,.generate-button{color:#fff;background:#243a2b;border:0}.generate-button{min-height:50px}.generate-button:disabled{opacity:.72;cursor:wait}.result-contact-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.inquiry-button{text-decoration:none}.result-contact-actions .kakao-inquiry-button{background:linear-gradient(135deg,#3c2f1c,#c49a50)}.spin{animation:1s linear infinite spin}.result-step{min-height:560px}.result-loading,.generated-result,.result-error{text-align:center;background:#fbfbf8;border:1px solid #1f24201a;border-radius:4px;justify-items:center;gap:12px;min-height:420px;padding:clamp(22px,4vw,42px);display:grid}.result-loading{align-content:center}.request-received>svg{color:#243a2b}.result-loading strong{color:#1f2420;font-size:clamp(20px,2.4vw,28px)}.result-loading p{color:#626a64;max-width:520px;margin:0;line-height:1.6}.generated-result img{aspect-ratio:4/3;object-fit:cover;border:1px solid #1f24201f;border-radius:4px;width:min(680px,100%)}.generated-result-actions{flex-wrap:wrap;justify-content:center;gap:10px}.generated-result-actions a{color:#fff;background:#1f2420}.generated-result-actions span{color:#243a2b;align-items:center;min-height:42px;font-weight:900;display:inline-flex}.result-error{white-space:pre-line;align-content:center;justify-items:center;margin-top:0}.model-note,.error-note{margin:14px 0 0;line-height:1.6}.error-note{color:#a3362d;font-weight:800}.field-error{color:#a3362d;margin:-2px 0 0;font-size:13px;font-weight:900}.ai-page-main{background:#17221b;height:calc(100svh - 72px);min-height:0;overflow:hidden}.ai-page-main .ai-section{isolation:isolate;background:linear-gradient(112deg,#101712f0 0%,#1c2d22d1 38%,#f6f1e6c2 100%),linear-gradient(#141b161a,#141b1675),url(/assets/img/d0home1.jpg) 50%/cover;border:0;grid-template-rows:auto minmax(0,1fr);gap:clamp(16px,2.2vw,24px);height:100%;min-height:0;padding:clamp(18px,2.4vw,34px) clamp(18px,3.2vw,54px);display:grid;position:relative;overflow:hidden}.ai-page-main .ai-section:before{content:"";z-index:-1;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff14 1px,#0000 1px),linear-gradient(0deg,#ffffff12 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:72px 72px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000c,#0000 78%);mask-image:linear-gradient(90deg,#000c,#0000 78%)}.ai-page-main .section-heading.wide{text-align:left;grid-template-columns:minmax(0,1fr) minmax(280px,470px);align-items:end;gap:clamp(18px,3vw,34px);width:min(1420px,100%);max-width:none;margin:0 auto;display:grid}.ai-page-main .section-heading h2{color:#fff;text-shadow:0 18px 44px #00000047;font-size:clamp(40px,5.6vw,76px);line-height:.98}.ai-page-main .section-heading p:not(.eyebrow){color:#fffcf4e6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#141e189e;border:1px solid #ffffff2e;border-left:3px solid #d6b276;border-radius:8px;justify-self:end;max-width:470px;margin:0;padding:16px 18px;box-shadow:0 18px 46px #0000002e}.ai-page-main .ai-stepper{grid-template-columns:minmax(250px,300px) minmax(0,1fr);gap:clamp(14px,2vw,22px);width:min(1420px,100%);max-width:none;height:100%;min-height:0}.ai-page-main .step-sidebar,.ai-page-main .step-main{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #ffffff38;border-radius:8px;box-shadow:0 24px 70px #050c083d}.ai-page-main .step-sidebar{background:linear-gradient(#18231cf0,#253a2be6),#1f2420eb}.ai-page-main .step-sidebar-head{background:#ffffff12;border-bottom:1px solid #ffffff1f}.ai-page-main .step-sidebar-head span{color:#ffffffad}.ai-page-main .step-sidebar-head strong{color:#f4d29b}.ai-page-main .step-button{color:#ffffffc7;border-bottom:1px solid #ffffff1c;min-height:88px}.ai-page-main .step-button.active{color:#fff;background:linear-gradient(90deg,#ffffff29,#ffffff12);box-shadow:inset 4px 0 #d6b276}.ai-page-main .step-number,.ai-page-main .step-button small{color:#fff9}.ai-page-main .step-icon{color:#203124;background:#f4d29b}.ai-page-main .step-main{background:#ffffffeb;grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;padding:clamp(18px,2vw,26px);overflow:hidden}.ai-page-main .step-content{scrollbar-gutter:stable;min-height:0;padding-right:6px;overflow:auto}.ai-page-main .step-title-row{grid-template-columns:48px 1fr;gap:15px;padding-bottom:16px}.ai-page-main .step-title-row>svg{color:#243a2b;background:linear-gradient(135deg,#f7e0b8,#edf2e8);width:48px;height:48px}.ai-page-main .step-title-row h3{font-size:clamp(24px,2.4vw,34px)}.ai-page-main input,.ai-page-main textarea{background:#ffffffeb;border-color:#1f24202e}.ai-page-main textarea{min-height:min(25svh,230px)}.ai-page-main .upload-box{background:linear-gradient(135deg,#f6f1e6eb,#ecf2e9eb),url(/assets/img/d0home/d0home8.jpg) 50%/cover;border-color:#243a2b57;min-height:clamp(250px,31svh,350px)}.ai-page-main .material-flow-tools button,.ai-page-main .review-selection-row button,.ai-page-main .skip-photo-button{background:#ffffffd1}.ai-page-main .material-progress{background:#1f24201f}.ai-page-main .material-progress span{background:linear-gradient(90deg,#243a2b,#d6b276)}.ai-page-main .material-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ai-page-main .material-choice-card{background:#ffffffe0;grid-template-rows:104px auto;min-height:174px;box-shadow:0 10px 30px #1f24200f}.ai-page-main .material-choice-card img{height:104px}.ai-page-main .material-card-copy{min-height:70px;padding:12px 42px 12px 13px}.ai-page-main .material-card-copy strong{font-size:15px}.ai-page-main .material-check{background:#d6b276;bottom:14px;right:12px}.ai-page-main .custom-material-panel,.ai-page-main .review-block,.ai-page-main .prompt-preview,.ai-page-main .result-loading,.ai-page-main .generated-result,.ai-page-main .result-error{background:#fbfbf8e0}.ai-page-main .step-actions{margin-top:16px}.ai-page-main .step-next-button,.ai-page-main .generate-button{background:linear-gradient(135deg,#243a2b,#3d5a45);box-shadow:0 12px 28px #243a2b38}.ai-page-main .ai-stepper{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.ai-page-main .step-sidebar{background:linear-gradient(90deg,#18231cf0,#253a2be0),#1f2420eb;grid-template-columns:minmax(140px,180px) repeat(5,minmax(0,1fr));min-height:76px;position:relative}.ai-page-main .step-sidebar-head{border-bottom:0;border-right:1px solid #ffffff24;min-height:76px}.ai-page-main .step-button{z-index:1;border-bottom:0;border-right:1px solid #ffffff1a;grid-template-columns:28px 36px minmax(0,1fr);min-height:76px;padding:13px 16px;position:relative;box-shadow:inset 0 -3px #ffffff14}.ai-page-main .step-button small{display:none}.ai-page-main .step-button:last-child{border-right:0}.ai-page-main .step-button.completed{color:#fff;background:#ffffff14;box-shadow:inset 0 -3px #d6b276b8}.ai-page-main .step-button.active{background:linear-gradient(#ffffff2e,#ffffff14),#ffffff1a;box-shadow:inset 0 -5px #f4d29b}.ai-page-main .step-button.active .step-icon,.ai-page-main .step-button.completed .step-icon{background:#f4d29b}.ai-page-main .step-number{align-self:center}.ai-page-main .step-main{width:100%;min-height:0}.ai-page-main .step-title-row{max-width:none}.ai-page-main .field-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ai-page-main .material-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-page-main .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-page-main{height:100svh}.ai-page-main .ai-section{grid-template-rows:minmax(0,1fr);padding:clamp(12px,1.8vw,24px) clamp(16px,3vw,44px);display:grid}.ai-maintenance{color:#fff;background:#18221b;place-items:center;min-height:100svh;padding:clamp(22px,4vw,64px);display:grid;position:relative;overflow:hidden}.ai-maintenance:after{content:"";background:linear-gradient(90deg,#101712e6,#1017129e 42%,#10171257),linear-gradient(#1017122e,#101712c2);position:absolute;inset:0}.ai-maintenance-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.04)}.ai-maintenance-back,.ai-maintenance-panel{z-index:1;position:relative}.ai-maintenance-back{color:#f9f3e7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141e189e;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:14px;font-weight:900;display:inline-flex;position:absolute;top:clamp(18px,3vw,34px);left:clamp(18px,3vw,42px);box-shadow:0 14px 34px #050c082e}.ai-maintenance-panel{width:min(760px,100%);margin-right:auto;padding-top:clamp(54px,8vh,110px)}.ai-maintenance-panel span{color:#f4d29b;background:#ffffff1c;border:1px solid #f4d29b57;border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.ai-maintenance-panel h1{letter-spacing:0;max-width:720px;margin:18px 0 0;font-size:clamp(42px,7.2vw,82px);line-height:1.02}.ai-maintenance-panel p{color:#ffffffc7;max-width:620px;margin:22px 0 0;font-size:clamp(16px,1.6vw,20px);font-weight:650;line-height:1.75}.ai-maintenance-actions{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.ai-maintenance-actions .secondary-action{color:#fff;background:#ffffff14;border-color:#ffffff5c}.ai-page-main .ai-stepper{grid-template-rows:auto minmax(0,1fr);gap:clamp(12px,1.6vw,18px)}.ai-progress-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:0;display:grid}.ai-back-link{color:#f9f3e7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#ffffff24,#ffffff0f),#141e18b8;border:1px solid #fff3;border-radius:999px;justify-content:center;justify-self:start;align-items:center;gap:8px;min-width:0;min-height:40px;padding:0 14px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 12px 30px #050c082e}.ai-back-link:hover{color:#fff;border-color:#f4d29b94}.ai-page-main .step-sidebar{border-radius:999px;grid-template-columns:repeat(5,minmax(0,1fr));min-height:44px;overflow:hidden}.ai-page-main .step-sidebar-head{display:none}.ai-page-main .step-button{border-right:1px solid #ffffff1a;grid-template-columns:24px 28px minmax(0,1fr);min-height:44px;padding:6px 11px;overflow:hidden}.ai-page-main .step-button:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(110deg,#0000 0%,#ffffff47 48%,#0000 100%);position:absolute;inset:0;transform:translate(-120%)}.ai-page-main .step-button.active:after{opacity:1;animation:2.8s ease-in-out infinite progressShine}.ai-page-main .step-button strong{white-space:nowrap}.ai-page-main .step-icon{width:28px;height:28px}.ai-page-heading{align-items:center;min-height:0}.ai-page-main .ai-page-heading{grid-template-columns:1fr;width:min(1420px,100%)}.ai-page-main .ai-page-heading h2{margin:0;font-size:clamp(28px,3.3vw,44px);line-height:1}.ai-page-main .ai-page-heading p:not(.eyebrow){display:none}.ai-page-main .step-main{border-radius:10px;min-height:0;position:relative}.ai-page-main .step-main:before{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff59,inset 0 1px #ffffffa6}.ai-page-main .step-content{position:relative}.ai-page-main .materials-step-content{overscroll-behavior:contain;gap:0;max-height:100%;padding-bottom:14px;overflow-y:auto}.ai-page-main .materials-step-content .material-flow{overflow:visible}.ai-page-main .step-next-button,.ai-page-main .generate-button{position:relative;overflow:hidden}.ai-page-main .step-next-button:after,.ai-page-main .generate-button:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000,#ffffff3d,#0000);animation:3.2s ease-in-out infinite progressShine;position:absolute;inset:0;transform:translate(-120%)}.process-band{background:#fbfbf8;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:26px;padding:clamp(70px,8vw,104px) clamp(20px,4vw,64px);display:grid}.process-grid{border-top:1px solid #20252124;border-left:1px solid #20252124;grid-template-columns:repeat(3,1fr);gap:0;display:grid}.process-grid article{background:0 0;border-bottom:1px solid #20252124;border-right:1px solid #20252124;min-height:190px;padding:22px}.process-grid span{color:#7b6a4d;font-weight:900}.process-grid h3{margin:12px 0 8px;font-size:22px}.process-grid p{margin:0}.contact-section{color:#fff;background:#1f2420;grid-template-columns:minmax(260px,1fr) auto;align-items:end;gap:28px;padding:clamp(64px,8vw,96px) clamp(20px,4vw,64px);display:grid}.contact-section h2{color:#fff}.contact-section p{color:#ffffffb8;align-items:center;gap:7px;max-width:720px;display:flex}.contact-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.contact-actions a{color:#fff;background:#243a2b}@keyframes spin{to{transform:rotate(360deg)}}@keyframes materialPageIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes heroStripSlide{to{transform:translate(-50%)}}@keyframes progressShine{0%{transform:translate(-120%)}52%,to{transform:translate(120%)}}@media (prefers-reduced-motion:reduce){.hero-strip-track{animation:none}.hero-bg img{transition:opacity .5s}.ai-page-main .step-button.active:after,.ai-page-main .step-next-button:after,.ai-page-main .generate-button:after{animation:none}}@media (width>=1121px) and (height<=820px){.ai-page-main .ai-section{gap:14px;padding:18px clamp(26px,3vw,44px)}.ai-page-main .section-heading h2{font-size:clamp(40px,4.8vw,60px)}.ai-page-heading{min-height:52px}.ai-page-main .ai-page-heading{grid-template-columns:1fr;align-items:center}.ai-page-main .ai-page-heading h2{font-size:clamp(36px,4.2vw,48px)}.ai-page-main .ai-page-heading p:not(.eyebrow){display:none}.ai-page-main .section-heading p:not(.eyebrow){padding:12px 15px;font-size:14px;line-height:1.58}.ai-page-main .ai-stepper{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.ai-progress-row{grid-template-columns:auto minmax(0,1fr);gap:8px}.ai-back-link{min-height:36px;padding:0 12px}.ai-page-main .step-sidebar-head{min-height:70px}.ai-page-main .step-sidebar{min-height:40px}.ai-page-main .step-button{min-height:40px;padding:5px 10px}.ai-page-main .step-icon{width:26px;height:26px}.ai-page-main .step-main{padding:16px 18px 18px}.ai-page-main .step-title-row{grid-template-columns:42px 1fr;padding-bottom:13px}.ai-page-main .step-title-row>svg{width:42px;height:42px}.ai-page-main .step-title-row h3{font-size:clamp(22px,2vw,28px)}.ai-page-main .step-title-row p,.ai-page-main .material-flow-head p{display:none}.ai-page-main .material-flow-tools button{min-height:30px}.ai-page-main textarea{min-height:150px}.ai-page-main .upload-box{min-height:210px}.ai-page-main .material-flow{gap:10px}.ai-page-main .material-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ai-page-main .material-flow-head{grid-template-columns:44px 1fr;gap:12px}.ai-page-main .material-flow-head>span{width:44px;height:44px}.ai-page-main .material-flow-head h4{font-size:25px}.ai-page-main .material-choice-card{grid-template-rows:78px auto;min-height:132px}.ai-page-main .material-choice-card img{height:78px}.ai-page-main .material-card-copy{min-height:54px;padding:9px 38px 9px 12px}.ai-page-main .material-card-copy strong{font-size:14px}.ai-page-main .material-card-copy small{font-size:12px;line-height:1.25;display:block}.ai-page-main .material-check{width:24px;height:24px;bottom:12px;right:10px}.ai-page-main .custom-material-panel{grid-template-columns:minmax(170px,.55fr) minmax(0,1.45fr);align-items:center;gap:10px;margin-top:8px;padding:10px}.ai-page-main .custom-material-panel p{display:none}.ai-page-main .custom-chip-row{grid-column:1/-1}.ai-page-main .review-block{min-height:86px}.ai-page-main .result-step{min-height:0}.ai-page-main .result-loading,.ai-page-main .generated-result,.ai-page-main .result-error{min-height:310px}}@media (width<=1120px){.ai-page-main,.ai-page-main .ai-section{height:auto;min-height:calc(100svh - 72px);overflow:visible}.ai-page-main .section-heading.wide{grid-template-columns:1fr}.ai-page-main .section-heading p:not(.eyebrow){justify-self:start}.ai-page-main .ai-stepper{grid-template-columns:1fr;height:auto}.ai-page-main .step-main{height:auto;min-height:620px}.ai-page-main .material-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-grid,.ai-stepper,.process-band,.contact-section,.company-intro{grid-template-columns:1fr}.step-sidebar{grid-template-columns:repeat(5,minmax(0,1fr))}.step-sidebar-head{grid-column:1/-1}.step-button{grid-template-columns:1fr;align-content:start;min-height:132px}.step-button.active{box-shadow:inset 0 4px #243a2b}.project-list{grid-template-columns:repeat(2,minmax(0,1fr))}.project-row:nth-child(odd){border-right:1px solid #2025211a}.project-hero{grid-template-columns:1fr}.contact-actions{justify-content:flex-start}}@media (width<=760px){html{scroll-padding-top:104px}#portfolio,#ai,#contact{scroll-margin-top:0}.topbar{grid-template-columns:1fr auto;gap:8px 10px;min-height:0;padding:9px 14px 10px}.brand{grid-area:1/1;min-width:0;min-height:42px}.brand span{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}nav{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;gap:7px;min-width:0;padding:2px 0 0;display:flex;overflow-x:auto}nav::-webkit-scrollbar{display:none}nav a{color:#243a2b;background:#f4f6f1;border:1px solid #1f24201a;border-radius:999px;flex:none;justify-content:center;align-items:center;min-height:40px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.topbar-call{border-radius:999px;grid-area:1/2;justify-self:end;width:44px;min-height:44px;padding:0;font-size:0}.ai-page-main .ai-section{padding:22px 14px}.ai-progress-row{grid-template-columns:auto minmax(0,1fr);min-height:0}.ai-back-link{justify-self:start;min-width:0;min-height:38px;padding:0 11px;font-size:13px}.ai-page-main .section-heading h2{font-size:clamp(38px,12vw,52px)}.ai-page-heading{min-height:0}.ai-page-main .section-heading p:not(.eyebrow){padding:13px 14px}.ai-page-main .step-main{min-height:auto;padding:16px}.ai-page-main .step-content{padding-right:0;overflow:visible}.ai-page-main .step-sidebar{background:#1f2420f0;grid-template-columns:repeat(5,minmax(118px,1fr));min-height:38px;overflow-x:auto}.ai-page-main .step-sidebar-head{border-bottom:1px solid #ffffff1f;border-right:0;min-height:56px}.ai-page-main .step-button{border-bottom:0;border-right:1px solid #ffffff1c;grid-template-columns:22px 26px 1fr;min-height:38px;padding:5px 9px;box-shadow:inset 0 -2px #ffffff14}.ai-page-main .step-button small{display:none}.ai-page-main .step-button.active{box-shadow:inset 0 -3px #f4d29b}.ai-page-main .step-button.completed{box-shadow:inset 0 -2px #d6b276b8}.ai-page-main .material-card-grid{grid-template-columns:1fr}.hero{min-height:calc(100svh - 96px)}.hero-content{width:calc(100% - 28px);margin-left:14px;margin-right:14px;padding-top:48px;padding-bottom:20px}.hero h1{font-size:clamp(42px,14vw,58px)}.hero-lead{text-wrap:balance;max-width:320px;margin-top:12px;font-size:clamp(18px,5.2vw,22px);line-height:1.42}.hero p:not(.eyebrow):not(.hero-lead){margin-top:12px;font-size:14px;line-height:1.65}.hero-meta{border-bottom:0;grid-template-columns:1fr;gap:0;margin-top:20px;padding:0}.hero-meta div{border-bottom:1px solid #ffffff2e;justify-content:space-between;gap:14px;padding:10px 0;display:flex}.hero-meta dd{text-align:right;margin-top:0}.hero-actions{grid-template-columns:1fr;gap:8px;margin-top:18px;display:grid}.primary-action,.secondary-action{width:100%;min-height:46px}.hero-strip{width:calc(100% - 28px);height:92px;margin-bottom:14px}.hero-strip img{flex-basis:138px}.company-intro,.section,.process-band,.contact-section{padding:48px 16px}.company-intro{gap:22px}.company-intro h2,.section-heading h2,.process-band h2,.contact-section h2{font-size:clamp(27px,8.5vw,36px);line-height:1.18}.section-heading{margin-bottom:22px}.section-heading p:not(.eyebrow),.process-band p,.contact-section p{font-size:14px;line-height:1.65}.intro-list article{min-height:auto;padding:20px 18px}.intro-list h3{margin:16px 0 8px}.portfolio-grid{gap:18px}.project-list{scroll-snap-type:x proximity;scrollbar-width:none;background:0 0;border:0;gap:10px;padding:0 0 8px;display:flex;overflow-x:auto}.project-list::-webkit-scrollbar{display:none}.project-row{scroll-snap-align:start;background:#fff;border:1px solid #2025211f;border-radius:8px;flex:0 0 min(82vw,310px);grid-template-columns:88px 1fr;gap:12px;min-height:104px;padding:10px}.project-row>svg{display:none}.project-row img{border-radius:5px;width:88px;height:80px}.project-row.active{box-shadow:inset 0 -3px #243a2b,0 10px 26px #1f242012}.project-detail{overflow:visible}.project-hero{gap:16px;padding-bottom:18px}.project-hero>img{aspect-ratio:4/3}.project-hero h3{margin-bottom:14px;font-size:clamp(22px,7vw,30px)}.project-actions{grid-template-columns:1fr;display:grid}.project-actions a{width:100%;min-height:44px}.thumb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.process-grid article{min-height:auto;padding:20px 18px}.contact-section{gap:22px;min-height:calc(100svh - 114px)}.contact-section p{align-items:flex-start}.contact-actions{grid-template-columns:1fr;width:100%;display:grid}.contact-actions a{width:100%;min-height:48px}.project-list,.field-grid,.material-card-grid,.review-grid,.process-grid,.intro-list{grid-template-columns:1fr}.step-main{min-height:auto;padding:18px}.step-sidebar{grid-template-columns:1fr}.step-button{grid-template-columns:38px 36px 1fr;min-height:82px}.step-button.active{box-shadow:inset 4px 0 #243a2b}.step-title-row{grid-template-columns:1fr}.material-choice-card{grid-template-rows:142px auto;min-height:236px}.material-choice-card img{height:142px}.material-flow-head,.custom-material-row{grid-template-columns:1fr}.skip-photo-button,.custom-material-row button{width:100%}.step-actions{flex-direction:column-reverse}.review-selection-row{grid-template-columns:1fr;gap:7px}.review-selection-row button{width:fit-content}.step-nav-button,.step-next-button,.generate-button{width:100%}.project-row{grid-template-columns:72px 1fr auto}.project-row:nth-child(odd){border-right:0}.intro-list article,.intro-list article:first-child{border-left:1px solid #20252124}.project-list{grid-template-columns:none;display:flex}.project-row,.project-row:nth-child(odd){border:1px solid #2025211f;flex:0 0 min(82vw,310px);grid-template-columns:88px 1fr}.project-row img{width:88px;height:80px}.ai-page-main{min-height:100svh}.ai-page-main .ai-section{min-height:100svh;padding:14px 10px 16px}.ai-progress-row{gap:7px}.ai-back-link{white-space:nowrap;min-height:34px;padding:0 9px;font-size:12px}.ai-back-link svg{width:15px;height:15px}.ai-page-main .step-sidebar{scroll-snap-type:x proximity;scrollbar-width:none;border-radius:999px;grid-template-columns:repeat(5,minmax(104px,1fr));min-height:34px}.ai-page-main .step-sidebar::-webkit-scrollbar{display:none}.ai-page-main .step-button{scroll-snap-align:center;grid-template-columns:20px 24px 1fr;gap:6px;min-height:34px;padding:4px 8px}.ai-page-main .step-number{font-size:11px}.ai-page-main .step-icon{width:24px;height:24px}.ai-page-main .step-icon svg{width:15px;height:15px}.ai-page-main .step-button strong{font-size:12px}.ai-page-main .step-main{border-radius:8px;padding:14px}.ai-page-main .step-title-row{grid-template-columns:34px 1fr;gap:10px;padding-bottom:12px}.ai-page-main .step-title-row>svg{width:34px;height:34px;padding:8px}.ai-page-main .step-title-row h3{font-size:clamp(20px,6.2vw,25px)}.ai-page-main .step-title-row p{font-size:13px;line-height:1.55}.ai-page-main input,.ai-page-main textarea{min-height:44px;font-size:16px}.ai-page-main textarea{min-height:170px}.ai-page-main .upload-box{min-height:220px}.ai-page-main .materials-step-content{max-height:calc(100svh - 168px);padding-bottom:18px;padding-right:2px;overflow-y:auto}.ai-page-main .material-flow{gap:10px}.ai-page-main .material-flow-head{grid-template-columns:42px 1fr;gap:10px}.ai-page-main .material-flow-head>span{width:42px;height:42px}.ai-page-main .material-flow-head h4{font-size:24px}.ai-page-main .material-flow-tools{grid-template-columns:1fr 1fr;display:grid}.ai-page-main .material-flow-tools button{min-height:36px;padding:0 8px}.ai-page-main .material-choice-card{grid-template-rows:150px auto;min-height:226px}.ai-page-main .material-choice-card img{height:150px}.ai-page-main .material-card-copy{min-height:76px;padding:12px 44px 12px 14px}.ai-page-main .custom-material-panel{gap:10px;margin-top:12px;padding:12px}.ai-page-main .custom-material-row{grid-template-columns:1fr}.ai-page-main .review-selection-row button,.ai-page-main .skip-photo-button,.ai-page-main .custom-material-row button,.result-contact-actions,.result-contact-actions .generate-button{width:100%}.result-contact-actions{grid-template-columns:1fr;display:grid}.ai-page-main .result-loading,.ai-page-main .generated-result,.ai-page-main .result-error{min-height:280px;padding:22px 16px}}@media (width<=420px){.hero h1{font-size:clamp(38px,13vw,48px)}.hero-lead{max-width:290px;font-size:18px}.hero p:not(.eyebrow):not(.hero-lead){display:none}.hero-strip{height:82px}.project-row,.project-row:nth-child(odd){flex-basis:86vw;grid-template-columns:78px 1fr}.project-row img{width:78px;height:74px}.thumb-grid{grid-template-columns:1fr 1fr}.ai-progress-row{grid-template-columns:96px minmax(0,1fr)}.ai-back-link{gap:4px;padding:0 7px}.ai-page-main .step-sidebar{grid-template-columns:repeat(5,minmax(96px,1fr))}.ai-page-main .step-button{grid-template-columns:18px 22px 1fr;padding:4px 7px}.ai-page-main .step-icon{width:22px;height:22px}.ai-page-main .step-main{padding:12px}.ai-page-main .material-flow-tools{grid-template-columns:1fr}.ai-page-main .material-choice-card{grid-template-rows:132px auto;min-height:206px}.ai-page-main .material-choice-card img{height:132px}.contact-section p{display:block}}@media (width<=640px){.ai-maintenance{align-items:end;padding:92px 20px 36px}.ai-maintenance-back{min-height:40px;padding:0 12px;font-size:13px;top:16px;left:16px}.ai-maintenance-panel{padding-top:0}.ai-maintenance-panel h1{font-size:clamp(34px,11vw,46px)}.ai-maintenance-panel p{font-size:15px;line-height:1.68}.ai-maintenance-actions,.ai-maintenance-actions a{width:100%}}
