﻿:root {
  /* 🟢 COLOR THEME — change --blue for accent color, --dark for background tone */
   --blue: #58cdf6;
   --blue2: #33bce8;
   --blue-soft: rgba(88,205,246,0.2);
   --blue-line: rgba(88,205,246,0.38);
   --sun: #ffd884;
   --sun-soft: rgba(255,216,132,0.18);
   --dark: #1b2d40;
   --dark2: #23384d;
   --dark3: #2e4762;
   --dark4: #385776;
   --mid: #456989;
   --light: #F2F8FD;
   --muted: #b3cadb;
  --white: #FFFFFF;
  --font-display: 'Bebas Neue', sans-serif;
  --font-body: 'Barlow', sans-serif;
  --font-cond: 'Barlow Condensed', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:radial-gradient(circle at 15% -10%,rgba(88,205,246,.12),transparent 35%),radial-gradient(circle at 90% 0%,rgba(255,216,132,.08),transparent 30%),var(--dark);color:var(--light);font-family:var(--font-body);overflow-x:hidden;}

/* ── PAGE ROUTING ── */
.page{display:none;}
.page.active{display:block;}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;width:100%;z-index:200;padding:1rem 3rem;display:flex;align-items:center;justify-content:space-between;transition:all .3s;background:rgba(27,45,64,.7);backdrop-filter:blur(8px);}
nav.scrolled{background:rgba(27,45,64,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--blue-line);}
.nav-logo{display:flex;align-items:center;gap:.8rem;text-decoration:none;cursor:pointer;}
.nav-logo-img{height:52px;width:52px;object-fit:contain;}
.nav-logo-text{font-family:var(--font-display);font-size:1.4rem;letter-spacing:.08em;color:var(--white);line-height:1;}
.nav-logo-text span{color:var(--blue);}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center;}
.nav-links a{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s;cursor:pointer;}
.nav-links a:hover,.nav-links a.active{color:var(--blue);}
.mobile-home-btn{display:none;font-family:var(--font-cond);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;padding:.5rem .8rem;border:1px solid var(--blue-line);border-radius:999px;color:#e9f7ff;text-decoration:none;background:linear-gradient(135deg,var(--blue-soft),rgba(255,255,255,.08));box-shadow:0 8px 20px rgba(0,0,0,.2);}
.mobile-home-btn:hover{background:linear-gradient(135deg,rgba(88,205,246,.28),rgba(255,216,132,.16));border-color:rgba(255,216,132,.7);color:#ffffff;}
.nav-book-btn{font-family:var(--font-cond);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;padding:.55rem 1.4rem;border:1.5px solid var(--blue);color:var(--blue);background:transparent;cursor:pointer;transition:all .2s;text-decoration:none;}
.nav-book-btn:hover{background:var(--blue);color:var(--dark);}
.nav-links .nav-book-btn:hover{color:#000000;border-color:var(--blue);}
/* ── NAV DROPDOWN ── */
.nav-dropdown{position:relative;}
.nav-caret{font-size:.6rem;opacity:.7;vertical-align:middle;margin-left:.2rem;display:inline-block;transition:transform .2s;}
.nav-dropdown:hover .nav-caret{transform:rotate(180deg);}
.nav-dropdown-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%);list-style:none;min-width:180px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s;padding-top:12px;}
.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s linear 0s;}
.nav-dropdown-menu::before{content:'';position:absolute;top:0;left:0;right:0;height:12px;background:transparent;}
.nav-dropdown-menu-inner{background:rgba(27,45,64,.97);backdrop-filter:blur(16px);border:1px solid var(--blue-line);border-radius:6px;padding:.5rem 0;overflow:hidden;}
.nav-dropdown-menu-inner li{display:block;}
.nav-dropdown-menu-inner li a{display:block;padding:.55rem 1.4rem;font-family:var(--font-cond);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-decoration:none;transition:color .15s,background .15s;cursor:pointer;}
.nav-dropdown-menu-inner li a:hover{color:var(--blue);background:rgba(56,188,239,.06);}
.nav-dropdown-menu-inner li:not(:last-child){border-bottom:1px solid rgba(56,188,239,.06);}
/* section scroll offset for fixed nav */
.port-section,.port-sub-header,.port-section-header{scroll-margin-top:80px;}

