@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700&display=swap";:root{--page:#f1f4f8;--page-strong:#fbfcfe;--ink:#152033;--muted:#5d6b82;--line:#dbe3ef;--line-soft:#e9eef5;--accent:#0f4fbf;--accent-deep:#163b8c;--accent-soft:#edf4ff;--teal-soft:#e8f7f4;--gold-soft:#fff4dd;--success:#118a63;color:var(--ink);background:radial-gradient(circle at 100% 0,#add7ff61,#0000 24%),radial-gradient(circle at 12% 24%,#6fc4ff29,#0000 18%),radial-gradient(circle at 80% 78%,#ffe1a738,#0000 16%),linear-gradient(#f6f8fc 0%,#eef2f7 100%);font-family:Manrope,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:0 0;min-width:320px;min-height:100vh;margin:0}a,button{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p,ul{margin:0}.page-shell{padding:24px;position:relative}.page-shell:before{content:"";pointer-events:none;background-image:linear-gradient(#0f4fbf08 1px,#0000 1px),linear-gradient(90deg,#0f4fbf08 1px,#0000 1px);background-size:64px 64px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000057,#0000 80%);mask-image:linear-gradient(#00000057,#0000 80%)}.page-shell:after{content:"";pointer-events:none;background:radial-gradient(circle at 20% 18%,#0f4fbf14,#0000 10%),radial-gradient(circle at 78% 12%,#118a630f,#0000 12%),radial-gradient(circle at 72% 68%,#0f4fbf0f,#0000 12%),linear-gradient(115deg,#fff0 38%,#0f4fbf0b 50%,#fff0 62%);position:fixed;inset:0}main:before{content:"";pointer-events:none;opacity:.8;background:radial-gradient(circle at 14% 30%,#0f4fbf14 0 2px,#0000 2px) 0 0/220px 220px,radial-gradient(circle at 84% 22%,#118a6314 0 2px,#0000 2px) 0 0/260px 260px,radial-gradient(circle at 70% 76%,#9a6a1314 0 2px,#0000 2px) 0 0/240px 240px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000080,#0000 88%);mask-image:linear-gradient(#00000080,#0000 88%)}.topbar,.nav-strip,.surface-card,.brand-mark,.gallery-button img{border:1px solid var(--line-soft);background:linear-gradient(#fffffff5,#f8fbfff0);box-shadow:0 16px 40px #1e315312}.masthead{z-index:20;max-width:1180px;margin:0 auto 32px;position:sticky;top:16px}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:24px;justify-content:flex-start;align-items:center;gap:20px;padding:14px 18px;display:flex;box-shadow:0 20px 44px #22395d14}.nav-strip{scrollbar-width:none;border-radius:18px;gap:12px;margin-top:12px;padding:10px 12px;display:flex;overflow-x:auto}.nav-strip::-webkit-scrollbar{display:none}.brand,.nav-strip,h1,h2,h3{font-family:Sora,sans-serif}.brand{grid-template-rows:auto auto;grid-template-columns:auto auto;align-items:center;gap:6px 16px;min-width:0;display:grid}.brand-mark{background:linear-gradient(135deg,#0f4fbf14,#118a630f),linear-gradient(#fffffffa,#f5f9fff0);border-radius:22px;flex:none;grid-row:1/span 2;justify-content:center;align-items:center;width:92px;height:92px;padding:12px;display:inline-flex}.brand-logo{object-fit:contain;width:100%;height:100%}.brand-copy{gap:2px;min-width:0;display:grid}.brand-copy-stacked{align-self:end}.brand-name-block{align-self:start}.brand-copy strong{letter-spacing:.06em;font-size:.95rem}.brand-copy span{color:var(--muted);font-size:.88rem;line-height:1.45}.brand-name-block strong{letter-spacing:.04em;color:var(--ink);font-size:1.15rem;display:block}.nav-strip a{color:var(--muted);white-space:nowrap;border:1px solid var(--line-soft);background:#ffffffd1;border-radius:999px;padding:10px 14px;font-size:.94rem}main,.footer-inner{max-width:1180px;margin:0 auto}.section{padding:42px 0}.hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:stretch;gap:28px;padding-top:20px;display:grid}.eyebrow,.project-category,.panel-title,.contact-label{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800}.eyebrow,.panel-title,.contact-label{color:var(--accent)}.eyebrow{text-shadow:0 1px #ffffff80}h1{letter-spacing:-.04em;max-width:11ch;font-size:clamp(2.1rem,4.2vw,3.9rem);line-height:1.04}h2{letter-spacing:-.035em;max-width:18ch;font-size:clamp(1.55rem,2.5vw,2.35rem);line-height:1.1}h3{font-size:1.08rem;line-height:1.3}.section-heading{gap:10px;margin-bottom:20px;display:grid}.hero-text,.section-intro,.about-card p,.service-card p,.project-summary p,.contact-actions-card p,.footer span,.nav a,.brand-copy span{color:var(--muted);line-height:1.75}.hero-text{max-width:58ch;margin-top:18px;font-size:1rem}.location-strip{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.location-chip,.location-note{border:1px solid var(--line);min-height:36px;color:var(--ink);background:#ffffff9e;border-radius:999px;align-items:center;padding:0 14px;font-size:.92rem;display:inline-flex}.location-chip{background:var(--accent-soft);color:var(--accent);font-weight:700}.section-intro{max-width:64ch;margin:-2px 0 18px}.hero-actions,.contact-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.button{border:1px solid var(--line);border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;transition:transform .16s,box-shadow .16s;display:inline-flex}.button:hover,.nav-strip a:hover,.gallery-button:hover{transform:translateY(-1px)}.button-primary{background:linear-gradient(135deg, var(--accent-deep) 0%, var(--accent) 100%);color:#fff;border-color:#0000;box-shadow:0 12px 28px #0f4fbf38}.button-secondary{background:linear-gradient(#fff 0%,#f4f8ff 100%)}.button-whatsapp{color:var(--success);background:linear-gradient(#f1fbf7 0%,#e5f8f0 100%);border-color:#c8ebde}.hero-side,.about-layout,.services-grid,.project-stack{gap:18px;display:grid}.hero-panel,.surface-card{border-radius:24px;padding:24px}.hero-panel{background:radial-gradient(circle at 100% 0,#0f4fbf14,#0000 34%),linear-gradient(#fffffff7,#f6fafff0)}.highlight-list{color:var(--ink);gap:10px;margin:16px 0 0;padding-left:18px;display:grid}.about-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);gap:22px;display:grid}.project-category{color:var(--accent)}.tag-list{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.tag-list li{color:var(--accent-deep);background:linear-gradient(#f1f7ff 0%,#e8f1ff 100%);border-radius:999px;padding:9px 12px;font-size:.88rem}.project-gallery{gap:12px;display:grid}.gallery-2{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-button{cursor:zoom-in;background:0 0;border:0;padding:0}.gallery-button img{aspect-ratio:4/3;object-fit:cover;background:linear-gradient(135deg,#0f4fbf1c,#118a630d),#f5f8fd;border-radius:18px;width:100%}.project-card:nth-child(2n) .project-category{color:#0e7a73}.project-card:nth-child(3n) .project-category{color:#9a6a13}.contact-prefooter{padding-bottom:18px}.footer{color:#eef5ff;background:radial-gradient(circle at 100% 0,#2a71e438,#0000 24%),linear-gradient(#112038 0%,#0f1a2c 100%);margin-top:26px;padding:44px 24px}.footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 240px;align-items:start;gap:28px;display:grid}.footer-title,.footer-label{font-family:Sora,sans-serif;display:block}.footer-title{font-size:1.2rem}.footer-text{color:#eef5ffc7;max-width:38ch;margin-top:12px;line-height:1.75}.footer-label{text-transform:uppercase;letter-spacing:.14em;color:#8ebcff;margin-bottom:14px;font-size:.74rem}.footer-contact{gap:10px;display:grid}.footer-link{color:#fff;word-break:break-word;line-height:1.6}.footer-actions{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.qr-card{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:18px;width:160px;padding:12px;display:block}.qr-image{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px;width:100%}.lightbox{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f1622d1;place-items:center;padding:32px;display:grid;position:fixed;inset:0}.lightbox-content{max-width:min(1180px,100%);max-height:100%}.lightbox-image{border:1px solid #ffffff38;border-radius:22px;max-width:100%;max-height:calc(100vh - 120px);box-shadow:0 28px 70px #00000040}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:999px;min-height:44px;padding:0 18px;position:absolute;top:24px;right:24px}@media (width<=1080px){.hero,.about-layout,.project-card,.footer-inner{grid-template-columns:1fr}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-3,.gallery-2{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hero{gap:22px}h1,h2{max-width:none}.qr-card{width:180px}}@media (width<=760px){.page-shell{padding:12px}.masthead{margin-bottom:24px;position:static}.topbar{border-radius:18px;align-items:flex-start;padding:14px}.nav-strip{border-radius:16px;gap:10px;margin-top:10px;padding:8px 8px 10px}.services-grid{grid-template-columns:1fr}.section{padding:28px 0}.hero-panel,.surface-card{border-radius:18px;padding:18px}.brand-mark{border-radius:18px;width:82px;height:82px}.brand{gap:4px 12px}.brand-name-block strong{font-size:.98rem;line-height:1.2}.brand-copy span{font-size:.75rem}.nav-strip a{padding:9px 12px;font-size:.86rem}.hero{gap:18px;padding-top:8px}h1{letter-spacing:-.035em;font-size:clamp(1.9rem,9vw,2.6rem);line-height:1.08}h2{font-size:clamp(1.3rem,7vw,1.8rem);line-height:1.16}h3{font-size:1rem}.hero-text,.section-intro,.about-card p,.service-card p,.project-summary p,.contact-actions-card p{font-size:.95rem;line-height:1.7}.eyebrow,.project-category,.panel-title,.contact-label{letter-spacing:.12em;font-size:.7rem}.location-strip{gap:8px}.location-chip{min-height:32px;padding:0 12px;font-size:.84rem}.hero-actions,.contact-actions{flex-direction:column;align-items:stretch;gap:10px}.button{width:100%;min-height:46px;padding:0 16px}.about-layout,.project-card{gap:14px}.project-gallery,.gallery-2,.gallery-3{grid-template-columns:1fr;gap:10px}.tag-list{gap:7px}.tag-list li{padding:8px 10px;font-size:.82rem}.lightbox{padding:16px}.lightbox-close{min-height:40px;padding:0 14px;font-size:.9rem;top:14px;right:14px}.footer{margin-top:18px;padding:30px 16px}.footer-actions{flex-direction:column}.footer-actions .button{width:100%}.qr-card{width:140px}}@media (width<=420px){.page-shell{padding:10px}.topbar{padding:12px}.brand-mark{width:72px;height:72px}.hero-panel,.surface-card{padding:16px}h1{font-size:1.75rem}h2{font-size:1.22rem}.brand-name-block strong{font-size:.9rem}.brand-copy span{font-size:.72rem}}
