@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Montserrat:wght@400;500;600&display=swap');
:root{--black:#10110f;--cream:#f7f3ea;--gold:#c7a25c;--purple:#8052a6;--ink:#171815;--muted:#6f6b63}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}
.nav{height:78px;padding:0 4.5vw;background:rgba(13,14,12,.96);color:white;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20}.brand{font:700 27px 'Cormorant Garamond',serif;line-height:.78}.brand b{display:block;color:#b77bd0;font-style:italic;font-size:32px}.brand small{display:block;font:500 9px Montserrat;letter-spacing:.25em;margin-top:7px}.navlinks{display:flex;gap:28px;font-size:10px;letter-spacing:.18em;text-transform:uppercase}.btn{display:inline-block;border:1px solid var(--gold);padding:14px 23px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;background:linear-gradient(#e4c27f,#caa258);color:#15120d;font-weight:600}.hero{min-height:630px;position:relative;background:linear-gradient(90deg,rgba(6,8,7,.84) 0%,rgba(6,8,7,.58) 31%,rgba(6,8,7,.06) 63%),url('assets/hero-halloween-original.jpg') center 58%/cover;display:flex;align-items:center;padding:6vw 5vw;color:white}.hero-copy{max-width:550px}.eyebrow{color:#e2c27f;letter-spacing:.3em;text-transform:uppercase;font-size:11px}.hero h1{font:600 clamp(55px,6.2vw,92px)/.82 'Cormorant Garamond',serif;letter-spacing:-.02em;margin:18px 0 24px}.hero .seasons{color:#e7c579;letter-spacing:.22em;font-size:12px;text-transform:uppercase}.hero p{font:500 17px/1.55 'Cormorant Garamond',serif;max-width:420px}.sign{position:absolute;right:4vw;bottom:5vw;width:min(265px,22vw);filter:drop-shadow(0 8px 18px rgba(0,0,0,.35));border:2px solid rgba(214,178,105,.65)}
.season-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fbf9f4}.season-card{padding:30px 1.2vw 25px;text-align:center;border-right:1px solid #e4ded2}.season-card:last-child{border:0}.season-card h2{font:600 28px 'Cormorant Garamond',serif;letter-spacing:.24em;margin:0 0 5px}.season-card .sub{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.season-card img{height:270px;object-fit:cover}.season-card .view{display:inline-block;margin-top:15px;border:1px solid #d2b06a;padding:10px 34px;font-size:9px;letter-spacing:.18em;text-transform:uppercase}
.strip{display:grid;grid-template-columns:repeat(3,1fr);padding:25px 6vw;border-top:1px solid #ddd5c7;background:#f4f0e8}.strip div{text-align:center;font-size:9px;letter-spacing:.17em;text-transform:uppercase}.pagehead{padding:70px 7vw 35px;text-align:center}.pagehead h1{font:600 clamp(46px,6vw,78px) 'Cormorant Garamond',serif;margin:0}.pagehead p{max-width:620px;margin:10px auto;color:var(--muted);line-height:1.7}.gallery{padding:20px 5vw 80px;display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.gallery figure{margin:0;background:white;border:1px solid #e5dfd4}.gallery img{height:520px;object-fit:cover}.gallery figcaption{padding:16px 18px;font:600 21px 'Cormorant Garamond',serif}.cta{background:#121712;color:white;text-align:center;padding:70px 6vw}.cta h2{font:600 46px 'Cormorant Garamond',serif;margin:0 0 12px}.cta p{color:#d2d2ca;margin-bottom:25px}footer{background:#0e100e;color:#c8c6be;padding:24px 5vw;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
@media(max-width:850px){.navlinks{display:none}.sign{display:none}.season-grid,.strip{grid-template-columns:1fr}.season-card{border-right:0;border-bottom:1px solid #e4ded2}.gallery{grid-template-columns:1fr}.gallery img{height:auto}.hero{min-height:570px}.hero h1{font-size:58px}}
/* Homepage v3: preserve the approved layout and the original Halloween photograph. */
.brand b{color:#ead09a;font-style:italic;font-size:34px}.brand small{font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:.08em;text-transform:none;color:#fff;margin-top:8px}.hero{min-height:515px;background-image:linear-gradient(90deg,rgba(6,8,7,.88) 0%,rgba(6,8,7,.62) 27%,rgba(6,8,7,.08) 55%),url('assets/hero-halloween-original.jpg');background-position:center 61%;background-size:cover;filter:saturate(1.05) contrast(1.02)}.hero-copy{max-width:500px}.hero h1{font-size:clamp(54px,5.6vw,86px);line-height:.78;margin:16px 0 20px}.hero p{font-size:20px;line-height:1.35}.season-card img{height:260px}.season-card:first-child img{object-position:center 66%;filter:saturate(1.05) contrast(1.02)}
/* Homepage v4: hero only changed to another original Festive Fronts Halloween installation. */
.hero{background-image:linear-gradient(90deg,rgba(6,8,7,.88) 0%,rgba(6,8,7,.62) 27%,rgba(6,8,7,.08) 55%),url('assets/halloween-2.jpg');background-position:center 55%;}
/* Homepage v5: exact approved logo treatment + user's original fountain installation as hero. */
.brand-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;width:270px;line-height:1}
.brand-logo img{width:245px;height:auto;max-height:104px;object-fit:contain;display:block}
.brand-logo small{font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:.08em;text-transform:none;color:#fff;margin-top:-5px}
.nav{height:92px;padding-left:3.2vw}
.hero{min-height:515px;background-image:linear-gradient(90deg,rgba(6,8,7,.88) 0%,rgba(6,8,7,.63) 29%,rgba(6,8,7,.10) 57%),url('assets/hero-fountain-original.jpg');background-position:center 51%;background-size:cover;filter:saturate(1.04) contrast(1.015)}
@media(max-width:850px){.brand-logo{width:190px}.brand-logo img{width:180px}.nav{height:82px}.hero{background-position:center 48%}}
/* v7 consolidated edits */
.logo-crop{display:block;width:245px;height:78px;overflow:hidden;background:#000}.logo-crop img{width:245px;height:auto;display:block;background:#000}.brand-logo{background:#000}.brand-logo small{margin-top:1px}.nav{background:#000}
.fountain-hero{min-height:540px;background-image:linear-gradient(90deg,rgba(6,8,7,.78) 0%,rgba(6,8,7,.46) 29%,rgba(6,8,7,.04) 56%),url('assets/hero-fountain-enhanced.jpg');background-size:contain;background-repeat:no-repeat;background-position:right center;background-color:#0a0a09;filter:none}
.simple-page{padding:28px 4.5vw 70px;background:#fbf9f4;min-height:calc(100vh - 92px)}.simple-page>h1{text-align:center;font:600 42px 'Cormorant Garamond',serif;letter-spacing:.16em;text-transform:uppercase;margin:10px 0 25px}.clean-gallery{padding:0;grid-template-columns:repeat(3,1fr);gap:18px}.clean-gallery figure{border:0;background:transparent;overflow:hidden}.clean-gallery img{height:390px;object-fit:cover}.clean-gallery .garden img{object-fit:contain;background:#f1ede4}.seasonal-gallery img{height:330px;object-fit:cover}.seasonal-gallery figure{background:#eee9df}
@media(max-width:850px){.logo-crop{width:180px;height:60px}.logo-crop img{width:180px}.fountain-hero{background-size:cover;background-position:center}.clean-gallery{grid-template-columns:1fr}.clean-gallery img,.seasonal-gallery img{height:auto}}

.coming-soon{color:#6f675b;background:#f4efe5;cursor:default;}
/* v9 requested revisions */
.logo-crop{background:#000;position:relative}.logo-crop img{filter:contrast(1.14) brightness(.98);mix-blend-mode:screen;transform:translateY(-2px)}
.navlinks a[href="#about"]{display:none}
.wide-hero{min-height:560px;background-image:linear-gradient(90deg,rgba(6,8,7,.88) 0%,rgba(6,8,7,.63) 28%,rgba(6,8,7,.08) 57%),url('assets/enh-halloween-2.jpg');background-size:cover;background-position:center 54%;filter:none}
.phone-cta{text-align:center;padding:58px 5vw 62px;background:#f7f3ea;border-top:1px solid #ded5c5}.phone-cta h2{font:600 clamp(40px,5vw,64px) 'Cormorant Garamond',serif;margin:8px 0 6px}.phone-cta p{font:500 19px 'Cormorant Garamond',serif;color:#665f54;margin:0 0 24px}.eyebrow.dark{color:#92713b}.cta-actions{display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap}.text-link{text-transform:uppercase;letter-spacing:.14em;font-size:10px;border-bottom:1px solid #c7a25c;padding:8px 0}
.quote-page{min-height:calc(100vh - 92px);padding:64px 5vw 90px;background:#f7f3ea}.quote-intro{text-align:center;max-width:760px;margin:0 auto 38px}.quote-intro h1{font:600 clamp(48px,6vw,76px)/.95 'Cormorant Garamond',serif;margin:10px 0 16px}.quote-intro p{font:500 18px/1.55 'Cormorant Garamond',serif;color:#5e594f}.quote-intro .phone-line{font-size:16px}.quote-intro .phone-line a{border-bottom:1px solid #c7a25c}.quote-form{max-width:900px;margin:auto;background:#fff;padding:38px;border:1px solid #e2dacb;box-shadow:0 16px 50px rgba(30,25,18,.06)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote-form label,.quote-form legend{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:600}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:8px;padding:14px 13px;border:1px solid #d8d0c2;background:#fbfaf7;font:14px Montserrat,Arial,sans-serif;color:#171815}.quote-form textarea{resize:vertical}.quote-form>label,.quote-form fieldset{margin-top:24px}.quote-form fieldset{border:0;padding:0}.checks{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px}.checks label{letter-spacing:.05em;text-transform:none;font-size:13px;font-weight:500}.checks input{width:auto;margin:0 6px 0 0}.field-note{display:block;margin-top:7px;color:#777066;font-size:10px;letter-spacing:.02em;text-transform:none;font-weight:400}.submit-btn{border:0;margin-top:28px;cursor:pointer}.form-note{font-size:12px;color:#665f54;margin-top:14px;line-height:1.5}
@media(max-width:850px){.wide-hero{min-height:590px;background-position:58% center}.form-grid{grid-template-columns:1fr}.quote-form{padding:24px}.quote-page{padding:40px 4vw 70px}}
/* v10 — homepage matched to approved screenshot */
body.home{background:#faf8f3}.home-hero{height:518px;position:relative;color:#fff;background-image:linear-gradient(90deg,rgba(3,5,3,.90) 0%,rgba(3,5,3,.76) 23%,rgba(3,5,3,.13) 43%,rgba(3,5,3,.03) 100%),url('assets/enh-hero-halloween-original.jpg');background-size:cover;background-position:center 49%;overflow:hidden}.home-nav{position:absolute;top:0;left:0;width:100%;height:66px;padding:0 2.1vw 0 4.2vw;background:rgba(9,9,8,.73);backdrop-filter:blur(1px);display:grid;grid-template-columns:330px 1fr 215px;gap:16px}.home-nav .brand-logo{width:280px;height:155px;position:absolute;top:10px;left:4.2vw;background:transparent;display:block}.home-nav .brand-logo img{width:280px;height:auto;max-height:none;object-fit:contain;filter:none;mix-blend-mode:normal;transform:none;background:transparent}.home-nav .navlinks{grid-column:2;justify-content:center;gap:34px;align-items:center;height:66px}.home-nav .navlinks a{font:500 13px 'Cormorant Garamond',serif;letter-spacing:.04em;text-transform:uppercase;padding:24px 0 15px}.home-nav .navlinks .active{color:#e1bd72;border-bottom:2px solid #d4aa55}.top-quote{grid-column:3;justify-self:end;padding:15px 27px;font:600 13px 'Cormorant Garamond',serif;letter-spacing:.08em;min-width:184px;text-align:center}.home-hero .hero-copy{position:absolute;left:4.35vw;top:184px;max-width:470px}.home-hero .eyebrow{font:600 17px 'Cormorant Garamond',serif;letter-spacing:.29em;color:#e2c27f}.home-hero h1{font:600 64px/.91 'Cormorant Garamond',serif;text-transform:uppercase;letter-spacing:-.015em;margin:10px 0 13px}.home-hero p{font:500 19px/1.32 'Cormorant Garamond',serif;margin:0 0 13px}.hero-btn{padding:14px 26px;font:600 13px 'Cormorant Garamond',serif;letter-spacing:.09em}.hero-btn b,.view b{font-size:20px;line-height:0;margin-left:10px}.home-seasons{height:382px;background:#fbfaf7}.home-seasons .season-card{padding:14px 1.25vw 12px}.home-seasons .season-card h2{font:600 24px 'Cormorant Garamond',serif;letter-spacing:.31em;margin:0}.home-seasons .season-card i{display:block;width:38px;border-top:1px solid #cda45c;margin:6px auto 5px}.home-seasons .season-card .sub{font:500 9px 'Cormorant Garamond',serif;letter-spacing:.34em;margin-bottom:7px}.home-seasons .season-card img{height:238px;object-fit:cover}.home-seasons .season-card:first-child img{object-position:center 50%;filter:saturate(1.05) contrast(1.02)}.home-seasons .season-card .view{margin-top:10px;width:250px;padding:8px 20px;font:600 11px 'Cormorant Garamond',serif;letter-spacing:.13em;background:#fbfaf7}.home-seasons .season-card .coming-soon{color:#6f675b}.feature-strip{height:124px;border-top:1px solid #ddd6ca;border-bottom:1px solid #ddd6ca;background:#f9f7f2;display:grid;grid-template-columns:repeat(4,1fr);padding:20px 4.5vw}.feature{display:flex;align-items:flex-start;gap:20px;padding:0 24px;border-right:1px solid #ddd6ca}.feature:last-child{border-right:0}.feature .ico{font:400 52px/1 Georgia,serif;color:#050505;width:52px;text-align:center}.feature p{margin:3px 0 0;font-family:'Cormorant Garamond',serif}.feature strong{display:block;font-size:13px;line-height:1.15;letter-spacing:.07em;text-transform:uppercase}.feature small{display:block;font-size:12px;line-height:1.35;margin-top:7px;color:#4f4a42}.feature a{border-bottom:1px solid #c7a25c}
@media(max-width:1000px){.home-nav{grid-template-columns:240px 1fr 170px}.home-nav .brand-logo,.home-nav .brand-logo img{width:220px}.home-nav .navlinks{gap:16px}.home-nav .navlinks a{font-size:11px}.home-hero .hero-copy{left:4vw}.feature-strip{height:auto;grid-template-columns:1fr 1fr;gap:20px}.feature:nth-child(2){border-right:0}}@media(max-width:850px){.home-hero{height:650px;background-position:62% center}.home-nav{display:flex;height:78px}.home-nav .brand-logo{position:static;width:175px;height:auto}.home-nav .brand-logo img{width:175px}.top-quote{margin-left:auto;min-width:auto;padding:12px}.home-hero .hero-copy{top:205px}.home-hero h1{font-size:52px}.home-seasons{height:auto}.feature-strip{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid #ddd6ca;padding-bottom:18px}.feature:last-child{border-bottom:0}}

/* Final homepage reference adjustments */
body.home{min-height:100vh;background:#fbfaf7}
.home-hero{height:565px;background-image:linear-gradient(90deg,rgba(3,5,3,.91) 0%,rgba(3,5,3,.78) 24%,rgba(3,5,3,.15) 44%,rgba(3,5,3,.02) 100%),url('assets/enh-hero-halloween-original.jpg');background-position:center 50%;}
.home-nav{grid-template-columns:390px 1fr 215px;padding-left:4.3vw;}
.home-nav .brand-logo{width:340px;height:188px;top:10px;left:4.3vw;display:flex;flex-direction:column;align-items:center;overflow:visible;background:transparent;}
.home-logo-crop{display:block;width:340px;height:143px;overflow:hidden;background:transparent;}
.home-nav .brand-logo .home-logo-crop img{width:340px;max-height:none;height:auto;display:block;transform:none;filter:none;mix-blend-mode:normal;background:transparent;}
.home-nav .brand-logo .byline{display:block;color:#fff;font:600 29px/1 'Cormorant Garamond',serif;letter-spacing:.045em;margin-top:-4px;text-shadow:0 2px 8px rgba(0,0,0,.5);}
.home-hero .hero-copy{left:5.1vw;top:235px;max-width:465px;}
.home-hero h1{font-size:68px;line-height:.9;}
.home-seasons{height:390px;}
.home-seasons .season-card img{height:245px;}
.home-seasons .season-card:first-child img{object-position:center 53%;}
.feature-strip{display:none!important;}
@media(max-width:1000px){.home-nav{grid-template-columns:290px 1fr 175px}.home-nav .brand-logo{width:260px}.home-logo-crop{width:260px;height:110px}.home-nav .brand-logo .home-logo-crop img{width:260px}.home-nav .brand-logo .byline{font-size:23px}}
@media(max-width:850px){.home-nav .brand-logo{width:185px}.home-logo-crop{width:185px;height:78px}.home-nav .brand-logo .home-logo-crop img{width:185px}.home-nav .brand-logo .byline{font-size:17px;margin-top:-2px}.home-hero .hero-copy{top:220px}.home-hero{height:650px}}

/* Approved 2026-09-26 homepage adjustments */
.home-seasons .season-card:first-child img{object-fit:contain !important;object-position:center center !important;background:#f7f5f0 !important;}

/* Exact approved hero: image itself is the approved composition, so it cannot drift/crop. */
.exact-approved-hero{position:relative;width:100%;overflow:hidden;background:#050604;line-height:0}
.exact-approved-hero>img{display:block;width:100%;height:auto;object-fit:contain}
.exact-approved-hero .hero-hit{position:absolute;z-index:5;display:block}
.exact-approved-hero .hit-home{left:28.2%;top:1%;width:5.5%;height:11%}
.exact-approved-hero .hit-fall{left:34%;top:1%;width:8%;height:11%}
.exact-approved-hero .hit-gallery{left:57%;top:1%;width:7%;height:11%}
.exact-approved-hero .hit-contact{left:70%;top:1%;width:8%;height:11%}
.exact-approved-hero .hit-top-quote{right:1.5%;top:1%;width:15%;height:11%}
.exact-approved-hero .hit-main-quote{left:4.2%;bottom:4%;width:18%;height:11%}
@media(max-width:850px){
  .exact-approved-hero{overflow-x:auto}
  .exact-approved-hero>img{width:900px;max-width:none}
}

/* 2026-09-27 mobile optimization + consistent navigation */
.mobile-home-hero{display:none}

/* Desktop subpage nav remains the same visual style, with simplified links. */
.site-nav .navlinks{margin-left:auto;margin-right:28px}
.site-nav .nav-quote{white-space:nowrap}

/* Cleaner Gasparilla homepage card framing. */
.home-seasons .season-card:nth-child(3) img{
  object-position:center 48%;
  filter:saturate(.94) contrast(1.02);
}

@media (max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}

  /* The approved desktop screenshot remains completely untouched on desktop.
     On phones, replace the fixed desktop composition with a true responsive hero. */
  .exact-approved-hero{display:none!important}
  .mobile-home-hero{
    display:block;
    position:relative;
    min-height:690px;
    color:#fff;
    background:
      linear-gradient(180deg,rgba(5,7,5,.62) 0%,rgba(5,7,5,.18) 31%,rgba(5,7,5,.18) 48%,rgba(5,7,5,.88) 100%),
      url('assets/approved-mobile-hero-clean.jpg') center 48%/cover no-repeat;
  }
  .mobile-topbar{
    min-height:94px;
    padding:10px 15px 8px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    background:rgba(5,5,4,.70);
  }
  .mobile-brand{width:188px;display:flex;flex-direction:column;align-items:center}
  .mobile-brand img{width:188px;height:72px;object-fit:cover;object-position:top;background:#000}
  .mobile-brand span{
    margin-top:2px;
    font:600 18px/1 'Cormorant Garamond',serif;
    letter-spacing:.04em;
    color:#fff;
  }
  .mobile-quote{
    margin-top:13px;
    border:1px solid var(--gold);
    background:linear-gradient(#e4c27f,#caa258);
    color:#15120d;
    padding:11px 10px;
    font:600 10px 'Cormorant Garamond',serif;
    letter-spacing:.07em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .mobile-hero-copy{
    position:absolute;
    left:0;right:0;bottom:0;
    padding:32px 22px 34px;
    background:linear-gradient(180deg,transparent,rgba(4,5,4,.90) 24%);
  }
  .mobile-hero-copy .eyebrow{font-size:12px;letter-spacing:.25em}
  .mobile-hero-copy h1{
    margin:10px 0 13px;
    font:600 49px/.86 'Cormorant Garamond',serif;
    text-transform:uppercase;
    letter-spacing:-.01em;
  }
  .mobile-hero-copy p{
    max-width:340px;
    margin:0 0 20px;
    font:500 18px/1.3 'Cormorant Garamond',serif;
  }
  .mobile-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
  .mobile-actions .btn{padding:12px 15px}
  .mobile-text-link{
    font:600 11px 'Cormorant Garamond',serif;
    text-transform:uppercase;
    letter-spacing:.1em;
    border-bottom:1px solid #d5b46c;
    padding:8px 0;
  }

  /* Homepage cards become full-width, photo-first sections. */
  .home-seasons{
    display:block!important;
    height:auto!important;
    width:100%;
  }
  .home-seasons .season-card{
    width:100%;
    padding:24px 16px 28px;
    border-right:0;
    border-bottom:1px solid #e4ded2;
  }
  .home-seasons .season-card h2{font-size:25px;letter-spacing:.23em}
  .home-seasons .season-card .sub{font-size:9px}
  .home-seasons .season-card img,
  .home-seasons .season-card:first-child img{
    width:100%;
    height:auto!important;
    max-height:none;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#f7f5f0;
  }
  .home-seasons .season-card:nth-child(3) img{
    max-height:460px;
    object-fit:cover!important;
    object-position:center 45%!important;
  }
  .home-seasons .season-card .view{width:min(250px,90%);font-size:11px}

  /* Subpage header: logo on top row, compact nav below. */
  .site-nav{
    position:relative;
    top:auto;
    height:auto;
    min-height:0;
    padding:10px 14px 12px;
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-areas:"brand quote" "links links";
    row-gap:10px;
    background:#000;
  }
  .site-nav .brand-logo{
    grid-area:brand;
    width:170px;
    height:auto;
    align-items:flex-start;
  }
  .site-nav .logo-crop{width:170px;height:58px}
  .site-nav .logo-crop img{width:170px}
  .site-nav .brand-logo small{font-size:14px;margin-left:26px}
  .site-nav .nav-quote{
    grid-area:quote;
    align-self:center;
    padding:11px 10px;
    font-size:9px;
  }
  .site-nav .navlinks{
    grid-area:links;
    display:flex!important;
    width:100%;
    margin:0;
    justify-content:center;
    gap:28px;
    padding-top:8px;
    border-top:1px solid rgba(255,255,255,.16);
    font-size:10px;
  }

  /* Halloween gallery: no hard crops on phones. */
  .simple-page{padding:26px 14px 48px;min-height:0}
  .simple-page>h1{font-size:35px;margin:8px 0 20px}
  .clean-gallery{display:block!important}
  .clean-gallery figure{margin:0 0 18px}
  .clean-gallery img,
  .clean-gallery .garden img{
    width:100%;
    height:auto!important;
    object-fit:contain!important;
    background:#f1ede4;
  }

  /* Quote page/form optimized for thumb-sized inputs. */
  .quote-page{min-height:0;padding:34px 14px 55px}
  .quote-intro{margin-bottom:24px}
  .quote-intro h1{font-size:45px;line-height:.92}
  .quote-intro p{font-size:17px}
  .quote-form{width:100%;padding:20px 16px;box-shadow:none}
  .form-grid{display:block}
  .form-grid label{margin-bottom:18px}
  .quote-form input,.quote-form select,.quote-form textarea{
    min-height:48px;
    font-size:16px; /* prevents iPhone auto-zoom */
  }
  .checks{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px}
  .checks label{font-size:14px}
  .submit-btn{width:100%;padding:15px}
}

@media (max-width:390px){
  .mobile-brand{width:160px}
  .mobile-brand img{width:160px;height:63px}
  .mobile-brand span{font-size:16px}
  .mobile-quote{font-size:9px;padding:10px 8px}
  .mobile-hero-copy h1{font-size:43px}
  .site-nav .brand-logo{width:150px}
  .site-nav .logo-crop{width:150px;height:52px}
  .site-nav .logo-crop img{width:150px}
  .site-nav .brand-logo small{margin-left:20px;font-size:13px}
  .site-nav .navlinks{gap:20px}
}

/* Final mobile hero framing: show the decorated entrance rather than cropping tightly to the door. */
@media (max-width:700px){
  .mobile-home-hero{
    min-height:720px;
    background-color:#070807;
    background-image:
      linear-gradient(180deg,rgba(5,7,5,.48) 0%,rgba(5,7,5,.08) 30%,rgba(5,7,5,.08) 58%,rgba(5,7,5,.92) 100%),
      url('assets/enh-hero-halloween-original.jpg');
    background-size:100% auto, 100% auto;
    background-position:center top, center 105px;
    background-repeat:no-repeat;
  }
  .mobile-hero-copy{padding-top:78px}
  .home-seasons .season-card:nth-child(3) img{
    width:100%;height:auto!important;max-height:none;object-fit:contain!important;object-position:center!important;
  }
}
@media (max-width:430px){
  .mobile-home-hero{min-height:690px;background-position:center top,center 100px}
}

/* Fix desktop Halloween navigation hotspot */
.exact-approved-hero .fixed-fall-link{
  position:absolute!important;
  left:34%!important;
  top:0!important;
  width:10%!important;
  height:13%!important;
  display:block!important;
  z-index:999!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}

/* Mobile hero/header refinement: preserve full logo and show the complete decorated entrance. */
@media (max-width:700px){
  .mobile-home-hero{
    min-height:0!important;
    padding:0!important;
    background:#050504!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .mobile-topbar{
    position:relative!important;
    order:1;
    min-height:0!important;
    padding:12px 14px 13px!important;
    align-items:center!important;
    background:#050504!important;
  }

  .mobile-brand{
    width:min(54vw,220px)!important;
    align-items:flex-start!important;
  }
  .mobile-brand img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#050504!important;
  }
  .mobile-brand span{
    align-self:center!important;
    margin-top:3px!important;
    font-size:16px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .mobile-quote{
    margin:0!important;
    align-self:center!important;
    padding:12px 11px!important;
  }

  /* Put the photo in its own full-width panel so CSS never cover-crops it. */
  .mobile-home-hero::before{
    content:"";
    order:2;
    display:block;
    width:100%;
    aspect-ratio:3/4;
    background:
      url('assets/enh-hero-halloween-original.jpg') center center/contain no-repeat,
      #0a0a08;
  }

  /* Text is separated from the photo instead of obscuring/cropping the installation. */
  .mobile-hero-copy{
    position:relative!important;
    order:3;
    left:auto!important;right:auto!important;bottom:auto!important;
    padding:26px 20px 30px!important;
    background:#050504!important;
  }
  .mobile-hero-copy h1{
    font-size:clamp(40px,12vw,54px)!important;
    line-height:.9!important;
  }
  .mobile-hero-copy p{
    max-width:none!important;
    font-size:17px!important;
  }
}
@media (max-width:390px){
  .mobile-brand{width:min(52vw,190px)!important}
  .mobile-brand span{font-size:14px!important}
  .mobile-quote{font-size:8px!important;padding:10px 8px!important}
}

/* Keep the complete Festive Fronts logo visible in subpage mobile headers. */
@media (max-width:700px){
  .site-nav .brand-logo{
    width:min(54vw,220px)!important;
    height:auto!important;
    overflow:visible!important;
  }
  .site-nav .logo-crop{
    display:block!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
  }
  .site-nav .logo-crop img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    clip-path:none!important;
    margin:0!important;
  }
  .site-nav .brand-logo small{
    align-self:center!important;
    margin:3px 0 0!important;
    font-size:15px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}
@media (max-width:390px){
  .site-nav .brand-logo{width:min(52vw,190px)!important}
  .site-nav .brand-logo small{font-size:14px!important}
}

/* Mobile hero uses the EXACT SAME source image as the approved desktop hero. */
@media (max-width:700px){
  .mobile-home-hero::before{
    background-image:url('assets/enh-hero-halloween-original.jpg')!important;
    background-position:center center!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-color:#050504!important;
    filter:none!important;
    opacity:1!important;
  }
}

/* Final mobile hero: exact approved desktop hero artwork, responsively framed. */
@media (max-width:700px){
  .mobile-home-hero::before{
    background-image:url('assets/approved-hero-exact.jpg')!important;
    background-size:cover!important;
    background-position:center 58%!important;
    background-repeat:no-repeat!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
    filter:none!important;
    opacity:1!important;
  }
  .mobile-brand{
    overflow:visible!important;
  }
  .mobile-brand img{
    height:auto!important;
    object-fit:contain!important;
  }
}

/* Logo-only correction. Mobile hero/photo intentionally unchanged from approved version. */
@media (max-width:700px){
  .mobile-topbar,
  .mobile-brand,
  .mobile-brand img,
  .site-nav,
  .site-nav .brand-logo,
  .site-nav .logo-crop,
  .site-nav .logo-crop img{
    background-color:#000!important;
  }
}

/* Mobile logo only: remove embedded MTL DESIGNS; keep live 'by MTL Designs'. */
@media (max-width:700px){
  .mobile-brand img,
  .site-nav .logo-crop img{
    content:url('assets/festive-fronts-clean-black-logo.png')!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    background:#000!important;
  }
}

/* Approved mobile composition: use the exact approved reference's clean entrance panel. */
@media (max-width:700px){
  .mobile-home-hero::before{
    background-image:url('assets/approved-mobile-reference.png')!important;
    background-size:100% auto!important;
    background-position:center 25.1%!important;
    background-repeat:no-repeat!important;
    aspect-ratio:1.285/1!important;
    filter:none!important;
    opacity:1!important;
  }
}

/* Remove duplicate mobile byline; approved mobile artwork already includes it. */
@media (max-width:700px){
  .mobile-brand > span{
    display:none!important;
  }
}

/* FINAL approved mobile logo: pure black background, no flare, one byline only. */
@media (max-width:700px){
  .mobile-brand img,
  .site-nav .logo-crop img{
    content:url('assets/festive-fronts-clean-black-logo.png')!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    background:#000!important;
  }
  .mobile-brand > span,
  .site-nav .brand-logo > small{
    display:none!important;
  }
}


/* FINAL MOBILE HEADER FIX — keep hero and email functionality unchanged */
@media (max-width:700px){
  .mobile-brand,
  .site-nav .brand-logo,
  .site-nav .logo-crop{
    background:#000!important;
  }

  .mobile-brand img,
  .site-nav .logo-crop img{
    content:url('assets/festive-fronts-clean-black-logo.png')!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    background:#000!important;
    filter:none!important;
    box-shadow:none!important;
  }

  /* The approved logo artwork already contains the single byline. */
  .mobile-brand > span,
  .mobile-brand > small,
  .site-nav .brand-logo > span,
  .site-nav .brand-logo > small,
  .site-nav .logo-crop + span,
  .site-nav .logo-crop + small{
    display:none!important;
  }
}


/* CLEAN MOBILE HEADER V2
   The markup now contains exactly one logo image and no separate byline. */
@media (max-width:700px){
  .mobile-topbar{
    background:#000!important;
  }
  .mobile-brand{
    display:block!important;
    width:min(53vw,190px)!important;
    height:auto!important;
    overflow:visible!important;
    background:#000!important;
    line-height:0!important;
  }
  .mobile-brand img{
    content:normal!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    box-shadow:none!important;
    background:#000!important;
  }

  .site-nav .clean-mobile-brand{
    display:block!important;
    width:min(53vw,190px)!important;
    height:auto!important;
    overflow:visible!important;
    background:#000!important;
    line-height:0!important;
  }
  .site-nav .clean-mobile-brand > img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    transform:none!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    box-shadow:none!important;
    background:#000!important;
  }
}


/* ROOT-CAUSE FIX:
   approved-mobile-reference.png was a screenshot containing the header itself.
   Use a clean crop of ONLY the exact approved house photo, so no logo/byline
   can ever appear inside the hero image. */
@media (max-width:700px){
  .mobile-home-hero::before{
    background-image:url('assets/approved-mobile-hero-clean.jpg')!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    aspect-ratio:832/645!important;
    filter:none!important;
    opacity:1!important;
  }

  .mobile-topbar{
    background:#000!important;
  }

  .mobile-brand{
    background:#000!important;
    overflow:hidden!important;
  }

  .mobile-brand img{
    content:normal!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    background:#000!important;
    filter:none!important;
    mix-blend-mode:normal!important;
    transform:none!important;
    box-shadow:none!important;
  }
}


.fall-pricing{padding:90px 6%;background:#f5f2ec;color:#111}.section-heading{text-align:center;max-width:760px;margin:0 auto 46px}.section-heading .eyebrow,.package-kicker{letter-spacing:.18em;font-size:.78rem}.section-heading h2{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);font-weight:400;margin:.4rem 0 1rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1200px;margin:auto}.price-card{position:relative;background:#fff;padding:42px 32px;text-align:center;border:1px solid #d8d0c3;display:flex;flex-direction:column}.price-card.featured{border:2px solid #d7ae59;transform:translateY(-8px)}.price-card h3{font-family:Georgia,serif;font-size:1.8rem;font-weight:400;margin:14px 0}.price{font-family:Georgia,serif;font-size:2.8rem;margin:8px 0 20px}.price-card p{line-height:2;flex:1}.upgrade{border-top:1px solid #ddd0b6;padding:18px 0;margin-bottom:20px}.popular{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:#d7ae59;padding:7px 15px;font-size:.7rem;letter-spacing:.15em;white-space:nowrap}.real-fall-gallery{padding:80px 5%;background:#f5f2ec;color:#111}.fall-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1250px;margin:auto}.fall-photo-grid img{width:100%;height:500px;object-fit:cover}.contact-email{text-align:center;padding:18px;background:#000;color:#eee}.contact-email a{color:#d7ae59}.mtl-footer-mark{text-align:center;padding:24px 15px 30px;background:#000;color:#fff}.mtl-footer-mark span{font-family:Georgia,serif;font-size:2rem;letter-spacing:.08em;display:block}.mtl-footer-mark small{font-size:.58rem;letter-spacing:.42em;margin-left:.42em}@media(max-width:700px){.fall-pricing{padding:64px 22px}.pricing-grid{grid-template-columns:1fr;gap:28px}.price-card.featured{transform:none}.fall-photo-grid{grid-template-columns:1fr}.fall-photo-grid img{height:auto;object-fit:contain}}

.quote-direct-email{text-align:center;padding:16px 20px;background:#f5f2ec;color:#111}.quote-direct-email a{color:#8a672c;font-weight:600;text-decoration:underline}

.simple-contact{min-height:65vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 24px;background:#f5f2ec;color:#111}
.simple-contact section{max-width:760px}.simple-contact h1{font-family:Georgia,serif;font-size:clamp(2.4rem,5vw,4.5rem);font-weight:400;margin:12px 0 22px}
.simple-contact p{font-size:1.05rem;line-height:1.7}.contact-email-link{display:inline-block;margin-top:12px;color:#8a672c;font-size:1.15rem;font-weight:600;text-decoration:underline}

.package-choice select{width:100%;padding:14px 15px;border:1px solid #cfc7ba;background:#fff;color:#111;font:inherit}

.real-fall-gallery{display:block!important;padding:80px 5%;background:#f5f2ec;color:#111}
.fall-photo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1250px;margin:0 auto}
.fall-photo-grid figure{margin:0;min-width:0;overflow:hidden;background:#eee}
.fall-photo-grid img{display:block!important;width:100%!important;height:520px!important;object-fit:cover!important;opacity:1!important;visibility:visible!important}
@media(max-width:700px){.fall-photo-grid{grid-template-columns:1fr}.fall-photo-grid img{height:auto!important;max-height:none!important;object-fit:contain!important}}

/* Consistent header navigation typography */
header nav a,
header .nav a,
header .nav-links a,
header .desktop-nav a,
header .mobile-nav a,
.topbar nav a,
.site-header nav a,
.site-header a.nav-link {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
@media (max-width:700px){
  header nav a,
  header .nav a,
  header .nav-links a,
  header .desktop-nav a,
  header .mobile-nav a,
  .topbar nav a,
  .site-header nav a,
  .site-header a.nav-link {
    font-size: 11px !important;
    letter-spacing: .14em !important;
  }
}

/* Homepage flow: pricing centered before seasonal galleries */
.fall-pricing{margin:0!important;padding-top:90px!important;padding-bottom:90px!important}
.fall-pricing + section{margin-top:0!important}

/* Verified Fall installation gallery */
.real-fall-gallery{display:block!important;visibility:visible!important;opacity:1!important;padding:72px 5%!important}
.real-fall-gallery .fall-photo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;max-width:1280px!important;margin:36px auto 0!important}
.real-fall-gallery figure{display:block!important;visibility:visible!important;opacity:1!important;margin:0!important;overflow:hidden!important}
.real-fall-gallery img{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;height:500px!important;object-fit:cover!important}
@media(max-width:700px){
 .real-fall-gallery .fall-photo-grid{grid-template-columns:1fr!important}
 .real-fall-gallery img{height:auto!important;max-height:none!important;object-fit:contain!important}
}

/* Homepage Fall photos — explicit visible layout directly below pricing */
.homepage-fall-showcase{
  display:block!important; visibility:visible!important; opacity:1!important;
  padding:72px 5%!important; background:#f5f2ec!important; color:#111!important;
}
.homepage-fall-grid{
  display:grid!important; visibility:visible!important; opacity:1!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important; max-width:1280px!important; margin:34px auto 0!important;
}
.homepage-fall-grid img{
  display:block!important; visibility:visible!important; opacity:1!important;
  position:static!important; transform:none!important;
  width:100%!important; height:480px!important; object-fit:cover!important;
  max-width:none!important;
}
@media(max-width:700px){
  .homepage-fall-grid{grid-template-columns:1fr!important}
  .homepage-fall-grid img{height:auto!important; aspect-ratio:auto!important; object-fit:contain!important}
}

/* Additional three Fall installations; existing Fall-page imagery remains intact */
.new-fall-installations{display:block!important;padding:50px 5% 80px!important;background:#f5f2ec!important}
.new-fall-photo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;max-width:1280px!important;margin:30px auto 0!important}
.new-fall-photo-grid figure{margin:0!important;display:block!important}
.new-fall-photo-grid img{display:block!important;width:100%!important;height:500px!important;object-fit:cover!important;visibility:visible!important;opacity:1!important}
@media(max-width:700px){.new-fall-photo-grid{grid-template-columns:1fr!important}.new-fall-photo-grid img{height:auto!important;object-fit:contain!important}}

/* Simple contact page */
.simple-contact-page{min-height:55vh;display:flex;align-items:center;justify-content:center;background:#f5f2ec}
.simple-contact{text-align:center;padding:90px 24px}
.simple-contact h1{margin:12px 0 28px}
.simple-contact .contact-email{font-size:clamp(18px,2.2vw,28px);color:inherit;text-decoration:underline;text-underline-offset:6px}
.contact-page .fall-pricing,.contact-page .season-grid{display:none!important}

/* Exact desktop header navigation alignment */
@media (min-width:701px){
  .exact-approved-hero a[aria-label="Home"],
  .exact-approved-hero a[aria-label="Fall"],
  .exact-approved-hero a[aria-label="Christmas"],
  .exact-approved-hero a[aria-label="Gasparilla"],
  .exact-approved-hero a[aria-label="Contact"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    font-family:Georgia,"Times New Roman",serif!important;
    font-size:30px!important;
    font-weight:400!important;
    line-height:1!important;
    letter-spacing:0!important;
    text-transform:uppercase!important;
    padding:0!important;
    margin:0!important;
  }
}

/* Single consistent desktop navigation overlay */
@media (min-width:701px){
 .uniform-desktop-nav{
   position:absolute!important;z-index:9999!important;top:0!important;left:0!important;right:0!important;
   height:112px!important;display:grid!important;grid-template-columns:repeat(5,1fr)!important;
   align-items:center!important;background:#191915!important;padding:0 4%!important;margin:0!important;box-sizing:border-box!important;
 }
 .uniform-desktop-nav a{
   display:flex!important;align-items:center!important;justify-content:center!important;height:112px!important;
   padding:0!important;margin:0!important;font-family:Georgia,"Times New Roman",serif!important;
   font-size:28px!important;font-weight:400!important;line-height:28px!important;letter-spacing:.02em!important;
   text-transform:uppercase!important;color:#f5f1e8!important;text-decoration:none!important;box-sizing:border-box!important;
 }
}
@media(max-width:700px){.uniform-desktop-nav{display:none!important}}

/* Slimmer version of the uniform desktop header */
@media (min-width:701px){
  .uniform-desktop-nav{
    height:76px!important;
    padding:0 5%!important;
  }
  .uniform-desktop-nav a{
    height:76px!important;
    font-size:20px!important;
    line-height:20px!important;
    letter-spacing:.03em!important;
  }
}

/* Clean dedicated Contact page */
.contact-page{background:#f5f2ec!important;margin:0!important}
.contact-page .simple-contact-page{
  min-height:calc(100vh - 76px)!important;
  padding-top:76px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:#f5f2ec!important;
}
.contact-page .simple-contact{padding:60px 24px!important;text-align:center!important}
.contact-page .simple-contact .eyebrow{font-size:13px!important;letter-spacing:.22em!important}
.contact-page .simple-contact h1{font-size:clamp(38px,5vw,64px)!important;margin:14px 0 28px!important}
.contact-page .contact-email{font-size:clamp(18px,2vw,26px)!important;color:#191915!important}
@media(max-width:700px){
 .contact-page .simple-contact-page{padding-top:0!important;min-height:100vh!important}
 .contact-page .uniform-desktop-nav{display:none!important}
}

/* Final compact desktop header — separate from hero so the photo stays fully visible */
@media (min-width:701px){
  .uniform-desktop-nav{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    height:48px!important;
    min-height:48px!important;
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    align-items:center!important;
    background:#191915!important;
    padding:0 8%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .uniform-desktop-nav a{
    height:48px!important;
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:15px!important;
    line-height:15px!important;
    letter-spacing:.06em!important;
    margin:0!important;
    padding:0!important;
  }
  /* Hero begins after header rather than underneath it */
  .exact-approved-hero{
    margin-top:0!important;
    top:auto!important;
  }
  .contact-page .simple-contact-page{
    padding-top:0!important;
    min-height:calc(100vh - 48px)!important;
  }
}

/* Contact page correction based on screenshot: remove inherited black email box
   and stack the three elements cleanly. */
.contact-page .simple-contact-page{
  min-height:calc(100vh - 48px)!important;
  padding:0 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f5f2ec!important;
}
.contact-page .simple-contact{
  width:100%!important;
  max-width:760px!important;
  padding:40px 20px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-align:center!important;
  background:transparent!important;
}
.contact-page .contact-kicker{
  display:block!important;
  margin:0 0 14px!important;
  padding:0!important;
  background:transparent!important;
  color:#c9a55c!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:400!important;
  letter-spacing:.22em!important;
}
.contact-page .simple-contact h1{
  display:block!important;
  margin:0 0 24px!important;
  padding:0!important;
  background:transparent!important;
  color:#111!important;
  font-size:clamp(44px,5vw,66px)!important;
  line-height:1.05!important;
  font-weight:400!important;
}
.contact-page .simple-contact .contact-email{
  display:inline-block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#191915!important;
  font-size:clamp(18px,2vw,25px)!important;
  line-height:1.4!important;
  text-decoration:underline!important;
  text-underline-offset:5px!important;
}
@media(max-width:700px){
 .contact-page .simple-contact-page{min-height:100vh!important;padding:24px!important}
 .contact-page .simple-contact{padding:30px 0!important}
 .contact-page .simple-contact h1{font-size:42px!important}
 .contact-page .simple-contact .contact-email{font-size:17px!important;overflow-wrap:anywhere!important}
}

/* Final top navigation: one compact 3-item header only */
@media (min-width:701px){
 .uniform-desktop-nav{
   position:relative!important;
   height:44px!important;
   min-height:44px!important;
   grid-template-columns:repeat(3,1fr)!important;
   padding:0 18%!important;
 }
 .uniform-desktop-nav a{
   height:44px!important;
   min-height:44px!important;
   font-size:14px!important;
   line-height:14px!important;
 }
 .site-nav{display:none!important}
}

@media (min-width:701px){
 .uniform-desktop-nav{
   position:relative!important;height:44px!important;min-height:44px!important;
   grid-template-columns:repeat(3,1fr)!important;padding:0 18%!important;
 }
 .uniform-desktop-nav a{height:44px!important;min-height:44px!important;font-size:14px!important;line-height:14px!important}
 .exact-approved-hero{margin-top:0!important}
}

/* Header must not cover or crop the hero */
@media (min-width:701px){
  .uniform-desktop-nav{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    z-index:10!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
  }
  .exact-approved-hero{
    position:relative!important;
    top:auto!important;
    margin-top:0!important;
    transform:none!important;
  }
}

/* More informative Contact page */
.contact-page .detailed-contact{max-width:760px!important}
.contact-page .detailed-contact h1{max-width:700px!important}
.contact-page .contact-intro{
  max-width:620px!important;margin:0 auto 24px!important;
  font-size:18px!important;line-height:1.7!important;color:#4b473f!important;
}
.contact-page .contact-note{
  margin:16px 0 28px!important;font-size:14px!important;
  letter-spacing:.06em!important;color:#777064!important;
}
.contact-page .contact-schedule-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:14px 28px!important;background:#191915!important;color:#fff!important;
  text-decoration:none!important;text-transform:uppercase!important;
  font-size:13px!important;letter-spacing:.12em!important;
}
@media(max-width:700px){
 .contact-page .contact-intro{font-size:16px!important}
 .contact-page .detailed-contact h1{font-size:38px!important}
}

/* Schedule Installation CTA near homepage pricing */
.pricing-schedule-cta{
  width:100%;
  display:flex;
  justify-content:center;
  margin:34px 0 8px;
}
.pricing-schedule-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:15px 30px;
  background:#191915;
  color:#fff!important;
  text-decoration:none!important;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.12em;
}
@media(max-width:700px){
  .pricing-schedule-cta{margin:26px 0 6px}
  .pricing-schedule-button{padding:14px 24px}
}

/* Header CTA */
@media (min-width:701px){
  .uniform-desktop-nav{
    grid-template-columns:1fr 1fr 1fr auto!important;
    padding:0 8%!important;
    column-gap:34px!important;
  }
  .uniform-desktop-nav .header-schedule-button{
    height:30px!important;
    min-height:30px!important;
    padding:0 16px!important;
    background:#c9a55c!important;
    color:#191915!important;
    font-size:11px!important;
    line-height:11px!important;
    letter-spacing:.09em!important;
    white-space:nowrap!important;
  }
}

/* Keep the full hero visible below the header — no cropping/covering */
@media (min-width:701px){
  .uniform-desktop-nav{
    position:relative!important;
    top:auto!important;
    margin:0!important;
  }
  .exact-approved-hero{
    position:relative!important;
    top:auto!important;
    margin:0!important;
    transform:none!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    background-size:100% auto!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
    aspect-ratio:1536 / 490!important;
  }
}

/* Homepage seasonal cards: make Fall, Christmas and Gasparilla images identical in size */
@media (min-width:701px){
  .season-grid img,
  .season-card img,
  .seasonal-grid img,
  .seasonal-card img{
    width:100%!important;
    height:355px!important;
    object-fit:cover!important;
    object-position:center center!important;
    display:block!important;
  }
}
@media (max-width:700px){
  .season-grid img,
  .season-card img,
  .seasonal-grid img,
  .seasonal-card img{
    width:100%!important;
    aspect-ratio:4/3!important;
    height:auto!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
}

/* Refined Schedule Installation page */
.quote-page{
  background:#f5f2ec!important;
  padding-bottom:90px!important;
}
.quote-direct-email{
  max-width:820px!important;
  margin:0 auto!important;
  padding:28px 24px 0!important;
  text-align:center!important;
  font-size:13px!important;
  letter-spacing:.04em!important;
  color:#70695f!important;
}
.refreshed-quote-intro{
  max-width:760px!important;
  margin:0 auto!important;
  padding:56px 24px 34px!important;
  text-align:center!important;
}
.refreshed-quote-intro .eyebrow{
  margin-bottom:14px!important;
  color:#c9a55c!important;
  font-size:12px!important;
  letter-spacing:.22em!important;
}
.refreshed-quote-intro h1{
  margin:0 0 18px!important;
  font-size:clamp(42px,5vw,66px)!important;
  line-height:1.05!important;
  font-weight:400!important;
}
.refreshed-quote-intro p{
  max-width:650px!important;
  margin:0 auto!important;
  color:#575148!important;
  font-size:17px!important;
  line-height:1.7!important;
}
.quote-form{
  max-width:820px!important;
  margin:0 auto!important;
  padding:40px!important;
  background:#fff!important;
  border:1px solid #ded7cc!important;
  box-shadow:0 14px 40px rgba(25,25,21,.07)!important;
}
.quote-form label{
  font-size:12px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#4c473f!important;
}
.quote-form input,.quote-form select,.quote-form textarea{
  margin-top:8px!important;
  background:#fbfaf7!important;
  border:1px solid #d3ccc0!important;
  min-height:48px!important;
}
.quote-form textarea{min-height:130px!important}
.quote-form .submit-btn{
  width:100%!important;
  min-height:54px!important;
  margin-top:14px!important;
  background:#191915!important;
  color:#fff!important;
  border:0!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
@media(max-width:700px){
  .refreshed-quote-intro{padding:42px 20px 28px!important}
  .refreshed-quote-intro p{font-size:16px!important}
  .quote-form{margin:0 16px!important;padding:26px 18px!important}
}

/* Consistent spacing between every form question and its field */
.quote-form label{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  margin:0!important;
}
.quote-form label input,
.quote-form label select,
.quote-form label textarea{
  margin-top:0!important;
}
.quote-form .form-grid,
.quote-form .form-fields{
  row-gap:24px!important;
}
.quote-form > label{
  margin-bottom:24px!important;
}

/* Softer editorial styling for the "Have a question first?" line */
.quote-direct-email{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:16px!important;
  font-style:italic!important;
  font-weight:400!important;
  line-height:1.5!important;
  letter-spacing:.01em!important;
  color:#655e54!important;
}
.quote-direct-email a{
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:400!important;
  color:#9a7941!important;
  text-decoration:none!important;
  border-bottom:1px solid #c9a55c!important;
  padding-bottom:2px!important;
}

/* Form refinements: package spacing + correctly sized holiday checkboxes */

/* Give the Fall Package selector breathing room before Full Name / Email */
.quote-form label:has(select[name="package"]),
.quote-form label:has(select[name="fallPackage"]),
.quote-form .package-field{
  margin-bottom:28px!important;
}

/* Checkboxes should be compact controls, not inherit text-field dimensions */
.quote-form input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0 0 9px!important;
  padding:0!important;
  flex:0 0 18px!important;
}

/* Keep holiday options neat and aligned */
.quote-form .checkbox-row label,
.quote-form .checkbox-group label,
.quote-form label:has(input[type="checkbox"]){
  gap:0!important;
  align-items:flex-start!important;
}

/* More deliberate vertical spacing between major form sections */

/* Fall package -> Full Name / Email */
.quote-form label:has(select[name="package"]),
.quote-form label:has(select[name="fallPackage"]),
.quote-form .package-field{
  margin-bottom:42px!important;
}

/* Holiday choices -> Desired Installation Timing */
.quote-form .checkbox-row,
.quote-form .checkbox-group,
.quote-form fieldset:has(input[type="checkbox"]){
  margin-bottom:38px!important;
}

/* Desired Installation Timing -> Front-of-Home Photo */
.quote-form label:has(input[name="timing"]),
.quote-form label:has(input[name="installationTiming"]),
.quote-form label:has(input[placeholder*="First Week"]),
.quote-form label:has(input[placeholder*="first week"]),
.quote-form .timing-field{
  margin-bottom:38px!important;
}

/* If the photo field follows directly, ensure its heading has breathing room */
.quote-form label:has(input[type="file"]),
.quote-form .photo-field{
  margin-top:8px!important;
}

/* Exact spacing fixes based on the actual form markup */

/* Fall Package dropdown -> Full Name / Email */
.quote-form .package-choice{
  margin-bottom:42px!important;
}

/* Holiday checkboxes -> Desired Installation Timing */
.quote-form fieldset{
  margin-bottom:42px!important;
}

/* Desired Installation Timing -> Front-of-Home Photo */
.quote-form .form-grid:has(input[name="timing"]){
  margin-bottom:42px!important;
}

/* Prevent labels from visually colliding with the section above */
.quote-form .form-grid > label,
.quote-form > label{
  padding-top:0!important;
}

/* Exact MTL Designs artwork placement */
.interior-brand-logo{
  max-width:340px;
  margin:34px auto 4px;
  padding:0 20px;
  text-align:center;
}
.interior-brand-logo img{
  display:block;
  width:100%;
  height:auto;
  margin:0 auto;
}
@media(max-width:700px){
  .interior-brand-logo{
    max-width:280px;
    margin:26px auto 0;
  }
}

/* Understated MTL Designs monogram */
.footer-mtl-monogram{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:18px 0 12px;
}
.footer-mtl-monogram img{
  width:72px;
  height:auto;
  display:block;
  opacity:.58;
  mix-blend-mode:multiply;
}
.minimal-brand-footer{
  background:#f5f2ec;
}
@media(max-width:700px){
  .footer-mtl-monogram img{width:62px}
}

/* Homepage: remove legacy pumpkin logo only; keep footer MTL monogram */
.home-page .hero-logo,
.home-page .brand-logo,
.home-page .mobile-logo,
body:not(.contact-page):not(.quote-page) .hero-logo img[src*="festive-fronts"]{
  display:none!important;
}

/* Move the MTL signature safely below footer content */
.footer-mtl-monogram{
  clear:both!important;
  position:relative!important;
  margin-top:34px!important;
  padding:20px 0 18px!important;
  width:100%!important;
  z-index:1!important;
}
.footer-mtl-monogram img{
  position:static!important;
}
@media(max-width:700px){
  .footer-mtl-monogram{
    margin-top:28px!important;
    padding:18px 0 16px!important;
  }
}

/* Homepage seasonal photos: identical visual size */
@media (min-width:701px){
  .season-grid .season-card img,
  .seasonal-grid .seasonal-card img,
  .season-grid > * img{
    width:100%!important;
    height:355px!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
    display:block!important;
  }
}
@media (max-width:700px){
  .season-grid .season-card img,
  .seasonal-grid .seasonal-card img,
  .season-grid > * img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
    display:block!important;
  }
}

/* Contact page text option */
.contact-page .contact-text-option{
  margin:18px 0 0!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:16px!important;
  font-style:italic!important;
  color:#655e54!important;
}
.contact-page .contact-text-option a{
  color:#9a7941!important;
  font-style:normal!important;
  text-decoration:none!important;
  border-bottom:1px solid #c9a55c!important;
  padding-bottom:2px!important;
}

/* Homepage: visually emphasize Fall while keeping all three cards polished */
@media (min-width:701px){
  /* Let the Fall card read as the featured season */
  .season-grid > *:first-child,
  .seasonal-grid > *:first-child{
    transform:scale(1.055)!important;
    transform-origin:center center!important;
    position:relative!important;
    z-index:2!important;
  }

  .season-grid > *:first-child img,
  .seasonal-grid > *:first-child img{
    height:385px!important;
    box-shadow:0 14px 34px rgba(25,25,21,.16)!important;
  }

  /* Slightly soften the secondary seasons without making them look disabled */
  .season-grid > *:not(:first-child),
  .seasonal-grid > *:not(:first-child){
    opacity:.92!important;
  }
}
@media (max-width:700px){
  .season-grid > *:first-child img,
  .seasonal-grid > *:first-child img{
    aspect-ratio:4/3!important;
    box-shadow:0 10px 24px rgba(25,25,21,.14)!important;
  }
}

/* Final seasonal-card refinement: equal heights, Fall still featured */
@media (min-width:701px){
  .season-grid > * img,
  .seasonal-grid > * img,
  .season-grid .season-card img,
  .seasonal-grid .seasonal-card img{
    height:355px!important;
  }
  .season-grid > *:first-child img,
  .seasonal-grid > *:first-child img{
    height:355px!important;
  }
}

/* Homepage only: push the subtle MTL signature farther down */
body.home-page .footer-mtl-monogram,
body:not(.contact-page):not(.quote-page) .footer-mtl-monogram{
  margin-top:68px!important;
  padding-top:24px!important;
  padding-bottom:14px!important;
}
@media(max-width:700px){
  body.home-page .footer-mtl-monogram,
  body:not(.contact-page):not(.quote-page) .footer-mtl-monogram{
    margin-top:52px!important;
    padding-top:20px!important;
  }
}

/* Homepage pricing section: tighten vertical breathing room */
.pricing-section,
.pricing-wrap,
.pricing{
  padding-top:42px!important;
  padding-bottom:42px!important;
}

/* Reduce gap between seasonal photos and pricing */
.season-grid,
.seasonal-grid{
  margin-bottom:34px!important;
}

/* Reduce gap after pricing before the next visual section */
.pricing-section + section,
.pricing-wrap + section,
.pricing + section{
  margin-top:34px!important;
}

/* Keep the pricing CTA comfortably connected to the cards */
.pricing-schedule-cta{
  margin-top:24px!important;
  margin-bottom:0!important;
}

@media(max-width:700px){
  .pricing-section,
  .pricing-wrap,
  .pricing{
    padding-top:32px!important;
    padding-bottom:32px!important;
  }
  .season-grid,
  .seasonal-grid{
    margin-bottom:26px!important;
  }
}

/* Make the FALL PACKAGES heading more prominent without changing the pricing cards */
.pricing-section h2,
.pricing-wrap h2,
.pricing h2{
  font-size:clamp(34px,3.4vw,48px)!important;
  font-weight:600!important;
  letter-spacing:.08em!important;
  color:#191915!important;
  margin-bottom:10px!important;
}

/* Give the small line/accent around the heading a little more presence */
.pricing-section .eyebrow,
.pricing-wrap .eyebrow,
.pricing .eyebrow{
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:.18em!important;
  color:#9a7941!important;
}

@media(max-width:700px){
  .pricing-section h2,
  .pricing-wrap h2,
  .pricing h2{
    font-size:34px!important;
  }
}

/* Darken the Fall Packages heading for stronger contrast */
.pricing-section h2,
.pricing-wrap h2,
.pricing h2{
  color:#11110f!important;
  opacity:1!important;
}

/* Darken any heading/kicker text used directly above the Fall package cards */
.pricing-section .eyebrow,
.pricing-wrap .eyebrow,
.pricing .eyebrow{
  color:#5f4b2c!important;
  opacity:1!important;
}


/* ===== FINAL MOBILE QA PASS ===== */

/* Homepage mobile header: the brand anchor is intentionally empty now that the
   pumpkin logo was removed, so don't reserve blank space for it. */
@media (max-width:700px){
  .mobile-topbar{
    min-height:64px!important;
    padding:10px 16px!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }
  .mobile-topbar .mobile-brand{
    display:none!important;
    width:0!important;
  }
  .mobile-quote{
    margin-top:0!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:10px 13px!important;
  }

  /* Keep hero copy comfortably inside narrow screens. */
  .mobile-hero-copy{
    padding:30px 20px 32px!important;
  }
  .mobile-hero-copy h1{
    font-size:clamp(42px,13vw,49px)!important;
  }
  .mobile-actions{
    gap:14px!important;
  }

  /* Pricing: tighter mobile spacing and clearer hierarchy. */
  .fall-pricing{
    padding:44px 18px 46px!important;
  }
  .fall-pricing .section-heading{
    margin-bottom:32px!important;
  }
  .fall-pricing .section-heading .eyebrow{
    color:#4f3d24!important;
    opacity:1!important;
    font-size:14px!important;
    font-weight:700!important;
    letter-spacing:.17em!important;
  }
  .fall-pricing .section-heading h2{
    color:#11110f!important;
    font-size:38px!important;
    line-height:1.05!important;
    margin-top:8px!important;
  }
  .pricing-grid{
    gap:22px!important;
  }
  .price-card{
    padding:34px 24px!important;
  }
  .pricing-schedule-cta{
    margin-top:22px!important;
  }

  /* All three seasonal images are exactly the same mobile height.
     Fall remains featured through its subtle shadow, not extra height. */
  .home-seasons .season-card img,
  .home-seasons .season-card:first-child img,
  .home-seasons .season-card:nth-child(3) img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .home-seasons .season-card:first-child img{
    box-shadow:0 10px 24px rgba(25,25,21,.14)!important;
  }

  /* Interior pages: prevent logos, copy, and controls from crowding phone widths. */
  .interior-brand-logo{
    width:min(280px,88vw)!important;
    padding:0 12px!important;
  }
  .quote-direct-email{
    padding-left:18px!important;
    padding-right:18px!important;
    text-align:center!important;
    overflow-wrap:anywhere!important;
  }
  .quote-form select,
  .quote-form input,
  .quote-form textarea{
    max-width:100%!important;
    font-size:16px!important; /* avoids iPhone input zoom */
  }
  .checks{
    gap:14px 18px!important;
  }

  .contact-page .detailed-contact{
    padding-left:20px!important;
    padding-right:20px!important;
  }
  .contact-page .contact-email,
  .contact-page .contact-text-option a{
    overflow-wrap:anywhere!important;
  }
  .contact-page .contact-schedule-button{
    max-width:100%!important;
  }

  /* Keep the MTL mark lower only on the homepage. */
  body.home .footer-mtl-monogram{
    margin-top:52px!important;
    padding-top:20px!important;
  }
  body:not(.home) .footer-mtl-monogram{
    margin-top:28px!important;
  }
}

/* The actual homepage pricing class is .fall-pricing; make the recent
   visibility/spacing refinements apply to the real section on desktop too. */
.fall-pricing .section-heading .eyebrow{
  color:#4f3d24!important;
  opacity:1!important;
  font-weight:700!important;
}
.fall-pricing .section-heading h2{
  color:#11110f!important;
  opacity:1!important;
}
@media (min-width:701px){
  .fall-pricing{
    padding-top:62px!important;
    padding-bottom:62px!important;
  }
}


/* Mobile homepage photo refinement */
@media(max-width:700px){
  /* Show the complete portrait Fall photo instead of cropping it into 4:3. */
  .home-seasons .season-card:first-child img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#f7f5f0!important;
  }

  /* Christmas uses a separately sharpened mobile asset; preserve its framing. */
  .home-seasons .season-card#christmas img{
    content:url("assets/christmas-1-mobile-sharp.jpg")!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
}


/* Mobile homepage: restore Contact alongside Schedule Installation */
@media(max-width:700px){
  .mobile-topbar{
    gap:10px!important;
  }
  .mobile-contact{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:10px 13px!important;
    color:#191915!important;
    text-decoration:none!important;
    text-transform:uppercase!important;
    font-size:11px!important;
    letter-spacing:.11em!important;
    border:1px solid #c9a55c!important;
    background:#f5f2ec!important;
    white-space:nowrap!important;
  }
  .mobile-quote{
    white-space:nowrap!important;
  }
}

/* Form-page text option, visually paired with the existing email line */
.quote-direct-phone{
  max-width:820px;
  margin:8px auto 0;
  padding:0 24px;
  text-align:center;
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;
  font-style:italic;
  line-height:1.5;
  letter-spacing:.01em;
  color:#655e54;
}
.quote-direct-phone a{
  font-family:inherit;
  font-style:normal;
  font-weight:400;
  color:#9a7941;
  text-decoration:none;
  border-bottom:1px solid #c9a55c;
  padding-bottom:2px;
}
@media(max-width:700px){
  .quote-direct-phone{
    padding:0 18px!important;
    overflow-wrap:anywhere!important;
  }
}
