@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Jost:wght@300;400;500&display=swap');
:root{--ink:#28373b;--muted:#6d7878;--paper:#fff;--soft:#f8f8f6;--line:#e6e8e5;--accent:#789295}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:'DM Sans',Arial,sans-serif;color:var(--ink)}a{color:inherit;text-decoration:none}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 7%;background:white;position:sticky;top:0;z-index:10;border-bottom:1px solid #f0f0ed}.brand{display:flex;align-items:center;gap:11px;font-size:12px;letter-spacing:.18em;font-weight:600}.brand small{display:block;letter-spacing:.3em;font-size:9px;font-weight:400;margin-top:3px}.symbol{font:italic 28px Georgia,serif;width:40px;height:40px;border-radius:50%;border:1px solid #c5d0cf;display:grid;place-items:center;color:#819b9d}.site-header nav{display:flex;gap:32px}.site-header nav a{font-size:10px;letter-spacing:.24em;color:#657174}.site-header nav a:hover{color:#000}.menu{display:none}.hero{min-height:640px;position:relative;display:flex;align-items:center;background:#a2b3b2;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:url("huntsville-aerial-hero.webp");background-size:cover;background-position:center 46%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,45,50,.65),rgba(26,45,50,.14))}.hero-copy{position:relative;max-width:770px;padding:80px 10%}.kicker,.eyebrow{font-size:11px;letter-spacing:.27em;font-weight:600}.hero h1{font-family:Jost,sans-serif;font-weight:300;font-size:clamp(40px,4.9vw,69px);line-height:1.17;letter-spacing:-.035em;margin:20px 0}.hero-copy>p:not(.kicker){font-size:16px;line-height:1.8;max-width:540px}.button{display:inline-flex;align-items:center;gap:26px;border:1px solid currentColor;padding:16px 24px;font-size:11px;font-weight:600;letter-spacing:.18em;margin-top:26px;transition:.2s}.button:hover{background:white;color:var(--ink)}.photo-note{position:absolute;bottom:15px;right:20px;font-size:9px;letter-spacing:.15em;color:#e5e5e5}.section{padding:100px 10%}.intro{max-width:1220px;margin:auto}.eyebrow{color:#7b9698}.intro h2,.section h2,.contact h2{font-family:Jost,sans-serif;font-weight:300;letter-spacing:-.035em;line-height:1.2;font-size:clamp(40px,4.4vw,65px)}h2 em{font-style:normal;color:#839da0}.intro .lead{font-family:Jost,sans-serif;font-weight:300;font-size:clamp(22px,2.7vw,36px);line-height:1.5;max-width:760px;margin:34px 0 55px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;max-width:820px}.intro-grid p,.section-title>p:last-child,.service-grid p{font-size:14px;line-height:1.9;color:var(--muted)}.services{background:var(--soft)}.section-title{text-align:center;max-width:680px;margin:0 auto 55px}.section-title h2{margin:12px 0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.service-photo{height:210px;background:#d8e0dc;position:relative}.service-photo:after{content:"PHOTO PLACEHOLDER";position:absolute;bottom:15px;left:15px;color:#fff;font-size:10px;letter-spacing:.16em}.interior{background:linear-gradient(140deg,#c3c4b9,#e3dcd0 52%,#8c9c9c)}.aerial{background:linear-gradient(130deg,#8aa1a3,#d1d1ba 50%,#5d8078)}.video{background:linear-gradient(120deg,#a6aaa4,#c7b7aa 60%,#627c84)}.extras{background:linear-gradient(130deg,#d2d0c6,#8fa2a0 55%,#b2aca2)}.service-grid h3{font-family:Jost,sans-serif;font-weight:400;font-size:21px;margin:20px 0 7px}.service-grid p{margin:0}.work-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.work-photo{min-height:320px;position:relative}.work-photo span{position:absolute;bottom:18px;left:20px;color:white;font-size:11px;letter-spacing:.2em}.w1{grid-row:span 2;background:linear-gradient(140deg,#d8d3c6,#a6b4b2 55%,#617d83)}.w2{background:linear-gradient(145deg,#a4b7b1,#d3c7b4 60%,#778d8e)}.w3{background:linear-gradient(145deg,#9db2b4,#c7c3b0 50%,#617f79)}.contact{min-height:510px;position:relative;display:flex;align-items:center;background:#718f8d;color:white}.contact-image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(24,42,48,.72),rgba(24,42,48,.14)),url("huntsville-sunset-contact.webp");background-size:cover;background-position:center 48%}.contact-content{position:relative;padding:75px 10%;max-width:850px}.contact h2{margin:18px 0}.contact-content>p:not(.eyebrow){max-width:520px;line-height:1.8}.contact .eyebrow{color:#e0eae7}.contact-links{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.contact-links>a:last-child{font-size:12px;letter-spacing:.1em}footer{padding:40px 7%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#7c8585}footer p{max-width:220px}.menu{cursor:pointer}@media(max-width:950px){.service-grid{grid-template-columns:repeat(2,1fr)}.site-header nav{gap:16px}}@media(max-width:680px){.site-header{height:72px}.menu{display:block;background:none;border:0;font-size:24px;color:var(--ink)}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:25px 7%;flex-direction:column}.site-header nav.open{display:flex}.hero{min-height:650px}.hero-copy{padding:70px 7%}.section{padding:70px 7%}.intro-grid{grid-template-columns:1fr;gap:10px}.service-grid,.work-grid{grid-template-columns:1fr}.w1{grid-row:auto}.work-photo{min-height:240px}.contact-content{padding:70px 7%}footer{flex-wrap:wrap}.photo-note{font-size:7px}}
/* Official Pegasus Perspectives logo */
.brand-logo{display:block;width:126px;height:auto;max-height:74px;object-fit:contain}
footer .brand-logo{width:112px}
@media(max-width:680px){.brand-logo{width:102px;max-height:62px}}

/* Real photo portfolio */
.portfolio-filters{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:-16px 0 36px}.filter{background:transparent;border:1px solid #dfe4e1;color:#687878;padding:12px 17px;letter-spacing:.13em;font-size:10px;cursor:pointer}.filter.active,.filter:hover{background:#35575a;color:white;border-color:#35575a}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.portfolio-card{padding:0;border:0;background:#e8ece9;cursor:pointer;position:relative;overflow:hidden;text-align:left;aspect-ratio:1.25}.portfolio-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.portfolio-card:hover img{transform:scale(1.035)}.portfolio-card>span{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:22px 18px 14px;color:white;font-size:10px;letter-spacing:.17em;background:linear-gradient(transparent,rgba(0,0,0,.56))}.portfolio-card[hidden]{display:none}.portfolio-footnote{text-align:center;font-size:12px;color:#758080;margin:25px auto 0}#photo-dialog{max-width:min(94vw,1250px);max-height:94vh;padding:12px;border:0;background:#fff;box-shadow:0 12px 70px #0007}#photo-dialog::backdrop{background:#111c1de0}#photo-dialog img{display:block;max-width:100%;max-height:79vh;object-fit:contain;margin:auto}#photo-dialog p{margin:10px 4px 2px;color:#5c696a;font-size:13px}#photo-dialog .close-preview{position:absolute;top:12px;right:12px;background:#fff;border:0;font-size:28px;cursor:pointer;width:42px;height:42px}.service-photo.interior{background:center/cover url('open-plan-dining.webp')}.service-photo.aerial{background:center/cover url('country-estate-aerial.webp')}.service-photo.video{background:center/cover url('sunlit-living-room.webp')}.service-photo.extras{background:center/cover url('staged.webp')}@media(max-width:850px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.portfolio-grid{grid-template-columns:1fr}.portfolio-card{aspect-ratio:1.5}.portfolio-filters{gap:6px}.filter{font-size:9px;padding:10px}}

/* Keep hero and contact photography true to its original color and brightness. */
.hero-shade{background:none}
.contact-image{background-image:url("huntsville-sunset-contact.webp")}
.hero-copy,.contact-content{text-shadow:0 2px 8px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.6)}
.hero-copy .button,.contact-content .button{text-shadow:0 1px 4px rgba(0,0,0,.65)}

/* Service thumbnails: real photos only, no placeholder labels. */
.service-photo::after{content:none;display:none}
.service-photo.aerial{background:center/cover url("woodland-home-aerial.webp")}
.service-photo.extras{background:center/cover url("brick-home-twilight-exterior.webp")}
