
:root{--blue:#075d9f;--navy:#102336;--ink:#283744;--muted:#71808e;--line:#dfe7ed;--soft:#f4f8fb;--shadow:0 16px 45px rgba(17,42,63,.11)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.5;overflow-x:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.wrap{width:min(1180px,92%);margin:auto}
.top{background:var(--navy);color:#dbe7ee;font-size:11px}.topin{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:12px}.top a{color:#fff}
header{height:80px;background:#fff;border-bottom:1px solid #edf1f4;position:sticky;top:0;z-index:50}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;position:relative}.logo{display:flex;align-items:baseline;gap:5px;white-space:nowrap}.logo b{font-size:34px;color:var(--blue);letter-spacing:-1.8px}.logo span{font-size:24px;font-weight:700;color:#2d3944}.logo em{font-size:12px;color:var(--blue);font-style:normal;font-weight:800}
nav{display:flex;align-items:center;gap:24px;font-size:13px;font-weight:700}nav a:hover{color:var(--blue)}.listbtn{background:var(--blue);color:#fff!important;padding:11px 15px;border-radius:5px}.menu{display:none;border:0;background:transparent;color:var(--navy);font-size:26px;cursor:pointer}
.hero{background:linear-gradient(120deg,#edf5f9,#f8fbfc)}.heroin{min-height:575px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding:65px 0}.heroText small,.sectionLabel,.about small,.contact small{font-size:10px;letter-spacing:2px;font-weight:800;color:var(--blue)}
h1,h2{font-family:Georgia,"Times New Roman",serif;color:var(--navy)}h1{font-size:62px;line-height:1.04;letter-spacing:-1.5px;margin:12px 0 18px}h1 span{color:var(--blue)}.heroText>p{max-width:580px;color:var(--muted);font-size:16px}.actions{display:flex;gap:10px;margin-top:25px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:5px;padding:12px 19px;font-size:12px;font-weight:800;cursor:pointer}.primary{background:var(--blue);color:#fff}.secondary{background:#fff;border-color:#cbd7df;color:var(--navy)}
.stats{display:flex;gap:34px;margin-top:35px}.stats div{display:flex;flex-direction:column}.stats b{font-size:22px;color:var(--navy)}.stats small{font-size:10px;color:var(--muted)}.heroCard{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden;box-shadow:var(--shadow)}.heroPhoto{height:330px;background:center/cover no-repeat}.heroInfo{padding:17px 20px}.heroInfo small{font-size:9px;letter-spacing:1.5px;color:var(--blue);font-weight:800}.heroInfo h3{margin:4px 0;font-size:18px;color:var(--navy)}.heroInfo p{margin:0 0 6px;color:var(--muted);font-size:11px}.heroInfo b{font-size:12px;color:var(--blue)}
.search{margin-top:-35px;position:relative;z-index:5}.searchBox{background:#fff;box-shadow:var(--shadow);border-radius:8px;padding:22px 24px;display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:end}.searchBox h2{font-family:Arial,Helvetica,sans-serif;font-size:21px;margin:3px 0}.filters{display:grid;grid-template-columns:repeat(4,1fr) 110px;gap:7px}.filters select,.filters input{width:100%;min-width:0;padding:10px 9px;border:1px solid #d7e0e7;border-radius:4px;background:#fff;color:var(--ink);font-size:11px}.filters button{border:0}
.section{padding:88px 0}.head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.head h2,.center h2,.about h2,.contact h2{font-size:40px;line-height:1.12;margin:7px 0}.head p,.center p,.about p,.contact p{color:var(--muted);font-size:13px;margin:0}#resultCount{font-size:11px;color:var(--muted);white-space:nowrap}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.photo{height:300px;position:relative;background:#e9f0f4}.photo>img{width:100%;height:100%;display:block;object-fit:cover}.badge{position:absolute;left:13px;top:13px;background:#fff;color:var(--blue);padding:6px 8px;border-radius:3px;font-size:9px;font-weight:800}.view{position:absolute;right:13px;top:13px;width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:var(--blue);cursor:pointer}
.thumbs{display:flex;gap:6px;padding:8px 12px 0;overflow-x:auto;scrollbar-width:none}.thumbs::-webkit-scrollbar{display:none}.thumbs button{flex:0 0 62px;width:62px;height:44px;padding:0;border:2px solid transparent;border-radius:4px;overflow:hidden;background:#fff;cursor:pointer}.thumbs button.active{border-color:var(--blue)}.thumbs img{display:block;width:100%;height:100%;object-fit:cover}
.body{padding:17px}.type{font-size:9px;letter-spacing:1.1px;color:var(--blue);font-weight:800}.body h3{font-size:19px;color:var(--navy);line-height:1.3;margin:5px 0}.body p{font-size:12px;color:var(--muted);margin:4px 0 12px;min-height:38px}.details{display:flex;flex-wrap:wrap;gap:12px;padding-top:11px;border-top:1px solid #edf1f4;font-size:10px;color:#667683}.bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px}.bottom strong{font-size:12px;color:var(--navy)}.bottom a{font-size:11px;color:var(--blue);font-weight:800}
.services{padding:82px 0;background:var(--soft)}.center{text-align:center;max-width:680px;margin:0 auto 35px}.serviceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.serviceGrid article{background:#fff;border:1px solid var(--line);border-radius:7px;padding:22px}.serviceGrid i{font-style:normal;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#eaf3f9;color:var(--blue);border-radius:7px;font-size:21px}.serviceGrid h3{font-size:16px;margin:13px 0 5px}.serviceGrid p{font-size:12px;color:var(--muted);margin:0}
.about{padding:90px 0;background:#f7fafc}.aboutGrid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.aboutArt{height:410px;border-radius:9px;overflow:hidden;position:relative;background:linear-gradient(#bcd7e5 0 55%,#7a966f 55%)}.aboutArt div{position:absolute;width:62%;height:69%;left:19%;bottom:0;background:#edf0f0;box-shadow:12px 10px 25px rgba(0,0,0,.12)}.aboutArt div:before{content:"";position:absolute;left:-13px;right:-13px;top:-44px;height:65px;background:#334b5d;clip-path:polygon(0 100%,50% 0,100% 100%)}.aboutArt strong{position:absolute;bottom:54px;left:0;right:0;text-align:center;color:var(--blue);font-size:29px;letter-spacing:2px}.aboutArt span{position:absolute;bottom:39px;left:0;right:0;text-align:center;color:#465661;font-size:8px;letter-spacing:3px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:23px 0 27px;font-size:11px;font-weight:700}
.contact{padding:90px 0}.contactGrid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contactRows{display:grid;gap:14px;margin-top:25px}.contactRows>a,.contactRows>div{display:flex;align-items:center;gap:14px}.contactRows b{width:43px;height:43px;flex:0 0 43px;display:flex;align-items:center;justify-content:center;border-radius:7px;background:#edf5fa;color:var(--blue)}.contactRows span{display:flex;flex-direction:column}.contactRows strong{font-size:13px}.contactRows small{font-size:11px;color:var(--muted);letter-spacing:0}
form{background:#fff;border:1px solid var(--line);border-radius:8px;padding:25px;box-shadow:0 14px 40px rgba(17,42,63,.06)}form h3{margin:0 0 13px;color:var(--navy);font-size:20px}form label{display:block;margin-top:10px;color:#5d6a76;font-size:10px;font-weight:800}form input,form select,form textarea{display:block;width:100%;margin-top:5px;border:1px solid #d7e0e7;border-radius:4px;padding:10px 11px;font-size:12px;outline:none}form textarea{resize:vertical}#formNote{display:block;color:#347957;font-size:10px;margin-top:7px}
footer{padding-top:48px;background:var(--navy);color:#aebdca}.footerGrid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:50px;padding-bottom:38px}.foot b{color:#62aee0}.foot span{color:#fff}.foot em{color:#62aee0}.footerGrid p,.footerGrid a,.footerGrid span{font-size:11px}.footerGrid h4{font-size:12px;color:#fff;margin:0 0 10px}.footerGrid>div:not(:first-child){display:flex;flex-direction:column;gap:7px}.copy{border-top:1px solid rgba(255,255,255,.08);padding:12px 0;text-align:center;font-size:10px}
@media(max-width:950px){.filters{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr 1fr}.serviceGrid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.wrap{width:92%}.topin{justify-content:center}.topin span:first-child{display:none}header{height:68px}.logo b{font-size:27px}.logo span{font-size:19px}.logo em{font-size:9px}.menu{display:block}nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:0 0 8px 8px;padding:8px;box-shadow:var(--shadow);flex-direction:column;gap:2px}nav.open{display:flex}nav a{padding:11px 12px}.listbtn{text-align:center}.heroin{grid-template-columns:1fr;min-height:0;padding:50px 0 68px;gap:28px}h1{font-size:45px}.heroText>p{font-size:14px}.actions{flex-direction:column}.actions .btn{width:100%}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats b{font-size:18px}.stats small{font-size:9px}.heroPhoto{height:240px}.search{margin-top:-24px}.searchBox{display:block;padding:18px}.searchBox h2{font-size:19px;margin-bottom:13px}.filters{grid-template-columns:1fr 1fr}.filters .btn{grid-column:1/-1}.section,.services,.about,.contact{padding:65px 0}.head{display:block;margin-bottom:22px}.head h2,.center h2,.about h2,.contact h2{font-size:31px}.head>p{font-size:12px}#resultCount{display:block;margin-top:8px}.grid{grid-template-columns:1fr}.photo{height:245px}.body{padding:15px}.bottom{align-items:flex-start;flex-direction:column}.serviceGrid{grid-template-columns:1fr}.aboutGrid,.contactGrid{grid-template-columns:1fr;gap:35px}.aboutArt{height:285px}.checks{grid-template-columns:1fr}.footerGrid{grid-template-columns:1fr;gap:28px}}
@media(max-width:420px){.wrap{width:91%}.logo b{font-size:24px}.logo span{font-size:17px}.logo em{font-size:8px}h1{font-size:39px}.filters{grid-template-columns:1fr}.filters .btn{grid-column:auto}.photo{height:220px}.heroPhoto{height:215px}}

/* FINAL MOBILE OVERRIDES */
@media screen and (max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  .wrap{width:calc(100% - 32px)!important;max-width:none!important}
  header{height:64px!important}
  .nav{height:64px!important}
  .logo{max-width:235px!important;overflow:hidden!important;gap:3px!important}
  .logo b{font-size:25px!important;letter-spacing:-1.2px!important}
  .logo span{font-size:17px!important;letter-spacing:-.7px!important}
  .logo em{font-size:8px!important}
  .menu{display:block!important;position:relative!important;z-index:60!important;font-size:25px!important;width:42px!important;height:42px!important;padding:0!important}
  nav{display:none!important;position:absolute!important;z-index:55!important;top:64px!important;left:0!important;right:0!important;width:100%!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:8px!important;background:#fff!important;border:1px solid #dfe7ed!important;box-shadow:0 15px 35px rgba(17,42,63,.18)!important}
  nav.open{display:flex!important}
  nav a{display:block!important;padding:12px!important;font-size:13px!important}
  .hero h1,h1{font-size:42px!important;line-height:1.02!important}
  .heroText>p{font-size:14px!important;line-height:1.55!important}
  .stats{gap:8px!important}
  .stats b{font-size:18px!important}
  .stats small{font-size:9px!important}
  .searchBox{padding:18px!important}
  .searchBox h2{font-size:20px!important}
  .filters{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .filters select,.filters input{font-size:14px!important;min-height:43px!important}
  .filters input{grid-column:1/-1!important}
  .filters .btn{grid-column:1/-1!important;width:100%!important;min-height:43px!important}
  .section{padding:58px 0!important}
  .head h2,.center h2,.about h2,.contact h2{font-size:31px!important}
  .head p{font-size:12px!important;line-height:1.55!important}
  .grid{grid-template-columns:1fr!important;gap:18px!important}
  .photo{height:235px!important}
  .body h3{font-size:18px!important}
  .body p{font-size:12px!important;min-height:0!important}
  .serviceGrid{grid-template-columns:1fr!important}
  .serviceGrid article{padding:20px!important}
  .footerGrid{grid-template-columns:1fr!important}
}
@media screen and (max-width:420px){
  .wrap{width:calc(100% - 28px)!important}
  .logo{max-width:205px!important}
  .logo b{font-size:22px!important}
  .logo span{font-size:15px!important}
  .logo em{font-size:7px!important}
  .hero h1,h1{font-size:38px!important}
  .filters{grid-template-columns:1fr!important}
  .filters input,.filters .btn{grid-column:auto!important}
  .photo{height:215px!important}
}
