:root{
  --blue:#00536f;
  --pink:#ff5794;
  --pink-soft:#fff0f5;
  --ink:#064e68;
  --body:#416c79;
  --line:#d7edf0;
  --shadow:0 14px 38px rgba(0,83,111,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header{height:84px;display:grid;grid-template-columns:230px 1fr auto;align-items:center;gap:28px;padding:0 48px;background:rgba(255,255,255,.98);position:sticky;top:0;z-index:20;box-shadow:0 4px 18px rgba(0,66,90,.06)}
.brand{height:84px;display:flex;align-items:center;z-index:3}.brand img{width:170px;max-height:78px;object-fit:contain;object-position:left center}
.nav{display:flex;justify-content:center;align-items:center;gap:28px;font-size:14px;font-weight:500}.nav a{padding:30px 0 25px;border-bottom:2px solid transparent;transition:.2s ease}.nav a:hover,.nav a.active{color:var(--pink);border-color:var(--pink)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:linear-gradient(90deg,#ff4f91,#ff69a0);color:#fff;border-radius:40px;padding:14px 30px;font-size:16px;font-weight:600;box-shadow:0 8px 18px rgba(255,87,148,.16);transition:transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(255,87,148,.22)}.btn span{font-size:25px;line-height:0}.btn-small{padding:11px 24px;font-size:14px}.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--blue);cursor:pointer}

.hero{min-height:535px;display:grid;grid-template-columns:39% 61%;background:linear-gradient(90deg,#fff 0,#fff 33%,rgba(255,246,250,.90) 39%,rgba(255,255,255,0) 49%);position:relative;overflow:hidden}.hero-copy{padding:74px 24px 30px 40px;position:relative;z-index:2;background:radial-gradient(circle at 0 18%,rgba(255,209,225,.6),transparent 44%)}.hero h1{font-weight:400;font-size:46px;line-height:1.08;margin:0 0 4px;letter-spacing:-1px}.script-line{font-family:'Allura',cursive;color:var(--pink);font-size:62px;line-height:1.05;margin:0 0 22px;white-space:nowrap}.lead{font-size:19px;line-height:1.4;margin:0 0 22px;max-width:390px}.hero-photo{background:url('assets/hero-kitchen.jpg') center/cover no-repeat;min-height:535px}.trust-row{display:flex;gap:0;margin-top:28px;max-width:390px}.trust-row>div{width:33.33%;text-align:center;padding:0 13px;border-right:1px solid #f2c7d7;font-size:12px;line-height:1.35}.trust-row>div:last-child{border-right:0}.icon{display:block;font-size:29px;margin-bottom:7px;color:var(--blue)}

.section{padding:46px 24px}.section-kicker{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--pink);font-family:'Playfair Display',serif;font-size:20px}.section-kicker span{height:1px;width:72px;background:var(--pink)}.work h2,.testimonials h2{font-family:'Playfair Display',serif;font-size:32px;line-height:1.15;text-align:center;margin:5px 0 3px;letter-spacing:.2px}.work>p{text-align:center;margin:0 0 20px;font-size:16px;color:var(--body)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:980px;margin:0 auto}.card{margin:0;background:linear-gradient(#fff,#fff6f9);border-radius:7px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.04)}.card img{width:100%;height:263px;object-fit:cover}.card h3{text-align:center;font-size:14px;font-weight:600;margin:10px 0 12px}

.pink-band{min-height:100px;background:linear-gradient(90deg,#fff0f6,#ffe9f1,#fff1f6);display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:28px;padding:15px 48px}.script-band{font-family:'Allura',cursive;color:var(--pink);font-size:45px;line-height:1}.pink-band p{margin:0;font-size:15px;line-height:1.4;color:var(--ink)}
.features{background:linear-gradient(180deg,#f8ffff,#fff);padding-top:30px;padding-bottom:30px}.feature-grid{max-width:850px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.feature-grid>div{text-align:center;padding:4px 20px;border-right:1px solid var(--line)}.feature-grid>div:nth-child(3),.feature-grid>div:last-child{border-right:0}.feature-grid span{font-size:34px;line-height:1}.feature-grid p{font-size:13px;margin:8px 0 0}.feature-script{font-family:'Allura',cursive!important;font-size:35px!important;line-height:1.02;transform:rotate(-4deg);padding-left:28px!important}

.service-details{padding-top:48px;padding-bottom:54px;background:#fff}.service-details>h2{text-align:center;font-family:'Playfair Display',serif;font-size:31px;line-height:1.2;margin:5px auto 26px;max-width:850px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1040px;margin:0 auto}.service-grid article{padding:23px;border:1px solid #f0dbe4;border-radius:18px;background:linear-gradient(180deg,#fff,#fff7fa);box-shadow:0 8px 20px rgba(0,83,111,.05)}.service-grid strong{display:block;color:var(--blue);margin-bottom:8px;font-size:15px}.service-grid p{margin:0;color:#5e7480;line-height:1.55;font-size:14px}
.testimonials{padding-top:48px;padding-bottom:54px;background:#fff}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:980px;margin:24px auto 0}.quote-grid blockquote{margin:0;padding:24px;border-radius:12px;background:#fff7fa;line-height:1.6;font-size:15px;box-shadow:0 7px 18px rgba(0,83,111,.05)}.center-action{text-align:center;margin-top:26px}.review-btn{display:inline-flex;padding:13px 22px;border-radius:999px;background:#fff3d8;color:#855d00;font-weight:700;transition:transform .2s ease}.review-btn:hover{transform:translateY(-1px)}

.quote-section{background:linear-gradient(135deg,#fff5f9,#f5ffff);padding-top:58px;padding-bottom:62px}.quote-layout{max-width:980px;margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.quote-intro h2{font-family:'Playfair Display',serif;font-size:34px;line-height:1.15;margin:8px 0 10px}.quote-intro>p{font-size:17px;color:var(--body)}.section-kicker.left{justify-content:flex-start}.section-kicker.left span{width:55px}.direct-contact{display:grid;gap:10px;margin-top:26px;font-weight:600}.direct-contact p{margin:0}.quote-form{display:grid;gap:12px;background:#fff;padding:28px;border-radius:22px;box-shadow:var(--shadow);border:1px solid #f0dbe4}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:48px;padding:13px 14px;border:1px solid #e8d9e2;border-radius:12px;font:inherit;font-size:16px;color:var(--ink);background:#fff}.quote-form textarea{min-height:120px;resize:vertical}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:3px solid rgba(255,87,148,.12);border-color:var(--pink)}.form-btn{border:0;min-height:50px;cursor:pointer}.hp{display:none!important}

footer{background:radial-gradient(circle at 0 100%,#fff1f6 0 10%,transparent 25%),radial-gradient(circle at 100% 100%,#fff1f6 0 10%,transparent 25%),#fff;padding:30px 62px 20px}.footer-top{display:grid;grid-template-columns:220px 1fr 260px;align-items:center;gap:34px;max-width:980px;margin:0 auto}.footer-logo{width:180px}.contact-lines{border-left:1px solid #5aa0b2;border-right:1px solid #5aa0b2;padding:10px 38px;font-size:15px}.contact-lines a,.contact-lines p{display:block;margin:13px 0}.thank-you{text-align:center}.thank-you span{display:block;font-family:'Allura',cursive;font-size:43px;line-height:1;transform:rotate(-3deg)}.thank-you small{font-size:14px}.footer-bottom{text-align:center;letter-spacing:3px;font-size:11px;margin-top:24px;padding-top:17px;border-top:1px solid #72a8b7;max-width:710px;margin-left:auto;margin-right:auto}.copyright{text-align:center;margin-top:14px;font-size:12px;opacity:.75}.floating-call{display:none;position:fixed;right:18px;bottom:18px;z-index:30;background:linear-gradient(90deg,#ff4f91,#ff69a0);color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 8px 22px rgba(255,87,148,.28);font-weight:700}

@media (max-width:980px){.site-header{grid-template-columns:175px 1fr auto;padding:0 20px;gap:16px}.brand img{width:150px}.nav{gap:18px;font-size:13px}.hero-copy{padding-left:28px}.script-line{font-size:53px}.hero h1{font-size:41px}}
@media (max-width:820px){html{scroll-padding-top:70px}.site-header{height:70px;grid-template-columns:155px 1fr auto;padding:0 18px}.brand{height:70px}.brand img{width:138px;max-height:66px}.nav{position:absolute;top:70px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:8px 22px 18px;box-shadow:0 12px 24px rgba(0,0,0,.08)}.nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid #f3e4ea}.menu-toggle{display:block;justify-self:end}.site-header>.btn{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:52px 26px 32px;text-align:center}.hero h1{font-size:42px}.script-line{font-size:54px;white-space:normal}.lead{margin-left:auto;margin-right:auto}.hero .btn{margin:auto}.trust-row{max-width:460px;margin:28px auto 0}.hero-photo{min-height:390px;background-position:center}.gallery{grid-template-columns:1fr 1fr}.pink-band{grid-template-columns:1fr;text-align:center;padding:24px}.features{padding-top:26px;padding-bottom:26px}.feature-grid{grid-template-columns:1fr 1fr;gap:22px}.feature-grid>div{border:0}.service-grid{grid-template-columns:1fr 1fr}.quote-grid{grid-template-columns:1fr}.quote-layout{grid-template-columns:1fr;gap:30px}.quote-intro{text-align:center}.section-kicker.left{justify-content:center}.direct-contact{justify-items:center}.footer-top{grid-template-columns:1fr;text-align:center}.footer-logo{margin:auto}.contact-lines{border:0;padding:0}.floating-call{display:block}}
@media (max-width:600px){.site-header{height:64px;padding:0 14px}.brand{height:64px}.brand img{width:126px;max-height:60px}.nav{top:64px}.hero-copy{padding:44px 18px 28px}.hero h1{font-size:36px}.script-line{font-size:44px}.lead{font-size:17px}.hero-photo{min-height:300px}.trust-row{max-width:none}.trust-row>div{padding:0 7px;font-size:11px}.section{padding:38px 15px}.section-kicker{font-size:18px}.section-kicker span{width:48px}.work h2,.testimonials h2{font-size:26px}.work>p{font-size:15px}.gallery{grid-template-columns:1fr;gap:14px}.card img{height:auto;aspect-ratio:4/3}.script-band{font-size:39px}.feature-grid{grid-template-columns:1fr;gap:8px}.feature-grid>div{padding:10px}.feature-script{padding-left:0!important;margin-top:8px}.service-grid{grid-template-columns:1fr}.service-details>h2,.quote-intro h2{font-size:26px}.quote-form{padding:18px}.quote-section{padding-top:44px;padding-bottom:52px}.footer-top{gap:18px}.footer-logo{width:165px}.footer-bottom{letter-spacing:1.3px;line-height:1.7}footer{padding-left:20px;padding-right:20px}.floating-call{left:14px;right:14px;text-align:center}}

/* Final spacing + readability polish */
.site-header{height:92px;grid-template-columns:250px 1fr auto;padding:0 56px;gap:32px}
.brand{height:92px}.brand img{width:190px;max-height:86px}
.nav{gap:30px;font-size:16px;font-weight:600}.nav a{padding:33px 0 28px}
.btn-small{font-size:15px;padding:12px 25px}

.features{padding-top:18px;padding-bottom:12px}
.feature-grid{max-width:900px}
.feature-grid p{font-size:14px;line-height:1.35}
.feature-script{font-size:38px!important}
.service-details{padding-top:24px;padding-bottom:48px}
.service-details>h2{font-size:33px;margin-bottom:24px}
.service-grid strong{font-size:16px}.service-grid p{font-size:15px;line-height:1.5}
.quote-grid blockquote{font-size:16px}
.work>p{font-size:17px}

@media (max-width:980px){
  .site-header{height:84px;grid-template-columns:205px 1fr auto;padding:0 24px;gap:18px}
  .brand{height:84px}.brand img{width:165px;max-height:78px}
  .nav{gap:19px;font-size:14px}
  .nav a{padding:30px 0 25px}
}
@media (max-width:820px){
  .site-header{height:70px;grid-template-columns:155px 1fr auto;padding:0 18px}
  .brand{height:70px}.brand img{width:138px;max-height:66px}
  .nav{top:70px;font-size:16px}
  .nav a{padding:13px 0}
  .features{padding-top:22px;padding-bottom:18px}
  .service-details{padding-top:30px}
}
@media (max-width:600px){
  .service-details>h2{font-size:27px}
  .service-grid strong{font-size:16px}
  .service-grid p,.quote-grid blockquote,.work>p{font-size:15px}
}

/* Restore JCT teal balance */
:root{
  --teal:#78d5d8;
  --teal-soft:#eafafa;
  --teal-wash:#f4ffff;
  --teal-deep:#0b6f83;
}
.features{
  background:linear-gradient(180deg,#eafafa 0%,#f7ffff 100%);
  border-top:1px solid #c8eeee;
  border-bottom:1px solid #d7f3f3;
}
.feature-grid>div{border-right-color:#abdfe3}
.feature-grid span,.feature-grid p,.feature-script{color:var(--teal-deep)}
.service-details{
  background:linear-gradient(180deg,#ffffff 0%,#f4ffff 100%);
}
.service-grid article{
  border-color:#cfecee;
  background:linear-gradient(180deg,#ffffff 0%,#f1fbfb 100%);
  box-shadow:0 8px 20px rgba(11,111,131,.07);
}
.service-grid strong{color:var(--teal-deep)}
.testimonials{
  background:linear-gradient(180deg,#f6ffff 0%,#ffffff 100%);
}
.quote-grid blockquote{
  background:linear-gradient(180deg,#f2ffff 0%,#ffffff 100%);
  border:1px solid #d7efef;
  box-shadow:0 7px 18px rgba(11,111,131,.06);
}
.quote-section{
  background:linear-gradient(135deg,#fff5f9 0%,#f0ffff 58%,#e8fafa 100%);
}
.quote-form{border-color:#cfe8e9;box-shadow:0 14px 38px rgba(11,111,131,.10)}
.contact-lines{border-color:#69b6bf}
.footer-bottom{border-top-color:#69b6bf}
.icon{color:var(--teal-deep)}

@media (max-width:820px){
  .features{background:linear-gradient(180deg,#eafafa 0%,#f7ffff 100%)}
}

/* Slightly darker JCT teal - color-only adjustment */
:root{
  --teal:#57bcc3;
  --teal-soft:#dff5f5;
  --teal-wash:#effafa;
  --teal-deep:#075f72;
}
.features{
  background:linear-gradient(180deg,#dff5f5 0%,#eefafa 100%);
  border-top-color:#a9dfe2;
  border-bottom-color:#bfe8e9;
}
.feature-grid>div{border-right-color:#8fcbd0}
.service-details{background:linear-gradient(180deg,#ffffff 0%,#effafa 100%)}
.service-grid article{border-color:#b9dfe2;background:linear-gradient(180deg,#ffffff 0%,#eaf7f7 100%)}
.testimonials{background:linear-gradient(180deg,#effafa 0%,#ffffff 100%)}
.quote-grid blockquote{background:linear-gradient(180deg,#eaf7f7 0%,#ffffff 100%);border-color:#bedfe1}
.quote-section{background:linear-gradient(135deg,#fff5f9 0%,#edf9f9 58%,#dff3f3 100%)}
.contact-lines{border-color:#4e9eaa}
.footer-bottom{border-top-color:#4e9eaa}
@media (max-width:820px){.features{background:linear-gradient(180deg,#dff5f5 0%,#eefafa 100%)}}

/* English / Spanish language switch */
.lang-toggle{border:1px solid rgba(0,83,111,.28);background:#eefafb;color:#00536f;border-radius:999px;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer;line-height:1;transition:.2s ease}
.lang-toggle:hover{background:#dff4f5;border-color:#00536f;transform:translateY(-1px)}
@media (max-width:820px){.lang-toggle{align-self:flex-start;margin:10px 0 4px;padding:10px 14px}}


/* Always-visible bilingual header controls */
.site-header{grid-template-columns:250px 1fr auto}
.header-actions{display:flex;align-items:center;gap:12px;justify-self:end}
.header-actions .btn{white-space:nowrap}
.lang-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:38px;flex:0 0 auto;position:relative;z-index:40}
@media (max-width:1100px){
  .site-header{grid-template-columns:210px 1fr auto;padding:0 26px;gap:18px}
  .brand img{width:165px}
  .nav{gap:18px;font-size:14px}
  .header-actions{gap:8px}
  .header-actions .btn{padding-left:18px;padding-right:18px;font-size:13px}
}
@media (max-width:820px){
  .site-header{grid-template-columns:1fr auto auto}
  .menu-toggle{display:block;grid-column:2}
  .header-actions{grid-column:3}
  .header-actions .btn{display:none}
  .lang-toggle{margin:0;align-self:center;min-width:48px;min-height:38px}
  .nav{left:0;right:0}
}


/* Approved quote + language navigation polish: no new colors, shapes, or sizes */
.lang-toggle{
  border:0;
  background:transparent;
  border-radius:0;
  padding:8px 4px;
  min-width:auto;
  min-height:auto;
  color:var(--blue);
  box-shadow:none;
  transform:none;
}
.lang-toggle:hover{
  background:transparent;
  border-color:transparent;
  color:var(--pink);
  transform:none;
}
.header-actions .btn{
  background:transparent;
  color:var(--pink);
  border-radius:0;
  padding:8px 0;
  box-shadow:none;
}
.header-actions .btn:hover{
  transform:none;
  box-shadow:none;
  color:var(--blue);
}