/* ── BUTTONS ── */
.btn-primary{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;padding:.9rem 2.5rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;font-weight:600;}
.btn-primary:hover{background:#7ad9f8;box-shadow:0 0 24px rgba(88,205,246,.35);}
.btn-outline{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;padding:.9rem 2.5rem;background:linear-gradient(135deg,var(--blue-soft),rgba(255,255,255,.06));color:#eaf6ff;border:1.5px solid var(--blue-line);cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;box-shadow:0 0 18px rgba(88,205,246,.22);}
.btn-outline:hover{border-color:rgba(255,216,132,.72);color:#ffffff;background:linear-gradient(135deg,rgba(88,205,246,.28),rgba(255,216,132,.14));box-shadow:0 0 24px rgba(88,205,246,.35);}

/* ── SECTION BASE ── */
.section-label{font-family:var(--font-cond);font-size:.7rem;letter-spacing:.35em;text-transform:uppercase;color:var(--blue);margin-bottom:.6rem;}
.section-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:.04em;line-height:1;color:var(--white);}
.section-title .blue{color:var(--blue);}
.container{max-width:1260px;margin:0 auto;padding:0 3rem;}

/* ══════════════════════════════════
   HOME PAGE
══════════════════════════════════ */

/* ── HERO ── */
#hero{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;}
/* 🟢 HERO_BG — hero background: change the gradient or add a background-image URL here */
.hero-bg{
   position:absolute;
   inset:0;
   background-image:
      linear-gradient(165deg, rgba(16,31,48,.62) 0%, rgba(27,50,74,.52) 42%, rgba(15,30,45,.68) 100%),
      url('Images/Background/Top Parallax.jpg');
   background-size:cover;
   background-position:center;
   background-attachment:fixed;
}
.hero-slides{position:absolute;inset:0;overflow:hidden;}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease;will-change:transform;}
.hero-slide.visible{opacity:.12;}
/* 🟢 HERO_SLIDE_IMAGES — these are the rotating background photos. Replace the gradient values with real photo URLs like: background-image:url('your-photo.jpg') */
.hero-slide:nth-child(1){background-image:linear-gradient(135deg,#1d3a55,#2f5b80,#1b2d40);}
.hero-slide:nth-child(2){background-image:linear-gradient(225deg,#1b344d,#2e5475,#1b2d40);}
.hero-slide:nth-child(3){background-image:linear-gradient(315deg,#23405b,#355d80,#1b2d40);}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(88,205,246,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(88,205,246,.05) 1px,transparent 1px);background-size:60px 60px;}
.hero-glow{position:absolute;top:35%;left:50%;transform:translate(-50%,-50%);width:700px;height:700px;background:radial-gradient(circle,rgba(88,205,246,.13) 0%,rgba(255,216,132,.06) 28%,transparent 65%);pointer-events:none;}
.hero-content{position:relative;z-index:2;text-align:center;max-width:960px;padding:2rem;}
.hero-logo{position:absolute;top:5.5rem;left:3rem;width:120px;height:120px;border-radius:24px;padding:1rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);box-shadow:0 32px 80px rgba(0,0,0,.25);object-fit:contain;opacity:0;animation:fadeUp .6s .1s forwards;}
.hero-eyebrow{font-family:var(--font-cond);font-size:.75rem;letter-spacing:.4em;text-transform:uppercase;color:#dff3ff;margin-bottom:1rem;opacity:0;animation:fadeUp .6s .3s forwards;text-shadow:0 2px 16px rgba(0,0,0,.55);}
.hero-title{font-family:var(--font-display);font-size:clamp(4rem,10vw,8rem);line-height:.95;color:#ffffff;margin-bottom:.4rem;opacity:0;animation:fadeUp .6s .5s forwards;letter-spacing:.03em;text-shadow:0 8px 32px rgba(0,0,0,.7),0 2px 10px rgba(0,0,0,.55);}
.hero-title .blue{color:#bfe9ff;text-shadow:0 10px 34px rgba(0,0,0,.65),0 0 24px rgba(56,188,239,.4);}
.hero-sub{font-family:var(--font-cond);font-size:1rem;letter-spacing:.2em;text-transform:uppercase;color:#d6e5f1;margin-bottom:2.5rem;opacity:0;animation:fadeUp .6s .7s forwards;text-shadow:0 2px 16px rgba(0,0,0,.55);}
.hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;opacity:0;animation:fadeUp .6s .9s forwards;}
.hero-badges{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin-top:2rem;opacity:0;animation:fadeUp .6s 1.1s forwards;}
.hero-badge{font-family:var(--font-cond);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;padding:.45rem 1rem;border:1px solid rgba(88,205,246,.55);color:#ecf7ff;background:rgba(27,45,64,.56);text-shadow:0 2px 10px rgba(0,0,0,.6);box-shadow:0 8px 26px rgba(0,0,0,.28);backdrop-filter:blur(4px);}
.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:fadeUp .6s 1.3s forwards;}
.hero-scroll span{font-family:var(--font-cond);font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted);}
.scroll-dot{width:6px;height:6px;border-radius:50%;background:var(--blue);animation:scrollBounce 1.4s infinite;}

/* ── POLICY BANNER ── */
.policy-banner{background:var(--dark3);border-top:1px solid var(--blue-line);border-bottom:1px solid var(--blue-line);padding:.75rem 0;}
.policy-inner{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap;}
.policy-item{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:.5rem;}
.policy-item span{color:var(--blue);}

/* ── PARALLAX STRIP ── */
.parallax-strip{height:260px;position:relative;overflow:hidden;}
/* 🟢 PARALLAX_BG — change background-image here to real photos for the parallax divider strips */
.parallax-inner{position:absolute;inset:-80px 0;background-image:url('Images/Background/Background Home.jpg');background-attachment:fixed;background-size:cover;background-position:center;}
.parallax-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(56,188,239,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(56,188,239,.05) 1px,transparent 1px);background-size:40px 40px;}
.parallax-overlay{position:absolute;inset:0;background:rgba(27,45,64,.44);}
.parallax-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 2rem;}
.parallax-quote{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,3.2rem);letter-spacing:.06em;color:var(--white);line-height:1.1;}
.parallax-quote .blue{color:var(--blue);}
.parallax-line{width:50px;height:2px;background:var(--blue);margin:.7rem auto 0;}

/* ── TABS ── */
.tabs{display:flex;gap:0;border-bottom:1px solid var(--blue-line);margin-top:3rem;}
.tab-btn{font-family:var(--font-cond);font-size:.95rem;letter-spacing:.15em;text-transform:uppercase;padding:.9rem 2rem;background:none;border:none;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;}
.tab-btn.active{color:var(--blue);border-bottom-color:var(--blue);}
.tab-btn:hover{color:var(--light);}
.tab-content{display:none;}
.tab-content.active{display:block;}

/* ── SERVICES / PRICING ── */
#services{padding:6rem 0 2.6rem;background:var(--dark2);}
.pricing-note{font-size:.85rem;color:var(--muted);margin-top:.8rem;font-family:var(--font-cond);letter-spacing:.05em;line-height:1.6;}
.pricing-note span{color:var(--blue);}
.pricing-teaser-note{margin-bottom:2.5rem;}
.pricing-teaser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:2.2rem;}
.pricing-teaser-card{position:relative;padding:2rem 1.8rem;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.05));border:1px solid rgba(88,205,246,.16);box-shadow:0 18px 40px rgba(0,0,0,.16);overflow:hidden;}
.pricing-teaser-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(56,188,239,.7),transparent);}
.pricing-teaser-label{font-family:var(--font-cond);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blue);margin-bottom:.9rem;}
.pricing-teaser-card h3{font-family:var(--font-cond);font-size:1.35rem;letter-spacing:.08em;text-transform:uppercase;color:var(--white);margin-bottom:.6rem;}
.pricing-teaser-price{font-family:var(--font-display);font-size:2.6rem;letter-spacing:.03em;color:var(--white);line-height:1;margin-bottom:.8rem;}
.pricing-teaser-card p:last-child{font-size:.98rem;line-height:1.7;color:var(--muted);}
.pricing-teaser-highlights{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1.4rem;}
.pricing-highlight-pill{padding:.72rem 1.1rem;border-radius:999px;background:linear-gradient(135deg,rgba(88,205,246,.12),rgba(255,216,132,.08));border:1px solid rgba(88,205,246,.22);font-family:var(--font-cond);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#e6f5fd;}
.pricing-teaser-cta{margin-top:2.1rem;padding:1.4rem 1.5rem;border-radius:18px;border:1px solid rgba(88,205,246,.2);background:linear-gradient(135deg,rgba(88,205,246,.13),rgba(255,216,132,.08));display:flex;align-items:center;justify-content:space-between;gap:1.25rem;}
.pricing-teaser-kicker{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--blue);margin-bottom:.45rem;}
.pricing-teaser-copy{font-size:1rem;line-height:1.7;color:var(--muted);max-width:640px;}
.pricing-teaser-actions{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;}
.service-preview-strip{margin-top:2.2rem;margin-bottom:0;padding:1rem 0 1.6rem;}
.service-preview-head{display:flex;justify-content:space-between;align-items:flex-end;}
.service-preview-head .section-label{margin-bottom:.8rem;}
.service-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.service-preview-card{position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:10px;border:1px solid rgba(56,188,239,.14);background:var(--dark3);box-shadow:0 8px 24px rgba(0,0,0,.22);}
.service-preview-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;filter:saturate(1.04) contrast(1.03);}
.service-preview-card:hover img{transform:scale(1.06);}
.service-preview-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:.8rem;background:linear-gradient(180deg,rgba(8,12,18,.08) 20%,rgba(8,12,18,.86) 100%);}
.service-preview-name{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;color:var(--white);line-height:1.2;}
.service-preview-price{font-family:var(--font-cond);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-top:.25rem;}
.standalone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;background:rgba(56,188,239,.08);border:1px solid rgba(56,188,239,.08);margin-top:2rem;align-items:stretch;}
.svc-card{background:var(--dark2);padding:2rem;transition:background .25s;position:relative;display:flex;flex-direction:column;height:100%;}
.svc-card:hover{background:var(--dark3);}
.svc-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:0;background:var(--blue);transition:height .35s;}
.svc-card:hover::before{height:100%;}
.svc-name{font-family:var(--font-cond);font-size:1.15rem;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:.6rem;}
.svc-desc{font-size:1rem;color:var(--muted);line-height:1.58;margin-bottom:1.3rem;}
.svc-prices{display:flex;flex-direction:column;gap:.35rem;margin-top:auto;}
.svc-price-row{display:flex;justify-content:space-between;align-items:baseline;}
.svc-sqft{font-family:var(--font-cond);font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.svc-price{font-family:var(--font-display);font-size:2rem;letter-spacing:.03em;color:var(--white);}

/* Emphasize package names in the Core Packages tab for quicker scanning. */
#ptab-standalone .svc-name{
   display:block;
   width:100%;
   padding:.45rem .75rem;
   margin-bottom:.95rem;
   border-radius:10px;
   border:1px solid rgba(56,188,239,.35);
   background:linear-gradient(180deg,rgba(56,188,239,.2),rgba(56,188,239,.08));
   color:#ecf8ff;
   text-align:center;
   letter-spacing:.11em;
   text-shadow:0 1px 10px rgba(0,0,0,.35);
}
.bundle-table-wrap{overflow-x:auto;margin-top:2rem;border-radius:18px;border:1px solid rgba(56,188,239,.08);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));box-shadow:0 16px 36px rgba(0,0,0,.14);}
.bundle-table{width:100%;border-collapse:collapse;font-size:1rem;}
.bundle-table th{font-family:var(--font-cond);font-size:.95rem;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);padding:1rem 1.3rem;text-align:left;border-bottom:1px solid var(--blue-line);background:var(--dark3);white-space:nowrap;}
.bundle-table td{padding:1rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.04);color:var(--light);vertical-align:top;}
.bundle-table tr:hover td{background:var(--dark3);}
.bundle-name{font-family:var(--font-cond);font-size:1.05rem;letter-spacing:.05em;color:var(--white);font-weight:600;}
.bundle-includes{font-size:1rem;color:var(--muted);font-style:italic;}
.price-cell{font-family:var(--font-display);font-size:1.45rem;letter-spacing:.02em;white-space:nowrap;}
.bundle-badge-row{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;}
.bundle-badge{font-family:var(--font-cond);font-size:.9rem;letter-spacing:.11em;text-transform:uppercase;padding:.75rem 1.3rem;background:rgba(56,188,239,.07);border:1px solid var(--blue-line);color:var(--blue);}

