:root{--paper:#f7f5ef;--ink:#10110f;--dark:#14170f;--accent:#c8ff64;--orange:#ffb84d;--line:rgba(16,17,15,.15);--muted:#666a62;--white:#fff;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.wrap{width:min(var(--max),calc(100% - 80px));margin:auto}
.header{position:relative;z-index:20}.nav{min-height:96px;display:flex;align-items:center;justify-content:space-between}.logo img{width:126px;height:auto}.menu{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:650}.menu .cta{border:1px solid var(--ink);padding:12px 19px;border-radius:999px}.mobile-check,.hamb{display:none}
.hero{min-height:650px;display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center;padding:30px 0 72px}.hero-copy{padding-top:8px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:2px;background:var(--orange)}.hero h1{margin:30px 0 24px;line-height:.89;letter-spacing:-.06em;font-size:clamp(62px,5.2vw,94px);max-width:590px}.hero h1 span{display:block}.hero h1 .soft{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.07em;font-size:.88em}.hero .lead{font-size:17px;line-height:1.58;color:var(--muted);max-width:560px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:1px solid var(--ink);padding:13px 18px;border-radius:12px;font-size:12px;font-weight:750}.button.dark{background:var(--ink);color:#fff}.button.accent{background:var(--accent)}
.hero-visual{position:relative;min-width:0;width:100%;max-width:610px;justify-self:end}.visual-label{font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin:0 0 11px 12px}.browser{position:relative;background:#fff;border:1px solid #d9dbd5;border-radius:20px;overflow:hidden;box-shadow:0 35px 80px rgba(20,23,15,.14);transform:rotate(-1.3deg)}.browser-top{height:38px;background:#eff1ed;border-bottom:1px solid #dfe2dc;display:flex;align-items:center;gap:7px;padding:0 14px}.browser-top i{width:8px;height:8px;border-radius:50%;background:#a9afa6}.browser-top span{font-size:10px;color:#8b9188;margin-left:12px}.browser img{width:100%;aspect-ratio:1.67/1;object-fit:cover}.float-card{position:absolute;background:white;border:1px solid #dcded8;border-radius:14px;box-shadow:0 18px 44px rgba(20,23,15,.12);padding:13px 15px}.float-card.top{right:-8px;top:60px}.float-card.bottom{left:-22px;bottom:30px}.float-card small{display:block;color:#868c83;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.float-card b{display:block;margin-top:5px;font-size:12px}.signal{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #efffd2;margin-right:8px}
.innovation{padding:96px 0;border-top:1px solid var(--line)}.innovation-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px}.kicker{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.section-title{font-size:clamp(46px,4.8vw,76px);line-height:.95;letter-spacing:-.05em;margin:0}.section-copy{font-size:18px;line-height:1.6;color:var(--muted);max-width:760px}.innovation-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:62px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.innovation-step{min-height:245px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.innovation-step b{font-size:11px}.innovation-step h3{font-size:25px;margin:72px 0 12px;letter-spacing:-.03em}.innovation-step p{color:var(--muted);line-height:1.55;margin:0}
.section{padding:96px 0;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;margin-bottom:58px}.section-head h2{font-size:clamp(46px,4.8vw,76px);line-height:.95;letter-spacing:-.05em;margin:0}.section-head p{font-size:18px;line-height:1.6;color:var(--muted);max-width:760px;margin:14px 0 0}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{min-height:270px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}.service small{font-weight:900}.service h3{font-size:28px;letter-spacing:-.03em;margin:55px 0 13px}.service p{line-height:1.55;color:var(--muted);margin:0}
.cases,.labs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-height:540px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.project-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(16,17,15,.08)}.project-card.dark{background:var(--dark);color:#fff}.project-image{aspect-ratio:1.52/1;background:#e7e9e4;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover}.project-body{padding:26px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.pill{border:1px solid currentColor;border-radius:999px;padding:6px 9px}.project-card h3{font-size:31px;line-height:1.05;letter-spacing:-.04em;margin:28px 0 13px}.project-card p{line-height:1.55;color:var(--muted);margin:0}.project-card.dark p{color:#c4c8bf}.stack{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-top:auto;padding-top:26px}.more{display:inline-block;margin-top:15px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.why{background:var(--dark);color:#fff}.why .section-copy{color:#c4c8bf}.method{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #30342e;border-top:1px solid #30342e;margin-top:54px}.step{min-height:230px;padding:28px;border-right:1px solid #30342e;border-bottom:1px solid #30342e}.step b{font-size:11px}.step h3{font-size:26px;margin:56px 0 12px}.step p{color:#bfc4ba;line-height:1.55}
.contact{padding:96px 0;background:#fff}.contact-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:90px}.contact h2{font-size:clamp(48px,5vw,82px);line-height:.93;letter-spacing:-.055em;margin:0}.contact p{font-size:18px;line-height:1.6;color:var(--muted);max-width:650px}.form{background:var(--paper);border:1px solid var(--line);padding:30px;border-radius:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px;margin-bottom:14px}.field span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.field input,.field textarea,.field select{width:100%;border:1px solid #d7d8d2;background:#fff;border-radius:10px;padding:12px;outline:none}.field textarea{min-height:135px;resize:vertical}.full{grid-column:1/-1}.notice{padding:12px 14px;border-radius:10px;background:#eef7df;color:#527030;font-size:13px;margin-bottom:14px}.error{background:#ffe8e2;color:#923a30}.honeypot{position:absolute;left:-9999px;opacity:0}
.footer{background:var(--dark);color:#fff;padding:46px 0;border-top:1px solid #30342e}.footer-row{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.footer img{width:125px;filter:invert(1)}.footer small{color:#aeb3a9}.footer-links{display:flex;gap:18px;font-size:12px;color:#d1d4ce}
.detail-hero{padding:80px 0 65px}.detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.detail-hero h1{font-size:clamp(54px,7vw,108px);line-height:.9;letter-spacing:-.06em;margin:0 0 24px;max-width:1150px}.detail-lead{font-size:21px;line-height:1.55;color:var(--muted);max-width:850px}.detail-cover{margin-top:48px;border:1px solid var(--line);background:#fff}.detail-cover img{width:100%;max-height:760px;object-fit:cover}.detail-grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:80px}.detail-copy{font-size:19px;line-height:1.7}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:36px}.gallery img{width:100%;height:340px;object-fit:cover;border:1px solid var(--line)}.empty-gallery{padding:50px;border:1px dashed var(--line);text-align:center;color:var(--muted)}
@media(max-width:1050px){.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{max-width:820px}.hero-visual{max-width:900px}.innovation-grid,.section-head,.contact-grid,.detail-grid{grid-template-columns:1fr;gap:30px}.services,.cases,.labs{grid-template-columns:1fr 1fr}.method{grid-template-columns:1fr 1fr}.innovation-steps{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}}
@media(max-width:720px){.wrap{width:min(var(--max),calc(100% - 30px))}.nav{min-height:90px}.logo img{width:112px}.hamb{display:block;font-size:28px;cursor:pointer}.menu{position:absolute;left:15px;right:15px;top:83px;background:var(--paper);border:1px solid var(--line);padding:18px;display:none;flex-direction:column;align-items:flex-start;gap:18px}.mobile-check:checked~.menu{display:flex}.hero{padding:42px 0 75px;gap:44px}.hero h1{font-size:58px}.hero .lead{font-size:17px}.browser{transform:none}.float-card{display:none}.innovation,.section,.contact{padding:76px 0}.section-title,.section-head h2{font-size:49px}.services,.cases,.labs,.method,.innovation-steps,.form-grid{grid-template-columns:1fr}.innovation-step,.service{min-height:220px}.project-card{min-height:auto}.project-image{aspect-ratio:1.45/1}.footer-row{flex-direction:column;align-items:flex-start}.gallery img{height:auto}.contact h2{font-size:52px}}

/* === CODEWISE PROJECT DETAIL V2 START === */
.rich-detail{padding-top:70px;padding-bottom:60px}.rich-detail .detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.preview-section{background:#eef0eb}.compact-head{margin-bottom:34px}.compact-head h2{font-size:clamp(42px,4.5vw,70px)}
.product-shell{display:grid;grid-template-columns:190px 1fr;min-height:620px;background:#f8f9f6;border:1px solid #d8dbd4;border-radius:22px;overflow:hidden;box-shadow:0 28px 70px rgba(20,23,15,.12)}.product-side{background:#11140f;color:#fff;padding:22px 15px;display:flex;flex-direction:column;gap:5px}.product-brand{display:flex;align-items:center;gap:9px;font-size:18px;font-weight:950;margin-bottom:24px}.product-brand:before{content:"CW";display:grid;place-items:center;width:32px;height:32px;background:var(--accent);color:#111;border-radius:7px;font-size:11px}.product-brand span{font-size:12px;font-weight:800;color:#e2e5dd}.product-side a{padding:10px 11px;border-radius:8px;color:#aeb5aa;font-size:11px}.product-side a.active{background:#262b22;color:#fff}.product-side small{margin-top:auto;color:#727a70;font-size:9px;text-transform:uppercase;letter-spacing:.12em;padding:10px}.product-main{padding:26px;background:#f8f9f6;min-width:0}.product-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.product-top small{display:block;font-size:9px;letter-spacing:.15em;font-weight:900;color:#8a9087}.product-top h3{font-size:26px;letter-spacing:-.04em;margin:5px 0 0}.product-user{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#111;color:#fff;font-size:11px;font-weight:900}.small-action{border:1px solid #d4d8d0;background:#fff;padding:9px 12px;border-radius:9px;font-size:10px;font-weight:800}.demo-metrics{display:grid;gap:12px;margin-bottom:14px}.demo-metrics.four{grid-template-columns:repeat(4,1fr)}.demo-metrics.three{grid-template-columns:repeat(3,1fr)}.demo-metrics article{background:#fff;border:1px solid #dfe2dc;border-radius:12px;padding:15px;min-width:0}.demo-metrics small{display:block;color:#81877e;font-size:9px}.demo-metrics b{display:block;font-size:24px;margin:8px 0 5px;letter-spacing:-.04em}.demo-metrics em{font-style:normal;color:#858a83;font-size:9px}.demo-split{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.demo-panel{background:#fff;border:1px solid #dfe2dc;border-radius:12px;padding:16px;min-width:0}.panel-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px;font-size:10px}.panel-title span{color:#8a9087}.line-chart{width:100%;height:190px;display:block}.gridline{stroke:#edf0ea;stroke-width:1}.chart-fill{fill:rgba(90,165,74,.09)}.chart-line{fill:none;stroke:#58a24e;stroke-width:4}.activity-list{list-style:none;padding:0;margin:0}.activity-list li{display:grid;grid-template-columns:8px 1fr auto;gap:9px;align-items:center;padding:11px 0;border-bottom:1px solid #eef0eb;font-size:10px}.activity-list li:last-child{border-bottom:0}.activity-list i{width:7px;height:7px;background:#55ae55;border-radius:50%}.activity-list small{color:#90968d;font-size:8px}.env-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.env-row>div{background:#fff;border:1px solid #dfe2dc;border-radius:10px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}.env-row b{font-size:10px}.env-row small{font-size:8px;color:#8c9289}.status{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:999px;background:#eef0eb;font-size:8px;font-style:normal}.status.green{background:#e8f7df;color:#39772f}.status.amber{background:#fff0d2;color:#91651e}.status.red{background:#ffe3df;color:#a13d33}
.search-demo{display:flex;align-items:center;background:#fff;border:1px solid #daddd6;border-radius:11px;padding:13px 14px;color:#80877d;font-size:10px;margin-bottom:14px}.search-demo kbd{margin-left:auto;border:1px solid #dfe2dc;border-radius:6px;padding:4px 7px;background:#f7f8f5;font-size:8px}.doc-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0ea}.doc-row:last-child{border-bottom:0}.doc-row i{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#edf3e8;color:#4f7546;font-size:8px;font-style:normal;font-weight:900}.doc-row b{display:block;font-size:10px}.doc-row small{display:block;color:#8a9087;font-size:8px;margin-top:3px}.category-cloud{display:flex;flex-wrap:wrap;gap:8px}.category-cloud span{border:1px solid #dde1da;border-radius:9px;padding:10px;background:#fafbf8;font-size:9px}.category-cloud b{margin-left:5px}.assistant-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:12px}.chat-demo,.actions-demo{background:#fff;border:1px solid #dfe2dc;border-radius:12px;padding:16px}.chat-msg{max-width:88%;border-radius:12px;padding:12px 13px;font-size:10px;line-height:1.5;margin-bottom:12px}.chat-msg.user{margin-left:auto;background:#171a15;color:#fff}.chat-msg.bot{background:#f2f5ef}.chat-msg.bot p{color:#687067}.mini-result{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:#fff;border:1px solid #dde1da;border-radius:8px;padding:9px;margin-top:7px}.mini-result span,.mini-result b{font-size:8px}.mini-result b{font-weight:700}.chat-input{border:1px solid #d9ddd5;border-radius:9px;padding:12px;color:#92988e;font-size:9px}.chat-input span{float:right;color:#111;font-weight:800}.actions-demo button{display:block;width:100%;text-align:left;border:1px solid #dfe2dc;background:#fff;padding:11px;border-radius:8px;margin-bottom:8px;font-size:9px;font-weight:750}.guard-box{background:#11140f;color:#fff;border-radius:10px;padding:14px;margin-top:20px}.guard-box small{display:block;color:var(--accent);font-size:7px;letter-spacing:.12em}.guard-box b{display:block;font-size:10px;line-height:1.45;margin-top:6px}.flow-canvas{min-height:280px;background-image:radial-gradient(#dfe3dc 1px,transparent 1px);background-size:18px 18px;border:1px solid #dfe2dc;border-radius:12px;display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:10px;padding:28px;margin-bottom:14px}.flow-node{background:#fff;border:1px solid #d9ddd5;border-radius:12px;padding:16px;box-shadow:0 8px 24px rgba(20,23,15,.05)}.flow-node i{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#edf7df;color:#4c743d;font-style:normal;font-size:8px;font-weight:900}.flow-node b{display:block;font-size:10px;margin:13px 0 5px}.flow-node small{font-size:8px;color:#899087}.flow-arrow{font-size:22px;color:#8d948b}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.kanban section{background:#eef0eb;border-radius:12px;padding:12px}.kanban-head{display:flex;justify-content:space-between;font-size:8px;font-weight:900;letter-spacing:.1em;padding:5px 3px 10px}.kanban article{background:#fff;border:1px solid #dfe2dc;border-radius:10px;padding:12px;margin-bottom:9px}.kanban article:last-child{margin-bottom:0}.kanban article b,.kanban article small{display:block}.kanban article b{font-size:10px;margin:8px 0 6px}.kanban article small{font-size:8px;color:#899087}.prio{font-size:7px;border-radius:999px;background:#eef0eb;padding:4px 6px}.prio.high{background:#ffe3df;color:#a13d33}.prio.low{background:#e6f5dd;color:#39772f}.access-table{padding:0;overflow:hidden}.access-table .panel-title{padding:15px 16px 2px}.table-row{display:grid;grid-template-columns:1.2fr 1.2fr .7fr .7fr;gap:10px;padding:11px 16px;border-top:1px solid #edf0ea;align-items:center;font-size:9px}.table-row.head{background:#fafbf8;color:#858b83;font-size:8px}.table-row b,.table-row small{display:block}.table-row small{font-size:7px;color:#92978f;margin-top:2px}
.detail-value-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.detail-value-grid article{padding:28px;min-height:260px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.detail-value-grid article>span{font-size:11px;font-weight:900}.detail-value-grid small{display:block;margin-top:44px;font-size:9px;font-weight:900;letter-spacing:.14em}.detail-value-grid h3{font-size:25px;letter-spacing:-.04em;margin:11px 0}.detail-value-grid p{color:var(--muted);line-height:1.6;margin:0}.detail-stack{margin-top:18px;line-height:1.8}.capabilities{margin-top:36px}.capabilities h3{font-size:18px}.capabilities>div{display:flex;flex-wrap:wrap;gap:8px}.capabilities span{border:1px solid var(--line);border-radius:999px;padding:9px 12px;font-size:10px;font-weight:800}.gallery-title{font-size:clamp(38px,4vw,62px);letter-spacing:-.05em;margin:12px 0 32px}.gallery-section .gallery img{border-radius:10px;background:#fff}.project-cta .section-title{max-width:980px;margin-top:18px}.project-story .detail-copy{margin-top:18px}
@media(max-width:1050px){.product-shell{grid-template-columns:150px 1fr}.demo-metrics.four{grid-template-columns:repeat(2,1fr)}.demo-split,.assistant-grid{grid-template-columns:1fr}.detail-value-grid{grid-template-columns:1fr}.detail-value-grid article{min-height:auto}.flow-canvas{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg);text-align:center}.kanban{grid-template-columns:1fr}.table-row{grid-template-columns:1fr 1fr}.product-main{padding:18px}}
@media(max-width:720px){.rich-detail{padding-top:40px}.product-shell{display:block;min-height:auto}.product-side{display:none}.product-main{padding:14px}.demo-metrics.four,.demo-metrics.three{grid-template-columns:1fr 1fr}.env-row{grid-template-columns:1fr}.compact-head h2{font-size:42px}.detail-value-grid article{padding:22px}.table-row{grid-template-columns:1fr}.table-row.head{display:none}.gallery-title{font-size:40px}}
/* === CODEWISE PROJECT DETAIL V2 END === */



/* === CODEWISE UPLOADED PRODUCT PREVIEW START === */
.uploaded-product-preview{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(17,20,14,.10)}
.uploaded-preview-browser{height:44px;display:flex;align-items:center;gap:7px;padding:0 15px;background:#f3f4ef;border-bottom:1px solid #dde0d8;color:#92978e}
.uploaded-preview-browser>span{width:9px;height:9px;border-radius:50%;background:#afb4aa}
.uploaded-preview-browser small{margin-left:8px;font-size:9px;letter-spacing:.02em}
.uploaded-product-preview>img{display:block;width:100%;height:auto;max-height:820px;object-fit:contain;background:#f7f7f4}
@media(max-width:720px){.uploaded-product-preview{border-radius:12px}.uploaded-preview-browser{height:36px}.uploaded-product-preview>img{max-height:none}}
/* === CODEWISE UPLOADED PRODUCT PREVIEW END === */
