/*
Theme Name: Laze3D Studio
Theme URI: https://www.laze3d.com
Author: Laze3D
Description: Custom Laze3D manufacturing studio website with editable project portfolio and quotation enquiries.
Version: 1.8.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: laze3d
*/
:root{--blue:#BA7195;--deep:#512D50;--ink:#343034;--muted:#70646e;--line:#eee4e9;--soft:#fbf5f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:white}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{max-width:1220px;margin:auto;padding:0 28px}.top{position:sticky;top:0;background:#fffffff2;backdrop-filter:blur(12px);z-index:10;border-bottom:1px solid var(--line)}body.admin-bar .top{top:32px}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:29px;font-weight:900;font-style:italic;letter-spacing:-1.7px}.brand span{color:var(--blue)}.links{display:flex;gap:27px;align-items:center;font-size:14px;font-weight:650}.links a:hover{color:var(--deep)}.btn{border:0;background:var(--blue);color:#fff;padding:14px 22px;border-radius:9px;font-weight:750;display:inline-block}.btn:hover{background:var(--deep);color:white}.btn.outline{background:white;color:var(--deep);border:1px solid #c5dff3}.hero{padding:78px 0 75px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.91fr 1.09fr;gap:38px;align-items:center}.eyebrow{text-transform:uppercase;color:var(--deep);letter-spacing:2.4px;font-size:12px;font-weight:850}.hero h1{font-size:clamp(45px,5.4vw,76px);line-height:1.06;letter-spacing:-3.4px;margin:22px 0}.hero h1 em{font-style:normal;color:var(--blue)}.lead{color:var(--muted);font-size:18px;line-height:1.75;max-width:560px}.actions{display:flex;gap:13px;margin-top:30px;flex-wrap:wrap}.hero-art{aspect-ratio:1065/695;border-radius:24px;overflow:hidden;background:#f8eaf0}.hero-art img{width:100%;height:100%;object-fit:cover}.section{padding:85px 0}.tint{background:var(--soft)}.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.head h2{font-size:clamp(30px,4vw,43px);letter-spacing:-1.5px;margin:10px 0}.sub{color:var(--muted);line-height:1.7;max-width:650px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{border:1px solid var(--line);border-radius:16px;padding:29px;background:#fff}.service h3{font-size:20px;margin:21px 0 9px}.service p{color:var(--muted);line-height:1.65;margin:0;font-size:14px}.ico{height:49px;width:49px;border-radius:13px;background:#e7f4ff;color:var(--deep);display:grid;place-items:center;font-size:24px}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}.filter{padding:10px 15px;border:1px solid var(--line);background:white;border-radius:50px;color:var(--muted)}.filter.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.project{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white}.project img{height:225px;width:100%;object-fit:cover;background:#dcebf5}.project .body{padding:20px}.project small{color:var(--deep);font-weight:800}.project h3{margin:9px 0 7px;font-size:19px}.project p{color:var(--muted);font-size:14px;line-height:1.5;margin:0}.project .more{display:inline-block;color:var(--deep);font-weight:700;margin-top:12px}.quote{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.quote form{background:white;padding:30px;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 40px #18314d0a}.field{margin-bottom:16px}.field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #d7e3ed;border-radius:8px;background:#fff}.field textarea{min-height:100px}.fine{font-size:12px;color:var(--muted);line-height:1.5}.foot{background:#172330;color:#d9e3ed;padding:44px 0}.foot .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.foot .brand{color:#fff}.empty{border:1px dashed #bbd5e7;border-radius:16px;padding:30px;color:var(--muted)}.notice{padding:14px;border-radius:9px;background:#e9f6ff;color:#225679;margin:14px 0}.notice.error{background:#fff0f0;color:#9c2929}.single{max-width:900px;margin:60px auto;padding:0 28px}.single img{max-width:100%;height:auto;border-radius:15px}.wp-block-image img{max-width:100%}.gallery-photo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.gallery-photo img{width:100%;height:200px;object-fit:cover}.screen-reader-text{position:absolute;left:-9999px}.hp-field{position:absolute;left:-9999px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #277ac0;outline-offset:3px}@media(max-width:800px){.hero-grid,.quote{grid-template-columns:1fr}.hero{padding-top:40px}.services,.gallery{grid-template-columns:repeat(2,1fr)}.hero h1{letter-spacing:-2px}.links{gap:12px}}@media(max-width:520px){.wrap{padding:0 18px}.nav{min-height:70px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.links{width:100%;justify-content:space-between;gap:7px}.links a{font-size:11px}.links .btn{padding:10px 11px}.services,.gallery,.gallery-photo{grid-template-columns:1fr}.section{padding:55px 0}.head{display:block}.quote form{padding:19px}body.admin-bar .top{top:46px}}
.project[hidden]{display:none!important}

/* V4: desktop hero repair: allow grid children to shrink and prevent text intrusion */
.hero-grid{grid-template-columns:minmax(0,0.98fr) minmax(0,1.02fr);gap:clamp(24px,3vw,48px)}
.hero-copy,.hero-art{min-width:0}
.hero h1{font-size:clamp(38px,3.55vw,58px);line-height:1.13;letter-spacing:-.045em;overflow-wrap:normal;word-break:normal}
.hero-title-line{display:block}
.hero-art{width:100%;height:auto;aspect-ratio:1065/695;align-self:center}
.hero-art img{display:block;width:100%;height:100%;object-fit:cover}
@media(min-width:1400px){.hero .wrap{max-width:1460px}.hero-grid{grid-template-columns:minmax(0,0.93fr) minmax(0,1.07fr)}.hero h1{font-size:clamp(48px,3.4vw,62px)}}
@media(max-width:1000px) and (min-width:801px){.hero h1{font-size:clamp(34px,3.8vw,42px)}.hero-grid{gap:24px}}
@media(max-width:800px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:clamp(38px,7vw,62px)}.hero-art{max-width:720px}.hero-title-line{display:block}}
@media(max-width:520px){.hero h1{font-size:clamp(32px,8vw,43px);letter-spacing:-.04em}.hero-title-line{display:block}}