/* Bundles tab polish */
#ptab-bundles{margin-top:.4rem;}
.bundle-tab-intro{margin:1.1rem 0 1.2rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid rgba(56,188,239,.12);background:linear-gradient(135deg,rgba(56,188,239,.09),rgba(255,255,255,.02));}
.bundle-tab-kicker{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blue);margin-bottom:.4rem;}
.bundle-tab-copy{font-size:1rem;line-height:1.65;color:var(--muted);}
#ptab-bundles .bundle-table-wrap{border-radius:22px;border:1px solid rgba(56,188,239,.2);background:linear-gradient(180deg,rgba(15,26,40,.95),rgba(10,18,29,.97));box-shadow:0 20px 46px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.03);}
#ptab-bundles .bundle-table th{background:linear-gradient(180deg,rgba(26,48,68,.95),rgba(20,36,52,.95));color:#d3f0ff;border-bottom:1px solid rgba(56,188,239,.28);font-size:.82rem;letter-spacing:.18em;}
#ptab-bundles .bundle-table th:nth-child(n+2):nth-child(-n+5){font-family:var(--font-body);font-size:1rem;font-weight:600;letter-spacing:.04em;color:#f2fbff;}
#ptab-bundles .bundle-table td{border-bottom:1px solid rgba(255,255,255,.055);}
#ptab-bundles .bundle-table tr:nth-child(even) td{background:rgba(255,255,255,.015);}
#ptab-bundles .bundle-table tr:hover td{background:rgba(56,188,239,.08);}
#ptab-bundles .bundle-name{font-size:1.02rem;letter-spacing:.08em;color:#f3fbff;}
#ptab-bundles .bundle-includes{font-style:normal;line-height:1.55;color:#b8d1e4;}
#ptab-bundles .price-cell{color:#f6fdff;font-size:1.5rem;text-shadow:0 4px 20px rgba(56,188,239,.28);}
#ptab-bundles .bundle-badge-row{gap:.75rem;margin-top:1.15rem;}
#ptab-bundles .bundle-badge{border-radius:999px;padding:.7rem 1.05rem;background:linear-gradient(180deg,rgba(56,188,239,.16),rgba(56,188,239,.07));border:1px solid rgba(56,188,239,.35);color:#e6f8ff;font-size:.73rem;letter-spacing:.15em;}

