/*
Theme Name: Sound View Studio
Description: A focused, responsive website for Sound View Engineers & Land Surveyors. Includes existing Forminator integration.
Version: 1.4.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: soundview-studio
License: GPL-2.0-or-later
*/
:root{--navy:#123343;--blue:#225570;--ink:#162f3b;--muted:#536975;--paper:#f4f7f7;--line:#d7e1e4;--red:#c43836;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bd3f35;outline-offset:5px}h1,h2,h3,p{margin:0 0 20px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(44px,5.6vw,82px)}h2{font-size:clamp(34px,3.3vw,48px)}h3{font-size:28px}p{color:var(--muted)}.wrap{width:min(1180px,calc(100% - 96px));margin-inline:auto}.topline{background:var(--navy);color:#fff;font-size:12px;letter-spacing:.03em}.topline .wrap{display:flex;justify-content:space-between;padding-block:9px}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:108px}.logo{width:246px;height:78px;object-fit:contain}.site-header{background:#fff;border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;gap:26px;font-size:14px}nav>a:not(.button){padding-block:15px}nav>a[aria-current=page]:not(.button){color:var(--blue);box-shadow:0 2px var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--navy);color:white;min-height:50px;padding:14px 24px;font-size:14px;font-weight:600;border:1px solid transparent;line-height:1.4;border-radius:2px}.button:hover{background:var(--blue);text-decoration:none}.button.light{background:#fff;color:var(--navy)}.button.light:hover{background:#e6eef1}.menu-toggle{display:none}.eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.17em;font-weight:700;line-height:1.5;color:var(--blue);margin-bottom:20px;text-transform:uppercase}.hero{position:relative;isolation:isolate;color:#fff;min-height:620px;display:flex;align-items:center}.hero-image{position:absolute;inset:0;z-index:-2}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 44%}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,25,36,.87),rgba(5,25,36,.48) 60%,rgba(5,25,36,.16))}.hero-content{padding-block:85px 95px}.hero h1{max-width:780px}.hero p{color:#edf3f5;max-width:460px;font-size:19px}.hero .eyebrow{font-size:11px;max-width:none}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px}.hero-link{font-size:14px}.hero-caption{position:absolute;right:48px;bottom:25px;font-size:10px;letter-spacing:.16em}.credentials{background:var(--paper);border-bottom:1px solid var(--line)}.credentials .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:23px;font-size:12px;font-weight:600}.credentials span:before{content:'+';color:var(--red);margin-right:12px}.section{padding-block:95px}.section-heading{display:flex;justify-content:space-between;gap:70px;align-items:end;margin-bottom:36px}.section-heading>div{flex:1}.section-heading>p{max-width:440px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-card{border:1px solid var(--line)}.service-card>img{width:100%;height:320px;object-fit:cover}.service-card:nth-child(2)>img{object-position:center 38%}.card-body{padding:32px}.card-body h3{font-size:34px}.card-body p:not(.eyebrow){max-width:420px}.text-link{font-size:14px;font-weight:600;color:var(--blue);display:inline-block;border-bottom:1px solid var(--line);padding-block:6px}.text-link span{margin-left:20px}.about-section{background:var(--paper);padding-block:80px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-photo{width:100%;height:430px;object-fit:cover}.split p{max-width:500px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article{border-top:1px solid var(--line);padding-top:28px}.steps span,.number{font-size:12px;color:var(--red);letter-spacing:.1em;display:block;margin-bottom:25px}.steps h3{font-size:28px}.area-section{background:var(--navy);color:#fff;padding-block:75px}.area-section .eyebrow{color:#b9d3df}.area-section p{color:#d0dce2}.area-section h3{font:600 16px/1.5 Arial,sans-serif;letter-spacing:0;margin-bottom:12px}.area-section .split{align-items:start}.cta{background:#e9eff0;padding-block:60px}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{font-size:38px}.cta p:last-child{margin:0}.site-footer{padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1.2fr;gap:50px}.footer-logo{width:235px;height:85px;object-fit:contain;object-position:left center;margin-top:-20px;margin-bottom:12px}.footer-grid h2{font:600 14px/1.5 Arial,sans-serif;letter-spacing:0;margin-bottom:18px}.footer-grid p,.footer-grid a{font-size:13px}.footer-grid>div>a:not(:first-child){display:block;margin-bottom:8px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:22px;margin-top:35px;font-size:11px;color:var(--muted)}.page-intro{padding-block:70px 55px}.page-intro h1{font-size:clamp(42px,5vw,68px)}.lead{max-width:650px;font-size:18px}.service-banner{height:360px;overflow:hidden}.service-banner img{height:100%;width:100%;object-fit:cover;object-position:center 43%}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.detail-card{background:var(--paper);padding:30px}.detail-card h3{font-size:30px}.detail-card ul{padding-left:20px;font-size:14px;color:var(--muted)}.detail-card li{margin-bottom:12px}.detail-card p{font-size:15px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding-bottom:80px}.team-card{padding:30px;background:var(--paper)}.team-card h2{font-size:29px;min-height:66px}.team-card .eyebrow{font-size:10px;min-height:30px}.team-card a,.team-card>p:last-child{font-size:14px}.team-rule{width:34px;height:2px;background:var(--red);margin-bottom:25px}.request-intro{padding-bottom:30px}.request-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:45px;align-items:start;margin-bottom:40px}.form-panel{border:1px solid var(--line);padding:38px;background:#fff;min-width:0}.form-panel h2{font-size:32px}.form-panel>p{font-size:14px}.contact-panel{background:var(--paper);padding:34px;overflow-wrap:anywhere}.contact-panel h2{font-size:31px}.contact-panel h3{font:600 15px/1.5 Arial,sans-serif;letter-spacing:0;margin-bottom:8px}.contact-panel>a{display:block;font-size:14px;margin-bottom:12px}.contact-panel .contact-phone{font:28px/1.4 Georgia,serif}.contact-panel p{font-size:14px}.contact-panel hr{border:0;border-top:1px solid var(--line);margin:28px 0}.contact-panel .small{font-size:12px}.request-note{padding-bottom:60px;display:flex;gap:28px;align-items:center;flex-wrap:wrap}.request-note p{margin:0}.skip{position:absolute;left:20px;top:-100px;z-index:999;background:white;padding:12px}.skip:focus{top:10px}.preview-note{background:#eaf1f4;padding:15px;font-size:12px;margin-block:25px}.preview-form fieldset{border:0;padding:0;margin:0;min-width:0}.preview-form label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}.preview-form label span{color:var(--red)}.preview-form input,.preview-form select,.preview-form textarea{width:100%;border:1px solid #bccbd2;background:#fff;color:#536975;padding:12px;margin-top:8px;border-radius:2px;opacity:1}.preview-form select{height:49px}.preview-form textarea{resize:vertical}.preview-form .button{width:100%;opacity:.65}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-panel .forminator-ui{margin-top:28px!important}.form-panel .forminator-ui .forminator-label{font-size:14px!important;color:var(--ink)!important}.form-panel .forminator-ui .forminator-input,.form-panel .forminator-ui .forminator-textarea{font-size:16px!important}.form-panel .forminator-ui .forminator-button-submit{background:var(--navy)!important;color:#fff!important;padding:16px 25px!important;border-radius:2px!important}.form-panel .forminator-ui .forminator-row{margin-bottom:24px!important}.form-panel .forminator-ui .forminator-checkbox{margin-bottom:12px!important}.content-page{padding-block:65px;min-height:60vh}.content-page img{height:auto}.content-page a{color:var(--blue);text-decoration:underline}.wp-caption{max-width:100%}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1001px){#navigation{display:flex!important}}
@media(max-width:1100px){nav{gap:15px;font-size:13px}.logo{width:215px}.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.detail-card{padding:24px}.footer-grid{gap:30px}}
@media(max-width:1000px){.header-inner{min-height:90px;flex-wrap:wrap;padding-block:10px}.menu-toggle{display:flex;gap:15px;align-items:center;padding:12px 16px;background:var(--navy);color:white;border:0;border-radius:2px;font-size:14px}.menu-toggle span{font-size:20px}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:15px}nav[hidden]{display:none}nav a{padding:14px!important}nav>a[aria-current=page]:not(.button){box-shadow:none;border-left:2px solid var(--red)}.logo{height:65px;width:225px}.section-heading{gap:35px}.split{gap:40px}.detail-grid{grid-template-columns:1fr}.detail-card ul{columns:2;column-gap:35px}.detail-card li{break-inside:avoid}.team-grid{grid-template-columns:1fr 1fr}.request-layout{gap:25px}.form-panel{padding:25px}.contact-panel{padding:25px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.hero{min-height:580px}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.topline .wrap>span{font-size:10px}.topline .wrap>a{font-size:11px}.logo{width:205px;height:60px}.header-inner{min-height:84px;gap:10px}.menu-toggle{font-size:0;padding:10px 14px;gap:0}.menu-toggle span{font-size:22px}.hero{min-height:540px}.hero-content{padding-block:65px 70px}.hero h1{font-size:49px}.hero p{font-size:17px;max-width:330px}.hero .eyebrow{font-size:9px;max-width:270px;line-height:1.8}.hero-image img{object-position:60% center}.hero:before{background:rgba(5,25,36,.62)}.hero-actions{flex-direction:column;align-items:start;gap:22px}.hero-caption{font-size:8px;right:20px;bottom:18px}.credentials .wrap{flex-wrap:wrap;gap:8px;padding-block:17px;font-size:10px}.credentials span:first-child{width:100%}.credentials span:before{margin-right:7px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:20px;font-size:15px}.service-grid,.split,.steps,.team-grid,.request-layout{grid-template-columns:1fr}.service-card>img{height:250px}.card-body{padding:25px}.card-body h3{font-size:32px}.about-section{padding-block:50px}.about-photo{height:280px}.split{gap:32px}.steps{gap:15px}.steps span{margin-bottom:15px}.area-section{padding-block:50px}.cta{padding-block:45px}.cta-inner{display:block}.cta h2{font-size:34px}.cta .button{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.site-footer{padding-top:45px}.page-intro{padding-block:45px 35px}.page-intro h1{font-size:43px}.lead{font-size:16px}.service-banner{height:270px}.detail-card ul{columns:auto}.team-grid{gap:15px;padding-bottom:50px}.team-card h2{min-height:0}.team-card .eyebrow{min-height:0}.request-layout{gap:25px}.form-panel{padding:23px 18px}.form-panel h2{font-size:29px}.contact-panel{padding:28px}.request-note{gap:14px;padding-bottom:40px}.request-note>p{width:100%}.field-grid{grid-template-columns:1fr}.request-intro h1{font-size:40px}.request-intro{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Team profiles and consistently aligned checkbox labels. */
.team-card{position:relative;padding:0;overflow:hidden}.team-photo{position:absolute;top:22px;right:22px;width:68px;height:68px;border-radius:50%;object-fit:cover;object-position:center 30%;background:#e6edef;border:2px solid #fff}.team-body{padding:24px}.team-body:before{content:"";display:block;width:25px;height:2px;background:var(--red);margin-bottom:16px}.team-body h2{min-height:0;font-size:25px}.team-body .eyebrow{min-height:48px;padding-right:80px;margin-bottom:18px}.email-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.email-actions a{overflow-wrap:anywhere;font-size:13px}.copy-email{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1px solid #a4b9c3;background:#fff;color:#123343;border-radius:3px;font:600 12px/1.4 Arial,sans-serif;cursor:pointer;margin:4px 0 12px}.copy-email:hover{background:#eaf1f4}.copy-status{position:fixed;bottom:20px;left:20px;right:20px;z-index:9999;width:fit-content;max-width:calc(100% - 40px);margin:0;padding:12px 18px;background:#123343;color:#fff;border-radius:3px;font-size:14px}.copy-status:empty{display:none}
.preview-form .preview-check-group{margin:25px 0;border:0;padding:0}.preview-check-group legend{font-size:14px;font-weight:700;margin-bottom:16px}.preview-form label.preview-check{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;font-size:14px;font-weight:400;margin:0 0 14px;line-height:1.5}.preview-form .preview-check input[type=checkbox]{width:20px;height:20px;min-width:20px;padding:0;margin:1px 0 0;accent-color:#123343}.preview-form .preview-check span{color:#162f3b}
.form-panel .forminator-ui label.forminator-checkbox{display:flex!important;align-items:flex-start!important;gap:12px!important;max-width:100%}.form-panel .forminator-ui .forminator-checkbox-box{flex:0 0 20px!important;width:20px!important;height:20px!important;margin:2px 0 0!important}.form-panel .forminator-ui .forminator-checkbox-label{flex:1!important;min-width:0;margin:0!important;line-height:1.5!important;white-space:normal!important}
@media(max-width:640px){.team-photo{width:84px;height:84px}.team-body .eyebrow{min-height:64px;padding-right:96px}}

/* Align the collapsed phone/tablet menu with its right-hand toggle. */
@media (max-width: 1000px) {
  .site-header #navigation > a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
    width: 100%;
    min-height: 48px;
  }
  .site-header #navigation > a[aria-current="page"]:not(.button) {
    border-left: 0;
    border-right: 2px solid var(--red);
  }
}

/* Compact homepage and service slideshows — Sound View Studio 1.3.0 */
.site-header #navigation>a{text-transform:uppercase;letter-spacing:.055em;font-size:12px}
.home-page .hero{min-height:480px}
.home-page .hero-content{padding-block:64px}
.home-page .section{padding-block:60px}
.home-page .eyebrow{margin-bottom:12px}
.home-service-heading{margin-bottom:25px;max-width:800px}
.home-service-heading h2{margin-bottom:0}
.service-showcase{min-width:0;border:1px solid var(--line);background:var(--navy);color:white;overflow:hidden}
.service-slides{position:relative;aspect-ratio:1.6;background:var(--navy)}
.service-slide{position:absolute;inset:0;margin:0}
.service-slide[hidden]{display:none!important}
.service-slide img{height:100%;width:100%;object-fit:cover}
.service-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 32%,rgba(5,25,36,.92))}
.service-slide figcaption{position:absolute;z-index:1;bottom:24px;left:24px;right:20px;color:#fff}
.service-slide figcaption span{text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:bold}
.service-slide h3{font-size:clamp(25px,2.4vw,34px);margin:6px 0 0;color:#fff}
.service-bar{padding:8px 16px;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;justify-content:space-between}
.service-bar>.text-link{font-size:13px;min-height:44px;display:flex;align-items:center}
.carousel-controls{display:flex;gap:3px;align-items:center}
.carousel-controls[hidden]{display:none!important}
.carousel-controls button{background:transparent;color:#fff;border:1px solid #527080;border-radius:3px;min-width:44px;min-height:44px;cursor:pointer;font-size:18px}
.carousel-controls button:hover{background:#225570}
.carousel-controls [data-action=pause]{font-size:12px;min-width:52px}
.slide-count{font-size:11px;min-width:34px;text-align:center;color:#d7e1e4}
.service-image-note{font-size:11px;margin:8px 0 0;color:var(--muted)}
.home-about{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;align-items:center}
.home-about .about-photo{height:260px;width:100%;object-fit:cover}
.home-page .about-section{padding-block:48px}
.home-about h2{font-size:36px}
.home-start{display:grid;grid-template-columns:1fr 1fr;gap:20px 48px}
.home-start h2{font-size:36px}
.home-start ol{margin:0;padding-left:24px;color:var(--muted)}
.home-start li{padding:0 0 14px 5px}
.home-start strong{color:var(--ink)}
.home-areas{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px}
.home-areas summary{cursor:pointer;min-height:44px;font-weight:bold;font-size:14px}
.home-areas p{font-size:14px;max-width:850px}
.home-page .cta{padding-block:40px}
@media(max-width:640px){
 .home-page .hero{min-height:340px}
 .home-page .hero-content{padding-block:36px}
 .home-page .hero h1{font-size:39px;margin-bottom:16px}
 .home-page .hero p:not(.eyebrow){font-size:16px;line-height:1.5;margin-bottom:16px}
 .home-page .hero-actions{gap:14px;margin-top:20px}
 .home-page .hero-link{min-height:36px;display:flex;align-items:center}
 .home-page .credentials .wrap{padding-block:12px;gap:4px}
 .home-page .credentials span:first-child{width:auto}
 .home-page .section{padding-block:32px}
 .home-service-heading h2{font-size:29px}
 .home-service-heading{margin-bottom:18px}
 .home-page .service-grid{gap:18px}
 .service-slides{aspect-ratio:1.65}
 .service-slide figcaption{bottom:18px;left:18px}
 .service-slide h3{font-size:27px}
 .service-bar{padding:6px 12px;gap:0;flex-direction:column;align-items:stretch}
 .service-bar>.text-link{justify-content:space-between;min-height:38px}
 .carousel-controls{justify-content:flex-end;padding-bottom:2px}
 .home-about{grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start}
 .home-about .about-photo{height:125px}
 .home-about h2{font-size:27px;margin-bottom:12px}
 .home-about p:not(.eyebrow){font-size:14px;line-height:1.6;margin-bottom:12px}
 .home-page .about-section{padding-block:28px}
 .home-start{grid-template-columns:1fr;gap:8px}
 .home-start h2{font-size:29px;margin-bottom:12px}
 .home-start li{font-size:14px;padding-bottom:12px}
 .home-page .cta h2{font-size:30px}
 .home-page .cta p:not(.eyebrow){display:none}
 .home-page .cta .button{margin-top:0}
}

/* Smaller lettering and no boxes; keep comfortable tap targets. */
.service-showcase .carousel-controls button {
  border: 0;
  background: transparent;
  font-size: 14px;
  min-width: 44px;
  min-height: 44px;
  padding: 0 6px;
}
.service-showcase .carousel-controls [data-action="pause"] {
  font-size: 11px;
  min-width: 44px;
}
.service-showcase .carousel-controls button:hover {
  background: #225570;
}