/* V5: artwork cleanup; match the revised six-service hero image proportions. */
.hero-art{aspect-ratio:1022/695}

/* V6 project gallery */
.laze-project-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:22px 0 45px}.laze-gallery-link{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#f2f7fb}.laze-gallery-link img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.laze-gallery-link:hover img{transform:scale(1.04)}.laze-lightbox[hidden]{display:none!important}.laze-lightbox{position:fixed;inset:0;background:rgba(9,17,28,.94);z-index:99999;display:flex;align-items:center;justify-content:center;padding:60px}.laze-lightbox img{max-width:90vw;max-height:85vh;object-fit:contain}.laze-lightbox button{position:absolute;border:0;color:white;background:rgba(255,255,255,.14);font-size:36px;cursor:pointer;border-radius:8px;width:48px;height:48px}.laze-lightbox-close{right:20px;top:20px}.laze-lightbox-prev{left:15px;top:50%}.laze-lightbox-next{right:15px;top:50%}@media(max-width:600px){.laze-lightbox{padding:48px}.laze-lightbox button{width:38px;height:42px}}

/* V7: consistent project image grid, featured image first */
.single.laze-project-detail{max-width:1120px;margin:60px auto;padding:0 28px}
.laze-project-detail .laze-project-back{color:#512D50;text-decoration:none;font-weight:600}
.laze-project-detail h1{margin:20px 0 26px}
.single.laze-project-detail .laze-project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 28px}
.single.laze-project-detail .laze-gallery-link{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:14px;background:#eef5fa}
.single.laze-project-detail .laze-gallery-link img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0;transition:transform .2s ease}
.single.laze-project-detail .laze-gallery-link:hover img{transform:scale(1.04)}
.single.laze-project-detail .laze-project-description{max-width:850px;line-height:1.7;margin:20px 0 55px}
@media(max-width:900px){.single.laze-project-detail .laze-project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.single.laze-project-detail{margin:32px auto;padding:0 18px}.single.laze-project-detail .laze-project-gallery{grid-template-columns:1fr;gap:12px}}

/* V8 visual identity — supplied Laze3D logo and rose/plum palette */
.brand{display:inline-flex;align-items:center;min-width:0}.brand-logo{display:block;width:235px;max-width:100%;height:auto}.footer-logo{width:220px;filter:brightness(0) invert(1)}
.btn{background:var(--deep);color:white}.btn:hover{background:#704368}.btn.outline{background:white;color:var(--deep);border-color:#dfc4d2}.btn.outline:hover{background:var(--soft)}
.hero-title-line em{color:var(--blue)}.eyebrow{color:var(--deep)}.tint{background:var(--soft)}
@media(max-width:640px){.brand-logo{width:175px}.footer-logo{width:185px}}