/* Standalone services tab */
.single-services-intro{margin:1.1rem 0 1.25rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid rgba(56,188,239,.12);background:linear-gradient(135deg,rgba(56,188,239,.08),rgba(255,255,255,.025));}
.single-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:1.15rem;align-items:stretch;}
.single-service-card{display:flex;flex-direction:column;justify-content:space-between;min-height:210px;padding:1.35rem 1.2rem;border-radius:20px;border:1px solid rgba(56,188,239,.16);background:linear-gradient(165deg,rgba(19,33,47,.98),rgba(12,21,31,.97));box-shadow:0 16px 34px rgba(0,0,0,.2);}
.single-service-name{font-family:var(--font-cond);font-size:1.38rem;letter-spacing:.08em;text-transform:uppercase;color:var(--white);line-height:1.28;text-align:center;}
.single-service-desc{margin-top:.6rem;font-size:.94rem;line-height:1.6;color:#a9bfd0;max-width:30ch;}
.single-service-price{margin-top:1.25rem;font-family:var(--font-display);font-size:2.3rem;line-height:1;color:#f4fbff;text-shadow:0 5px 20px rgba(56,188,239,.22);}

/* Contractor tab polish */
#ptab-contractor{margin-top:.4rem;}
#ptab-contractor .standalone-grid{grid-template-columns:minmax(0,780px);justify-content:center;gap:0;background:none;border:none;margin-top:1.2rem;}
#ptab-contractor .svc-card{border:1px solid rgba(56,188,239,.2);border-radius:24px;background:linear-gradient(150deg,rgba(17,33,49,.96),rgba(11,20,30,.97));box-shadow:0 24px 52px rgba(0,0,0,.22);padding:2.1rem 2rem;}
#ptab-contractor .svc-card::before{left:0;right:0;width:auto;height:2px;background:linear-gradient(90deg,transparent,rgba(95,205,245,.95),transparent);}
#ptab-contractor .svc-name{display:inline-block;padding:.45rem .8rem;border-radius:10px;background:rgba(56,188,239,.14);border:1px solid rgba(56,188,239,.35);font-size:1.02rem;letter-spacing:.12em;color:#eff9ff;margin-bottom:.95rem;}
#ptab-contractor .svc-desc{color:#c4d8e9;font-size:1.02rem;line-height:1.72;max-width:58ch;}
#ptab-contractor .svc-prices{margin-top:.8rem;padding:.9rem 1rem;border-radius:14px;border:1px solid rgba(56,188,239,.14);background:rgba(255,255,255,.025);}
#ptab-contractor .svc-sqft{font-size:.9rem;letter-spacing:.14em;color:#d6e9f7;}
#ptab-contractor .svc-price{font-size:2.25rem;color:#f3fbff;text-shadow:0 5px 22px rgba(56,188,239,.28);}
.contractor-note{margin-top:1rem;padding:.75rem .9rem;border-radius:12px;background:rgba(56,188,239,.08);border:1px solid rgba(56,188,239,.22);font-family:var(--font-cond);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#cfe6f7;}
.contractor-note span{color:#e8f8ff;font-size:.92rem;letter-spacing:.08em;}

/* Add-ons tab polish */
#ptab-addons{margin-top:.4rem;}
#ptab-addons .addons-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;background:none;border:none;margin-top:1.1rem;}
#ptab-addons .addon-card{position:relative;padding:1.55rem 1.3rem 1.2rem;border-radius:18px;border:1px solid rgba(56,188,239,.16);background:linear-gradient(165deg,rgba(16,30,44,.98),rgba(12,21,32,.97));box-shadow:0 16px 34px rgba(0,0,0,.2);transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;}
#ptab-addons .addon-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(95,205,245,.8),transparent);}
#ptab-addons .addon-card:hover{transform:translateY(-4px);border-color:rgba(95,205,245,.55);box-shadow:0 22px 40px rgba(0,0,0,.24);}
#ptab-addons .addon-name{font-size:.92rem;letter-spacing:.14em;color:#f2fbff;line-height:1.35;}
#ptab-addons .addon-price{font-size:2.2rem;color:#e3f8ff;text-shadow:0 8px 26px rgba(56,188,239,.3);margin-top:.35rem;}
#ptab-addons .addon-desc{margin-top:.55rem;font-size:.92rem;line-height:1.6;color:#c2d8e8;}
.addons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:rgba(56,188,239,.06);border:1px solid rgba(56,188,239,.06);margin-top:2rem;}
.addon-card{background:var(--dark2);padding:1.75rem;}
.addon-name{font-family:var(--font-cond);font-size:1.05rem;letter-spacing:.1em;text-transform:uppercase;color:var(--light);margin-bottom:.4rem;}
.addon-price{font-family:var(--font-display);font-size:2rem;letter-spacing:.03em;color:var(--blue);}
.addon-desc{font-size:1rem;color:var(--muted);margin-top:.35rem;}

/* ── ABOUT ── */
#about{padding:6rem 0;background:var(--dark);}
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.about-img{width:100%;aspect-ratio:3/4;background:var(--dark3);display:flex;align-items:center;justify-content:center;position:relative;border:1px solid rgba(56,188,239,.12);}
.about-img::after{content:'';position:absolute;bottom:-1rem;right:-1rem;width:65%;height:65%;border:1px solid rgba(56,188,239,.18);z-index:-1;}
.about-text p{color:var(--muted);line-height:1.8;font-size:.9rem;margin-bottom:1rem;}
.policy-highlight{background:var(--dark3);border-left:3px solid var(--blue);padding:1rem 1.5rem;margin:1.5rem 0;font-size:.85rem;color:var(--muted);line-height:1.7;}
.policy-highlight strong{color:var(--light);font-weight:500;}
.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid rgba(56,188,239,.1);}
.stat-num{font-family:var(--font-display);font-size:3rem;color:var(--blue);letter-spacing:.03em;line-height:1;}
.stat-label{font-family:var(--font-cond);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;}

/* ── BOOKING ── */
#booking{padding:6rem 0;background:var(--dark2);}
.booking-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start;}
.booking-info p{color:var(--muted);line-height:1.75;font-size:.9rem;margin-bottom:1.5rem;margin-top:1rem;}
.contact-item{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;}
.contact-icon{width:52px;height:34px;border:1px solid rgba(56,188,239,.3);display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:.58rem;letter-spacing:.08em;font-family:var(--font-cond);font-weight:700;flex-shrink:0;}
.contact-text{font-size:.88rem;color:var(--muted);}
.contact-text strong{color:var(--light);display:block;font-weight:400;}
.booking-form{background:var(--dark3);border:1px solid rgba(56,188,239,.14);padding:2.5rem;position:relative;}
.booking-form::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);}
.form-heading{font-family:var(--font-cond);font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;color:var(--blue);margin-bottom:1.5rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;}
.form-group{margin-bottom:1rem;}
.form-group label{display:block;font-family:var(--font-cond);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:#d8ebf8;margin-bottom:.45rem;}
.form-label-subtext{display:inline-block;margin-left:.45rem;font-size:.62rem;letter-spacing:.14em;color:var(--muted);vertical-align:middle;}
.form-group input,.form-group select,.form-group textarea{width:100%;background:var(--dark4);border:1px solid rgba(255,255,255,.07);color:var(--light);padding:.78rem .95rem;font-family:var(--font-body);font-size:1rem;outline:none;transition:border .2s;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);}
.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2338BCEF' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;background-color:var(--dark4);}
.form-group select option{background:var(--dark3);}
.form-group select[multiple]{min-height:10.2rem;padding:.55rem .6rem;background-image:none;overflow:auto;}
.form-group select[multiple] option{padding:.45rem .5rem;border-radius:6px;margin-bottom:.2rem;}
.form-group textarea{resize:vertical;min-height:80px;}
.submit-btn{width:100%;font-family:var(--font-cond);font-size:.8rem;letter-spacing:.25em;text-transform:uppercase;padding:1rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;transition:all .2s;font-weight:700;margin-top:.5rem;}
.submit-btn:hover{background:#5fcdf5;}
.form-success{display:none;text-align:center;padding:2.5rem 1rem;}
.form-success .check{font-size:3rem;margin-bottom:1rem;color:var(--blue);}
.form-success h3{font-family:var(--font-display);font-size:2rem;letter-spacing:.05em;margin-bottom:.5rem;}
.form-success p{color:var(--muted);font-size:.9rem;}

/* ══════════════════════════════════
   PORTFOLIO PAGE
══════════════════════════════════ */
#portfolioPage{background:var(--dark);}
.port-hero{height:50vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;}
/* 🟢 PORTFOLIO_HERO_BG — portfolio page hero background. Replace with a real photo URL */
.port-hero-bg{position:absolute;inset:0;background:linear-gradient(160deg,#0d1117,#0f2035,#0d1117);}
.port-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(56,188,239,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(56,188,239,.04) 1px,transparent 1px);background-size:50px 50px;}
.port-hero-content{position:relative;z-index:2;text-align:center;}
.subpage-main{padding-top:7rem;}
.subpage-hero{padding:2rem 0 1rem;position:relative;overflow:hidden;}
.subpage-hero .container{position:relative;z-index:2;}
.subpage-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(160deg,#0d1117 0%,#0f1e2e 40%,#0d1117 100%);opacity:.9;}
.subpage-intro{max-width:760px;margin:0 auto 3rem;text-align:center;}
.subpage-section{padding-top:3rem;}
.video-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.video-originals{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;}
.video-card-wide{flex:3 1 500px;border-radius:8px;overflow:hidden;border:1px solid rgba(56,188,239,.08);box-shadow:0 2px 8px rgba(0,0,0,.2);}
.video-card-medium{flex:2 1 340px;border-radius:8px;overflow:hidden;border:1px solid rgba(56,188,239,.08);box-shadow:0 2px 8px rgba(0,0,0,.2);}
.video-card-vertical{flex:0 1 240px;border-radius:8px;overflow:hidden;border:1px solid rgba(56,188,239,.08);box-shadow:0 2px 8px rgba(0,0,0,.2);}
.video-card-wide video,.video-card-medium video{width:100%;display:block;aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:6px;}
.video-card-vertical video{width:100%;display:block;aspect-ratio:9/16;object-fit:contain;background:#000;border-radius:6px;}

/* Portfolio sections with parallax */
.port-section{padding:6rem 0;position:relative;overflow:hidden;}
.port-section:nth-child(even){background:var(--dark2);}
.port-section:nth-child(odd){background:var(--dark);}
.port-section-header{margin-bottom:3rem;}
.port-section-header p.section-label{margin-bottom:.4rem;}

/* Masonry / grid layouts */
.port-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;}
.port-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;}
.port-masonry{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
#pgPhotos{grid-template-columns:repeat(5,1fr);}
.port-item{position:relative;overflow:hidden;cursor:pointer;background:var(--dark4);border-radius:8px;border:1px solid rgba(56,188,239,.08);box-shadow:0 2px 8px rgba(0,0,0,.15);transition:box-shadow .3s ease, transform .3s ease;}
.port-item:hover{box-shadow:0 4px 16px rgba(0,0,0,.25), 0 0 0 1px rgba(56,188,239,.2);}
.port-item.masonry-square{aspect-ratio:1;}
.port-item.masonry-wide{aspect-ratio:1;}
.port-item.masonry-tall{aspect-ratio:1;}
.port-item.masonry-hero{aspect-ratio:1;}
.port-item.masonry-small{aspect-ratio:1;}
.port-item.masonry-medium{aspect-ratio:1;}
.port-item img,.port-item video{width:100%;height:100%;object-fit:cover;border-radius:6px;transition:transform .5s cubic-bezier(0.4, 0, 0.2, 1);}
.port-item:hover img,.port-item:hover video{transform:scale(1.05);z-index:10;position:relative;}
.port-item:hover{transform:translateY(-4px);z-index:10;cursor:pointer;}
.port-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,17,23,.9) 0%,rgba(13,17,23,.6) 50%,transparent 100%);opacity:0;transition:opacity .4s cubic-bezier(0.4, 0, 0.2, 1);}
.port-item:hover .port-overlay{opacity:1;}
.port-info{position:absolute;bottom:1.5rem;left:1.5rem;right:1.5rem;opacity:0;transform:translateY(12px);transition:all .4s cubic-bezier(0.4, 0, 0.2, 1);}
.port-item:hover .port-info{opacity:1;transform:none;}
.port-info h4{font-family:var(--font-cond);font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;color:var(--white);margin-bottom:.2rem;}
.port-info span{font-size:.75rem;color:var(--blue);font-weight:500;}
.port-placeholder{width:100%;height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:var(--dark4);border:1px solid rgba(56,188,239,.08);border-radius:6px;}
.ph-icon{font-size:2rem;opacity:.18;}
.ph-label{font-family:var(--font-cond);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);opacity:.35;}

