/*
Theme Name: Ohio Park Village
Theme URI: https://ohioparkvillage.com
Author: Ohio Park Village
Description: A clean, responsive custom WordPress theme for Ohio Park Village manufactured home communities.
Version: 4.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: ohio-park-village
License: GPL-2.0-or-later
*/
:root{--navy:#132b42;--navy2:#0b2033;--gold:#c4a46d;--ink:#172b3a;--muted:#596977;--line:#e4e8e9;--cream:#f7f6f3;--white:#fff;--width:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:var(--navy)}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.18;letter-spacing:-.028em;color:var(--navy);margin:0 0 .7em}h1{font-size:clamp(2.5rem,5vw,4.5rem)}h2{font-size:clamp(2rem,3.2vw,3rem)}h3{font-size:1.28rem}p{margin:.5rem 0 1.2rem}.wrap{width:min(var(--width),calc(100% - 40px));margin:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:10px;left:10px;background:white;padding:10px;z-index:1000;width:auto;height:auto;clip:auto}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:108px;gap:24px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-width:0}.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:var(--navy);color:var(--gold);border-radius:12px;font-size:25px;font-weight:700}.brand-name{font-weight:750;color:var(--navy);font-size:1.14rem;letter-spacing:-.035em;line-height:1.2}.brand-sub{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;margin-top:5px}.custom-logo{max-height:84px;max-width:310px;width:auto;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:24px}.primary-nav ul{display:flex;align-items:center;gap:22px;list-style:none;padding:0;margin:0}.primary-nav a{text-decoration:none;font-weight:600;font-size:.91rem;color:var(--ink)}.primary-nav a:hover,.primary-nav a:focus{color:#98753b}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--navy);color:#fff!important;text-decoration:none;border:1px solid var(--navy);padding:13px 20px;border-radius:5px;font-size:.9rem;font-weight:700;line-height:1.35;transition:background .2s,transform .2s}.btn:hover,.nav-cta:hover{background:#254a69;transform:translateY(-1px)}.btn-light{background:#fff;color:var(--navy)!important;border-color:#fff}.btn-outline{background:transparent;border-color:#bac4cd;color:var(--navy)!important}.nav-toggle{display:none;background:transparent;border:1px solid var(--line);padding:9px 12px;border-radius:5px;color:var(--navy);font-weight:700;cursor:pointer}.eyebrow{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#94723f;margin-bottom:18px}.hero{background:linear-gradient(120deg,rgba(11,32,51,.97),rgba(21,52,75,.9)),radial-gradient(circle at 75% 25%,#577184,#0e2a40);color:white;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:6%;min-height:550px;padding-top:75px;padding-bottom:75px}.hero h1{color:#fff;margin-bottom:20px}.hero p{color:#e0e7eb;font-size:1.13rem;max-width:550px}.hero .eyebrow{color:#d9bd8c}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-art{height:365px;border:1px solid #ffffff33;border-radius:170px 170px 14px 14px;position:relative;overflow:hidden;background:linear-gradient(165deg,#a2b8bc 0%,#e3ddc8 38%,#9fae97 39%,#617f68 100%);box-shadow:20px 20px 0 #ffffff13}.hero-art:after{content:'';position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(0deg,#384f3caa,transparent)}.house{position:absolute;bottom:70px;left:13%;width:75%;height:43%;background:#f5f1e7;box-shadow:0 14px 0 #adb3a8;clip-path:polygon(0 28%,50% 0,100% 28%,100% 100%,0 100%)}.house:before{content:'';position:absolute;top:49%;left:15%;width:22%;height:30%;background:#385267;box-shadow:95px 0 #385267,190px 0 #385267}.house:after{content:'';position:absolute;bottom:0;left:45%;width:13%;height:45%;background:#7c776a}.hero-art-label{position:absolute;bottom:15px;left:20px;color:white;z-index:1;font-size:.75rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.section{padding:86px 0}.section-alt{background:var(--cream)}.section-intro{max-width:750px;margin-bottom:36px}.section-intro p{color:var(--muted);font-size:1.06rem}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-36px;position:relative;z-index:2}.service-card{padding:26px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 35px #14283a10;border-radius:8px;text-decoration:none;display:block;color:var(--ink)}.service-card:hover{border-color:var(--gold)}.service-symbol{font-size:1.6rem;color:#9b773e;line-height:1}.service-card h3{margin:12px 0 6px}.service-card p{font-size:.9rem;color:var(--muted);margin:0}.community-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.community{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}.community-image{height:210px;background:linear-gradient(145deg,#d9e3df,#9caeb4);position:relative;display:flex;align-items:end;padding:21px}.community-image:before{content:'';position:absolute;width:65%;height:40%;bottom:0;left:18%;background:linear-gradient(#faf6e9,#c7c8c2);clip-path:polygon(0 28%,50% 0,100% 28%,100% 100%,0 100%);opacity:.7}.community:nth-child(2) .community-image{background:linear-gradient(145deg,#dbe2d0,#a4b0a5)}.community:nth-child(3) .community-image{background:linear-gradient(145deg,#dce0e9,#9cabb4)}.community:nth-child(4) .community-image{background:linear-gradient(145deg,#e8e1d7,#b4b6a7)}.community-image span{position:relative;z-index:1;background:#fff;color:var(--navy);font-size:.71rem;text-transform:uppercase;letter-spacing:.12em;padding:7px 11px;font-weight:750;border-radius:3px}.community-body{padding:25px}.community-body h3{font-size:1.4rem;margin-bottom:7px}.community-body p{color:var(--muted);font-size:.94rem;min-height:45px}.text-link{font-size:.92rem;font-weight:800;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.panel{background:#e9eeee;padding:58px;border-radius:8px;min-height:300px;display:flex;flex-direction:column;justify-content:center}.panel strong{font-size:3rem;color:var(--navy);line-height:1}.checklist{list-style:none;padding:0}.checklist li{margin-bottom:13px;padding-left:26px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:#9d7944;font-weight:800}.dark-banner{background:var(--navy);color:#fff;padding:60px 0}.dark-banner h2{color:#fff}.dark-banner p{color:#d6e0e6}.banner-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.site-footer{background:#0b1f30;color:#cbd6dc;padding:56px 0 23px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.site-footer h3,.site-footer strong{color:#fff}.site-footer a{color:#e1ebef;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:7px 0}.footer-bottom{border-top:1px solid #ffffff2b;margin-top:43px;padding-top:17px;font-size:.82rem;color:#b0c0ca}.content-page{padding:75px 0;min-height:350px}.content-page .entry-content{max-width:850px}.content-page .entry-content img{border-radius:6px}.page-heading{background:var(--cream);padding:65px 0 52px}.page-heading h1{font-size:clamp(2.1rem,4vw,3.3rem);margin:0}.notice{padding:15px 18px;border-left:4px solid var(--gold);background:#faf7f0;color:var(--ink);margin:20px 0}.wp-block-button__link{border-radius:5px}.site-header .menu-item-has-children{position:relative}.site-header .sub-menu{display:none;position:absolute;top:100%;left:0;background:white;min-width:220px;box-shadow:0 10px 25px #0002;padding:15px;z-index:4;flex-direction:column;align-items:flex-start}.site-header .menu-item-has-children:hover .sub-menu,.site-header .menu-item-has-children:focus-within .sub-menu{display:flex}.post-list article{border-bottom:1px solid var(--line);padding:22px 0}input,textarea,select,button{font:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:900px){.header-inner{min-height:78px}.nav-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;border-bottom:1px solid var(--line);padding:22px 20px;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px #0001}.primary-nav.is-open{display:flex}.primary-nav ul{flex-direction:column;align-items:flex-start;gap:16px}.primary-nav .sub-menu{display:block;position:static;box-shadow:none;padding:10px 0 0 12px}.hero-layout{grid-template-columns:1fr;padding-top:65px;padding-bottom:75px}.hero-art{display:none}.services{grid-template-columns:1fr;margin-top:-20px}.community-grid{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:28px}.banner-inner{flex-direction:column;align-items:flex-start}.footer-top{grid-template-columns:1fr 1fr}}@media(max-width:600px){.wrap{width:min(var(--width),calc(100% - 30px))}.section{padding:62px 0}.brand-sub{font-size:.58rem}.brand-mark{height:39px;width:39px}.footer-top{grid-template-columns:1fr;gap:24px}.panel{padding:32px}.hero-layout{min-height:445px}.hero-actions .btn{width:100%}}

/* Version 2: photo-led home hero and refined branding. */
.hero-photo{height:385px;border-radius:160px 160px 12px 12px;position:relative;overflow:hidden;box-shadow:15px 15px 0 rgba(255,255,255,.08);background:#243e49;border:1px solid rgba(255,255,255,.3)}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-photo:after{content:'';position:absolute;bottom:0;left:0;right:0;height:38%;background:linear-gradient(0deg,rgba(5,21,30,.7),transparent);pointer-events:none}
.hero-photo-label{position:absolute;bottom:14px;left:18px;right:14px;font-size:.7rem;z-index:1;color:#fff;line-height:1.4;letter-spacing:.02em}
.site-header{border-bottom:3px solid #e5ac27}
.header-inner{gap:30px}
.brand{flex-shrink:0}.hero .eyebrow{color:#ffc342}.service-card{transition:transform .18s,box-shadow .18s}.service-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px #14283a18}
.community-image{background:linear-gradient(135deg,#dfe8ed,#a6b6ae)}
@media(max-width:1050px){.custom-logo{max-width:250px}.primary-nav ul{gap:14px}}
@media(max-width:900px){.hero-photo{display:none}.custom-logo{max-height:68px;max-width:230px}.header-inner{min-height:83px}}
@media(max-width:600px){.custom-logo{max-width:205px;max-height:66px}}

/* Version 3: Real photos on editable community cards. */
.community-visual-link{display:block;text-decoration:none}
.community-image.has-photo{padding:0;overflow:hidden}
.community-image.has-photo::before{display:none}
.community-image.has-photo .community-photo{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.community-visual-link:hover .community-photo{transform:scale(1.035)}
.community-image.has-photo span{position:absolute;left:18px;bottom:18px;box-shadow:0 2px 8px #0002}
@media(prefers-reduced-motion:reduce){.community-photo{transition:none!important}}
