@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#122c3a;--muted:#61737d;--accent:#007f87;--aqua:#08b6bd;--line:#dfe7eb;--bg:#f5f8fa;--white:#fff;--radius:18px;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #009fa9;outline-offset:4px}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,h4,.brand{font-family:Manrope,system-ui,sans-serif}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(1.85rem,3vw,2.55rem);letter-spacing:-1.2px;line-height:1.16;margin-bottom:12px}h2{font-size:1.4rem;letter-spacing:-.5px}h3{font-size:1.05rem;line-height:1.5}p{line-height:1.65}small{font-size:.8rem}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;padding:15px}.skip:focus{top:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#102b38;color:#d0dce1;padding:34px 22px;display:flex;flex-direction:column}.brand{display:flex;gap:10px;align-items:center;font-weight:800;color:white;font-size:1.04rem;letter-spacing:1.3px}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:.62rem;letter-spacing:2px;font-weight:500;margin-top:6px;color:#a8bdc6}.brand-mark{font-size:2.6rem;line-height:1;letter-spacing:-7px;width:43px}.brand-mark span{color:var(--aqua)}.nav-label{font-size:.68rem;letter-spacing:1.7px;margin:53px 14px 15px;color:#9bb3be}.nav-item{display:flex;align-items:center;gap:12px;padding:14px 15px;border-radius:10px;margin:5px 0;font-size:.93rem;font-weight:500}.nav-item:hover{background:#1d3a47}.nav-item.active{background:#04b3b8;color:#052f39;font-weight:700}.nav-item .count{margin-left:auto;font-size:.72rem;border:1px solid #38616a;border-radius:6px;padding:2px 5px}.sidebar-note{margin-top:auto;border:1px solid #35515e;border-radius:14px;padding:18px 15px;margin-bottom:22px}.sidebar-note svg{color:#61d2d3;margin-bottom:13px}.sidebar-note strong{font-size:.84rem;display:block;color:#edf5f7}.sidebar-note p{font-size:.8rem;color:#a8bec8;line-height:1.6;margin:8px 0 16px}.sidebar-note>span:last-child{font-size:.75rem;letter-spacing:3px;color:#63cfd0}.help-link{font-size:.8rem;text-align:center;padding:12px}.signature{display:flex;justify-content:space-between;font-size:.62rem;letter-spacing:1.5px;color:#8da6b1;margin-top:17px}.workspace{margin-left:244px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{font-size:.82rem;color:var(--muted)}.breadcrumb strong{font-weight:500;color:var(--ink);margin-left:8px}.top-help{display:flex;gap:8px;align-items:center;font-size:.82rem}.top-help svg{width:19px}.mobile-brand{display:none}main{max-width:1400px;margin:auto;padding:36px 42px 20px;min-height:calc(100vh - 154px)}.intro{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:26px}.eyebrow{font-size:.7rem;letter-spacing:1.8px;color:var(--accent);font-weight:700;margin-bottom:9px;text-transform:uppercase}.intro p{color:var(--muted);font-size:.94rem;margin-bottom:0}.edition{white-space:nowrap;color:var(--muted);font-size:.75rem;border:1px solid var(--line);padding:9px 13px;border-radius:30px;margin-top:8px;background:#fff}.search-row{display:flex;gap:12px;margin-bottom:20px}.search{flex:1;display:flex;align-items:center;gap:12px;background:white;border:1px solid var(--line);border-radius:11px;padding:0 16px;min-width:0}.search svg{color:var(--muted)}.search input{width:100%;height:49px;border:0;background:transparent;outline:none;color:var(--ink);font-size:.9rem}.search:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #007f871c}.search-row select{border:1px solid var(--line);border-radius:11px;background:white;color:var(--ink);padding:0 12px;font-size:.85rem;max-width:45%}.categories{display:flex;gap:7px;overflow-x:auto;padding-bottom:8px;margin-bottom:21px;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.chip{border:1px solid transparent;background:transparent;padding:10px 15px;border-radius:9px;white-space:nowrap;color:var(--muted);display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:550}.chip svg{width:18px;height:18px}.chip.active{color:var(--accent);background:#e2f3f3;border-color:#c6e8e9}.chip:hover{background:#e8edef}.feature{display:grid;grid-template-columns:1.15fr 1fr;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:32px}.feature-image{min-height:250px;position:relative;overflow:hidden;background:var(--ink)}.feature-image img{width:100%;height:100%;position:absolute;object-fit:cover;transition:transform .5s}.feature-image:hover img{transform:scale(1.025)}.image-label{position:absolute;left:17px;top:17px;background:#ffffffed;border-radius:6px;padding:6px 9px;color:var(--ink);font-size:.68rem;font-weight:700;letter-spacing:1px}.feature-info{padding:27px 30px;display:flex;flex-direction:column;justify-content:center}.feature-info h2{font-size:1.65rem;line-height:1.25;margin:8px 0 12px;max-width:380px}.feature-info p{font-size:.85rem;color:var(--muted);margin-bottom:18px}.feature-meta{display:flex;gap:20px;font-size:.83rem;margin-bottom:22px}.feature-meta span{display:flex;gap:6px;align-items:center}.feature-meta svg{width:17px;height:17px;color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:9px;padding:12px 18px;font-size:.85rem;font-weight:650;min-height:44px}.button:hover{filter:brightness(.94)}.button.secondary{background:white;color:var(--ink);border-color:var(--line)}.button.light{background:#fff;color:var(--ink);border-color:#fff}.button.small{padding:8px 12px;min-height:38px;font-size:.78rem}.feature-info .button{align-self:flex-start}.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 17px}.section-head h2{margin:0;font-size:1.2rem}.section-head span{font-size:.8rem;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;position:relative;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #102b380c}.card-cover{aspect-ratio:1.65;display:block;background:#eaf0f3;overflow:hidden}.card-cover img{width:100%;height:100%;object-fit:cover}.pending-cover{height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,#e9eff2,#f7f9fa);color:#bdcdd5;position:relative}.pending-cover strong{font-family:Manrope,sans-serif;font-size:3.6rem;font-weight:500;letter-spacing:-4px}.pending-cover svg{position:absolute;left:16px;top:16px;width:19px;color:#8299a5}.card-body{padding:17px}.card-code{color:var(--accent);font-weight:700;font-size:.64rem;letter-spacing:1.2px;margin-bottom:6px}.card-body h3{margin-bottom:8px;font-size:.95rem}.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.76rem;color:var(--muted)}.status{padding:4px 7px;border-radius:5px;font-size:.68rem;background:#f0f3f5;color:#687b86;white-space:nowrap}.status.ready{background:#e3f4f0;color:#25675b}.favorite{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;border:0;background:#fffffff2;display:grid;place-items:center;color:var(--ink)}.favorite svg{width:18px;height:18px}.favorite.saved{color:var(--accent)}.favorite.saved svg{fill:#bfe9e7}.catalog-note{font-size:.8rem;color:var(--muted);margin:19px 0 0;line-height:1.6}.pagination{display:flex;gap:10px;align-items:center;justify-content:center;margin:28px 0}.pagination span{font-size:.8rem;color:var(--muted);margin:0 10px}.icon-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:9px}.empty{padding:52px 24px;text-align:center;border:1px dashed #bacbd4;border-radius:16px;background:#fff}.empty>svg{height:36px;width:36px;color:#93aab7;margin-bottom:16px}.empty h2{font-size:1.2rem}.empty p{font-size:.9rem;color:var(--muted);max-width:460px;margin:0 auto 18px}.page-footer{max-width:1400px;margin:15px auto 0;padding:22px 42px 28px;display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);font-size:.68rem;letter-spacing:1px;color:var(--muted)}.page-footer span{letter-spacing:0}.mobile-nav{display:none}.back{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem;margin-bottom:23px}.back svg{width:16px}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:23px}.detail-header h1{max-width:700px}.detail-header p{color:var(--muted);font-size:.9rem;margin:0}.detail-actions{display:flex;gap:9px;flex-shrink:0}.detail-tabs{border-bottom:1px solid var(--line);margin-bottom:24px}.detail-tabs .chip{border-radius:8px 8px 0 0}.detail-hero{width:100%;max-height:540px;object-fit:cover;border-radius:16px;display:block}.overview{display:grid;grid-template-columns:1.7fr 1fr;gap:26px}.spec-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.spec-panel h2{font-size:1.1rem;margin-bottom:20px}.spec{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:12px 0;font-size:.85rem}.spec span{color:var(--muted)}.spec strong{text-align:right;font-weight:600}.spec:last-of-type{border-bottom:0}.concept-note{font-size:.78rem;color:var(--muted);line-height:1.6;margin:22px 0 0;padding:14px;border-left:2px solid var(--accent);background:#eef6f7}.about{margin-top:23px}.about h2{font-size:1.1rem}.about p{font-size:.9rem;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.gallery-item{border:1px solid var(--line);background:white;border-radius:12px;overflow:hidden;text-align:left;padding:0;color:var(--ink)}.gallery-item img{width:100%;aspect-ratio:1.4;object-fit:cover;display:block;background:#e8eef2}.gallery-item.drawing img{object-fit:contain;background:#fff}.gallery-item>span{padding:13px;display:block;font-size:.82rem;font-weight:600}.gallery-item small{display:block;font-size:.68rem;color:var(--muted);font-weight:400;margin-top:4px}.gallery-item:hover{border-color:var(--accent)}.reader-top{display:flex;align-items:center;justify-content:space-between;gap:14px;background:white;border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:18px}.reader-top h2{font-size:1rem;margin:0 0 5px}.reader-top p{font-size:.8rem;margin:0;color:var(--muted)}.reader-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin:17px 0}.reader-controls select{padding:11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.pdf-page{background:#dce5ea;padding:20px;border-radius:14px;text-align:center}.pdf-page button{border:0;padding:0;background:transparent;display:block;width:100%}.pdf-page img{width:100%;height:auto;display:block;box-shadow:0 5px 20px #102b3820}.material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.material{background:white;border:1px solid var(--line);padding:22px;border-radius:13px;display:flex;gap:17px}.material>svg{color:var(--accent);width:25px;height:25px}.material h3{font-size:.93rem;margin:0 0 8px}.material p{font-size:.82rem;color:var(--muted);margin:0 0 10px}.materials-heading{margin:30px 0 16px;font-size:1.1rem}.faq{background:#fff;border:1px solid var(--line);border-radius:13px;padding:0 22px;margin-bottom:14px}.faq summary{padding:20px 0;cursor:pointer;font-size:.95rem;font-weight:600}.faq p{font-size:.9rem;color:var(--muted);padding-bottom:6px;max-width:800px}dialog{width:min(1200px,96vw);height:92dvh;max-height:92dvh;padding:0;border:0;border-radius:16px;background:#11242e;color:white}dialog::backdrop{background:#04121ce6}dialog[open]{display:flex;flex-direction:column}.viewer-head{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;font-size:.9rem;gap:10px}.viewer-stage{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;min-height:0;padding:10px;overscroll-behavior:contain}.viewer-stage img{max-width:100%;max-height:100%;object-fit:contain}.viewer-stage.zoomed{display:block}.viewer-stage.zoomed img{max-width:none;max-height:none;width:200%;height:auto}.viewer-foot{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;font-size:.85rem}.viewer-foot .button{margin-left:auto}.viewer-foot .icon-btn,.viewer-head .icon-btn{background:#233c48;color:white;border-color:#3a5360}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;box-shadow:0 5px 25px #0002;border-radius:10px;padding:13px 20px;z-index:50;opacity:0;pointer-events:none;transition:.2s;font-size:.85rem;max-width:90vw}.toast.visible{opacity:1;transform:translate(-50%,0)}.download-feedback{font-size:.8rem;color:var(--accent);margin:10px 0;min-height:20px}.pending-detail{max-width:620px;margin:35px auto}.pending-detail .pending-cover{height:170px;border-radius:12px;margin-bottom:24px}.pending-detail .pending-cover strong{font-size:6rem}
@media(min-width:1500px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1120px){.sidebar{width:210px;padding:30px 16px}.workspace{margin-left:210px}main{padding:30px 26px}.topbar{padding:0 26px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-info{padding:22px}.feature-info h2{font-size:1.45rem}.overview{grid-template-columns:1fr}.detail-header{flex-wrap:wrap}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:65px;padding:0 20px;position:sticky;top:0;z-index:5}.mobile-brand{display:block;font:800 1.05rem Manrope,sans-serif;letter-spacing:1.5px}.mobile-brand span{color:var(--aqua);font-size:1.5rem;margin-left:3px}.breadcrumb,.top-help>span:last-child{display:none}.top-help{padding:10px}.top-help svg{width:22px}main{padding:25px 18px 20px;min-height:calc(100dvh - 150px)}h1{font-size:1.8rem;letter-spacing:-.8px}.intro{gap:8px;margin-bottom:21px}.intro p{font-size:.85rem}.edition{display:none}.eyebrow{font-size:.63rem;letter-spacing:1.4px}.search-row{gap:8px}.search{padding:0 12px;gap:8px}.search input{font-size:.83rem;height:46px}.search-row select{font-size:.78rem;padding:0 8px;width:111px}.categories{margin-right:-18px;gap:3px;margin-bottom:17px}.chip{padding:10px 12px;font-size:.8rem}.feature{grid-template-columns:1fr;margin-bottom:26px}.feature-image{min-height:205px}.feature-info{padding:20px}.feature-info h2{font-size:1.5rem;max-width:none;margin-top:4px}.feature-info p{margin-bottom:12px}.feature-meta{margin-bottom:16px}.feature-info .button{width:100%}.section-head h2{font-size:1.07rem}.section-head span{font-size:.72rem}.grid{gap:12px}.card-cover{aspect-ratio:1.3}.card-body{padding:12px}.card-body h3{font-size:.82rem;line-height:1.4}.card-bottom{font-size:.67rem;flex-wrap:wrap}.card-code{font-size:.59rem}.pending-cover strong{font-size:3rem}.favorite{width:32px;height:32px;top:8px;right:8px}.card-bottom .status{font-size:.62rem}.catalog-note{font-size:.75rem}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:#fffffffa;border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));z-index:10;backdrop-filter:blur(15px)}.mobile-nav a{display:flex;align-items:center;flex-direction:column;gap:4px;min-width:62px;color:var(--muted);font-size:.65rem;padding:4px 8px}.mobile-nav a.active{color:var(--accent);font-weight:700}.mobile-nav svg{width:22px;height:22px}.page-footer{margin-bottom:80px;padding:20px 18px;font-size:.62rem;flex-direction:column;gap:7px}.detail-header h1{font-size:1.75rem}.detail-actions{width:100%}.detail-actions .button{flex:1;font-size:.8rem}.detail-hero{border-radius:12px}.overview{gap:20px}.spec-panel{padding:20px}.gallery{gap:12px}.gallery-item>span{font-size:.76rem;padding:10px}.gallery-item small{font-size:.64rem}.gallery-item img{aspect-ratio:1.2}.material-grid{grid-template-columns:1fr}.material{padding:19px}.reader-top{flex-wrap:wrap}.reader-top .button{width:100%}.pdf-page{padding:7px}.viewer-foot{gap:7px;padding:10px}.viewer-foot .button{font-size:.72rem;padding:9px}.viewer-foot .icon-btn{width:37px;height:40px}.viewer-head{padding:10px 12px}.viewer-head>span{font-size:.78rem}dialog{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0}.toast{bottom:95px;width:max-content;text-align:center}.help-link{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Identidade Projetizze sobre branco */
.brand{background:#fff;border-radius:12px;justify-content:center;padding:10px;letter-spacing:0}.brand-logo{width:138px;height:142px;object-fit:contain}.nav-label{margin-top:26px}.mobile-brand img{display:block;width:90px;height:68px;object-fit:contain}.topbar{background:#fff}.external-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}.external-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;display:flex;flex-direction:column}.external-card>img{width:100%;aspect-ratio:1.5;object-fit:cover}.external-icon{display:grid;place-items:center;background:#edf6f6;height:110px;color:var(--accent)}.external-icon svg{width:36px;height:36px}.external-card>span{padding:15px;font-size:.84rem;line-height:1.5}.external-card small{display:block;color:var(--accent);margin-top:8px;font-size:.75rem}.external-card:hover{border-color:var(--accent)}
@media(max-width:700px){.external-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.external-card>span{padding:12px;font-size:.78rem}.topbar{min-height:80px}.mobile-brand img{height:74px;width:88px}}

#drive-viewer{width:min(1000px,96vw);height:92dvh;padding:0;border:0;border-radius:14px;background:#102b38;color:white}#drive-viewer[open]{display:flex;flex-direction:column}#drive-frame{width:100%;flex:1;border:0;background:#fff;min-height:0}#drive-viewer::backdrop{background:#07141dd9}#drive-title{font-size:.9rem;line-height:1.4}.collection-link{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--line);border-radius:14px;background:#fff;margin-bottom:24px}.collection-link span{color:var(--accent);font-size:.85rem}

/* Native material cards and mobile PDF reading. */
.native-material{display:block;padding:0;overflow:hidden}
.native-material>div{padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.native-material h3,.native-material p{margin:0}.native-material p{color:#65747b}.native-material .button{margin-top:8px;min-height:44px;padding:10px 18px}
@media(max-width:760px){.native-material>div{padding:16px}.native-material .button{width:100%}}
@media(max-width:600px){.reader-top{align-items:flex-start;flex-direction:column;gap:12px}.reader-top h2{font-size:22px}.reader-controls select{min-width:0;max-width:65vw}.viewer-foot{flex-wrap:wrap}.pdf-page{padding:4px}}

/* Convite para o quiz de projetos personalizados. */
.upsell-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin:-5px 0 25px;padding:24px 28px;border-radius:18px;background:linear-gradient(115deg,#10313e,#075c64);color:#fff}
.upsell-callout .eyebrow{color:#8ce2e0}
.upsell-callout h2{font-size:1.2rem;line-height:1.35;margin:0 0 6px}
.upsell-callout p{color:#d8edef;font-size:.87rem;margin:0}
.upsell-button{background:#fff;border-color:#fff;color:#10424a;text-align:center;max-width:340px;line-height:1.35}
.upsell-button svg{width:17px;height:17px}
@media(max-width:920px){.upsell-callout{grid-template-columns:1fr}.upsell-button{max-width:none;justify-self:start}}
@media(max-width:760px){.upsell-callout{gap:16px;margin:0 0 22px;padding:21px 19px}.upsell-callout h2{font-size:1.1rem}.upsell-callout p{font-size:.81rem}.upsell-button{width:100%;justify-self:stretch;font-size:.8rem;padding:12px}}