/* Floating parallax accent */
.port-float-label{position:absolute;right:3rem;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-family:var(--font-display);font-size:6rem;letter-spacing:.08em;color:rgba(56,188,239,.04);pointer-events:none;user-select:none;}

/* Video embed style */
.video-embed{width:100%;aspect-ratio:16/9;background:var(--dark4);border:1px solid rgba(56,188,239,.08);border-radius:6px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.15);}
.video-embed iframe{width:100%;height:100%;border:none;}
.video-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--muted);}
.video-play{width:60px;height:60px;border:2px solid var(--blue);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:1.4rem;opacity:.5;}
/* 🟢 MATTERPORT_EMBED — paste Matterport embed URL in the iframe src below (search MATTERPORT_URL) */

/* Floor plans single feature image */
.floorplan-single{display:flex;justify-content:center;grid-template-columns:none;}
.floorplan-feature{width:min(100%,980px);aspect-ratio:auto;border-radius:14px;}
.floorplan-feature img{object-fit:contain;background:rgba(255,255,255,.02);}

/* ══════════════════════════════════
   CLIENT DELIVERY PAGE
══════════════════════════════════ */
#clientPage{background:var(--dark);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;}
.client-box{background:var(--dark2);border:1px solid rgba(56,188,239,.15);max-width:700px;width:100%;padding:3rem;text-align:center;position:relative;}
.client-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);}
.client-logo{height:70px;margin:0 auto 1.5rem;display:block;}
.client-title{font-family:var(--font-display);font-size:2.5rem;letter-spacing:.06em;color:var(--white);margin-bottom:.3rem;}
.client-subtitle{font-family:var(--font-cond);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:2rem;}
.client-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:1.5rem 0;position:relative;}
.client-preview-img{aspect-ratio:4/3;background:var(--dark3);overflow:hidden;position:relative;}
.client-preview-img img{width:100%;height:100%;object-fit:cover;filter:blur(8px) brightness(.6);transition:filter .3s;}
.client-preview-img.unlocked img{filter:none;}
.preview-lock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--blue);opacity:.6;}
.client-preview-img.unlocked .preview-lock{display:none;}
.client-payment-section{background:var(--dark3);padding:1.5rem;margin:1.5rem 0;border:1px solid rgba(56,188,239,.1);}
.client-invoice{text-align:left;margin-bottom:1rem;}
.invoice-row{display:flex;justify-content:space-between;font-size:.85rem;padding:.3rem 0;border-bottom:1px solid rgba(255,255,255,.04);}
.invoice-row.total{font-weight:500;color:var(--white);border-bottom:none;font-size:.95rem;margin-top:.3rem;}
.pay-btn{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;padding:.85rem 2.5rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;font-weight:700;width:100%;transition:all .2s;margin-bottom:.75rem;}
.pay-btn:hover{background:#5fcdf5;}
.client-status{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;padding:.5rem 1rem;display:inline-block;margin-bottom:1rem;}
.client-status.pending{background:rgba(239,185,56,.1);color:#efb938;border:1px solid rgba(239,185,56,.25);}
.client-status.paid{background:rgba(56,239,130,.1);color:#38ef82;border:1px solid rgba(56,239,130,.25);}
.download-section{margin-top:1rem;}
.download-pw-input{width:100%;background:var(--dark4);border:1px solid rgba(255,255,255,.1);color:var(--light);padding:.7rem 1rem;font-family:var(--font-body);font-size:.9rem;outline:none;text-align:center;letter-spacing:.15em;margin-bottom:.5rem;transition:border .2s;}
.download-pw-input:focus{border-color:var(--blue);}
.download-btn{font-family:var(--font-cond);font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;padding:1rem 2.5rem;background:var(--mid);color:var(--muted);border:1px solid rgba(255,255,255,.08);cursor:pointer;font-weight:700;width:100%;transition:all .3s;}
.download-btn.unlocked{background:rgba(56,239,130,.15);color:#38ef82;border-color:rgba(56,239,130,.5);box-shadow:0 0 20px rgba(56,239,130,.2);}
.download-btn.wrong{background:rgba(239,56,56,.15);color:#ef3838;border-color:rgba(239,56,56,.4);}
.pw-hint{font-size:.75rem;color:var(--muted);margin-top:.5rem;}

/* ══════════════════════════════════
   PORTFOLIO MODAL
══════════════════════════════════ */
.portfolio-modal{display:none;position:fixed;inset:0;z-index:1000;}
.portfolio-modal.active{display:flex;align-items:center;justify-content:center;padding:2rem;animation:modalFadeIn .3s ease;min-height:100vh;min-width:100vw;}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.9);backdrop-filter:blur(8px);animation:backdropFadeIn .3s ease;}
.modal-content{position:relative;width:min(96vw,1600px);height:min(90vh,1000px);max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);display:flex;align-items:center;justify-content:center;padding:1rem;border-radius:16px;animation:modalSlideIn .4s ease;}
.modal-image{width:100%;height:100%;object-fit:contain;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);transition:transform .3s ease;}
.modal-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;background:var(--blue);color:white;border:none;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s;z-index:10;}
.modal-close:hover{background:#5fcdf5;}
.modal-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(13,17,23,.75);color:var(--white);font-size:1.5rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9;transition:all .2s;}
.modal-nav:hover{background:rgba(56,188,239,.9);color:var(--dark);border-color:rgba(56,188,239,1);}
.modal-prev{left:12px;}
.modal-next{right:12px;}

