/* V12 brand redesign - no third-party trackers, external fonts or scripts */
:root{--v12-deep:#0a2621;--v12-panel:#103e34;--v12-accent:#d2b786;--v12-cream:#f7f3eb;--v12-text:#173a30;--v12-line:#e3e7df}
html{scroll-behavior:smooth}body{background:#f8f7f3}a,button,select{touch-action:manipulation}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #d8ab59;outline-offset:3px}
.announcement,.v6-head,.pstrap,.p9-top{background:#09241e!important;color:#e8dec7!important;letter-spacing:.13em!important}
.site-header,.v6-nav,.pnav,.p9-nav{background:rgba(251,250,247,.98)!important;box-shadow:0 5px 25px rgba(8,35,29,.055)!important;border-bottom:1px solid rgba(13,58,47,.09)!important}
.identity .brand-mark,.v6-logo-symbol,.pmark{background:#123d32!important;color:#efd4a5!important;box-shadow:inset 0 0 0 1px rgba(255,233,189,.24)!important}
.brand-title,.p9-logo,.v6-logo,.pbrand{letter-spacing:-.02em!important}
.hero,.p9-hero,.v6-hero,.v7-hero,.phero{position:relative!important;isolation:isolate;overflow:hidden!important;background: radial-gradient(ellipse at 82% 14%,rgba(69,118,92,.65),transparent 40%),radial-gradient(ellipse at 4% 83%,rgba(73,97,70,.26),transparent 46%),linear-gradient(128deg,#09261f,#154336 71%,#18483a)!important;color:#f9f7ed!important}
.hero:before,.p9-hero:before,.v6-hero:before,.v7-hero:before,.phero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(216,189,135,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(216,189,135,.035) 1px,transparent 1px);background-size:39px 39px;pointer-events:none;z-index:-1}
.hero:after,.p9-hero:after,.v6-hero:after,.v7-hero:after,.phero:after{content:'';position:absolute;right:-170px;top:-210px;width:670px;height:670px;border:1px solid rgba(218,192,133,.22);border-radius:50%;box-shadow:0 0 0 82px rgba(211,182,130,.035),0 0 0 160px rgba(211,182,130,.025);pointer-events:none;z-index:-1}
.hero{padding:68px 0 88px}.hero-layout{gap:clamp(28px,5vw,76px);grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr)}.hero-copy{padding:12px 0 22px}.hero-copy h1,.p9-page h1,.v7-hero h1,.v6-hero h1,.phero h1{font-family:Georgia,'Noto Serif SC','Songti SC',serif!important;font-weight:700!important;letter-spacing:-.045em!important;line-height:1.16!important;text-wrap:balance}
.hero-copy h1{font-size:clamp(46px,5.4vw,78px)!important;margin:19px 0 23px}.hero-copy h1 em{color:#efd7a4!important}.hero-copy .eyebrow,.p9-eyebrow,.v6-kicker,.pchip{color:#dec28e!important;letter-spacing:.15em!important}.hero-text,.p9-lead,.v6-hero p,.v7-hero p,.phero p{color:#e0e9df!important;line-height:1.85!important;font-weight:400!important;max-width:58ch}
.hero-signature,.v7-hero-trust{color:#d5dfd1!important}.hero-signature .icon{color:#d5b778!important}
.hero .btn-primary,.hero-actions a.btn-primary,.v6-hero .v6-btn:not(.outline),.v7-hero .v6-btn:not(.outline),.p9-hero .p9-btn:not(.p9-light),.phero .pbtn:not(.alt){color:#143d32!important;background:#e8cca0!important;border:1px solid #e8cca0!important;box-shadow:0 7px 22px rgba(2,24,19,.13)!important}
.hero .btn-primary:last-child{background:rgba(255,255,255,.075)!important;color:#ffffff!important;border-color:rgba(255,255,255,.3)!important}
.hero .btn:hover,.v6-btn:hover,.p9-btn:hover{transform:translateY(-2px)}.v6-hero .v6-btn.outline,.v7-hero .v6-btn.outline,.p9-hero .p9-light,.phero .pbtn.alt{background:rgba(255,255,255,.085)!important;border-color:rgba(255,255,255,.24)!important;color:#fff!important}
.portrait-panel{border-radius:22px!important;background:linear-gradient(145deg,#eaece5,#eee8db)!important;box-shadow:0 29px 85px rgba(2,17,14,.28)!important;height:475px!important;border:1px solid rgba(227,206,163,.55)}.portrait-panel:after{border-radius:16px!important;inset:12px!important;border-color:rgba(180,146,89,.48)!important}.portrait-glow{background:radial-gradient(ellipse at 50% 80%,#f8f8f2,#d8e1d8 77%)!important}.portrait-panel .portrait{max-width:85%;height:93%;object-fit:contain}.portrait-label{background:rgba(8,43,35,.95)!important;backdrop-filter:blur(7px);border:1px solid rgba(217,188,135,.25)}
.p9-hero{padding:64px 0 84px}.p9-page h1{font-size:clamp(48px,5.5vw,76px)!important;color:#fff!important}.p9-lead{font-size:17px!important}.p9-tag{border:1px solid rgba(255,255,255,.22)!important;color:#ece9dd!important;background:rgba(255,255,255,.055)!important}.p9-idstripe{background:#0d362c!important}.p9-portrait{border:1px solid rgba(225,195,137,.6);border-radius:26px!important;background:linear-gradient(145deg,#e9eee8,#d3dfd7)!important;box-shadow:0 22px 70px rgba(0,18,14,.34)!important;overflow:hidden}.p9-portrait img{height:auto;max-height:420px;object-fit:contain}
.p9-lang a{border:1px solid rgba(255,255,255,.28)!important;color:#f3ebd9!important;background:rgba(255,255,255,.07)!important}
.v6-hero h1,.v7-hero h1,.phero h1{color:#fff!important}.v7-hero em{color:#efd7a4!important}.v7-portrait{box-shadow:0 20px 60px rgba(5,25,20,.24)!important}
.v12-intro{padding:0 0 78px;margin-top:-30px;position:relative;z-index:2;background:transparent}.v12-inner{max-width:1160px;width:calc(100% - 40px);margin:auto}.v12-shell{background:#fbfaf6;border:1px solid rgba(217,225,217,.9);border-radius:22px;padding:28px;box-shadow:0 25px 70px rgba(11,47,36,.12)}.v12-titleline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;flex-wrap:wrap}.v12-titleline h2{font-family:Georgia,'Noto Serif SC',serif;font-weight:700;letter-spacing:-.025em;font-size:clamp(24px,3vw,31px);line-height:1.25;color:#13392f;margin:0}.v12-titleline span{color:#74877a;font-size:12px;line-height:1.6}
.v12-cardgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.v12-card{min-height:146px;display:flex;flex-direction:column;gap:9px;align-items:flex-start;padding:18px;background:#fff;border:1px solid #e4e8e0;border-radius:15px;text-decoration:none!important;box-shadow:0 4px 14px rgba(15,58,44,.025);transition:transform .18s,border-color .18s,box-shadow .18s}.v12-card:hover{transform:translateY(-3px);border-color:#bbaf8e;box-shadow:0 11px 28px rgba(15,58,44,.1)}.v12-card .v12-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#ecf2eb;color:#1f5745;font-size:20px;line-height:1}.v12-card strong{color:#143a30;font-size:16px;font-weight:760;line-height:1.3}.v12-card small{color:#65766e;font-size:11px;line-height:1.5}.v12-card:nth-child(4){background:#113e33;border-color:#113e33}.v12-card:nth-child(4) strong{color:#f9f4e6}.v12-card:nth-child(4) small{color:#dae5d8}.v12-card:nth-child(4) .v12-icon{background:#d6bb8e;color:#13362c}
.v12-micro{display:flex;gap:17px;justify-content:center;flex-wrap:wrap;margin:18px 0 0;color:#506e5e;font-size:12px}.v12-micro span::before{content:'✓';color:#268463;font-weight:800;margin-right:7px}
.v12-stick{position:fixed;right:18px;bottom:22px;z-index:150;background:#0e6d4d;color:white!important;box-shadow:0 11px 30px rgba(2,51,37,.22);border:1px solid rgba(255,255,255,.35);border-radius:100px;display:inline-flex;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:750;text-decoration:none!important;transition:transform .2s}.v12-stick:hover{transform:translateY(-3px);background:#0b7852}.v12-stick span{font-size:18px}
.section-light{background:#fffefb}.service-card,.pfilter,.v6-panel{box-shadow:0 12px 30px rgba(21,51,42,.055)!important;border-color:#e4e8e0!important}.service-card{border-radius:19px!important}.service-card:hover{border-color:#d1ba88!important}.pnewprojects{border-radius:20px!important;box-shadow:0 12px 26px rgba(19,62,48,.07)}
.pfilter,.pfield input,.pfield select,.v6-field input,.v6-field select{border-radius:12px}.pbtn,.v6-whatsapp,.pcta{border-radius:12px}
footer{padding-bottom:30px}
@media(max-width:900px){.v12-cardgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-layout{grid-template-columns:minmax(0,1fr)}.portrait-panel{max-width:440px;margin:auto;width:100%}}
@media(max-width:640px){.hero{padding:48px 0 66px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(39px,10vw,52px)!important;letter-spacing:-.06em!important}.hero-text{font-size:15px!important;line-height:1.75!important}.hero .hero-actions{gap:8px}.hero .btn{padding:12px 14px;font-size:13px;flex:1 1 44%;min-height:48px}.portrait-panel{height:340px!important;max-width:270px;margin:4px auto 0}.portrait-panel .portrait{height:95%;max-width:85%}.portrait-label{left:14px;right:14px;bottom:12px;padding:11px!important}.v12-intro{margin-top:-10px;padding:0 0 48px}.v12-inner{width:calc(100% - 28px)}.v12-shell{padding:17px 14px;border-radius:17px;box-shadow:0 10px 35px rgba(11,47,36,.08)}.v12-titleline{gap:6px;margin-bottom:15px}.v12-titleline h2{font-size:23px}.v12-cardgrid{gap:8px}.v12-card{min-height:136px;padding:12px;border-radius:13px;gap:7px}.v12-card .v12-icon{height:36px;width:36px;font-size:17px}.v12-card strong{font-size:14px}.v12-card small{font-size:10px}.v12-micro{margin:13px 0 0;gap:9px 14px;font-size:10px}.v12-stick{right:12px;bottom:12px;padding:11px 13px;font-size:12px}.p9-hero{padding:45px 0 55px}.p9-page h1{font-size:48px!important}.p9-hero-grid{grid-template-columns:1fr!important;gap:14px!important}.p9-portrait{max-width:235px;margin:0 auto}.v6-hero,.v7-hero,.phero{padding-top:45px!important;padding-bottom:55px!important}.v6-hero h1,.phero h1{font-size:36px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
