/*
Theme Name: Dan Mikl & Associates
Author: Dan Mikl & Associates
Description: A custom Fraser Valley real estate theme with editable homepage content and MLS integration areas.
Version: 1.4.0
Requires at least: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dan-mikl
*/
:root{--navy:#142c37;--deep:#0e222c;--cream:#f6f3ec;--gold:#a88c58;--ink:#233944;--muted:#607078;--line:#dddcd5;--white:#fff;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif;background:var(--cream)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h2{font-size:clamp(32px,4vw,52px);letter-spacing:-1px;margin-bottom:22px}h3{font-size:28px}p{margin-bottom:20px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.skip-link{position:absolute;left:20px;top:-100px;padding:12px;background:white;z-index:200}.skip-link:focus{top:12px}.topline{background:var(--navy);color:#fff;font-size:11px;letter-spacing:1.5px}.topline .wrap{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.topline .contact-inline{display:flex;gap:22px;letter-spacing:.5px}.site-header{background:var(--white);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:100px}.brand{display:block;flex-shrink:0}.brand img{width:200px;height:94px;object-fit:contain}.nav{display:flex;align-items:center;gap:26px;font-size:13px}.nav a:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:16px 24px;min-height:52px;background:var(--navy);color:white;border:1px solid var(--navy);font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;cursor:pointer}.button:hover{background:#244551}.button.gold{background:var(--gold);border-color:var(--gold);color:#fff}.button.light{background:transparent;border-color:#ffffff80;color:#fff}.button.small{padding:12px 18px;min-height:44px;gap:14px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:10px 15px;color:var(--navy)}.hero{display:grid;grid-template-columns:1.05fr 1fr;background:var(--navy);color:#fff;min-height:650px}.hero-copy{padding:80px max(48px,calc((100vw - var(--max))/2)) 72px;padding-right:54px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--gold);margin:0 0 24px;display:block}.hero h1{font-size:clamp(44px,4.8vw,72px);letter-spacing:-2px;max-width:580px;margin-bottom:24px}.hero h1 span{display:block;font-size:.65em;letter-spacing:-1px;margin-top:6px}.hero .tagline{font-size:12px;letter-spacing:2px;color:#d9c9a7;margin-bottom:24px;text-transform:uppercase}.hero .intro{max-width:430px;color:#d4dce0;font-size:16px}.hero .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.hero-image{position:relative;min-height:570px;overflow:hidden}.hero-image>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:48% center}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#142c3760,transparent 65%)}.hero-caption{position:absolute;bottom:35px;left:36px;z-index:1;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:white}.trustbar{background:white;border-bottom:1px solid var(--line)}.trustbar .wrap{display:grid;grid-template-columns:1fr 1fr 1fr;padding:27px 0}.trust-item{padding:0 30px;border-left:1px solid var(--line)}.trust-item:first-child{padding-left:0;border:0}.trust-item strong{font-family:Georgia,serif;font-weight:400;font-size:21px;display:block}.trust-item span{font-size:12px;color:var(--muted)}.section{padding:100px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.portrait{position:relative}.portrait img{width:100%;aspect-ratio:4/4.4;object-fit:cover;object-position:center top}.portrait-label{position:absolute;bottom:0;left:0;right:0;background:var(--navy);color:#fff;padding:20px 26px;display:flex;justify-content:space-between;align-items:center}.portrait-label strong{font:25px Georgia,serif}.portrait-label span{font-size:10px;letter-spacing:2px;color:#d3c29f}.body-copy p{color:var(--muted)}.text-link{display:inline-block;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;border-bottom:1px solid var(--gold);padding:9px 0;color:var(--navy)}.text-link span{margin-left:22px}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}.section-head h2{margin-bottom:0}.section-head p{max-width:380px;margin:0;color:var(--muted)}.services{background:white}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{padding:38px 30px;border:1px solid var(--line);background:var(--cream)}.card-number{font-family:Georgia,serif;font-size:18px;color:var(--gold);display:block;margin-bottom:35px}.service-card h3{font-size:29px}.service-card p{color:var(--muted);font-size:14px;min-height:94px}.listings{background:var(--navy);color:white}.listings .section-head p{color:#c1cdd1}.listings h2{color:white}.listing-fallback{display:grid;grid-template-columns:1fr 1fr;border:1px solid #ffffff26}.listing-fallback img{width:100%;height:320px;object-fit:cover}.listing-copy{padding:40px;display:flex;flex-direction:column;justify-content:center}.listing-copy h3{font-size:34px}.listing-copy p{color:#c1cdd1;max-width:430px}.communities{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:45px}.community{padding:26px 0;border-top:1px solid var(--gold)}.community h3{font-size:29px;margin-bottom:12px}.community p{font-size:14px;color:var(--muted)}.team{background:#eae8df}.team-inner{display:grid;grid-template-columns:300px 1fr;gap:75px;align-items:center}.team img{width:300px;aspect-ratio:4/4.7;object-fit:cover;object-position:center top}.team .body-copy{max-width:620px}.testimonials{text-align:center;background:white}.testimonials .cards{text-align:left;margin-top:45px}.quote{margin:0;border-top:1px solid var(--gold);padding:24px 26px 15px;background:var(--cream);display:flex;flex-direction:column}.quote-mark{font:58px Georgia,serif;line-height:1;color:var(--gold);height:44px}.quote blockquote{margin:12px 0 25px;font:18px/1.7 Georgia,serif;flex:1}.quote cite{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-style:normal}.contact{background:var(--navy);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{color:#c1cdd1}.contact-details{display:grid;gap:13px;margin:30px 0;font-size:18px}.contact-details small{font-size:13px;color:#c1cdd1}.contact-form label{display:block;font-size:12px;color:#d4dce0;margin-bottom:7px}.contact-form input,.contact-form textarea{width:100%;padding:13px;border:1px solid #ffffff50;background:#ffffff08;color:white;border-radius:0;margin-bottom:17px}.contact-form textarea{min-height:115px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .consent{display:flex;gap:12px;font-size:12px;align-items:start;margin-bottom:20px}.contact-form .consent input{width:16px;margin:4px 0;flex-shrink:0}.contact-form .button{width:100%}.form-note{font-size:11px;margin-top:14px}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.status{padding:14px;border:1px solid var(--gold);margin-bottom:20px;color:white}.site-footer{background:var(--deep);color:#a9b7bd;padding:30px 0;font-size:11px}.footer-inner{display:flex;gap:30px;justify-content:space-between;align-items:center}.footer-brand{color:white;font-family:Georgia,serif;font-size:19px;display:block;margin-bottom:8px}.footer-right{text-align:right}.footer-right a{display:inline-block;margin-left:16px}.page-content{min-height:50vh}.page-content h1{font-size:48px}.page-content article{margin-bottom:50px}.page-content a{text-decoration:underline}.integration-content{max-width:100%;overflow:auto}.integration-content iframe{max-width:100%}
@media(min-width:1500px){.hero-copy{padding-right:75px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.nav{gap:17px}.hero-copy{padding:65px 28px}.hero{min-height:580px}.hero-image{min-height:540px}.hero h1{font-size:52px}.split{gap:50px}.contact-grid{gap:45px}.header-inner{gap:15px}.brand img{width:165px}.section{padding:75px 0}}
@media(max-width:800px){.topline .contact-inline a:first-child{display:none}.topline{font-size:9px;letter-spacing:.7px}.header-inner{min-height:82px}.brand img{height:76px;width:155px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:22px 28px;border-bottom:1px solid var(--line);align-items:stretch}.nav.is-open{display:flex;flex-direction:column;gap:18px}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 28px}.hero h1{font-size:60px;max-width:600px}.hero-image{min-height:360px}.hero-caption{bottom:24px;left:28px}.trustbar .wrap{gap:20px;padding:23px 0}.trust-item{padding:0 0 0 20px}.trust-item strong{font-size:18px}.trust-item span{font-size:10px}.split{gap:35px}.section-head{align-items:start;flex-direction:column;gap:20px}.cards{gap:15px}.service-card{padding:27px 20px}.service-card h3{font-size:24px}.service-card p{min-height:150px}.team-inner{grid-template-columns:240px 1fr;gap:35px}.team img{width:240px}.quote{padding:20px}.quote blockquote{font-size:16px}.contact-grid{grid-template-columns:1fr;gap:35px}.footer-inner{align-items:start}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.topline .wrap{gap:8px}.hero-copy{padding:53px 20px}.hero h1{font-size:49px;letter-spacing:-1.5px}.hero .intro{font-size:15px}.hero .tagline{font-size:10px}.hero .actions{gap:10px}.button{padding:15px 18px;gap:20px}.hero-image{min-height:285px}.trustbar .wrap{grid-template-columns:1fr;padding:24px 0;gap:17px}.trust-item,.trust-item:first-child{padding:0;border:0;display:flex;justify-content:space-between;align-items:center}.trust-item span{font-size:11px}.section{padding:60px 0}.split{grid-template-columns:1fr;gap:36px}.portrait{max-width:420px}.portrait img{aspect-ratio:4/4.3}.cards,.communities{grid-template-columns:1fr}.service-card{padding:30px}.service-card p{min-height:0}.card-number{margin-bottom:24px}.listing-fallback{grid-template-columns:1fr}.listing-fallback img{height:240px}.listing-copy{padding:30px}.team-inner{grid-template-columns:1fr;gap:32px}.team img{width:100%;max-width:320px}.communities{gap:0;margin-top:30px}.quote blockquote{font-size:18px}.contact-details{font-size:17px}.form-row{grid-template-columns:1fr;gap:0}.footer-inner{flex-direction:column;gap:20px}.footer-right{text-align:left}.footer-right a{margin-left:0;margin-right:16px}.footer-right p{margin:10px 0 0}.section-head{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.menu-list{list-style:none;display:flex;align-items:center;gap:24px;padding:0;margin:0}.menu-list li{position:relative}.sub-menu{list-style:none;padding:12px;background:white;border:1px solid var(--line)}@media(max-width:800px){.menu-list{flex-direction:column;align-items:start;gap:18px}}

/* Landscape edition — full-width scenic hero and a lighter editorial layout. */
:root{--cream:#f8f7f3;--gold:#a98c51;--navy:#102e40}
.header-inner{min-height:88px}.brand img{height:82px;width:180px}
.landscape-hero{display:block;position:relative;min-height:660px;color:#fff;isolation:isolate;margin-bottom:45px}
.landscape-hero .hero-image{position:absolute;inset:0;min-height:0;z-index:-2}
.landscape-hero .hero-image>img{object-position:center 58%;height:100%;width:100%}
.landscape-hero .hero-image:after{background:linear-gradient(180deg,rgba(9,32,45,.37) 0%,rgba(9,32,45,.13) 40%,rgba(9,32,45,.05) 62%,rgba(9,32,45,.32) 100%)}
.landscape-hero .hero-copy{max-width:1400px;margin:auto;display:flex;align-items:center;text-align:center;padding:84px 30px 165px;position:relative}
.landscape-hero .eyebrow{color:#fff;font-size:11px;letter-spacing:3px;margin-bottom:24px;text-shadow:0 1px 12px #102e4070}
.landscape-hero h1{max-width:none;font-size:clamp(40px,5.1vw,76px);text-transform:uppercase;letter-spacing:1px;line-height:1.06;margin-bottom:16px;text-shadow:0 2px 18px #102e4050}
.hero-brokerage{font-size:11px;letter-spacing:2.8px;text-transform:uppercase;margin-bottom:35px;color:#fff}
.landscape-hero .tagline{color:white;font-size:13px;letter-spacing:3px;font-weight:700;text-shadow:0 1px 10px #102e40;margin-bottom:18px}
.landscape-hero .intro{max-width:540px;color:white;font-size:15px;text-shadow:0 1px 12px #102e40;margin-bottom:18px}
.landscape-hero .actions{justify-content:center;gap:14px}.landscape-hero .button.light{background:#102e4020;border-color:#ffffffb0}
.hero-search{position:absolute;bottom:-38px;left:50%;transform:translateX(-50%);width:min(1100px,calc(100% - 80px));background:white;color:var(--navy);display:flex;align-items:center;gap:23px;padding:23px 28px;box-shadow:0 12px 35px #102e401c;border:1px solid #ebeae5}
.hero-search strong{display:block;font-weight:400;font-size:17px}.hero-search span{font-size:12px;color:var(--muted)}.hero-search .button{margin-left:auto;flex-shrink:0}.hero-search .button span{color:white;font-size:15px}.search-symbol{display:flex;align-items:center}
.trustbar{background:var(--cream);border-bottom:0}.trustbar .wrap{padding:32px 0 28px}.trust-item strong{font-size:20px}.section{padding:72px 0}
.services{background:white;padding:60px 0}.services .section-head{margin-bottom:30px}.services h2{font-size:38px}.service-card{border:0;border-left:1px solid var(--line);padding:15px 30px;background:white}.service-card:first-child{border-left:0}.card-number{margin-bottom:19px}.service-card h3{font-size:27px}.service-card p{min-height:72px;font-size:13px}.services .cards{gap:10px}
.listings{background:var(--cream);color:var(--navy);padding-top:60px}.listings h2{color:var(--navy)}.listings .section-head p{color:var(--muted)}.listing-fallback{border:1px solid var(--line);background:white}.listing-fallback img{height:270px}.listing-copy{padding:34px}.listing-copy h3{font-size:30px}.listing-copy p{color:var(--muted);font-size:14px}.listing-copy .button{align-self:flex-start}
.region-section{position:relative;isolation:isolate;background:var(--navy);color:white;overflow:hidden;padding:60px 0}.region-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 72%}.region-section:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0d293cef,#0d293cb0 60%,#0d293c70);z-index:-1}.region-section .wrap{display:grid;grid-template-columns:1fr 1.3fr;gap:65px;align-items:center}.region-section .eyebrow{grid-column:1;margin-bottom:-42px;color:#d9c9a7}.region-section h2{grid-column:1;font-size:40px;font-style:italic;margin-bottom:0}.region-section .communities{grid-column:2;grid-row:1/4;margin-top:0;display:grid;grid-template-columns:1fr;gap:0}.region-section .community{display:grid;grid-template-columns:1fr auto;gap:20px;padding:16px 0;border-top:1px solid #ffffff3b}.region-section .community h3{font-family:Arial,sans-serif;font-size:16px;margin:0;align-self:center}.region-section .community p{display:none}.region-section .community .text-link{color:white;border:0;padding:0;font-size:10px}.region-section .community .text-link span{margin-left:15px}
#about .split{grid-template-columns:.8fr 1.2fr;gap:65px}#about .portrait{max-width:370px}#about .portrait img{aspect-ratio:4/4.2}#about h2{font-size:40px}.portrait-label{padding:16px 20px}.portrait-label strong{font-size:23px}.body-copy p{font-size:14px}.team{background:#eeeee8;padding:48px 0}.team-inner{grid-template-columns:190px 1fr;gap:45px}.team img{width:190px;aspect-ratio:4/4.7}.team h2{font-size:35px;margin-bottom:15px}.team .eyebrow{margin-bottom:15px}.team .body-copy{max-width:850px}.testimonials{background:#edf2f4}.testimonials h2{font-size:42px}.quote{background:#fff;border-top:2px solid var(--gold);padding:22px}.quote blockquote{font-size:16px}.testimonials .cards{margin-top:32px}.contact h2{font-size:43px}
@media(max-width:1000px){.landscape-hero{min-height:610px}.landscape-hero .hero-copy{padding:72px 24px 140px}.landscape-hero h1{font-size:55px;max-width:850px}.hero-search{width:calc(100% - 56px)}.service-card p{min-height:96px}.region-section .wrap{gap:35px}.region-section .community .text-link{font-size:9px}#about .split{gap:40px}}
@media(max-width:800px){.header-inner{min-height:82px}.brand img{height:76px;width:160px}.landscape-hero h1{font-size:48px;max-width:650px}.landscape-hero .hero-image{min-height:0}.hero-search{gap:15px;padding:20px}.hero-search strong{font-size:14px}.hero-search .button{font-size:10px;padding:13px}.search-symbol{display:none}.region-section .wrap{display:block}.region-section .eyebrow{margin-bottom:20px}.region-section h2{margin-bottom:28px;max-width:480px}.region-section .communities{max-width:550px}.region-section .community .text-link{font-size:10px}.service-card{padding:12px 20px}.service-card p{min-height:130px}.team-inner{grid-template-columns:170px 1fr;gap:30px}.team img{width:170px}}
@media(max-width:600px){.landscape-hero{min-height:650px;margin-bottom:75px}.landscape-hero .hero-copy{padding:58px 20px 180px}.landscape-hero h1{font-size:43px;letter-spacing:.4px;max-width:420px}.hero-brokerage{font-size:9px;letter-spacing:1.7px;margin-bottom:28px}.landscape-hero .eyebrow{font-size:10px;margin-bottom:20px}.landscape-hero .tagline{font-size:10px;letter-spacing:1.7px}.landscape-hero .intro{font-size:14px;max-width:340px}.landscape-hero .hero-image>img{object-position:60% center}.hero-search{width:calc(100% - 40px);bottom:-68px;flex-wrap:wrap;gap:14px;padding:20px}.hero-search>div:not(.search-symbol){width:100%}.hero-search strong{font-size:15px}.hero-search .button{margin:0;min-height:40px}.trustbar .wrap{padding:23px 0}.section{padding:52px 0}.services{padding:45px 0}.services h2{font-size:33px}.services .cards{gap:20px}.service-card{border-left:0;border-top:1px solid var(--line);padding:26px 0 8px}.service-card p{min-height:0}.service-card:first-child{border-top:1px solid var(--line)}.card-number{margin-bottom:13px}.listing-fallback img{height:215px}.listing-copy{padding:25px}.listing-copy h3{font-size:28px}.region-section h2{font-size:34px}.region-section .community{grid-template-columns:1fr auto;gap:10px}.region-section .community .text-link{font-size:9px}.region-section .community h3{font-size:14px}#about .split{grid-template-columns:1fr;gap:30px}#about .portrait{max-width:100%}#about h2{font-size:35px}.team-inner{grid-template-columns:110px 1fr;gap:20px;align-items:start}.team img{width:110px}.team h2{font-size:29px}.team .body-copy p{font-size:13px}.team .text-link{font-size:10px}.testimonials h2{font-size:35px}.contact h2{font-size:37px}.body-copy p{font-size:15px}.quote blockquote{font-size:17px}}

/* Keep the source images’ HTML dimensions from forcing tall portrait boxes. */
.portrait img,.team img{height:auto}

/* Listing portfolio: independent active and sold embeds on a single page. */
.portfolio-intro{padding:58px 0 40px;background:var(--cream)}.portfolio-intro h1{font-size:clamp(35px,4.5vw,58px);margin-bottom:18px}.portfolio-intro p{color:var(--muted);max-width:700px}.portfolio-tabs{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.portfolio-tabs a{padding:12px 18px;border:1px solid var(--line);background:white;font-size:13px}.portfolio-tabs a:hover{border-color:var(--gold)}.mrp-embed{display:block;width:100%;height:650px;border:0;background:white}.mrp-fallback{font-size:12px;color:var(--muted);margin:12px 0 0}.mrp-fallback a{text-decoration:underline}.sales-section{background:#edf2f4}.listing-page-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:25px}.portfolio-contact{background:var(--navy);color:white;padding:45px 0}.portfolio-contact .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.portfolio-contact h2{margin:0;font-size:34px}.map-section{padding:30px 0 65px}.map-section .mrp-embed{height:800px}
@media(max-width:600px){.landscape-hero{min-height:560px}.landscape-hero .hero-copy{padding:42px 20px 140px}.landscape-hero h1{font-size:38px}.landscape-hero .hero-brokerage{margin-bottom:20px}.landscape-hero .actions{width:100%;gap:10px;flex-wrap:nowrap}.landscape-hero .actions .button{font-size:10px;padding:14px 12px;gap:10px;flex:1}.portfolio-intro{padding:35px 0 28px}.portfolio-tabs{gap:8px}.portfolio-tabs a{font-size:12px;padding:12px}.portfolio-page .section{padding:38px 0}.portfolio-page .section h2{font-size:32px}.portfolio-page .map-section .wrap{width:calc(100% - 20px)}.mrp-embed{height:650px}.portfolio-contact .wrap{flex-direction:column;align-items:start}.portfolio-contact h2{font-size:30px}.listing-page-actions{gap:15px}}

/* Continuous portfolio; provider status labels distinguish available and sold homes. */
.property-stream{background:#fff}.property-stream .mrp-fallback{display:none}.property-stream .mrp-embed{margin:0}.property-stream:after{content:"";display:block}