/* ══════════════════════════════════
   FOOTER
══════════════════════════════════ */
footer{background:var(--dark);border-top:1px solid rgba(56,188,239,.1);padding:2.5rem 3rem;}
.footer-inner{max-width:1260px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.footer-logo{display:flex;align-items:center;gap:.6rem;}
.footer-logo img{height:36px;}
.footer-logo-text{font-family:var(--font-display);font-size:1.1rem;letter-spacing:.08em;color:var(--white);}
.footer-logo-text span{color:var(--blue);}
.footer-links{display:flex;gap:2rem;}
.footer-links a{font-family:var(--font-cond);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s;cursor:pointer;}
.footer-links a:hover{color:var(--blue);}
.footer-copy{font-size:.72rem;color:rgba(122,155,181,.35);}

/* ══════════════════════════════════
   ADMIN MODAL
══════════════════════════════════ */
.admin-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:999;backdrop-filter:blur(6px);}
.admin-overlay.open{display:flex;align-items:center;justify-content:center;}
.admin-panel{background:var(--dark2);border:1px solid rgba(56,188,239,.2);width:92%;max-width:980px;max-height:92vh;overflow-y:auto;position:relative;}
.admin-panel::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--blue),transparent);}
.admin-header{padding:1.25rem 2rem;border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--dark2);z-index:2;}
.admin-title{font-family:var(--font-display);font-size:1.2rem;letter-spacing:.1em;color:var(--blue);}
.admin-close{background:none;border:none;color:var(--muted);font-size:1.6rem;cursor:pointer;line-height:1;transition:color .2s;}
.admin-close:hover{color:var(--blue);}
.admin-body{padding:2rem;}
.admin-tabs{display:flex;gap:0;border-bottom:1px solid rgba(56,188,239,.12);margin-bottom:2rem;flex-wrap:wrap;}
.admin-tab{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;padding:.75rem 1.3rem;background:none;border:none;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;}
.admin-tab.active{color:var(--blue);border-bottom-color:var(--blue);}
.admin-section{display:none;}
.admin-section.active{display:block;}
.admin-login{max-width:360px;margin:0 auto;text-align:center;padding:2rem 0;}
.admin-login h3{font-family:var(--font-display);font-size:2.2rem;letter-spacing:.06em;margin-bottom:.3rem;}
.admin-login p{color:var(--muted);font-size:.85rem;margin-bottom:2rem;}
.admin-form-group{margin-bottom:1rem;text-align:left;}
.admin-form-group label{display:block;font-family:var(--font-cond);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;}
.admin-form-group input{width:100%;background:var(--dark3);border:1px solid rgba(255,255,255,.08);color:var(--light);padding:.7rem 1rem;font-family:var(--font-body);font-size:.9rem;outline:none;transition:border .2s;}
.admin-form-group input:focus{border-color:var(--blue);}
.admin-btn{width:100%;font-family:var(--font-cond);font-size:.8rem;letter-spacing:.25em;text-transform:uppercase;padding:.9rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;font-weight:700;margin-top:.5rem;transition:all .2s;}
.admin-btn:hover{background:#5fcdf5;}
.admin-error{color:#f06060;font-size:.8rem;margin-top:.5rem;display:none;}
.admin-content{display:none;}
.admin-content.visible{display:block;}
.info-box{background:rgba(56,188,239,.05);border:1px solid rgba(56,188,239,.15);padding:.9rem 1.2rem;margin-bottom:1.5rem;font-size:.82rem;color:var(--muted);line-height:1.6;}
.info-box strong{color:var(--blue);font-weight:500;}
.pricing-editor{display:grid;gap:.7rem;}
.price-row{display:grid;grid-template-columns:1.2fr 90px 1.5fr;gap:.7rem;align-items:center;padding:.8rem 1rem;background:var(--dark3);border:1px solid rgba(255,255,255,.03);}
.price-row input{background:var(--dark4);border:1px solid rgba(255,255,255,.07);color:var(--light);padding:.45rem .7rem;font-family:var(--font-body);font-size:.82rem;outline:none;width:100%;transition:border .2s;}
.price-row input:focus{border-color:var(--blue);}
.save-btn{font-family:var(--font-cond);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;padding:.6rem 1.5rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;font-weight:700;margin-top:1.5rem;transition:all .2s;}
.save-btn:hover{background:#5fcdf5;}
.save-msg{color:#38ef82;font-size:.8rem;margin-left:1rem;display:none;}
.portfolio-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1.5rem;}
.pa-item{position:relative;aspect-ratio:4/3;background:var(--dark3);border:1px solid rgba(255,255,255,.05);overflow:hidden;}
.pa-item img{width:100%;height:100%;object-fit:cover;}
.pa-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--blue);font-size:2rem;cursor:pointer;opacity:.35;transition:all .2s;}
.pa-placeholder:hover{opacity:.7;background:rgba(56,188,239,.05);}
.pa-actions{position:absolute;top:.4rem;right:.4rem;display:flex;gap:.3rem;}
.pa-btn{width:26px;height:26px;border:none;cursor:pointer;font-size:.7rem;display:flex;align-items:center;justify-content:center;}
.pa-btn.del{background:rgba(240,96,96,.85);color:white;}
.pa-btn.edit{background:rgba(56,188,239,.85);color:var(--dark);}
.pa-cat{position:absolute;bottom:.4rem;left:.4rem;font-family:var(--font-cond);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .5rem;background:rgba(0,0,0,.8);color:var(--blue);}
.add-photo-btn{border:1px dashed rgba(56,188,239,.22);background:none;color:var(--blue);padding:.9rem 2rem;font-family:var(--font-cond);font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:all .2s;width:100%;}
.add-photo-btn:hover{background:rgba(56,188,239,.04);}
.admin-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;}
.admin-field label{display:block;font-family:var(--font-cond);font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem;}
.admin-field input,.admin-field textarea,.admin-field select{width:100%;background:var(--dark3);border:1px solid rgba(255,255,255,.07);color:var(--light);padding:.6rem .85rem;font-family:var(--font-body);font-size:.85rem;outline:none;transition:border .2s;}
.admin-field input:focus,.admin-field textarea:focus{border-color:var(--blue);}
.admin-field textarea{min-height:70px;resize:vertical;}

