/* Elite Remodel v26 — stronger fixed depth and precise alignment */
:root{
  --elite-navy:#071735;
  --elite-blue:#1599b1;
  --elite-cyan:#58c9d8;
  --elite-paper:#f5f4ef;
  --elite-white:#fff;
  --elite-ink:#101c32;
  --elite-muted:#677080;
  --elite-line:#d8dce1;
  --elite-rail:1440px;
}

body{background:var(--elite-paper);color:var(--elite-ink)}
.site-header{
  height:82px;
  padding-left:max(24px,calc((100vw - var(--elite-rail))/2));
  padding-right:max(24px,calc((100vw - var(--elite-rail))/2));
  grid-template-columns:180px 1fr 180px;
  background:linear-gradient(180deg,rgba(3,14,39,.82),rgba(3,14,39,0));
  border-bottom:1px solid rgba(255,255,255,.22);
}
.brand img{width:166px}
.site-header nav{gap:31px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.header-actions{min-height:42px}
.menu-toggle{display:none;width:42px;height:42px;padding:9px;background:transparent;border:0;cursor:pointer}
.menu-toggle i{display:block;height:1px;margin:7px 0;background:#fff}

.hero{
  position:relative;
  min-height:760px;
  padding:175px max(24px,calc((100vw - var(--elite-rail))/2)) 100px;
  display:flex;
  flex-direction:row;
  justify-content:flex-start;
  align-items:center;
  color:#fff;
  background-image:linear-gradient(90deg,rgba(3,14,39,.96) 0%,rgba(3,14,39,.79) 38%,rgba(3,14,39,.16) 75%),var(--hero);
  background-size:cover;
  background-position:center;
}
.hero:before{background:linear-gradient(0deg,rgba(2,11,31,.48),transparent 45%)}
.hero-copy{width:min(650px,100%);position:relative;z-index:1}
.hero h1{font:500 clamp(58px,6.1vw,92px)/.88 "Cormorant Garamond",serif;letter-spacing:-.035em;margin:0 0 30px}
.hero h1 em{color:var(--elite-cyan);font-weight:400}
.hero .intro{max-width:590px;font-size:17px;line-height:1.78;color:rgba(255,255,255,.84);margin-bottom:34px}
.eyebrow{color:var(--elite-blue);font-size:10px;font-weight:700;letter-spacing:.22em}
.hero .eyebrow{color:var(--elite-cyan)}
.button{border-radius:2px;background:var(--elite-blue);border-color:var(--elite-blue);box-shadow:none}
.button:hover{background:#0d7990;border-color:#0d7990}
.hero-assurances{
  position:absolute;
  left:max(24px,calc((100vw - var(--elite-rail))/2));
  right:max(24px,calc((100vw - var(--elite-rail))/2));
  bottom:0;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(255,255,255,.28);
  color:rgba(255,255,255,.82);
}
.hero-assurances span{padding:22px 28px 23px 0;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.hero-assurances span+span{border-left:1px solid rgba(255,255,255,.2);padding-left:28px}
.hero-assurances b{color:var(--elite-cyan);margin-right:14px;font-size:9px}

.home-services{
  width:min(calc(100% - 48px),var(--elite-rail));
  max-width:none;
  margin:0 auto;
  padding:92px 0 104px;
}
.home-section-heading{
  display:block;
  padding:0 0 42px;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--elite-line);
  border-radius:0;
  box-shadow:none;
}
.home-section-heading:before{display:none}
.home-section-heading h2,.home-work-heading h2,.home-process h2{
  margin:0;
  font:500 clamp(44px,4.6vw,67px)/.91 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.home-section-heading>div:last-child{
  max-width:none;
  margin-top:27px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:60px;
}
.home-section-heading p:not(.eyebrow){max-width:720px;font-size:17px;line-height:1.75;color:var(--elite-muted);margin:0}
.section-link{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid var(--elite-blue);padding-bottom:6px}

.home-services .service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:46px}
.home-services .service-grid article{
  display:grid;
  grid-template-columns:44% 56%;
  min-height:380px;
  background:var(--elite-white);
  border:1px solid rgba(7,23,53,.1);
  border-top:3px solid var(--elite-blue);
  border-radius:3px;
  box-shadow:0 25px 58px rgba(7,23,53,.16),0 5px 16px rgba(7,23,53,.07);
  overflow:hidden;
  transform:none!important;
  transition:none;
}
.home-services .service-grid article:hover{transform:none!important;box-shadow:0 25px 58px rgba(7,23,53,.16),0 5px 16px rgba(7,23,53,.07)}
.service-card-image{height:100%;min-height:380px;background-size:cover;background-position:center;transition:none}
.home-services .service-grid article:hover .service-card-image{filter:none}
.service-card-copy{min-height:380px;padding:30px 34px;display:flex;flex-direction:column;align-items:flex-start}
.service-card-copy>span{color:var(--elite-blue);font-size:11px;font-weight:700;letter-spacing:.14em}
.service-card-copy h3{font:500 35px/1.02 "Cormorant Garamond",serif;margin:24px 0 14px}
.service-card-copy p{font-size:15.5px;line-height:1.68;color:#5e6879;margin-bottom:18px}
.service-card-copy ul{list-style:none;padding:0;margin:0 0 22px;width:100%}
.service-card-copy li{position:relative;padding:8px 0 8px 17px;border-top:1px solid rgba(7,23,53,.09);font-size:12.5px;font-weight:600;letter-spacing:.025em;color:#3f4a5f}
.service-card-copy li:before{content:"";position:absolute;left:0;top:12px;width:5px;height:5px;background:var(--elite-cyan)}
.service-card-copy>a{margin-top:auto;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

.home-work{
  width:100%;
  max-width:none;
  margin:0;
  padding:96px max(24px,calc((100vw - var(--elite-rail))/2)) 108px;
  background:var(--elite-navy);
  border-radius:0;
  box-shadow:none;
}
.home-work-heading,.home-work .project-grid{max-width:var(--elite-rail)}
.home-work-heading{display:flex;justify-content:space-between;align-items:end;margin:0 auto 43px}
.home-work-heading h2{color:#fff}.home-work-heading h2 em{color:var(--elite-cyan);font-weight:400}
.home-work .eyebrow{color:var(--elite-cyan)}
.section-link-light{color:#fff;border-color:var(--elite-cyan)}
.home-work .project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 auto}
.home-work .project-grid>a{
  position:relative;
  border:1px solid rgba(255,255,255,.12);
  border-radius:3px;
  overflow:hidden;
  box-shadow:0 28px 68px rgba(0,0,0,.42),0 8px 22px rgba(0,0,0,.25);
  transform:none!important;
}
.home-work .project-grid article{min-height:470px;background-size:cover;background-position:center;position:relative}
.home-work .project-grid article:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(3,14,39,.9))}
.home-work .project-grid article>div{z-index:2}
.home-work .project-grid>a:hover article,
.home-work .project-grid article:hover{transform:none!important;box-shadow:none}

.home-process{
  width:min(calc(100% - 48px),var(--elite-rail));
  max-width:none;
  margin:0 auto;
  padding:110px 0;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
  align-items:stretch;
}
.home-process .process-intro{
  position:relative;
  top:auto;
  align-self:stretch;
  min-height:620px;
  height:100%;
  padding:54px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  background:
    linear-gradient(0deg,rgba(3,14,39,.93) 0%,rgba(3,14,39,.22) 74%),
    url("../images/process-kitchen-planning.png") center/cover;
  border-radius:3px;
  box-shadow:0 28px 64px rgba(7,23,53,.18),0 7px 20px rgba(7,23,53,.08);
}
.home-process .process-intro>*{position:relative;z-index:1}
.home-process .process-intro .eyebrow{color:var(--elite-cyan)}
.home-process .process-intro h2{color:#fff}
.home-process .process-intro>p:last-child{max-width:500px;font-size:15px;line-height:1.76;color:rgba(255,255,255,.82);margin:25px 0 0}
.home-process .process-list{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;gap:18px;border:0}
.home-process .process-list article{
  min-height:0;
  height:100%;
  padding:34px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  border:1px solid rgba(7,23,53,.1);
  border-radius:3px;
  box-shadow:0 23px 52px rgba(7,23,53,.14),0 5px 15px rgba(7,23,53,.06);
  background:#fff;
  transition:none;
}
.home-process .process-list article:hover{transform:none;border-color:rgba(7,23,53,.1);box-shadow:0 23px 52px rgba(7,23,53,.14),0 5px 15px rgba(7,23,53,.06)}
.home-process .process-list article>span{width:40px;height:40px;display:grid;place-items:center;background:var(--elite-navy);color:var(--elite-cyan);font-size:10px;font-weight:700;margin-bottom:auto}
.home-process .process-list h3{font:500 29px/1.05 "Cormorant Garamond",serif;margin:28px 0 9px}
.home-process .process-list p{font-size:13.5px;color:#5e6879;line-height:1.7;margin:0;max-width:590px}

.about{display:block;max-width:none;margin:0;padding:105px 24px;background:var(--elite-navy);color:#fff}
.about > div.about-shell{
  position:relative;
  width:min(100%,var(--elite-rail));
  margin:0 auto;
  padding:0!important;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  min-height:650px;
  background:#0b214a;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 34px 82px rgba(0,0,0,.42),0 9px 26px rgba(0,0,0,.24);
}
.about-photo{position:relative;min-height:650px;background-size:cover;background-position:center;box-shadow:none}
.about-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(3,14,39,.82))}
.about-photo span{position:absolute;left:42px;bottom:38px;z-index:1;font:italic 28px/1.08 "Cormorant Garamond",serif;color:#fff}
.about-copy{padding:70px 62px;display:flex;flex-direction:column;justify-content:center}
.about-copy .eyebrow{color:var(--elite-cyan)}
.about h2{font-size:clamp(48px,5vw,72px);color:#fff}
.about h2 em{color:var(--elite-cyan)}
.about-copy>p:not(.eyebrow){max-width:520px;font-size:16px;line-height:1.8;color:rgba(255,255,255,.8);margin-bottom:32px}
.about-points{margin:0 0 32px;border-top:1px solid rgba(255,255,255,.16)}
.about-points article{display:grid;grid-template-columns:44px 1fr;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:11px;font-weight:600;letter-spacing:.05em}
.about-points b{font-size:9px;color:var(--elite-cyan)}
.about-copy .section-link{align-self:flex-start}

.contact{
  width:min(calc(100% - 48px),var(--elite-rail));
  margin:110px auto 125px!important;
  padding:68px;
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  align-items:start;
  gap:80px;
  background:var(--elite-blue);
  border-radius:3px;
  box-shadow:0 28px 68px rgba(7,23,53,.2),0 7px 18px rgba(7,23,53,.08);
}
.contact>div,.contact>form,.contact>.notice{max-width:none;margin-left:0;margin-right:0}
.contact h2{font-size:clamp(48px,4.5vw,68px);line-height:.94;margin-bottom:24px}
.contact-intro>p:last-child{max-width:460px;line-height:1.75;color:rgba(255,255,255,.77);margin:0}
.contact form{margin-top:3px}
.contact input,.contact textarea{box-shadow:none}
.contact .button{margin-top:5px}

@media(max-width:1000px){
  .site-header{grid-template-columns:170px 1fr 170px}.site-header nav{gap:18px}
  .home-services .service-grid article{grid-template-columns:1fr}.service-card-image{height:280px;min-height:0}
  .home-work .project-grid{grid-template-columns:1fr 1fr}.home-work .project-grid>a:last-child{display:none}
  .home-process{grid-template-columns:1fr}.home-process .process-intro{min-height:520px}
  .about > div.about-shell{grid-template-columns:1fr}.about-photo{min-height:560px}
  .contact{grid-template-columns:1fr;gap:42px}
}
@media(max-width:900px){
  .site-header{grid-template-columns:1fr auto;background:rgba(3,14,39,.9)}
  .site-header nav{display:none;position:fixed;inset:82px 0 0;background:var(--elite-navy);padding:45px 24px;flex-direction:column;align-items:flex-start;gap:25px;font:500 35px "Cormorant Garamond",serif;text-transform:none}
  .menu-open .site-header nav{display:flex}.menu-toggle{display:block}.header-actions .button{display:none}
  .home-section-heading>div:last-child{align-items:flex-start}
}
@media(max-width:650px){
  .hero{min-height:760px;padding:135px 22px 145px;background-position:62% center}
  .hero h1{font-size:56px}.hero .intro{font-size:14px}
  .hero-assurances{left:22px;right:22px;grid-template-columns:1fr}
  .hero-assurances span{padding:10px 0;font-size:9px}
  .hero-assurances span+span{border-left:0;border-top:1px solid rgba(255,255,255,.16);padding-left:0}
  .home-section-heading>div:last-child{display:block}.home-section-heading .section-link{display:inline-block;margin-top:24px}
  .home-services,.home-process{width:calc(100% - 32px);padding:70px 0}
  .home-services .service-grid{grid-template-columns:1fr;gap:18px}
  .home-services .service-grid article{grid-template-columns:1fr;min-height:0}
  .service-card-image{height:260px;min-height:260px}.service-card-copy{min-height:390px;padding:27px 24px}
  .service-card-copy h3{font-size:32px;margin-top:20px}
  .service-card-copy p{font-size:15px}
  .home-work{padding:70px 16px}.home-work-heading{display:block}.home-work-heading .section-link{display:inline-block;margin-top:25px}
  .home-work .project-grid{grid-template-columns:1fr}.home-work .project-grid>a:nth-child(2){display:none}.home-work .project-grid article{min-height:440px}
  .home-process .process-intro{min-height:500px;padding:34px 28px}
  .home-process .process-list{grid-template-columns:1fr}
  .home-process .process-list article{min-height:255px;padding:28px}
  .about{padding:70px 16px}.about > div.about-shell{min-height:0}.about-photo{min-height:470px}
  .about-copy{padding:52px 26px}
  .contact{width:calc(100% - 32px);margin:75px auto 85px!important;padding:50px 24px;gap:36px}
  .contact form{grid-template-columns:1fr}.contact label.full{grid-column:auto}
}

/* v28 — larger, consistent typography across every public page */
body{font-size:17px;line-height:1.62}

.site-header nav{font-size:13px}
.button{font-size:12.5px}
.eyebrow{font-size:11.5px}

.hero h1,.page-hero h1{font-size:clamp(62px,5.8vw,94px)}
.hero .intro,.page-hero>p:last-child{font-size:18px;line-height:1.78}
.hero-assurances span{font-size:11.5px}
.hero-assurances b{font-size:10.5px}

.section h2,.work h2,.about h2,.contact h2,.page-cta h2{
  font-size:clamp(48px,4.8vw,72px);
}
.home-section-heading h2{font-size:clamp(49px,4.3vw,68px)}
.home-section-heading p:not(.eyebrow),
.home-process .process-intro>p:last-child{font-size:18px}
.section-link{font-size:13px}

.service-card-copy>span{font-size:12px}
.service-card-copy h3{font-size:38px}
.service-card-copy p{font-size:17px;line-height:1.72}
.service-card-copy li{font-size:14px;line-height:1.5}
.service-card-copy>a{font-size:13px}

.home-work .project-grid small,
.project-grid small{font-size:11.5px}
.home-work .project-grid h3,
.project-grid h3{font-size:38px}

.home-process .process-list article>span{font-size:11px}
.home-process .process-list h3{font-size:32px}
.home-process .process-list p{font-size:15.5px;line-height:1.72}

.about-photo span{font-size:31px}
.about-copy>p:not(.eyebrow){font-size:18px}
.about-points article{font-size:13px}
.about-points b{font-size:10.5px}

.contact-intro>p:last-child{font-size:18px}
.contact label,.contact-page-form label{font-size:13px}
.contact input,.contact textarea,
.contact-page-form input,.contact-page-form textarea,.contact-page-form select{
  font-size:16px;
}

.page-intro h2,.portfolio-intro h2{font-size:clamp(48px,4.5vw,68px)}
.portfolio-intro>p{font-size:17.5px}
.service-number{font-size:12.5px}
.service-detail-list h2{font-size:clamp(40px,3.5vw,54px)}
.service-detail-list p:last-child{font-size:17px}

.portfolio-filters button{font-size:12px}
.portfolio-overlay small{font-size:11px}
.portfolio-overlay strong{font-size:29px}
.portfolio-lightbox p{font-size:27px}

.about-story h2{font-size:clamp(49px,4.8vw,72px)}
.about-story p:not(.eyebrow),
.company-profile-copy p{font-size:17px}
.company-profile h2{font-size:clamp(48px,4.5vw,69px)}
.text-link{font-size:12px}
.values-grid span{font-size:12px}
.values-grid h3{font-size:34px}
.values-grid p{font-size:16px;line-height:1.78}

.contact-details h2{font-size:clamp(46px,4.2vw,63px)}
.contact-details>p:last-of-type,
.contact-meta{font-size:17px}

footer p{font-size:16px;line-height:1.7}
.footer-links{font-size:13px}
.footer-bottom{font-size:12px}

@media(max-width:650px){
  body{font-size:16.5px}
  .site-header nav{font-size:37px}
  .hero h1,.page-hero h1{font-size:58px}
  .hero .intro,.page-hero>p:last-child{font-size:16.5px}
  .hero-assurances span{font-size:10.5px}
  .section h2,.work h2,.about h2,.contact h2,.page-cta h2,
  .home-section-heading h2,.page-intro h2,.portfolio-intro h2{
    font-size:48px;
  }
  .service-card-copy h3{font-size:35px}
  .service-card-copy p{font-size:16.5px}
  .service-card-copy li{font-size:14px}
  .home-process .process-list h3{font-size:31px}
  .home-process .process-list p{font-size:15.5px}
  .about-photo span{font-size:28px}
  .about-copy>p:not(.eyebrow),
  .contact-intro>p:last-child{font-size:16.5px}
  .portfolio-filters button{font-size:11px}
  .values-grid p{font-size:16px}
}

/* v29 — internal pages aligned with the rebuilt Home */
.page-hero{
  min-height:680px;
  padding:175px max(24px,calc((100vw - var(--elite-rail))/2)) 90px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
  background-position:center;
}
.page-hero:before{
  background:linear-gradient(90deg,rgba(3,14,39,.96) 0%,rgba(3,14,39,.8) 40%,rgba(3,14,39,.2) 78%);
}
.page-hero>*{width:min(720px,100%);max-width:none}
.page-hero .eyebrow{color:var(--elite-cyan)}
.page-hero h1{
  font:500 clamp(62px,5.8vw,94px)/.88 "Cormorant Garamond",serif;
  letter-spacing:-.035em;
  margin:0 0 30px;
}
.page-hero h1 em{color:var(--elite-cyan);font-weight:400}
.page-hero>p:last-child{
  max-width:650px;
  margin:0;
  font-size:18px;
  line-height:1.78;
  color:rgba(255,255,255,.84);
}

.page-intro,
.portfolio-intro,
.service-detail-list,
.portfolio-section,
.about-story,
.company-profile,
.values-section,
.contact-page,
.page-cta{
  width:min(calc(100% - 48px),var(--elite-rail));
  max-width:var(--elite-rail);
  margin-left:auto;
  margin-right:auto;
}

.page-intro{
  min-height:0;
  margin-top:0;
  padding:96px 0 48px;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--elite-line);
  border-radius:0;
  box-shadow:none;
}
.page-intro h2{
  max-width:860px;
  margin:0;
  font:500 clamp(50px,4.6vw,70px)/.92 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}

.service-detail-list{padding:44px 0 110px}
.service-detail-list article{
  min-height:430px;
  margin:0 0 32px;
  padding:0;
  display:grid;
  grid-template-columns:72px minmax(280px,.82fr) minmax(430px,1.18fr);
  gap:0;
  align-items:stretch;
  overflow:hidden;
  background:var(--elite-white);
  border:1px solid rgba(7,23,53,.1);
  border-top:3px solid var(--elite-blue);
  border-radius:3px;
  box-shadow:0 25px 58px rgba(7,23,53,.16),0 5px 16px rgba(7,23,53,.07);
  transform:none!important;
}
.service-detail-list article:last-child{margin-bottom:0}
.service-number{
  width:40px;
  height:40px;
  margin:36px 0 0 30px;
  display:grid;
  place-items:center;
  align-self:start;
  color:var(--elite-cyan);
  background:var(--elite-navy);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}
.service-detail-list article>div:nth-child(2){
  padding:41px 46px 42px 30px;
  align-self:center;
}
.service-detail-list h2{
  margin:0 0 18px;
  font:500 clamp(42px,3.8vw,58px)/.98 "Cormorant Garamond",serif;
  letter-spacing:-.02em;
}
.service-detail-list p:last-child{
  max-width:530px;
  margin:0;
  font-size:17px;
  line-height:1.78;
  color:var(--elite-muted);
}
.service-image{
  min-height:430px;
  height:100%;
  background-size:cover;
  background-position:center;
}

.portfolio-intro{
  min-height:0;
  margin-top:0;
  padding:96px 0 48px;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:80px;
  align-items:end;
  background:transparent;
  border:0;
  border-bottom:1px solid var(--elite-line);
  border-radius:0;
  box-shadow:none;
}
.portfolio-intro h2{
  margin:0;
  font:500 clamp(50px,4.6vw,70px)/.92 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.portfolio-intro>p{
  max-width:620px;
  margin:0;
  font-size:17.5px;
  line-height:1.78;
  color:var(--elite-muted);
}
.portfolio-section{padding:44px 0 110px}
.portfolio-filters{
  justify-content:flex-start;
  gap:10px;
  margin-bottom:34px;
}
.portfolio-filters button{
  min-height:44px;
  padding:0 18px;
  background:#fff;
  border:1px solid rgba(7,23,53,.14);
  border-radius:2px;
  box-shadow:0 7px 18px rgba(7,23,53,.06);
  font-size:12px;
  font-weight:700;
}
.portfolio-filters button:hover,
.portfolio-filters button.active{
  background:var(--elite-navy);
  border-color:var(--elite-navy);
}
.original-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
  align-items:stretch;
}
.portfolio-item,
.portfolio-item:nth-child(3n+2){
  grid-column:auto;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(7,23,53,.1);
  border-radius:3px;
  box-shadow:0 25px 58px rgba(7,23,53,.16),0 5px 16px rgba(7,23,53,.07);
  transform:none!important;
}
.portfolio-item:nth-child(7n+1){grid-column:auto}
.portfolio-open,
.portfolio-open:hover{transform:none}
.portfolio-open img,
.portfolio-item:nth-child(7n+1) img{
  width:100%;
  height:420px;
  object-fit:cover;
  transform:none!important;
  opacity:1;
  transition:none;
}
.portfolio-overlay{
  padding:90px 26px 24px;
  background:linear-gradient(transparent,rgba(3,14,39,.94));
  opacity:1;
  transition:none;
}
.portfolio-overlay small{color:var(--elite-cyan)}
.portfolio-overlay strong{font-size:29px}

.about-story{
  min-height:660px;
  margin-top:105px;
  margin-bottom:32px;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  overflow:hidden;
  background:var(--elite-navy);
  border:1px solid rgba(255,255,255,.1);
  border-radius:3px;
  box-shadow:0 34px 82px rgba(0,0,0,.27),0 9px 26px rgba(7,23,53,.14);
}
.about-story-image{min-height:660px}
.about-story>div:last-child{
  min-height:660px;
  padding:68px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.about-story .eyebrow{color:var(--elite-cyan)}
.about-story h2{
  margin:0 0 30px;
  font:500 clamp(50px,4.7vw,70px)/.92 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.about-story p:not(.eyebrow){
  max-width:590px;
  margin:0 0 20px;
  font-size:17px;
  line-height:1.8;
  color:rgba(255,255,255,.78);
}
.company-profile{
  margin-top:0;
  margin-bottom:32px;
  padding:72px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:84px;
  background:#fff;
  border:1px solid rgba(7,23,53,.1);
  border-top:3px solid var(--elite-blue);
  border-radius:3px;
  box-shadow:0 25px 58px rgba(7,23,53,.16),0 5px 16px rgba(7,23,53,.07);
}
.company-profile h2{
  margin:0;
  font:500 clamp(48px,4.4vw,68px)/.93 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.company-profile-copy{max-width:640px;align-self:end}
.company-profile-copy p{
  margin:0 0 18px;
  font-size:17px;
  line-height:1.8;
  color:var(--elite-muted);
}
.text-link{font-size:12.5px}
.values-section{padding:56px 0 110px}
.values-grid{
  margin-top:34px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:26px;
  border:0;
}
.values-grid article{
  min-height:285px;
  padding:34px;
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid rgba(7,23,53,.1);
  border-top:3px solid var(--elite-blue);
  border-radius:3px;
  box-shadow:0 23px 52px rgba(7,23,53,.14),0 5px 15px rgba(7,23,53,.06);
}
.values-grid span{color:var(--elite-blue);font-size:12px;font-weight:700}
.values-grid h3{
  margin:auto 0 17px;
  font:500 34px/1.03 "Cormorant Garamond",serif;
}
.values-grid p{
  margin:0;
  font-size:16px;
  line-height:1.76;
  color:var(--elite-muted);
}

.contact-page{
  margin-top:105px;
  margin-bottom:120px;
  padding:0;
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:0;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(7,23,53,.1);
  border-top:3px solid var(--elite-blue);
  border-radius:3px;
  box-shadow:0 28px 68px rgba(7,23,53,.2),0 7px 18px rgba(7,23,53,.08);
}
.contact-details{
  padding:70px 62px;
  background:var(--elite-navy);
  color:#fff;
}
.contact-details .eyebrow{color:var(--elite-cyan)}
.contact-details h2{
  margin:0 0 25px;
  font:500 clamp(47px,4.1vw,63px)/.95 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
  color:#fff;
}
.contact-details>p:last-of-type{
  max-width:480px;
  margin:0;
  font-size:17px;
  line-height:1.78;
  color:rgba(255,255,255,.78);
}
.contact-meta{
  margin-top:38px;
  gap:0;
  font-size:16px;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.17);
}
.contact-meta a{
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.17);
}
.contact-page>div:last-child{padding:70px 62px}
.contact-page-form{gap:22px}
.contact-page-form label{font-size:13px;font-weight:700}
.contact-page-form input,
.contact-page-form select{
  min-height:56px;
}
.contact-page-form input,
.contact-page-form textarea,
.contact-page-form select{
  padding:15px 16px;
  background:#f8f9fb;
  border:1px solid #d6dce4;
  border-radius:2px;
  box-shadow:none;
  font-size:16px;
}
.contact-page-form input:focus,
.contact-page-form textarea:focus,
.contact-page-form select:focus{
  outline:2px solid rgba(21,153,177,.2);
  border-color:var(--elite-blue);
}
.contact-page-form textarea{min-height:165px}
.contact-page-form .button{margin-top:4px}

.page-cta{
  min-height:0;
  margin-top:0;
  margin-bottom:120px;
  padding:78px 48px;
  text-align:center;
  color:#fff;
  background:linear-gradient(120deg,var(--elite-navy),#0b214a);
  border:1px solid rgba(255,255,255,.1);
  border-top:3px solid var(--elite-cyan);
  border-radius:3px;
  box-shadow:0 28px 68px rgba(7,23,53,.2),0 7px 18px rgba(7,23,53,.08);
}
.page-cta .eyebrow{color:var(--elite-cyan)}
.page-cta h2{
  max-width:980px;
  margin:0 auto 34px;
  font:500 clamp(48px,4.8vw,72px)/.94 "Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.page-cta .button{
  min-width:240px;
  width:auto;
  background:var(--elite-blue);
  border-radius:2px;
}

@media(max-width:1000px){
  .page-hero{min-height:620px}
  .service-detail-list article{
    grid-template-columns:64px minmax(0,1fr);
  }
  .service-detail-list article>div:nth-child(2){padding-right:40px}
  .service-image{grid-column:1/-1;min-height:390px}
  .original-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-story{grid-template-columns:1fr}
  .about-story-image{min-height:520px}
  .about-story>div:last-child{min-height:0;padding:62px}
  .company-profile{grid-template-columns:1fr;gap:38px}
  .company-profile-copy{max-width:760px}
  .values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-page{grid-template-columns:1fr}
}

@media(max-width:650px){
  .page-hero{
    min-height:590px;
    padding:135px 20px 70px;
    background-position:60% center;
  }
  .page-hero h1{font-size:58px}
  .page-hero>p:last-child{font-size:16.5px}
  .page-intro,
  .portfolio-intro,
  .service-detail-list,
  .portfolio-section,
  .about-story,
  .company-profile,
  .values-section,
  .contact-page,
  .page-cta{
    width:calc(100% - 32px);
  }
  .page-intro,
  .portfolio-intro{
    padding:70px 0 36px;
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
  }
  .page-intro h2,
  .portfolio-intro h2{font-size:48px}
  .service-detail-list{padding:32px 0 76px}
  .service-detail-list article{
    grid-template-columns:1fr;
    margin-bottom:22px;
    border-radius:3px;
  }
  .service-number{margin:26px 0 0 26px}
  .service-detail-list article>div:nth-child(2){padding:28px 26px 34px}
  .service-detail-list h2{font-size:42px}
  .service-image{grid-column:1;min-height:310px}
  .portfolio-section{padding:32px 0 76px}
  .portfolio-filters{gap:7px}
  .portfolio-filters button{min-height:42px;padding:0 12px;font-size:11px}
  .original-gallery{grid-template-columns:1fr;gap:20px}
  .portfolio-open img,
  .portfolio-item:nth-child(7n+1) img{height:390px}
  .about-story{min-height:0;margin-top:70px;margin-bottom:22px}
  .about-story-image{min-height:390px;height:390px}
  .about-story>div:last-child{padding:44px 26px}
  .about-story h2{font-size:48px}
  .company-profile{margin-bottom:22px;padding:44px 26px;gap:32px}
  .company-profile h2{font-size:48px}
  .values-section{padding:38px 0 76px}
  .values-grid{grid-template-columns:1fr;gap:20px}
  .values-grid article{min-height:245px;padding:30px}
  .contact-page{margin-top:70px;margin-bottom:85px}
  .contact-details,
  .contact-page>div:last-child{padding:46px 26px}
  .contact-details h2{font-size:48px}
  .contact-page-form{grid-template-columns:1fr}
  .contact-page-form label.full{grid-column:auto}
  .page-cta{margin-bottom:80px;padding:60px 24px}
  .page-cta h2{font-size:48px}
  .page-cta .button{min-width:0}
}
