/*
Theme Name: DG Property Services — Signature
Theme URI: https://dgproperty-services.com
Author: DG Property Services LLC
Description: Custom premium responsive business theme with services, portfolio, contact form and WhatsApp.
Version: 8.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: dg-property-services
*/
:root{--bg:#090c10;--ink:#f5f6f8;--muted:#abb4be;--gold:#bdc8d5;--line:rgba(255,255,255,.14);--light:#f3f5f7;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(3rem,7vw,6.3rem);max-width:950px;margin-bottom:24px}h2{font-size:clamp(2.1rem,4.7vw,4.3rem);margin-bottom:18px}h3{font-size:1.35rem}p{color:var(--muted)}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:white;color:black;padding:12px;z-index:1000}.site-header{position:sticky;top:0;background:rgba(9,12,16,.95);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);z-index:90}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand-mark{width:58px;height:58px;object-fit:cover;border:1px solid var(--line);border-radius:8px}.brand-text{display:flex;flex-direction:column;line-height:1.08;font-size:12px;letter-spacing:.15em;font-weight:800}.brand-text small{font-size:9px;letter-spacing:.23em;color:var(--muted);margin-top:6px}.nav{display:flex;align-items:center;gap:25px}.nav a{font-size:13px;font-weight:700;color:#dfe4eb;transition:color .2s}.nav a:hover,.nav a:focus{color:#fff}.nav .nav-cta{padding:12px 17px;background:#edf1f5;color:#15191f;border-radius:4px}.nav-toggle{display:none;background:none;border:1px solid var(--line);color:white;padding:9px 12px;border-radius:4px}.hero{position:relative;min-height:700px;display:flex;align-items:center;overflow:hidden;background:#141a20}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090c10 2%,rgba(9,12,16,.90) 43%,rgba(9,12,16,.35) 100%),linear-gradient(0deg,#090c10 0%,transparent 35%)}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.55)}.hero-content{position:relative;z-index:1;padding:110px 0 125px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:#c7d0db;font-size:12px;letter-spacing:.22em;font-weight:800;text-transform:uppercase;margin-bottom:30px}.eyebrow:before{content:'';width:30px;height:1px;background:#c7d0db}.hero p.lead{font-size:clamp(1rem,2vw,1.2rem);max-width:620px;margin-bottom:35px;color:#d4dce5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:3px;padding:15px 24px;border:1px solid #d9e1e8;background:#e9edf1;color:#12171c;font-size:13px;letter-spacing:.07em;text-transform:uppercase;font-weight:800;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#fff}.btn-outline{background:transparent;color:white;border-color:#77828b}.btn-outline:hover{background:#26303a}.btns{display:flex;flex-wrap:wrap;gap:12px}.hero-meta{display:flex;gap:30px;margin-top:60px;color:#c6ced8;font-size:12px;letter-spacing:.10em;text-transform:uppercase}.hero-meta span:before{content:'✓';margin-right:9px;color:#fff}.section{padding:110px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:42px}.section-head p{max-width:460px;margin:0}.kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#aab5c0;font-weight:800;margin-bottom:18px}.light{background:var(--light);color:#111820}.light p,.light .kicker{color:#555f69}.light .line{border-color:#d0d5da}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.service{background:#fff;padding:33px;min-height:250px;border:1px solid #e1e5e9}.service .num{color:#747d88;font-size:12px;margin-bottom:30px;display:block}.service p{font-size:14px;margin-bottom:0}.service h3{margin-bottom:14px}.line{border:0;border-top:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project{border:1px solid var(--line);background:#141a21;overflow:hidden}.project img{display:block;width:100%;aspect-ratio:1.42;object-fit:cover;transition:transform .4s}.project:hover img{transform:scale(1.035)}.project-copy{padding:24px}.project-copy h3{font-size:21px;margin-bottom:9px}.project-copy p{font-size:13px;margin-bottom:0}.pill{display:inline-block;margin-bottom:14px;color:#dbe2e8;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.process-item{border-top:1px solid #b9c1c8;padding-top:24px}.process-item strong{font-size:13px;color:#525c66}.process-item h3{margin-top:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.split img{width:100%;height:490px;object-fit:cover}.checkline{padding:16px 0;border-bottom:1px solid var(--line);color:#e2e8ee}.checkline:before{content:'✓';margin-right:13px}.contact-area{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.contact-details a{text-decoration:underline;text-underline-offset:4px}.form-wrap{background:#161d25;padding:36px;border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{margin-bottom:19px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:8px;color:#d8e1eb}.field input,.field textarea,.field select{width:100%;padding:13px 14px;background:#0d1218;border:1px solid #46515d;color:#fff;border-radius:2px;outline-offset:2px}.field textarea{resize:vertical;min-height:125px}.form-note{font-size:12px}.status{padding:12px;border-left:3px solid #fff;background:#28323d;margin-bottom:20px}.footer{border-top:1px solid var(--line);padding:48px 0 20px}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.foot-grid a{display:block;color:#c8d1da;font-size:14px;margin-bottom:8px}.foot-bottom{padding:20px 0 0;border-top:1px solid var(--line);margin-top:35px;font-size:12px;color:#87929d;display:flex;justify-content:space-between;gap:20px}.float-wa{position:fixed;right:20px;bottom:20px;z-index:80;background:#f3f5f7;color:#10151b;padding:12px 17px;border:1px solid #fff;box-shadow:0 8px 32px #0005;font-weight:800;font-size:13px;border-radius:40px}.subhero{padding:105px 0 75px;background:linear-gradient(110deg,#101721,#222d38)}.subhero h1{font-size:clamp(3rem,6vw,5rem)}.subhero p{max-width:650px}.subsection{padding:90px 0}.gallery-set{margin-bottom:65px}.gallery-photos{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.gallery-photos img{width:100%;height:240px;object-fit:cover}.gallery-photos img:first-child{height:310px}.simple-content{padding:70px 0;max-width:760px}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px)}:focus-visible{outline:3px solid #b6d7ff;outline-offset:3px}@media(max-width:980px){.nav{gap:12px}.nav a{font-size:11px}.split{gap:40px}.contact-area{gap:35px}}@media(max-width:760px){.wrap{width:min(100% - 34px,var(--max))}.header-inner{min-height:72px}.brand-mark{width:48px;height:48px}.brand-text{font-size:10px}.nav-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#0d1319;padding:22px 24px 28px;flex-direction:column;align-items:stretch;gap:18px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{font-size:14px}.hero{min-height:650px}.hero:after{background:linear-gradient(90deg,#090c10ef,#090c1080),linear-gradient(0deg,#090c10,transparent)}.hero-content{padding:90px 0 100px}.hero-meta{display:grid;gap:12px}.section,.subsection{padding:70px 0}.section-head{display:block}.section-head p{margin-top:20px}.grid,.project-grid,.process,.split,.contact-area,.foot-grid{grid-template-columns:1fr}.split img{height:310px}.form-grid{grid-template-columns:1fr}.form-wrap{padding:22px}.gallery-photos{grid-template-columns:1fr 1fr}.gallery-photos img:first-child{grid-column:1/-1}.foot-bottom{display:block}}

/* DG Portfolio Detail V2 */
.project-back{display:inline-block;margin-bottom:28px;color:#d7e2ed;text-decoration:underline;text-underline-offset:5px;font-size:14px}.project-hero .eyebrow{display:flex}.project-hero h1{max-width:850px}.project-card-heading{font-size:22px;line-height:1.17;margin-bottom:12px}.project-visit{display:block;margin-top:18px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.portfolio-grid{row-gap:28px}.portfolio-cta{border-top:1px solid var(--line);padding-top:70px;margin-top:80px}.portfolio-cta p{margin-bottom:25px}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.85fr);gap:55px;align-items:start}.gallery-instruction{margin-bottom:24px;font-size:14px}.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-photo{background:#1c242d;position:relative;overflow:hidden;padding:0;border:1px solid var(--line);text-align:left;color:white}.project-photo.featured{grid-column:1/-1}.project-photo img{display:block;width:100%;height:270px;object-fit:cover;transition:transform .2s}.project-photo.featured img{height:440px}.project-photo:hover img,.project-photo:focus-visible img{transform:scale(1.025)}.project-photo span{position:absolute;left:16px;bottom:13px;padding:6px 10px;background:#071018d9;color:#fff;font-size:12px}.project-aside{position:sticky;top:110px;border-top:1px solid var(--line);padding-top:25px}.project-aside h2{font-size:clamp(2rem,3vw,3rem)}.project-aside .btn{margin-top:20px}.project-fact{display:flex;justify-content:space-between;align-items:baseline;gap:20px;border-top:1px solid var(--line);padding:18px 0;font-size:13px}.project-fact span{color:var(--muted)}.project-fact strong{text-align:right}.project-disclaimer{font-size:12px;line-height:1.6}.project-next{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:65px;padding-top:35px;border-top:1px solid var(--line)}.project-next .project-back{margin:0}.dg-lightbox{position:fixed;inset:0;border:0;background:#080b0ef5;color:#fff;padding:45px 20px;max-height:100dvh;max-width:100vw;width:100vw;height:100dvh;overflow:auto}.dg-lightbox::backdrop{background:#000e}.dg-lightbox-layout{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:15px;width:min(1200px,100%);height:100%;margin:auto;position:relative}.dg-lightbox figure{margin:0;text-align:center;min-width:0}.dg-lightbox img{max-width:100%;max-height:78dvh;width:auto;height:auto;object-fit:contain;box-shadow:0 15px 60px #0008}.dg-lightbox figcaption{display:flex;justify-content:center;gap:18px;color:#d8e1ea;font-size:13px;margin-top:16px}.dg-lightbox button{border:1px solid #8896a5;background:#16202b;color:#fff;border-radius:5px;font-size:38px;min-height:52px}.dg-lightbox button:hover{background:#344456}.dg-lightbox-close{position:absolute;right:0;top:0;width:52px;z-index:2}.dg-lightbox-prev,.dg-lightbox-next{width:56px}.dg-lightbox:focus{outline:none}@media(max-width:820px){.project-detail-grid{grid-template-columns:1fr}.project-aside{position:static}.project-photo.featured img{height:340px}}@media(max-width:560px){.project-gallery{grid-template-columns:1fr}.project-photo.featured{grid-column:auto}.project-photo img,.project-photo.featured img{height:280px}.project-next{flex-direction:column;align-items:flex-start}.dg-lightbox{padding:50px 4px 25px}.dg-lightbox-layout{grid-template-columns:40px minmax(0,1fr) 40px;gap:3px}.dg-lightbox-prev,.dg-lightbox-next{width:40px}.dg-lightbox button{font-size:28px;min-height:45px}.dg-lightbox-close{width:45px}}

/* Version 5: estimate destination and card focus */
.project:focus-visible{outline:3px solid #ffffff;outline-offset:4px}.nav-cta:focus-visible{outline:3px solid #fff;outline-offset:4px}

#services{scroll-margin-top:100px}