/* Client delivery creator */
.delivery-card{background:var(--dark3);border:1px solid rgba(56,188,239,.1);padding:1.5rem;margin-bottom:1rem;}
.delivery-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;}
.delivery-card h4{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--white);}
.delivery-link{font-family:var(--font-mono,monospace);font-size:.75rem;color:var(--blue);word-break:break-all;}
.delivery-pw{font-family:var(--font-mono,monospace);font-size:.85rem;color:#38ef82;letter-spacing:.15em;}
.delivery-meta{font-size:.78rem;color:var(--muted);margin-top:.4rem;}
.del-action-btn{font-family:var(--font-cond);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;padding:.4rem .9rem;border:1px solid rgba(56,188,239,.25);background:none;color:var(--blue);cursor:pointer;transition:all .2s;}
.del-action-btn:hover{background:rgba(56,188,239,.08);}
.del-action-btn.danger{border-color:rgba(240,96,96,.3);color:#f06060;}
.new-delivery-form{background:var(--dark3);border:1px solid rgba(56,188,239,.12);padding:1.5rem;margin-bottom:1.5rem;}
.new-delivery-form h4{font-family:var(--font-cond);font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);margin-bottom:1rem;}
.invoice-editor{display:grid;gap:.5rem;margin-bottom:1rem;}
.invoice-line{display:grid;grid-template-columns:1fr 100px 28px;gap:.5rem;align-items:center;}
.invoice-line input{background:var(--dark4);border:1px solid rgba(255,255,255,.07);color:var(--light);padding:.45rem .7rem;font-size:.82rem;outline:none;width:100%;}
.invoice-line input:focus{border-color:var(--blue);}
.invoice-remove{background:rgba(240,96,96,.2);border:none;color:#f06060;cursor:pointer;width:28px;height:28px;font-size:.9rem;}
.add-line-btn{font-family:var(--font-cond);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.4rem .9rem;border:1px dashed rgba(56,188,239,.2);background:none;color:var(--blue);cursor:pointer;margin-bottom:.5rem;}
.generate-btn{font-family:var(--font-cond);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;padding:.75rem 2rem;background:var(--blue);color:var(--dark);border:none;cursor:pointer;font-weight:700;transition:all .2s;width:100%;margin-top:1rem;}
.generate-btn:hover{background:#5fcdf5;}
.created-result{background:rgba(56,239,130,.07);border:1px solid rgba(56,239,130,.2);padding:1.2rem;margin-top:1rem;display:none;}
.created-result p{font-size:.82rem;color:var(--muted);margin-bottom:.3rem;}
.created-result strong{color:#38ef82;}
.copy-btn{font-family:var(--font-cond);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .9rem;border:1px solid rgba(56,188,239,.3);background:none;color:var(--blue);cursor:pointer;margin-left:.5rem;transition:all .2s;}
.copy-btn:hover{background:rgba(56,188,239,.08);}

#adminLoginBtn{position:fixed;bottom:1.5rem;right:1.5rem;z-index:90;font-family:var(--font-cond);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;padding:.45rem .9rem;background:rgba(13,17,23,.9);border:1px solid rgba(56,188,239,.18);color:var(--muted);cursor:pointer;transition:all .2s;}
#adminLoginBtn:hover{color:var(--blue);border-color:var(--blue);}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
@keyframes scrollBounce{0%,100%{transform:translateY(0);}50%{transform:translateY(6px);}}
@keyframes modalFadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes backdropFadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes modalSlideIn{from{opacity:0;transform:scale(.9) translateY(-20px);}to{opacity:1;transform:scale(1) translateY(0);}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s;}
.reveal.visible{opacity:1;transform:none;}

@media(max-width:900px){
  nav{padding:1rem 1.5rem;}
   .nav-logo-img{height:44px;width:44px;}
   .nav-logo-text{font-size:1.08rem;}
  .nav-links{display:none;}
   .mobile-home-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
  .container{padding:0 1.5rem;}
   .hero-bg{background-attachment:scroll;}
  .hero-logo{position:static;top:auto;left:auto;margin:0 auto 1.5rem;}
  .booking-wrap,.about-wrap{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
   .pricing-teaser-grid{grid-template-columns:1fr;gap:14px;}
   .pricing-teaser-cta{flex-direction:column;align-items:flex-start;}
   .subpage-main{padding-top:6.5rem;}
   .subpage-hero{padding:1.35rem 0 .65rem;}
   .subpage-intro{margin:0 auto 2.1rem;}
   .subpage-intro .pricing-note{font-size:1.02rem;line-height:1.8;}
   .standalone-grid,.addons-grid{gap:12px;background:none;border:none;margin-top:1.5rem;}
   .svc-card,.addon-card{border:1px solid rgba(56,188,239,.1);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));box-shadow:0 16px 32px rgba(0,0,0,.14);}
   .svc-card::before{width:100%;height:2px;}
   .svc-card:hover{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));}
   .svc-price-row{padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.04);}
   .svc-price-row:last-child{border-bottom:none;padding-bottom:0;}
   .bundle-table th{padding:.95rem 1rem;}
   .bundle-table td{padding:.95rem 1rem;}
   .bundle-badge-row{gap:.75rem;}
   #ptab-contractor .standalone-grid{grid-template-columns:1fr;}
   #ptab-contractor .svc-card{padding:1.7rem 1.45rem;border-radius:20px;}
   #ptab-addons .addons-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
   #ptab-addons .addon-card{padding:1.25rem 1rem 1rem;border-radius:16px;}
   .single-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
   .single-service-card{min-height:190px;padding:1.2rem 1rem;}
  .port-grid-3{grid-template-columns:repeat(2,1fr);}
   .service-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
   .video-grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .port-masonry{grid-template-columns:repeat(3,1fr);gap:10px;}
  #pgPhotos{grid-template-columns:repeat(3,1fr);}
  .port-item:hover{transform:none;}
   .portfolio-modal.active{padding:1rem;}
   .modal-content{width:min(94vw,1200px);height:min(86vh,860px);padding:.75rem;}
   .modal-close{top:10px;right:10px;width:35px;height:35px;font-size:20px;}
   .modal-nav{width:36px;height:36px;font-size:1.25rem;}
   .modal-prev{left:10px;}
   .modal-next{right:10px;}
  .port-item.masonry-wide{grid-column:span 1;}
  .port-item.masonry-hero{grid-column:span 1; grid-row:span 1;}
  .client-preview-grid{grid-template-columns:repeat(2,1fr);}
   .floorplan-feature{width:min(100%,860px);}
}
@media(max-width:600px){
   .container{padding:0 1rem;}
  .port-grid-3,.port-grid-2{grid-template-columns:1fr;}
    .pricing-teaser-note{font-size:1rem !important;line-height:1.75 !important;margin-bottom:1.4rem;}
    .pricing-teaser-grid{display:grid;grid-auto-flow:column;grid-auto-columns:82vw;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:0 .15rem .35rem .15rem;margin:1.35rem -.15rem 0;}
    .pricing-teaser-grid::-webkit-scrollbar{display:none;}
    .pricing-teaser-card{scroll-snap-align:start;min-height:220px;padding:1.4rem 1.2rem 1.25rem;border-radius:22px;background:linear-gradient(155deg,rgba(24,42,58,.96),rgba(13,17,23,.94));box-shadow:0 18px 32px rgba(0,0,0,.24);}
    .pricing-teaser-card h3{font-size:1.16rem;line-height:1.15;max-width:10ch;}
    .pricing-teaser-price{font-size:2.3rem;}
    .pricing-teaser-card p:last-child{font-size:.92rem;line-height:1.65;max-width:24ch;}
    .pricing-teaser-highlights{display:grid;grid-template-columns:1fr;gap:.6rem;margin-top:1rem;}
    .pricing-highlight-pill{width:100%;text-align:center;border-radius:18px;padding:.8rem .95rem;font-size:.72rem;letter-spacing:.16em;background:rgba(56,188,239,.08);}
    .pricing-teaser-cta{padding:1.2rem 1rem 1rem;border-radius:22px;gap:1rem;}
    .pricing-teaser-copy{font-size:.96rem;line-height:1.65;}
    .pricing-teaser-actions{width:100%;display:grid;grid-template-columns:1fr;gap:.7rem;}
    .pricing-teaser-actions .btn-primary,.pricing-teaser-actions .btn-outline{width:100%;text-align:center;padding:.95rem 1.1rem;}
    .subpage-main{padding-top:5.9rem;}
    .subpage-hero{padding:.8rem 0 .35rem;}
    .subpage-hero .section-title{font-size:clamp(2.3rem,12vw,3.45rem) !important;line-height:.95;}
    .subpage-intro{margin-bottom:1.6rem;}
    .subpage-intro .pricing-note{font-size:.95rem !important;line-height:1.8 !important;letter-spacing:.03em;}
    .tabs{gap:.6rem;border-bottom:none;overflow-x:auto;overflow-y:hidden;padding:0 .15rem .35rem;margin-top:1.3rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
   .tabs::-webkit-scrollbar{display:none;}
   .tab-btn{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;padding:.8rem 1.1rem;font-size:.78rem;letter-spacing:.12em;border:1px solid rgba(56,188,239,.16);border-radius:999px;background:rgba(255,255,255,.04);margin-bottom:0;}
   .tab-btn.active{color:var(--white);background:linear-gradient(180deg,rgba(56,188,239,.28),rgba(56,188,239,.16));border-color:rgba(95,205,245,.9);border-bottom-color:rgba(95,205,245,.9);box-shadow:0 0 0 1px rgba(56,188,239,.18),0 10px 24px rgba(56,188,239,.18);}
    .standalone-grid,.addons-grid{grid-template-columns:1fr;gap:12px;}
    .svc-card,.addon-card{padding:1.3rem 1.1rem;border-radius:20px;}
    .svc-name,.addon-name{font-size:1rem;letter-spacing:.12em;}
    .svc-desc,.addon-desc{font-size:.95rem;line-height:1.6;}
    .svc-price-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:end;}
    .svc-sqft{font-size:.86rem;line-height:1.2;}
    .svc-price,.addon-price{font-size:1.8rem;}
    .bundle-table-wrap{overflow:visible;background:none;border:none;box-shadow:none;margin-top:1.35rem;}
    .bundle-table,.bundle-table thead,.bundle-table tbody,.bundle-table tr,.bundle-table td{display:block;width:100%;}
    .bundle-table thead{display:none;}
    .bundle-table tbody{display:grid;gap:12px;}
    .bundle-table tr{padding:1.1rem 1rem;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));border:1px solid rgba(56,188,239,.1);box-shadow:0 16px 32px rgba(0,0,0,.15);}
    .bundle-table td{padding:.42rem 0;border-bottom:none;}
    .bundle-table td::before{content:attr(data-label);display:block;font-family:var(--font-cond);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);margin-bottom:.2rem;}
    .bundle-table td:first-child::before{margin-bottom:.35rem;}
    .bundle-name{font-size:1rem;letter-spacing:.08em;}
    .price-cell{font-size:1.8rem;line-height:1;}
    .bundle-includes{display:block;font-size:.95rem;line-height:1.6;margin-top:.15rem;}
    .bundle-badge-row{display:grid;grid-template-columns:1fr;gap:.7rem;margin-top:1.1rem;}
    .bundle-badge{font-size:.76rem;letter-spacing:.13em;border-radius:16px;text-align:center;padding:.85rem .9rem;}
   .bundle-tab-intro{margin:.75rem 0 1rem;padding:.9rem .85rem;border-radius:16px;}
   .bundle-tab-kicker{font-size:.66rem;}
   .bundle-tab-copy{font-size:.92rem;line-height:1.6;}
   #ptab-bundles .bundle-table tr{border-radius:18px;}
   #ptab-bundles .bundle-table td{padding:.38rem 0;}
   #ptab-bundles .bundle-table td::before{font-family:var(--font-body);font-size:.74rem;letter-spacing:.08em;color:#d7f2ff;}
   #ptab-bundles .price-cell{font-size:1.6rem;}
   #ptab-bundles .bundle-badge{font-size:.72rem;}
   #ptab-contractor .svc-card{padding:1.35rem 1.1rem;border-radius:18px;}
   #ptab-contractor .svc-name{display:block;text-align:center;}
   #ptab-contractor .svc-price{font-size:2rem;}
   .contractor-note{font-size:.72rem;letter-spacing:.1em;padding:.68rem .75rem;}
   .contractor-note span{font-size:.85rem;}
   #ptab-addons .addons-grid{grid-template-columns:1fr;}
   #ptab-addons .addon-card{padding:1.28rem 1.08rem 1rem;border-radius:18px;}
   #ptab-addons .addon-card:hover{transform:none;}
   #ptab-addons .addon-name{font-size:.9rem;}
   #ptab-addons .addon-price{font-size:2rem;}
   #ptab-addons .addon-desc{font-size:.9rem;}
   .single-services-intro{margin:.75rem 0 1rem;padding:.9rem .85rem;border-radius:16px;}
   .single-services-grid{grid-template-columns:1fr;gap:12px;}
   .single-service-card{min-height:auto;padding:1.2rem 1rem;border-radius:18px;}
   .single-service-name{font-size:1.28rem;}
   .single-service-desc{font-size:.9rem;max-width:none;}
   .single-service-price{font-size:2rem;}
   .service-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
   .video-grid-3{grid-template-columns:1fr;}
   .video-originals{flex-direction:column;}
   .video-card-wide,.video-card-medium,.video-card-vertical{flex:1 1 auto;width:100%;}
   .video-card-vertical video{aspect-ratio:16/9;}
  .port-masonry{grid-template-columns:repeat(2,1fr);gap:8px;}
  #pgPhotos{grid-template-columns:repeat(2,1fr);}
   .portfolio-modal.active{padding:.5rem;}
   .modal-content{width:min(96vw,900px);height:min(88vh,760px);padding:.5rem;}
   .modal-close{top:8px;right:8px;width:30px;height:30px;font-size:18px;}
   .modal-nav{width:30px;height:30px;font-size:1rem;}
   .modal-prev{left:8px;}
   .modal-next{right:8px;}
  .stats-row{grid-template-columns:1fr 1fr;}
  .admin-field-row{grid-template-columns:1fr;}
  .portfolio-admin-grid{grid-template-columns:repeat(2,1fr);}
  .price-row{grid-template-columns:1fr 80px;}
   .parallax-text{padding:0 1rem;}
   .service-preview-strip{padding:.8rem 0 1.2rem;}
   .floorplan-feature{width:100%;border-radius:12px;}
}

/* ── SOCIAL SIDEBAR ── */
.social-sidebar{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:150;display:flex;flex-direction:column;align-items:center;}
.social-sidebar a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:rgba(13,17,23,.9);border:1px solid rgba(56,188,239,.14);border-left:none;color:var(--muted);transition:background .2s,color .2s,border-color .2s;text-decoration:none;}
.social-sidebar a:first-child{border-radius:0 8px 0 0;}
.social-sidebar a:last-child{border-radius:0 0 8px 0;}
.social-sidebar a:hover{background:var(--blue);color:#0d1117;border-color:var(--blue);}
.social-sidebar::after{content:'';display:block;width:1px;height:50px;background:linear-gradient(to bottom,rgba(56,188,239,.25),transparent);}
@media(max-width:768px){.social-sidebar{display:none;}}

/* ── LEFT PROMO BUBBLE ── */
.promo-bubble-left{
   position:fixed;
   left:0;
   top:30%;
   z-index:160;
   min-width:280px;
   max-width:340px;
   padding:1rem 1rem 1rem .95rem;
   border-radius:18px;
   border:1px solid rgba(255,255,255,.24);
   background:linear-gradient(140deg,rgba(20,25,31,.84),rgba(12,16,22,.78));
   color:#ffffff;
   font-family:var(--font-cond);
   text-align:center;
   text-decoration:none;
   box-shadow:0 18px 36px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.14), inset 0 0 0 1px rgba(88,205,246,.22);
   backdrop-filter:blur(4px);
   transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.promo-bubble-left::after{
   content:'';
   position:absolute;
   inset:0;
   border-radius:inherit;
   background:linear-gradient(180deg,rgba(255,255,255,.09),transparent 45%);
   pointer-events:none;
}

.promo-bubble-left:hover{
   transform:translateX(6px);
   box-shadow:0 20px 38px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.32);
   filter:saturate(1.05);
}

.promo-bubble-kicker,
.promo-bubble-main,
.promo-bubble-cta{
   display:block;
   position:relative;
   z-index:1;
}

.promo-bubble-kicker{
   font-size:.97rem;
   letter-spacing:.2em;
   text-transform:uppercase;
   font-weight:800;
   color:#ffffff;
   -webkit-text-stroke:.6px rgba(0,0,0,.82);
   text-shadow:0 1px 0 rgba(0,0,0,.85), 0 0 8px rgba(0,0,0,.28);
   margin-bottom:.35rem;
}

.promo-bubble-main{
   font-size:1.84rem;
   letter-spacing:.055em;
   text-transform:uppercase;
   line-height:1.2;
   font-weight:900;
   color:#ffffff;
   -webkit-text-stroke:.8px rgba(0,0,0,.88);
   text-shadow:0 1px 0 rgba(0,0,0,.9), 0 2px 8px rgba(0,0,0,.34);
}

.promo-bubble-cta{
   margin-top:.55rem;
   font-size:.43rem;
   letter-spacing:.2em;
   text-transform:uppercase;
   font-weight:800;
   color:#ffffff;
   -webkit-text-stroke:.6px rgba(0,0,0,.82);
   text-shadow:0 1px 0 rgba(0,0,0,.85), 0 0 6px rgba(0,0,0,.26);
}

@media(max-width:900px){
   .promo-bubble-left{
      top:auto;
      bottom:1rem;
      left:.8rem;
      right:.8rem;
      min-width:0;
      max-width:none;
      border-radius:14px;
      text-align:center;
      padding:.82rem .95rem;
   }

   .promo-bubble-left:hover{
      transform:none;
   }

   .promo-bubble-kicker{
      font-size:.88rem;
   }

   .promo-bubble-main{
      font-size:1.58rem;
   }

   .promo-bubble-cta{
      font-size:.39rem;
   }
}
