@import url("https://fonts.googleapis.com/css2?family=Mogra&display=swap");

:root{
    --white:#fff;
    --blue-400:#39b8ff;
    --header-shadow:0 5px 14px rgba(0,0,0,.16);
  }

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
margin:0;
overflow-x:hidden;
color:var(--white);
font-family:"Manrope", Arial, Helvetica, sans-serif;

}

a{
color:inherit;
text-decoration:none;
-webkit-tap-highlight-color:transparent;
}

button,input,textarea,select{font:inherit;}

h1,h2,h3,.card-title,.blog-mark,.budget-value{
font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif;
}

body,p,a,button,input,textarea,select,.eyebrow,.metric,.category-line,.blog-copy,.blog-social-label{
font-family:"Manrope",Arial,Helvetica,sans-serif;
}

button{-webkit-tap-highlight-color:transparent;cursor:pointer;}

.menu-btn{transition:transform .18s ease,background .18s ease;}
.menu-btn:hover{transform:scale(1.06);background:rgba(255,255,255,.10);border-radius:10px;}

.site-header{
position:fixed;
z-index:1000;
top:0;
right:0;
left:0;
width:100%;
background:
linear-gradient(108deg,
rgba(180, 209, 240, 0.426) 5%,
rgba(79,145,222,.46) 10%,
rgba(38,84,157,.72) 30%,
rgba(38,84,157,.72) 34%,
rgba(13,37,82,.90) 55%,
rgba(24, 66, 143, 0.408) 79%,
rgba(10, 47, 110, 0.247) 100%),
rgba(4, 20, 45, 0.784);

box-shadow:var(--header-shadow);
}

.nav{
position:relative;
z-index:1;
display:flex;
align-items:center;
justify-content:space-between;
gap:42px;
width:min(1320px,calc(100% - 56px));
margin:0 auto;
padding:14px 0;
}

.brand{
display:flex;
flex:0 1 auto;
align-items:center;
gap:14px;
min-width:0;
}

.brand-logo{
display:block;
flex:0 0 64px;
width:64px;
height:64px;
object-fit:contain;
object-position:center;
filter:drop-shadow(0 4px 8px rgba(0,0,0,.10));
}

.brand-title{
display:grid;
flex:0 1 auto;
grid-template-columns:max-content;
align-items:center;
justify-items:stretch;
width:max-content;
color:var(--white);
line-height:1;
text-transform:uppercase;
text-shadow:0 1px 3px rgba(0,0,0,.30);
opacity:1;
}

.brand-title-top{
display:block;
width:max-content;
font-family:"Cormorant Garamond", Georgia, "Times New Roman", serif;
font-size:34px;
font-weight:700;
letter-spacing:.045em;
white-space:nowrap;
}

.brand-title-bottom{
display:flex;
font-family:"Manrope", Arial, Helvetica, sans-serif;
align-items:center;
gap:9px;
width:100%;
min-width:0;
margin-top:8px;
font-size:11px;
font-weight:800;
letter-spacing:.32em;
white-space:nowrap;
}

.brand-title-bottom::before,
.brand-title-bottom::after{
content:"";
flex:1 1 auto;
height:2px;
background:var(--white);
opacity:1;
}

.nav-links{
flex:0 1 auto;
color:var(--white);
font-size:16px;
font-weight:700;
letter-spacing:.01em;
white-space:nowrap;
}

.nav-links a{
position:relative;
cursor:pointer;
padding:8px 0 10px;
color:var(--white);
opacity:1;
text-shadow:0 1px 3px rgba(0,0,0,.30);
}

.nav-links a::after{
content:"";
position:absolute;
right:0;
bottom:0;
left:0;
height:2px;
background:linear-gradient(90deg,var(--white),var(--blue-400));
transform:scaleX(0);
transform-origin:center;
transition:transform .25s ease;
}

.nav-links a:hover::after,
.nav-links a.active::after{transform:scaleX(1);}
.menu-btn{
flex:0 0 44px;
width:44px;
height:44px;
padding:0;
color:var(--white);
font-size:30px;
background:none;
border:0;
text-shadow:0 1px 3px rgba(0,0,0,.30);
}

.hero-card{
position:absolute;
border:1.5px solid rgba(202,232,255,.88);
border-radius:26px;
transform:translate3d(var(--entry-x,0px),calc(var(--cards-scroll-shift,0px) + var(--entry-y,0px)),0);
will-change:transform,opacity,filter;
}

.site-cta{
position:absolute;
z-index:4;
transform:translate3d(var(--entry-x,0px),calc(var(--cards-scroll-shift,0px) + var(--entry-y,0px)),0);
will-change:transform,opacity,filter;
}

.site-cta-copy h2{font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif;}
.site-cta-copy .show-line{white-space:nowrap;}
.site-cta-actions{flex-wrap:wrap;}
.site-cta-choice{
transition:transform .34s cubic-bezier(.22,.8,.28,1),box-shadow .34s ease,background .34s ease,border-color .34s ease;
}
.site-cta-choice::before{
position:absolute;
pointer-events:none;
}
.site-cta-choice:hover{
transform:translateY(-3px);
background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(229,244,255,.90));
border-color:rgba(57,143,219,.88);
box-shadow:
inset 0 1px 0 #fff,
inset 0 0 0 1px rgba(255,255,255,.40),
0 0 0 1px rgba(38,111,183,.12),
0 15px 30px rgba(18,61,132,.19);
}
.site-cta-btn{white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;}
.site-cta-btn:hover{transform:translateY(-1px);}

.site-cta-note::before{content:"";width:16px;height:2px;border-radius:99px;background:#39b8ff;}
.site-cta-choice:nth-child(2) .site-cta-note::before{background:#245b9f;}

.site-cta-btn.primary:hover{background:linear-gradient(135deg,#2774d3,#174b9a);box-shadow:inset 0 1px 0 rgba(255,255,255,.26),0 10px 20px rgba(18,61,132,.30);}

.site-cta-btn.secondary:hover{background:#fff;box-shadow:inset 0 0 0 1px rgba(52,127,199,.72),inset 0 1px 0 #fff,0 9px 18px rgba(18,61,132,.14);}

.nav-links a,.site-cta-btn,.blog-btn{font-weight:800;}
.eyebrow,.blog-social-label{letter-spacing:.12em;}
.info-card p,.blog-copy p,.budget-sub{font-weight:500;}
.metric strong,.budget-value{letter-spacing:-.03em;}
.card-title,.info-card h3,.blog-copy h3{letter-spacing:-.02em;}

.phone-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));

height:100%;
}

.phone{
position:relative;
height:100%;
min-height:0;

overflow:hidden;
opacity:0;
translate:0 34px;
transition:opacity .48s ease,translate .62s cubic-bezier(.16,1,.3,1);
background:linear-gradient(150deg,rgba(255,255,255,.23),rgba(255,255,255,.07));
border:1px solid rgba(255,255,255,.90);
border-radius:25px;
box-shadow:0 0 0 5px rgba(255,255,255,.08),0 20px 38px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.22),inset 0 14px 26px rgba(255,255,255,.10);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);
transform-origin:center;
animation:phoneSpotlight 9s ease-in-out infinite;
}

.phone:nth-child(1){animation-delay:0s;transition-delay:.04s;}
.phone:nth-child(2){animation-delay:3s;transition-delay:.14s;}
.phone:nth-child(3){animation-delay:6s;transition-delay:.24s;}
.phone:nth-child(2){padding-bottom:5px;}

.cards-loaded .phone{
opacity:1;
translate:0 0;
}

.phone::before{
content:"";
position:absolute;
top:8px;
left:50%;
width:54px;
height:4px;
transform:translateX(-50%);
border-radius:999px;
background:#ffffff;
box-shadow:
inset 0 2px 3px rgba(8,18,42,.42),
inset 0 -1px 1px rgba(255,255,255,.92),
0 1px 0 rgba(255,255,255,.08),
0 2px 5px rgba(0,0,0,.16);
}

.phone-screen{
display:flex;
flex-direction:column;

height:100%;
padding-top:4px;
color:#0d2347;
}

.solid-card{
background:rgba(255,255,255,.96);
border:1px solid rgba(255,255,255,.9);
border-radius:16px;
box-shadow:0 8px 18px rgba(3,18,47,.18);
transform-origin:center;
}

.mini-header{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 14px;
background:#ffffff;

}

.eyebrow{margin:0 0 4px;font-size:11px;font-weight:700;color:#5b5870;}
.card-title{margin:0;font-size:18px;line-height:1.08;color:#18233f;}
.icon-bubble{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#22c55e;color:#fff;font-size:13px;font-weight:700;flex:0 0 auto;box-shadow:0 7px 14px rgba(34,197,94,.28);}

.phone:first-child{
position:relative;
z-index:20;
}

.photo-frame{
padding:10px 10px 2px;
overflow:visible;
position:relative;
z-index:10000;
isolation:isolate;
background:#ffffff;
}

.photo-card{
display:block;
position:relative;
z-index:10001;
width:calc(100% + 20px);
height:136px;
margin:-16px -10px -2px;
object-fit:contain;
object-position:center;
background:none;
overflow:visible;
filter:none;
transform:rotate(-18deg) scale(1);
transform-origin:center center;
will-change:transform;
pointer-events:none;
}

.bowl-shadow{
position:absolute;
z-index:10000;
left:50%;

transform:translateX(-50%);

pointer-events:none;
}

.bowl-hit-area{
position:absolute;
z-index:10002;
top:50%;
left:50%;
width:116px;
height:116px;
transform:translate(-50%,-50%);
border-radius:50%;
cursor:grab;
}

.bowl-hit-area:active{cursor:grabbing;}

.info-card{position:relative;z-index:1;padding:12px 14px;background:#ffffff;}
.info-card h3{margin:0 0 5px;font-size:14px;color:#14323b;}
.info-card p{margin:0;color:#46606e;font-size:11px;line-height:1.35;}

.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
.metric{padding:9px 4px;text-align:center;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 8px 16px rgba(3,18,47,.14);}
.metric:nth-child(1){background:#f97316;}
.metric:nth-child(2){background:#3b82f6;}
.metric:nth-child(3){background:#22c55e;}
.metric strong{display:block;font-size:15px;color:#ffffff;}
.metric span{font-size:10px;color:rgba(255,255,255,.9);}

.blog-shell{display:flex;flex-direction:column;height:100%;gap:8px;color:#0f172a;}
.blog-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 8px 18px rgba(15,23,42,.08);}
.blog-mark{font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.blog-actions{display:flex;gap:6px;}
.blog-btn{padding:6px 9px;border:0;border-radius:999px;font-size:9px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;}
.blog-btn:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 7px 14px rgba(15,23,42,.14);}
.blog-btn.login{background:#fff;color:#334155;border:1px solid #e2e8f0;}
.blog-btn.signup{background:#fff;color:#334155;border:1px solid #e2e8f0;box-shadow:0 6px 12px rgba(15,23,42,.08);}
.blog-viewport{position:relative;flex:1;min-height:0;overflow:clip;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;padding:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(15,23,42,.08);touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none;isolation:isolate;}
.blog-viewport.is-dragging{cursor:grabbing;}
.blog-viewport.is-dragging .blog-track{transition:none;}
.blog-track{display:flex;height:100%;gap:0;transition:transform .72s cubic-bezier(.22,.75,.2,1);will-change:transform;}
.blog-post{position:relative;isolation:isolate;height:100%;padding:7px;display:flex;flex-direction:column;gap:8px;overflow:hidden;}
.blog-image{position:relative;z-index:1;display:block;flex:0 0 140px;width:100%;height:140px;object-fit:cover;border-radius:15px;background:#e5e7eb;border:1px solid rgba(255,255,255,.9);box-shadow:0 9px 20px rgba(15,23,42,.14);overflow:hidden;opacity:0;transition:opacity .3s ease;}
.blog-post::before{content:"";position:absolute;z-index:0;pointer-events:none;top:7px;right:7px;left:7px;height:140px;border-radius:15px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:blogSkeleton 1.25s ease-in-out infinite;box-shadow:0 9px 20px rgba(15,23,42,.10);}
.blog-post.image-loaded::before{display:none;}
.blog-post.image-loaded .blog-image{opacity:1;}
.blog-post.image-error::before,
.blog-post.image-pending::before{display:block;}
.blog-post.image-error .blog-image,
.blog-post.image-pending .blog-image{opacity:0;}
.blog-post.image-error .blog-copy,
.blog-post.image-pending .blog-copy{display:flex;opacity:1;visibility:visible;}
@keyframes blogSkeleton{0%{background-position:100% 0}100%{background-position:0 0}}
.blog-copy{position:relative;z-index:2;display:flex;flex:0 0 auto;min-height:54px;opacity:1;visibility:visible;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 8px 16px rgba(15,23,42,.08);overflow:hidden;}
.blog-copy h3{margin:0;font-size:13px;line-height:1.1;}
.blog-copy p{margin:3px 0 0;font-size:9px;color:#64748b;}
.blog-copy::before{content:"";position:absolute;top:11px;left:11px;width:58%;height:10px;border-radius:999px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:blogSkeleton 1.25s ease-in-out infinite;opacity:0;pointer-events:none;}
.blog-copy::after{content:"";position:absolute;left:11px;bottom:11px;width:38%;height:7px;border-radius:999px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:blogSkeleton 1.25s ease-in-out infinite;opacity:0;pointer-events:none;}
.blog-post:not(.image-loaded) .blog-copy::before,
.blog-post.image-pending .blog-copy::before,
.blog-post.image-error .blog-copy::before,
.blog-post:not(.image-loaded) .blog-copy::after,
.blog-post.image-pending .blog-copy::after,
.blog-post.image-error .blog-copy::after{opacity:1;}
.blog-post:not(.image-loaded) .blog-copy>*,
.blog-post.image-pending .blog-copy>*,
.blog-post.image-error .blog-copy>*{opacity:0;visibility:hidden;}
.like-btn{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #e2e8f0;border-radius:50%;background:#fff7ed;color:#ea580c;cursor:pointer;box-shadow:0 5px 10px rgba(15,23,42,.08);transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;}
.like-btn svg{display:block;width:17px;height:17px;overflow:visible;}
.like-btn .heart-shape{fill:transparent;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transform-origin:center;transition:fill .2s ease,stroke .2s ease,transform .24s cubic-bezier(.22,1,.36,1);}
.like-btn:hover{transform:scale(1.08);}
.like-btn:hover .heart-shape{transform:scale(1.06);}
.like-btn.liked{background:#ffedd5;color:#c2410c;transform:scale(1.08);box-shadow:0 7px 14px rgba(249,115,22,.18);}
.like-btn.liked .heart-shape{fill:currentColor;stroke:currentColor;transform:scale(1.08);}
.blog-dots{display:flex;justify-content:center;gap:5px;}
.blog-dot{width:5px;height:5px;border-radius:50%;background:#cbd5e1;transition:width .25s ease,background .25s ease;}
.blog-dot.active{width:15px;border-radius:999px;background:#334155;}
.blog-socials{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 18px rgba(15,23,42,.08);}
.blog-social-label{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;}
.blog-social-icons{display:flex;align-items:center;gap:8px;}
.blog-socials a{display:grid;cursor:pointer;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff;box-shadow:0 6px 12px rgba(15,23,42,.16);transition:transform .2s ease,box-shadow .2s ease;}
.blog-socials a:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 9px 16px rgba(15,23,42,.2);}
.blog-socials a:nth-child(1){background:#1877f2;}
.blog-socials a:nth-child(2){background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);}
.blog-socials a:nth-child(3){background:#111;}
.blog-socials svg{width:14px;height:14px;fill:currentColor;}

.budget-card{padding:14px;background:#ffffff;}
.budget-top{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.budget-value{font-size:25px;font-weight:700;color:#1e1b4b;}
.budget-sub{font-size:10px;color:#667085;}
.ring{
--progress:0;
--ring-color:#ef4444;
--ring-angle:0deg;
display:grid;
place-items:center;
width:68px;
height:68px;
border-radius:50%;
position:relative;
font-size:15px;
font-weight:700;
flex:0 0 auto;
}
.ring::after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(var(--ring-color) calc(var(--progress) * 1%),#e8edf6 0);transform:rotate(var(--ring-angle));transform-origin:center;transition:transform .2s linear;}
.ring::before{content:"";position:absolute;z-index:1;inset:7px;border-radius:50%;background:#fff;}
.ring span{position:relative;z-index:2;color:#0f172a;display:inline-block;}
.category-list{display:flex;flex-direction:column;gap:6px;}
.category{padding:10px 12px;background:#ffffff;transition:transform .28s ease,box-shadow .28s ease;}
.category.is-changing{box-shadow:0 11px 22px rgba(15,23,42,.16);}
.category-line{display:flex;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;color:#1f2937;}
.bar{height:6px;margin-top:7px;border-radius:99px;background:rgba(255,255,255,.55);overflow:hidden;}
.bar i{display:block;height:100%;width:10%;min-width:10%;max-width:100%;border-radius:inherit;background:#ef4444;box-shadow:0 2px 8px rgba(0,0,0,.15);will-change:width;}

.number-pop{display:inline-block;min-width:1.6ch;}
.budget-value .number-pop{min-width:3.8ch;}

@keyframes phoneSpotlight{
  0%, 73%, 100%{
    transform:scale(1);
    box-shadow:0 18px 32px rgba(0,0,0,.25),inset 0 0 0 1px rgba(255,255,255,.18),inset 0 12px 22px rgba(255,255,255,.09);
  }
  80%{
    transform:scale(1.018);
    box-shadow:0 23px 40px rgba(0,0,0,.34),0 0 10px rgba(120,180,235,.16),inset 0 0 0 1px rgba(255,255,255,.24),inset 0 12px 22px rgba(255,255,255,.11);
  }
  86%{
    transform:scale(1.007);
    box-shadow:0 20px 35px rgba(0,0,0,.29),0 0 5px rgba(120,180,235,.08),inset 0 0 0 1px rgba(255,255,255,.2),inset 0 12px 22px rgba(255,255,255,.1);
  }
}

.phone-screen :is(
  .mini-header,
  .photo-frame,
  .info-card,
  .metric,
  .blog-top,
  .blog-viewport,
  .blog-copy,
  .blog-dots,
  .blog-socials,
  .budget-card,
  .category
){
  position:relative;
  transform-origin:center;
  will-change:transform,box-shadow,filter;
  transition:
    transform .42s cubic-bezier(.16,1,.3,1),
    box-shadow .42s cubic-bezier(.16,1,.3,1),
    filter .32s ease;
}

@media (hover:hover) and (pointer:fine){
  .phone-screen :is(
    .mini-header,
    .photo-frame,
    .info-card,
    .metric,
    .blog-top,
    .blog-viewport,
    .blog-copy,
    .blog-dots,
    .blog-socials,
    .budget-card,
    .category
  ).is-hovered{
    z-index:12;
    animation-play-state:paused;
    transform:translate3d(0,-4px,0) scale(1.012) !important;
    filter:brightness(1.018);
    box-shadow:0 13px 25px rgba(3,18,47,.20);
  }

}

.site-header,
.site-cta,
.hero-card,
.brand,
.nav-links a,
.menu-btn,
.site-cta-copy,
.site-cta-choice{
  transition:
    opacity .72s cubic-bezier(.16,1,.3,1),
    transform .82s cubic-bezier(.16,1,.3,1),
    filter .72s ease;
}

body:not(.page-loaded) .site-header{
  opacity:0;
  transform:translateY(-28px);
  filter:blur(7px);
}

body:not(.page-loaded) .brand,
body:not(.page-loaded) .menu-btn{
  opacity:0;
  transform:translateX(-22px);
}

body:not(.page-loaded) .nav-links a{
  opacity:0;
  transform:translateY(-14px);
}

body:not(.page-loaded) .site-cta{
  --entry-x:-110px;
  --entry-y:0px;
  opacity:0;
  filter:blur(8px);
}

body.page-loaded .site-cta{
  --entry-x:0px;
  --entry-y:0px;
}

body:not(.page-loaded) .site-cta-copy{
  opacity:0;
  transform:translateX(-30px);
}

body:not(.page-loaded) .site-cta-choice{
  opacity:0;
  transform:translateY(24px) scale(.96);
}

body:not(.page-loaded) .hero-card{
  --entry-x:0px;
  --entry-y:72px;
  opacity:0;
  filter:blur(8px);
}

body.page-loaded .hero-card{
  --entry-x:0px;
  --entry-y:0px;
}

body.page-loaded .brand{transition-delay:.10s;}
body.page-loaded .nav-links a:nth-child(1){transition-delay:.12s;}
body.page-loaded .nav-links a:nth-child(2){transition-delay:.17s;}
body.page-loaded .nav-links a:nth-child(3){transition-delay:.22s;}
body.page-loaded .nav-links a:nth-child(4){transition-delay:.27s;}
body.page-loaded .nav-links a:nth-child(5){transition-delay:.32s;}
body.page-loaded .nav-links a:nth-child(6){transition-delay:.37s;}
body.page-loaded .site-cta{transition-delay:.16s;}
body.page-loaded .site-cta-copy{transition-delay:.36s;}
body.page-loaded .site-cta-choice:nth-child(1){transition-delay:.48s;}
body.page-loaded .site-cta-choice:nth-child(2){transition-delay:.60s;}
body.page-loaded .hero-card{transition-delay:.34s;}

body.entrance-complete .site-cta,
body.entrance-complete .hero-card{
  transition-property:opacity,filter;
  transition-delay:0s;
}

.reveal-on-scroll{
  opacity:0;
  transform:translateY(42px);
  filter:blur(6px);
  transition:
    opacity .78s cubic-bezier(.16,1,.3,1),
    transform .88s cubic-bezier(.16,1,.3,1),
    filter .72s ease;
}

.reveal-on-scroll.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}

@media (prefers-reduced-motion:reduce){
  .phone,
  .solid-card,
  .budget-card{animation:none;}
  .phone{opacity:1;translate:0 0;transition:none;}
  .ring{transition:none;}
  .site-header,.site-cta,.hero-card,.brand,.nav-links a,.menu-btn,.site-cta-copy,.site-cta-choice,.reveal-on-scroll{transition:none!important;animation:none!important;opacity:1!important;filter:none!important;transform:none!important;}
}

@media (max-width:900px){
.hero{min-height:1950px;}
.site-cta{top:130px;left:14px;width:calc(100% - 28px);align-items:flex-start;flex-direction:column;}.site-cta-actions{width:100%;justify-content:flex-start;}.hero-card{top:285px;width:min(560px,calc(100% - 28px));height:auto;min-height:520px;padding:20px;}.phone-grid{grid-template-columns:1fr;height:auto;}
.phone{min-height:380px;}
}

@media (max-width:620px){
.nav{width:calc(100% - 28px);}
.brand-title-top{font-size:22px;}.brand-title-bottom{font-size:10px;}.brand-logo{width:52px;height:52px;flex-basis:52px;}
.nav-links{display:none;}.menu-btn{display:block;}
.site-cta{top:115px;padding:16px;}.site-cta-copy h2{font-size:22px;}.hero-card{top:300px;border-radius:24px;height:auto;min-height:520px;}.site-cta-btn{flex:1 1 140px;}
}

@media (min-width: 901px){
  .hero-card{
    top:125px;
    left:max(32px,calc((100vw - 1320px) / 2));
    width:min(820px,calc(100% - 500px));
    height:475px;
  }

  .site-cta{
    top:235px;
    right:max(32px,calc((100vw - 1320px) / 2));
    left:auto;
    width:min(410px,calc(100% - 910px));
    min-width:350px;
    padding:28px;
    align-items:stretch;
    justify-content:flex-start;
    flex-direction:column;
    gap:26px;
  }

  .site-cta-copy{flex:none;}
  .site-cta-copy h2{font-size:38px;}
  .site-cta-actions{
    width:100%;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
  }
  .site-cta-choice{
    width:100%;
    min-width:0;
    flex-direction:column;
  }
  .site-cta-btn{width:100%;}
}

@media (max-width: 1100px) and (min-width: 901px){
  .hero-card{width:62%;}
  .site-cta{width:32%;min-width:300px;padding:22px;}
  .site-cta-copy h2{font-size:30px;}
}

@media (max-width:900px){
  .site-cta-choice{flex-direction:column;}
}

.menu-btn{display:none !important;}
.nav-links{
  display:flex !important;
  position:static !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:38px !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.site-cta-copy{
  flex:none !important;
  min-width:0 !important;
  
}
.site-cta-copy h2{
  margin:0 !important;
  color:#1a2f65 !important;
  
  font-weight:800 !important;
  line-height:.95 !important;
  letter-spacing:-.06em !important;
}
.site-cta-copy h2 + h2{margin-top:8px !important;}
.site-cta-copy .show-line{
  display:inline-block !important;
  margin-left:0 !important;
  color:#4a76cb !important;
  font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif !important;
  
  font-weight:600 !important;
  letter-spacing:.01em !important;
  
}
.site-cta-actions{
  justify-content:flex-start !important;
}
.site-cta-choice{
  position:relative !important;
  align-items:stretch !important;
  background:linear-gradient(180deg,rgba(240,244,250,.95),rgba(223,233,246,.88)) !important;
  border:2px solid rgba(162,193,230,.96) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 0 0 1px rgba(255,255,255,.44),
    0 12px 24px rgba(41,82,152,.12) !important;
}
.site-cta-choice::before{
  border:1px solid rgba(255,255,255,.68) !important;
}
.site-cta-note{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  margin:0 !important;
  color:#4b6693 !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  text-align:center !important;
}
.site-cta-note::before,
.site-cta-note::after{
  content:"" !important;
  border-radius:999px !important;
  background:#63aef1 !important;
}
.site-cta-choice:nth-child(2) .site-cta-note::before,
.site-cta-choice:nth-child(2) .site-cta-note::after{background:#365da6 !important;}
.site-cta-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  border:0 !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
}
.site-cta-btn.primary{
  background:linear-gradient(135deg,#3d66be,#284f9f) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 10px 22px rgba(40,79,159,.22) !important;
}
.site-cta-btn.secondary{
  background:rgba(255,255,255,.84) !important;
  color:#294896 !important;
  box-shadow:inset 0 0 0 2px rgba(170,197,230,.96),0 10px 22px rgba(40,79,159,.08) !important;
}

.hero-card{
  top:300px !important;
  left:max(32px,calc((100vw - 1320px) / 2)) !important;
  right:auto !important;
  width:min(820px,calc(100% - 500px)) !important;
  
  min-height:0 !important;
  
}
.site-cta{
  top:160px !important;
  right:max(32px,calc((100vw - 1320px) / 2)) !important;
  left:auto !important;
  width:min(410px,calc(100% - 910px)) !important;
  min-width:350px !important;
  
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;

}
.site-cta-copy{text-align:center !important;}
.site-cta-copy h2 {
  margin: 0;
  max-width: 18ch;

  color: #1a2f65;
  
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.035em;

  text-wrap: balance;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.site-cta-copy h2:first-child {
  color: #162b5c;

  text-shadow:

    0 -1px 0 rgba(3, 12, 38, 0.82),

    0 -2px 2px rgba(3, 12, 38, 0.38),
    -1px -1px 2px rgba(5, 17, 45, 0.2),

    -1px 0 1px rgba(5, 17, 45, 0.18),
    1px 0 1px rgba(255, 255, 255, 0.1),
    0 1px 0 rgba(255, 255, 255, 0.72),
    0 2px 2px rgba(255, 255, 255, 0.24),
    0 3px 4px rgba(255, 255, 255, 0.1);

  filter: saturate(0.94) contrast(1.04);
}
.site-cta-copy .show-line{font-size:1.08em !important;}
.site-cta-actions{
  width:100% !important;
  display:flex !important;
  flex-direction:column !important;
  
}
.site-cta-choice{
  width:100% !important;
  min-width:0 !important;
  
  display:flex !important;
  flex-direction:column !important;

}
.site-cta-choice::before{
  inset:6px !important;
  border-radius:15px !important;
}
.site-cta-note{
  gap:8px !important;
  font-size:11px !important;
  letter-spacing:.14em !important;
}
.site-cta-note::before,
.site-cta-note::after{
  width:20px !important;
  height:3px !important;
}
.site-cta-btn{
  
  padding:12px 18px !important;
  border-radius:13px !important;
  
}

.site-cta-copy .show-line{
  position:relative !important;
  z-index:1 !important;
  text-shadow:
    0 0 2px rgba(255, 255, 255, 0.761),
    0 0 6px rgba(210, 235, 255, 0.318),
    0 0 30px rgba(101,173,255,.52) !important;
  filter:drop-shadow(0 0 9px rgba(255,255,255,.42)) !important;
}

.packages-section{

  color:#102a56;
  
}
.packages-section::before{
  
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(38,84,157,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(38,84,157,.045) 1px,transparent 1px);
  background-size:38px 38px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
}
.packages-wrap{position:relative;z-index:1;margin:0 auto;}
.packages-heading{max-width:760px;text-align:center;}
.packages-kicker{margin:0 0 12px;font-size:13px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;}
.packages-heading h2{margin:0;letter-spacing:-.055em;}
.packages-heading p{max-width:670px;margin:20px auto 0;}
.packages-grid{display:grid;}
.package-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;

  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  
}

.package-card.featured{color:#fff;}

.package-card h3{margin:0;color:#102a56;line-height:1.05;letter-spacing:-.035em;}
.featured h3{color:#fff;}
.package-description{min-height:54px;margin:13px 0 22px;color:#587291;font-size:14px;line-height:1.55;}
.featured .package-description{color:rgba(255,255,255,.78);}
.package-price{display:flex;align-items:flex-end;gap:7px;margin-bottom:4px;color:#102a56;}
.featured .package-price{color:#fff;}
.package-price strong{font-family:"Bricolage Grotesque","Manrope",sans-serif;line-height:1;letter-spacing:-.055em;}
.package-price span{padding-bottom:5px;font-size:12px;font-weight:700;}
.featured .package-price span{color:rgba(255,255,255,.7);}

.package-list{display:grid;margin:0 0 28px;padding:0;list-style:none;}
.package-list li{position:relative;padding-left:25px;color:#3f5f84;font-size:14px;line-height:1.45;}
.package-list li::before{content:"✓";position:absolute;top:0;left:0;display:grid;place-items:center;font-size:10px;font-weight:900;border-radius:50%;}
.featured .package-list li{color:rgba(255,255,255,.86);}
.featured .package-list li::before{color:#123d84;background:#fff;}
.package-button{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding:13px 18px;color:#fff;font-size:14px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease;}
.package-button:hover{transform:translateY(-2px);box-shadow:0 14px 25px rgba(18,61,132,.28);}

@media(max-width:900px){.packages-grid{grid-template-columns:1fr;}.package-card.featured{transform:none;}.package-card.featured:hover{transform:translateY(-7px);}.package-description{min-height:0;}}
@media(max-width:620px){.packages-section{padding:82px 16px 90px;}.package-card{padding:25px 22px;}}

.packages-section{display:block!important;opacity:1!important;visibility:visible!important;}
.packages-heading,.package-card,.packages-note{opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important;}


@media(max-width:900px){
  .hero{min-height:1840px !important;}
  .packages-section{padding:58px 20px 62px !important;}
}
@media(max-width:620px){
  .packages-section{padding:48px 16px 52px !important;}
  .packages-heading{margin-bottom:28px !important;}
}
.hosting-grid{display:grid;}

.hosting-card h3{margin:0 0 7px;color:#102a56;}
.hosting-card p{margin:0 0 18px;color:#587291;font-size:14px;line-height:1.55;}
.hosting-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.hosting-option{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#274f82;}
.hosting-option .monthly-rate{display:flex;align-items:baseline;justify-content:center;gap:2px;line-height:1;color:#123d84;}
.hosting-option .monthly-rate strong{letter-spacing:-.04em;}
.hosting-option .monthly-rate small{font-size:14px;font-weight:800;}
.hosting-option .billing-term{display:block;margin-top:8px;color:#637d9d;font-size:11px;font-weight:800;line-height:1.25;text-transform:uppercase;letter-spacing:.08em;}
@media(max-width:620px){.hosting-prices{grid-template-columns:1fr;}.hosting-option{min-height:88px;}}
@media(max-width:900px){.hosting-grid{grid-template-columns:1fr;}}

.package-card{
  overflow:hidden;
  
  border:1px solid rgba(100,155,211,.48);
  border-radius:30px;
  background:
    radial-gradient(circle at 100% 0,rgba(94,187,255,.16),transparent 34%),
    linear-gradient(155deg,rgba(255,255,255,.98),rgba(232,243,255,.93));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 0 0 1px rgba(255,255,255,.45),
    0 20px 45px rgba(29,73,132,.14),
    0 3px 8px rgba(29,73,132,.08);
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease;
}
.package-card::after{
  content:"";
  position:absolute;
  top:0;right:0;
  width:125px;height:125px;
  border-radius:0 0 0 100%;
  background:linear-gradient(145deg,rgba(57,184,255,.20),rgba(57,184,255,0));
  pointer-events:none;
}
.package-card:hover{
  transform:translateY(-10px) scale(1.012) !important;
  border-color:rgba(47,131,207,.72);
  box-shadow:inset 0 1px 0 #fff,0 30px 60px rgba(24,69,130,.22),0 8px 18px rgba(24,69,130,.10);
}
.package-card.featured{

  border:1.5px solid rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 30px 65px rgba(18,61,132,.34),0 0 0 6px rgba(255,255,255,.28);
  
}

.package-card h3{font-size:31px;}
.package-description{margin-bottom:24px;}
.package-price{padding:17px 0 14px;border-top:1px solid rgba(73,128,181,.16);border-bottom:1px solid rgba(73,128,181,.16);}
.featured .package-price{border-color:rgba(255,255,255,.16);}
.package-price strong{font-size:48px;}
.package-list{gap:13px;margin-top:22px;}
.package-list li::before{width:20px;height:20px;box-shadow:0 5px 10px rgba(47,131,207,.22);}
.package-button{
  min-height:56px;border-radius:16px;

}
.package-button::after{content:"→";margin-left:10px;font-size:18px;transition:transform .2s ease;}
.package-button:hover::after{transform:translateX(4px);}
.featured .package-button{box-shadow:0 13px 26px rgba(0,0,0,.20);}

.hosting-card{
  position:relative;overflow:hidden;
  border:1px solid rgba(100,155,211,.48);border-radius:26px;
  background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(232,243,255,.92));
  box-shadow:inset 0 1px 0 #fff,0 20px 42px rgba(24,69,130,.13);
  transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,border-color .3s ease;
}
.hosting-card::after{content:"";position:absolute;right:-55px;bottom:-70px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(57,184,255,.15),transparent 68%);pointer-events:none;}
.hosting-card:hover{transform:translateY(-7px);border-color:rgba(47,131,207,.72);box-shadow:inset 0 1px 0 #fff,0 28px 54px rgba(24,69,130,.19);}

.hosting-card h3{font-size:27px;letter-spacing:-.035em;}
.hosting-card p{min-height:44px;margin-bottom:22px;}
.hosting-prices{gap:12px;}
.hosting-option{
  position:relative;min-height:122px;padding:18px 10px 15px;
  
  border-radius:17px;
  
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.hosting-option:hover{transform:translateY(-4px);border-color:rgba(47,131,207,.68);box-shadow:inset 0 1px 0 #fff,0 14px 24px rgba(24,69,130,.13);}
.hosting-option.best-value{padding-top:27px;border-color:rgba(255,255,255,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 14px 28px rgba(18,61,132,.24);}
.best-value .monthly-rate,.best-value .billing-term{color:#fff;}
.best-value .billing-term{opacity:.78;}
.value-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:5px 9px;color:#123d84;font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:#fff;border-radius:999px;box-shadow:0 6px 13px rgba(18,61,132,.18);}
.hosting-option .monthly-rate strong{font-size:34px;}
@media(max-width:900px){.package-card.featured{transform:none !important;}.package-card.featured:hover{transform:translateY(-7px) !important;}}
@media(max-width:620px){.packages-grid,.hosting-grid{gap:18px;}.package-card,.hosting-card{border-radius:24px;}.hosting-card{padding:24px;}.hosting-card p{min-height:0;}}

.packages-section::before{
  display:none !important;
  content:none !important;
}

.hero-card{
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.hero{
  width:100% !important;

}

.bowl-shadow{
  width:170px !important;
  height:78px !important;
  bottom:-20px !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse at center,
    rgba(3,18,47,.50) 0%,
    rgba(3,18,47,.34) 34%,
    rgba(3,18,47,.16) 58%,
    rgba(3,18,47,0) 80%) !important;
  filter:blur(7px) !important;
  opacity:.96 !important;
}

.packages-wrap,
.packages-heading,
.packages-grid,
.package-card,
.packages-note,
.hosting-grid,
.hosting-card{
  position:relative;
  z-index:2;
}

.packages-kicker{margin-bottom:8px !important;color:#d9efff !important;text-shadow:0 2px 8px rgba(5,27,65,.48) !important;}
.packages-heading h2{color:#fff !important;text-shadow:0 3px 14px rgba(5,27,65,.42) !important;}

.packages-grid,
.hosting-grid{gap:18px !important;}

.package-card,
.hosting-card{
  overflow:hidden !important;
  background:linear-gradient(150deg,rgba(255,255,255,.25),rgba(255,255,255,.09)) !important;
  border:1px solid rgba(255,255,255,.88) !important;
  border-radius:25px !important;
  box-shadow:
    0 0 0 5px rgba(255,255,255,.07),
    0 20px 38px rgba(0,0,0,.25),
    inset 0 0 0 1px rgba(255,255,255,.20),
    inset 0 14px 26px rgba(255,255,255,.10) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  transition:transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease,filter .3s ease !important;
}

.hosting-card{padding:26px !important;}
.package-card::after,
.hosting-card::after{opacity:.55 !important;}

.package-card:hover,
.hosting-card:hover{
  transform:translateY(-7px) scale(1.01) !important;
  filter:brightness(1.035) !important;
  border-color:#fff !important;
  box-shadow:
    0 0 0 6px rgba(255,255,255,.10),
    0 28px 48px rgba(0,0,0,.30),
    0 0 18px rgba(120,190,245,.18),
    inset 0 0 0 1px rgba(255,255,255,.26),
    inset 0 14px 28px rgba(255,255,255,.13) !important;
}

.package-card.featured{
  transform:translateY(-5px) !important;
  background:linear-gradient(150deg,rgba(49,126,205,.54),rgba(16,47,104,.62)) !important;
  border-color:rgba(255,255,255,.94) !important;
}
.package-card.featured:hover{transform:translateY(-11px) scale(1.01) !important;}

.package-type,
.package-card h3,
.package-price,
.package-hosting,
.hosting-card h3{color:#fff !important;text-shadow:0 2px 8px rgba(4,25,58,.35) !important;}
.package-description,
.package-list li,
.hosting-card p{color:rgba(255,255,255,.84) !important;}
.package-price span{color:rgba(255,255,255,.72) !important;}
.package-price{border-color:rgba(255,255,255,.20) !important;}

.package-list li::before{color:#17498f !important;background:#fff !important;}

.package-button{
  background:linear-gradient(135deg,#3d8fda,#17498f) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 11px 22px rgba(3,22,55,.24) !important;
}
.featured .package-button{color:#17498f !important;background:linear-gradient(180deg,#fff,#e8f5ff) !important;}

.hosting-option{
  background:linear-gradient(150deg,rgba(255,255,255,.88),rgba(222,239,255,.76)) !important;
  border:1px solid rgba(255,255,255,.86) !important;
  box-shadow:inset 0 1px 0 #fff,0 9px 18px rgba(3,22,55,.14) !important;
}
.hosting-option.best-value{
  background:linear-gradient(150deg,rgba(42,116,194,.92),rgba(18,61,132,.94)) !important;
}

@media(max-width:900px){
  .packages-section{margin-top:-36px !important;padding:10px 20px 62px !important;}
  .package-card.featured{transform:none !important;}
  .package-card.featured:hover{transform:translateY(-7px) scale(1.01) !important;}
}
@media(max-width:620px){
  .packages-section{margin-top:-24px !important;padding:10px 14px 52px !important;}
  .packages-heading{padding:18px 16px !important;margin-bottom:20px !important;}
  .package-card,.hosting-card{padding:22px 20px !important;border-radius:22px !important;}
}

.hosting-card h3{margin-bottom:8px !important;}
.hosting-feature-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:0 0 22px;
  padding:0;
  list-style:none;
}
.hosting-feature-list li{
  position:relative;
  padding:10px 11px 10px 31px;
  color:#234b7d;
  font-size:12px;
  font-weight:800;
  line-height:1.25;
  background:linear-gradient(150deg,rgba(255,255,255,.90),rgba(222,239,255,.78));
  border:1px solid rgba(255,255,255,.88);
  border-radius:12px;
  box-shadow:inset 0 1px 0 #fff,0 7px 14px rgba(3,22,55,.10);
}
.hosting-feature-list li::before{
  content:"✓";
  position:absolute;
  top:50%;
  left:10px;
  display:grid;
  place-items:center;
  width:15px;
  height:15px;
  color:#fff;
  font-size:9px;
  background:#2f83cf;
  border-radius:50%;
  transform:translateY(-50%);
}
@media(max-width:620px){.hosting-feature-list{grid-template-columns:1fr;}}

.hosting-card{
  display:flex;
  flex-direction:column;
}
.hosting-card .hosting-feature-list{
  flex:0 0 auto;
}
.hosting-card .hosting-prices{
  margin-top:auto;
}

.packages-wrap{
  
  will-change:transform;
}
@media(max-width:900px){
  .packages-section{margin-top:-150px !important;padding-top:0 !important;}
}
@media(max-width:620px){
  .packages-section{margin-top:-105px !important;padding-top:0 !important;}
}
@media(prefers-reduced-motion:reduce){
  .packages-wrap{transform:none !important;}
}

.hero,
.packages-section{
  background-attachment:fixed !important;
  background-position:center top !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
}

@media (hover:none), (pointer:coarse), (max-width:900px){
  .hero,
  .packages-section{
    background-attachment:scroll !important;
  }
}

.hero{

  display:grid !important;

  background-attachment:scroll !important;
  
}
.hero-card,
.site-cta{
  position:relative !important;
  inset:auto !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
  transform:none !important;
}
.hero-card{

  order:1;
}
.site-cta{

  order:2;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.62) !important;
  border-radius:24px !important;
  box-shadow:0 18px 38px rgba(2,18,46,.22) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
.site-cta-copy h2{
  font-size:clamp(30px,3vw,42px) !important;
}

.site-cta-choice{

  border-radius:16px !important;
}
.site-cta-choice::before{display:none !important;content:none !important;}
.site-cta-btn{
  
  font-size:14px !important;
}

.packages-section{

  overflow:hidden !important;

  background-attachment:scroll !important;
}
.packages-wrap{
  transform:none !important;
  width:min(1220px,100%) !important;
}
.packages-heading{
  width:min(760px,100%) !important;
  margin:0 auto 34px !important;
  padding:0 12px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.packages-heading::before,
.packages-heading::after{
  display:none !important;
  content:none !important;
}
.packages-heading h2{
  font-size:clamp(34px,5vw,58px) !important;
  line-height:1.02 !important;
}
.packages-heading p{
  margin-top:14px !important;
  color:rgba(255,255,255,.86) !important;
  font-size:clamp(14px,1.5vw,17px) !important;
  line-height:1.55 !important;
}
.packages-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  
  align-items:stretch !important;
}
.package-card{
  min-width:0 !important;
  padding:clamp(22px,2.2vw,28px) !important;
}
.hosting-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;

}
.hosting-card{min-width:0 !important;}

@media(max-width:1050px){
  .hero{
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr) !important;
    padding-inline:24px !important;
  }
  .phone-grid{gap:18px !important;}
  .site-cta{padding:20px !important;}
  .site-cta-copy h2{font-size:30px !important;}
}
@media(max-width:900px){
  .hero{
    min-height:auto !important;
    padding:118px 18px 50px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:24px !important;
  }
  .site-cta{order:1 !important;width:min(620px,100%) !important;}
  .hero-card{
    order:2 !important;
    width:min(620px,100%) !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
  }
  .phone-grid{grid-template-columns:1fr !important;height:auto !important;}
  .phone{min-height:390px !important;}
  .packages-section{margin-top:0 !important;padding:52px 20px 60px !important;}
  .packages-grid,.hosting-grid{grid-template-columns:1fr !important;}
}
@media(max-width:620px){
  .hero{padding:104px 14px 42px !important;}
  .site-cta{padding:18px !important;border-radius:20px !important;}
  .site-cta-copy h2{font-size:28px !important;}
  .site-cta-note{font-size:10px !important;}
  .packages-section{padding:44px 14px 50px !important;}
  .packages-heading{margin-bottom:24px !important;padding:0 4px !important;}
  .package-card,.hosting-card{padding:21px 18px !important;}
}

html{scroll-padding-top:96px;background:#102a56;}
body{min-width:0;background:#102a56;}
.site-header{display:block;}
.nav{min-width:0;}
.brand{flex-shrink:1;}
.nav-links{min-width:0;}
.hero{padding-top:108px !important;}

@media (max-width:1100px) and (min-width:901px){
  .nav{gap:24px;width:calc(100% - 36px);}
  .nav-links{gap:22px !important;font-size:14px;}
  .brand-title-top{font-size:28px;}
  .brand-logo{width:58px;height:58px;flex-basis:58px;}
}

@media (max-width:900px){
  html{scroll-padding-top:84px;}
  .site-header{position:fixed;}
  .nav{position:relative;width:calc(100% - 28px);gap:14px;padding:10px 0;}
  .brand-logo{width:50px;height:50px;flex-basis:50px;}
  .brand-title-top{font-size:22px;}
  .brand-title-bottom{margin-top:6px;font-size:9px;letter-spacing:.25em;}
  .menu-btn{display:block !important;position:relative;z-index:2;}
  .nav-links{
    position:absolute !important;
    top:100% !important;
    right:0 !important;
    left:0 !important;
    display:none !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:10px 16px 14px !important;
    background:rgba(8,31,69,.98) !important;
    border:1px solid rgba(255,255,255,.45) !important;
    border-top:0 !important;
    border-radius:0 0 14px 14px !important;
    box-shadow:0 12px 25px rgba(0,0,0,.25) !important;
  }
  .nav-links.open{display:flex !important;}
  .nav-links a{width:100%;padding:12px 4px !important;}
  .hero{padding-top:88px !important;}
}

@media (max-width:620px){
  .brand{gap:9px;}
  .brand-logo{width:44px;height:44px;flex-basis:44px;}
  .brand-title-top{font-size:18px;}
  .brand-title-bottom{font-size:8px;letter-spacing:.19em;gap:6px;}
  .hero{padding:84px 12px 36px !important;}
  .site-cta,.hero-card{width:100% !important;}
  .site-cta{padding:16px !important;}
  .site-cta-actions{gap:12px !important;}
  .site-cta-btn{min-height:48px !important;padding:11px 12px !important;font-size:13px !important;}
  .phone{width:100%;min-width:0;min-height:370px !important;}
  .phone-grid{width:100%;}
  .packages-grid,.hosting-grid{width:100%;}
  .package-card,.hosting-card{min-width:0;width:100%;}
  .hosting-prices{grid-template-columns:1fr !important;}
}

@media (max-width:390px){
  .nav{width:calc(100% - 18px);}
  .brand-title-top{font-size:16px;}
  .brand-title-bottom{font-size:7px;}
  .site-cta-copy h2{font-size:24px !important;}
  .packages-heading h2{font-size:34px !important;}
  .package-price strong{font-size:42px;}
}

.hero{
  
  padding:90px max(24px,calc((100vw - 1320px)/2)) 58px !important;
  grid-template-columns:minmax(0,1.9fr) minmax(300px,.82fr) !important;
  align-items:start !important;
  gap:clamp(28px,3vw,44px) !important;

}

.hero-card{
  height:clamp(435px,39vw,485px) !important;
  padding:16px !important;
  margin-top:0 !important;
}

.site-cta{
  margin-top:0 !important;
  padding:24px !important;
  gap:18px !important;
}

.site-cta-actions{gap:15px !important;}
.site-cta-choice{padding:14px !important;gap:10px !important;}
.site-cta-btn{min-height:50px !important;}

.phone-grid{gap:18px !important;}
.phone{padding:18px 12px 12px !important;}
.phone-screen{gap:8px !important;}

.phone:nth-child(odd),
.package-card:nth-child(odd),
.hosting-card:nth-child(odd){z-index:6 !important;}
.phone:nth-child(even),
.package-card:nth-child(even),
.hosting-card:nth-child(even){z-index:3 !important;}

.phone:nth-child(odd){transform:translateY(-3px);}
.package-card:nth-child(odd),
.hosting-card:nth-child(odd){transform:translateY(-5px) !important;}
.package-card.featured{z-index:8 !important;}

.packages-section{
  
  padding:58px 28px 76px !important;

}
.packages-heading{margin-bottom:36px !important;}
.packages-grid{gap:24px !important;}
.hosting-grid{gap:24px !important;margin-top:28px !important;}

@media(max-width:1050px) and (min-width:901px){
  .hero{
    padding-top:104px !important;
    grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr) !important;
    gap:16px !important;
  }
  .hero-card{height:450px !important;}
  .site-cta{margin-top:22px !important;padding:20px !important;}
}

@media(max-width:900px){
  .hero{
    padding:96px 16px 40px !important;
    gap:14px !important;
  }
  .site-cta{margin-top:0 !important;}
  .hero-card{height:auto !important;}
  .phone-grid{gap:12px !important;}
  .phone:nth-child(odd){transform:none;}
  .packages-section{
    margin-top:10px !important;
    padding:46px 18px 62px !important;
    background-size:cover !important;
  }
  .package-card:nth-child(odd),
  .hosting-card:nth-child(odd){transform:none !important;}
}

@media(max-width:620px){
  .hero{padding:88px 12px 32px !important;}
  .packages-section{padding:40px 12px 54px !important;}
  .packages-heading{margin-bottom:26px !important;}
}

html, body{
  background:#102a56 !important;
}

/* One continuous page background. Section artwork no longer creates separate background panels. */
body{
  background:#102a56 !important;
}

.site-header{
  border-bottom:0 !important;
}

.hero{
  background:#102a56 !important;
  min-height:var(--hero-art-height, 900px) !important;
  overflow:visible !important;
}

.packages-section{
  
  background:#102a56 !important;

}
.packages-section::before,
.packages-section::after{
  display:none !important;
  content:none !important;
}



.hero{
  position:relative !important;
  z-index:1 !important;
}

.packages-section{
  position:relative !important;
  z-index:2 !important;
  margin-top:-42px !important;
  padding-top:70px !important;
  background:transparent !important;
  box-shadow:none !important;
}

@media(max-width:900px){
  .packages-section{
    margin-top:-28px !important;
    padding-top:58px !important;
    background-size:cover !important;
  }
}

@media (min-width:901px){
  .packages-section{
    margin-top:-300px !important;
    padding-top:24px !important;
    background:transparent !important;
  }
}

@media (max-width:900px){
  .packages-section{
    margin-top:-150px !important;
    padding-top:22px !important;
    background:transparent !important;
  }
}

@media (max-width:620px){
  .packages-section{
    margin-top:-105px !important;
    padding-top:18px !important;
  }
}

.phone:nth-child(2) .blog-shell{
  height:82% !important;
  align-self:flex-start !important;
}

@media(max-width:900px){
  .phone:nth-child(2) .blog-shell{
    height:84% !important;
  }
}

.site-cta {
  position: relative !important;
  z-index: 4;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 18px 0 0 !important;
  padding: clamp(20px, 2.2vw, 28px) !important;
  gap: 20px !important;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 18% 0%, rgba(255, 255, 255, 0.34), transparent 38%),
    linear-gradient(145deg, rgba(242, 248, 255, 0.24), rgba(132, 177, 226, 0.10)) !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 26px !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -1px 0 rgba(58, 100, 160, 0.18),
    0 22px 46px rgba(2, 18, 46, 0.25),
    0 4px 12px rgba(2, 18, 46, 0.12) !important;
  backdrop-filter: blur(15px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(15px) saturate(1.08) !important;
  transform: none !important;
  will-change: opacity, filter;
}

.site-cta::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: -42%;
  right: -28%;
  width: 78%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(126, 194, 255, 0.20), transparent 68%);
  pointer-events: none;
}

.site-cta-copy {
  flex: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 2px 0 0 !important;
  text-align: center !important;
}

.site-cta-copy h2 {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #183263 !important;
  font-family: "Bricolage Grotesque", "Manrope", Arial, sans-serif !important;
  font-size: clamp(31px, 3vw, 43px) !important;
  font-weight: 800 !important;
  line-height: 0.98 !important;
  letter-spacing: -0.05em !important;
  text-wrap: balance;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-shadow:
    -1px -1px 0 rgba(255, 255, 255, 0.95),
    0 -2px 1px rgba(255, 255, 255, 0.36),
    1px 1px 0 rgba(7, 27, 66, 0.72),
    2px 2px 1px rgba(7, 27, 66, 0.30),
    0 6px 10px rgba(7, 27, 66, 0.18) !important;
  filter: saturate(0.96) contrast(1.05);
}

.site-cta-copy h2 + h2 {
  margin-top: 7px !important;
}

.site-cta-copy .show-line {
  position: relative !important;
  z-index: 1 !important;
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 0.08em 0.12em !important;
  color: #4d78c9 !important;
  font-family: "Bricolage Grotesque", "Manrope", Arial, sans-serif !important;
  font-size: 1.13em !important;
  font-weight: 600 !important;
  line-height: 0.94 !important;
  letter-spacing: 0.005em !important;
  white-space: nowrap;
  transform: rotate(-1deg);
  transform-origin: center;
  text-shadow:
    -1px -1px 0 rgba(248, 253, 255, 1),
    -2px -2px 1px rgba(255, 255, 255, 0.55),
    1px 1px 0 rgba(27, 62, 123, 0.95),
    2px 2px 0 rgba(24, 53, 106, 0.62),
    3px 3px 2px rgba(15, 42, 94, 0.30),
    0 7px 10px rgba(15, 42, 94, 0.20) !important;
  filter: saturate(1.06) contrast(1.08) !important;
}

.site-cta-copy .show-line::after {
  content: "";
  position: absolute;
  right: 7%;
  bottom: -0.08em;
  left: 9%;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(115, 177, 236, 0.82), transparent);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.60);
  opacity: 0.72;
}

.site-cta-actions {
  margin: 0 !important;
}

@media (max-width: 1050px) {
  .site-cta {
    margin-top: 0 !important;
    gap: 18px !important;
  }

  .site-cta-copy h2 {
    font-size: 30px !important;
  }
}

@media (max-width: 620px) {
  .site-cta {
    padding: 18px 16px !important;
    gap: 16px !important;
    border-radius: 21px !important;
  }

  .site-cta-copy {
    padding-top: 0 !important;
  }

  .site-cta-copy h2 {
    font-size: 27px !important;
    line-height: 1 !important;
  }

  .site-cta-copy h2 + h2 {
    margin-top: 5px !important;
  }

  .site-cta-copy .show-line {
    font-size: 1.09em !important;
    transform: rotate(-0.6deg);
  }
}

.site-header .brand{margin-right:auto;}

body.modal-open{overflow:hidden;}
.intake-modal{
  position:fixed;
  z-index:3000;
  inset:0;
  display:none;
  place-items:center;
  padding:24px;
  background:rgba(3,17,43,.72);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
}
.intake-modal.is-open{display:grid;}
.intake-dialog{
  position:relative;
  width:min(820px,100%);
  max-height:min(90vh,900px);
  overflow:auto;
  color:#173665;
  background:linear-gradient(155deg,rgba(255,255,255,.99),rgba(230,243,255,.98));
  border:1px solid rgba(255,255,255,.95);
  border-radius:28px;
  box-shadow:0 28px 80px rgba(0,0,0,.38),inset 0 1px 0 #fff;
}
.intake-header{padding:30px 64px 20px 30px;border-bottom:1px solid rgba(38,84,157,.13);}
.intake-header .eyebrow{margin-bottom:7px;color:#3977ba;text-transform:uppercase;letter-spacing:.14em;}
.intake-header h2{margin:0;font-size:clamp(28px,4vw,42px);line-height:1;letter-spacing:-.045em;}
.intake-header p{margin:12px 0 0;color:#55718f;line-height:1.55;}
.intake-close{
  position:absolute;top:18px;right:18px;display:grid;place-items:center;width:42px;height:42px;padding:0;
  color:#173665;background:#fff;border:1px solid rgba(38,84,157,.18);border-radius:50%;font-size:25px;line-height:1;
  box-shadow:0 8px 18px rgba(20,61,115,.12);
}
.intake-form{display:grid;gap:24px;padding:26px 30px 30px;}
.intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.intake-field{display:grid;gap:8px;}
.intake-field.full{grid-column:1/-1;}
.intake-field label,.intake-legend{font-weight:800;color:#173665;}
.intake-field input,.intake-field select,.intake-field textarea{
  width:100%;padding:13px 14px;color:#173665;background:rgba(255,255,255,.88);border:1px solid rgba(66,126,185,.35);border-radius:13px;outline:none;
  transition:border-color .2s ease,box-shadow .2s ease;
}
.intake-field input:focus,.intake-field select:focus,.intake-field textarea:focus{border-color:#397fc4;box-shadow:0 0 0 4px rgba(57,127,196,.13);}
.intake-field textarea{min-height:108px;resize:vertical;}
.intake-group{display:grid;gap:12px;margin:0;padding:0;border:0;}
.intake-helper{margin:0;color:#66809b;font-size:13px;line-height:1.45;}
.color-builder{display:grid;gap:16px;}
.color-role{display:grid;gap:12px;padding:16px;background:rgba(255,255,255,.58);border:1px solid rgba(66,126,185,.20);border-radius:17px;}
.color-role-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.color-role-title{display:flex;align-items:center;gap:9px;font-weight:800;color:#173665;}
.color-role-title small{font-size:11px;font-weight:800;color:#6b829a;text-transform:uppercase;letter-spacing:.08em;}
.color-selection{display:flex;align-items:center;gap:8px;min-width:0;color:#55718f;font-size:12px;font-weight:800;}
.color-selection-dot{width:22px;height:22px;flex:0 0 22px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px rgba(31,79,128,.22);background:linear-gradient(135deg,#eef4f9,#dce7f1);}
.color-selection-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.color-families,.color-shades{display:flex;flex-wrap:wrap;gap:9px;}
.color-circle{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:0;border:2px solid rgba(255,255,255,.95);border-radius:50%;background:var(--circle-color);box-shadow:0 0 0 1px rgba(24,69,130,.20),0 5px 12px rgba(24,69,130,.11);transition:transform .18s ease,box-shadow .18s ease;}
.color-circle:hover{transform:translateY(-2px) scale(1.05);}
.color-circle.is-selected{box-shadow:0 0 0 3px #347fc6,0 7px 15px rgba(24,69,130,.18);transform:scale(1.06);}
.color-circle:focus-visible{outline:3px solid rgba(52,127,198,.30);outline-offset:3px;}
.color-circle.light-swatch{border-color:rgba(35,74,116,.20);}
.color-circle::after{content:attr(aria-label);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:4;width:max-content;max-width:150px;padding:5px 7px;color:#fff;font-size:10px;font-weight:800;background:#173665;border-radius:7px;opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:.16s ease;}
.color-circle:hover::after,.color-circle:focus-visible::after{opacity:1;transform:translate(-50%,0);}
.color-shade-wrap{display:grid;gap:8px;padding-top:2px;}
.color-shade-label{margin:0;color:#66809b;font-size:12px;font-weight:800;}
.color-clear{justify-self:start;padding:7px 10px;color:#31577f;background:#fff;border:1px solid rgba(62,124,184,.28);border-radius:999px;font-size:11px;font-weight:800;}
.color-clear[hidden]{display:none;}
@media(max-width:520px){.color-role-head{align-items:flex-start;flex-direction:column;}.color-selection{width:100%;}}
.page-tags{display:flex;flex-wrap:wrap;gap:9px;}
.page-tag{position:relative;cursor:pointer;}
.page-tag input{position:absolute;opacity:0;pointer-events:none;}
.page-tag span{display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;color:#31577f;background:rgba(255,255,255,.82);border:1px solid rgba(62,124,184,.28);border-radius:999px;font-size:13px;font-weight:800;transition:.2s ease;}
.page-tag input:checked + span{color:#fff;background:linear-gradient(135deg,#397fc4,#194e92);border-color:transparent;box-shadow:0 8px 16px rgba(25,78,146,.20);}
.page-tag input:focus-visible + span{outline:3px solid rgba(52,127,198,.28);outline-offset:2px;}
.other-page-wrap{display:none;margin-top:2px;}
.other-page-wrap.is-visible{display:block;}
.intake-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px;}
.intake-submit{min-height:52px;padding:13px 22px;color:#fff;background:linear-gradient(135deg,#397fc4,#194e92);border:0;border-radius:14px;font-weight:800;box-shadow:0 11px 22px rgba(25,78,146,.25);}
.intake-status{min-height:22px;margin:0;color:#21653e;font-size:13px;font-weight:800;}
@media(max-width:700px){
  .intake-modal{padding:10px;align-items:end;}
  .intake-dialog{max-height:94vh;border-radius:24px 24px 0 0;}
  .intake-header{padding:24px 58px 17px 20px;}
  .intake-form{padding:20px;}
  .intake-grid{grid-template-columns:1fr;}
  .intake-field.full{grid-column:auto;}
  .intake-actions{align-items:stretch;flex-direction:column;}
  .intake-submit{width:100%;}
}

.required-mark{color:#b42318;font-weight:900;margin-left:3px;}
.contact-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;background:rgba(213,231,247,.72);border:1px solid rgba(66,126,185,.22);border-radius:14px;}
.contact-choice{position:relative;cursor:pointer;}
.contact-choice input{position:absolute;opacity:0;pointer-events:none;}
.contact-choice span{display:flex;align-items:center;justify-content:center;min-height:43px;padding:9px 12px;color:#31577f;background:transparent;border-radius:10px;font-size:13px;font-weight:800;transition:.2s ease;}
.contact-choice input:checked + span{color:#fff;background:linear-gradient(135deg,#397fc4,#194e92);box-shadow:0 7px 15px rgba(25,78,146,.19);}
.contact-choice input:focus-visible + span{outline:3px solid rgba(52,127,198,.28);outline-offset:2px;}
.contact-panel[hidden]{display:none!important;}
.intake-required-note{margin:0;color:#6a8098;font-size:12px;font-weight:700;}

.other-type-wrap{display:none;margin-top:14px;}
.other-type-wrap.is-visible{display:block;}
.project-kind-group{margin:0!important;}
.project-kind-tags .page-tag input[type="radio"]{position:absolute;opacity:0;pointer-events:none;}
.project-kind-tags .page-tag:has(input:checked) span{color:#fff;background:linear-gradient(135deg,#3d8fda,#17498f);border-color:rgba(255,255,255,.45);box-shadow:0 8px 16px rgba(18,61,132,.22);}

.payment-confirmation{
  position:fixed;
  z-index:4200;
  inset:0;
  display:none;
  place-items:center;
  padding:24px;
  overflow:auto;
  color:#173665;
  background:
    radial-gradient(circle at 50% 22%,rgba(85,184,255,.30),transparent 34%),
    linear-gradient(145deg,rgba(7,31,72,.94),rgba(16,42,86,.98));
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.payment-confirmation.is-open{display:grid;animation:paymentFadeIn .42s ease both;}
.payment-confirmation-card{
  position:relative;
  width:min(590px,100%);
  padding:clamp(34px,7vw,62px) clamp(24px,6vw,54px) clamp(28px,6vw,48px);
  overflow:hidden;
  text-align:center;
  background:linear-gradient(155deg,rgba(255,255,255,.99),rgba(226,242,255,.97));
  border:1px solid rgba(255,255,255,.96);
  border-radius:30px;
  box-shadow:0 30px 90px rgba(0,0,0,.40),inset 0 1px 0 #fff;
  animation:paymentCardIn .68s cubic-bezier(.16,1,.3,1) both;
}
.payment-confirmation-card::before{
  content:"";
  position:absolute;
  top:-110px;
  left:50%;
  width:320px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(57,184,255,.20),transparent 68%);
  transform:translateX(-50%);
  pointer-events:none;
}
.payment-check-button{
  position:relative;
  display:grid;
  place-items:center;
  width:104px;
  height:104px;
  margin:0 auto 28px;
  padding:0;
  color:#fff;
  background:linear-gradient(145deg,#51cc80,#1ca85a);
  border:0;
  border-radius:50%;
  box-shadow:0 16px 34px rgba(28,168,90,.30),inset 0 2px 0 rgba(255,255,255,.35);
  animation:paymentCheckPop .72s .18s cubic-bezier(.16,1.35,.3,1) both;
}
.payment-check-button::after{
  content:"";
  position:absolute;
  inset:-10px;
  border:2px solid rgba(47,190,105,.34);
  border-radius:50%;
  animation:paymentCheckRing 1.35s .50s ease-out both;
}
.payment-check-button svg{width:53px;height:53px;overflow:visible;}
.payment-check-path{
  fill:none;
  stroke:currentColor;
  stroke-width:6;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:72;
  stroke-dashoffset:72;
  animation:paymentCheckDraw .62s .58s cubic-bezier(.65,0,.35,1) forwards;
}
.payment-check-button:hover{transform:translateY(-2px) scale(1.03);}
.payment-check-button:active{transform:scale(.96);}
.payment-confirmation-card .eyebrow{margin:0 0 10px;color:#3977ba;text-transform:uppercase;letter-spacing:.16em;}
.payment-confirmation-card h1{margin:0;color:#153766;font-size:clamp(34px,7vw,55px);line-height:.98;letter-spacing:-.055em;}
.payment-confirmation-message{max-width:430px;margin:18px auto 0;color:#567491;font-size:clamp(16px,2.4vw,19px);line-height:1.65;}
.payment-confirmation-home{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  margin-top:30px;
  padding:12px 22px;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg,#397fc4,#194e92);
  border:0;
  border-radius:14px;
  box-shadow:0 11px 22px rgba(25,78,146,.24);
  transition:transform .2s ease,box-shadow .2s ease;
}
.payment-confirmation-home:hover{transform:translateY(-2px);box-shadow:0 15px 28px rgba(25,78,146,.30);}
@keyframes paymentFadeIn{from{opacity:0}to{opacity:1}}
@keyframes paymentCardIn{from{opacity:0;transform:translateY(34px) scale(.94);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes paymentCheckPop{0%{opacity:0;transform:scale(.25) rotate(-14deg)}62%{opacity:1;transform:scale(1.12) rotate(3deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@keyframes paymentCheckDraw{to{stroke-dashoffset:0}}
@keyframes paymentCheckRing{0%{opacity:0;transform:scale(.68)}35%{opacity:1}100%{opacity:0;transform:scale(1.35)}}
@media(max-width:520px){
  .payment-confirmation{padding:14px;}
  .payment-confirmation-card{border-radius:24px;}
  .payment-check-button{width:90px;height:90px;margin-bottom:24px;}
  .payment-check-button svg{width:46px;height:46px;}
}
@media(prefers-reduced-motion:reduce){
  .payment-confirmation,.payment-confirmation-card,.payment-check-button,.payment-check-button::after,.payment-check-path{animation:none!important;}
  .payment-check-path{stroke-dashoffset:0;}
}



/* ===== FINAL MOBILE FIT OVERRIDES ===== */
@media (max-width: 900px){
  html,body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }

  .nav{
    width:calc(100% - 24px) !important;
    gap:10px !important;
  }

  .brand{
    gap:8px !important;
    min-width:0 !important;
  }

  .brand-title{
    min-width:0 !important;
    max-width:calc(100vw - 105px) !important;
  }

  .brand-title-top{
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .hero{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    min-height:0 !important;
    height:auto !important;
    padding:94px 14px 34px !important;
    gap:18px !important;
    background-size:auto 760px !important;
    background-position:center top !important;
  }

  .site-cta,
  .hero-card{
    width:min(100%, 620px) !important;
    max-width:620px !important;
    margin:0 auto !important;
  }

  .site-cta{
    order:1 !important;
    padding:16px !important;
    gap:14px !important;
    border-radius:20px !important;
  }

  .site-cta-copy h2{
    max-width:none !important;
    font-size:clamp(25px,7vw,32px) !important;
    line-height:1 !important;
  }

  .site-cta-copy .show-line{
    white-space:normal !important;
  }

  .site-cta-actions{
    width:100% !important;
    gap:10px !important;
  }

  .site-cta-choice{
    width:100% !important;
    max-width:330px !important;
    margin-inline:auto !important;
  }

  .hero-card{
    order:2 !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
  }

  .phone-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
    height:auto !important;
    gap:14px !important;
  }

  .phone{
    width:100% !important;
    height:auto !important;
    min-height:350px !important;
    padding:16px 12px 12px !important;
    transform:none !important;
  }

  .packages-section{
    margin-top:0 !important;
    padding:40px 14px 52px !important;
    background-size:auto 820px !important;
    background-position:center top !important;
  }

  .packages-wrap,
  .packages-grid,
  .hosting-grid{
    width:100% !important;
    max-width:100% !important;
  }

  .packages-heading{
    width:100% !important;
    margin-bottom:24px !important;
    padding:0 4px !important;
  }

  .packages-heading h2{
    font-size:clamp(32px,9vw,44px) !important;
  }

  .packages-heading p{
    font-size:14px !important;
    line-height:1.5 !important;
  }

  .packages-grid,
  .hosting-grid{
    grid-template-columns:1fr !important;
    gap:16px !important;
  }

  .package-card,
  .hosting-card{
    width:100% !important;
    min-width:0 !important;
    padding:20px 17px !important;
    border-radius:20px !important;
    transform:none !important;
  }

  .package-card h3{
    font-size:27px !important;
  }

  .package-price strong{
    font-size:42px !important;
  }

  .hosting-feature-list{
    grid-template-columns:1fr !important;
  }

  .hosting-prices{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .hosting-option{
    min-height:82px !important;
    padding:13px 10px !important;
  }
}

@media (max-width: 620px){
  .nav{
    width:calc(100% - 18px) !important;
    padding:8px 0 !important;
  }

  .brand-logo{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
  }

  .brand-title-top{
    font-size:16px !important;
  }

  .brand-title-bottom{
    margin-top:4px !important;
    font-size:7px !important;
    letter-spacing:.16em !important;
    gap:5px !important;
  }

  .menu-btn{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
    font-size:26px !important;
  }

  .hero{
    padding:78px 10px 28px !important;
    gap:14px !important;
    background-size:auto 690px !important;
  }

  .site-cta{
    padding:14px 12px !important;
    gap:12px !important;
    border-radius:18px !important;
  }

  .site-cta-copy h2{
    font-size:clamp(23px,7.2vw,28px) !important;
  }

  .site-cta-choice{
    width:100% !important;
    max-width:290px !important;
    padding:7px 9px 9px !important;
  }

  .phone{
    min-height:330px !important;
    padding:14px 10px 10px !important;
    border-radius:20px !important;
  }

  .phone-screen{
    gap:6px !important;
  }

  .packages-section{
    padding:34px 10px 44px !important;
  }

  .package-card,
  .hosting-card{
    padding:18px 15px !important;
  }

  .package-description,
  .package-list li,
  .hosting-card p{
    font-size:13px !important;
  }

  .package-list{
    gap:10px !important;
  }

  .package-button{
    min-height:50px !important;
  }
}

@media (max-width: 390px){
  .hero{
    padding-inline:8px !important;
  }

  .site-cta-copy h2{
    font-size:22px !important;
  }

  .site-cta-choice{
    max-width:265px !important;
  }

  .phone{
    min-height:315px !important;
  }

  .packages-heading h2{
    font-size:31px !important;
  }

  .package-price strong{
    font-size:38px !important;
  }
}


/* Contact trigger — popup styling reuses the existing Build a Site intake modal */
.header-contact-trigger{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:9px 17px;
  margin-left:18px;
  color:#173665;
  background:linear-gradient(180deg,#fff,#e8f5ff);
  border:1px solid rgba(255,255,255,.92);
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(3,22,55,.19),inset 0 1px 0 #fff;
  transition:transform .18s ease,box-shadow .18s ease;
}
.header-contact-trigger:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(3,22,55,.24),inset 0 1px 0 #fff;
}
.contact-direct-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.contact-direct-option{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:14px;
  color:#173665;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(66,126,185,.24);
  border-radius:14px;
  box-shadow:0 7px 14px rgba(24,69,130,.07);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.contact-direct-option:hover{
  transform:translateY(-2px);
  border-color:rgba(47,131,207,.56);
  box-shadow:0 11px 20px rgba(24,69,130,.11);
}
.contact-direct-option small{
  display:block;
  margin-bottom:2px;
  color:#66809b;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.contact-direct-option strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
}
.contact-direct-mark{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  color:#fff;
  background:linear-gradient(135deg,#397fc4,#194e92);
  border-radius:11px;
  font-size:14px;
  font-weight:900;
}
@media(max-width:700px){
  .header-contact-trigger{margin-left:10px;padding:8px 13px;}
  .contact-direct-row{grid-template-columns:1fr;}
}


#contact-modal .contact-choice span{
  gap:8px;
}
#contact-modal .contact-choice span i{
  font-size:13px;
}
#contact-modal .contact-panel{
  margin-top:14px;
}
#contact-modal .contact-direct-option.is-recommended{
  border-color:rgba(47,131,207,.78);
  box-shadow:
    0 0 0 3px rgba(57,184,255,.12),
    0 11px 20px rgba(24,69,130,.12);
}
#contact-modal .contact-direct-option.is-recommended small::after{
  content:" · Recommended";
  color:#397fc4;
}



/* Visible homepage SEO copy */
.seo-eyebrow{
  margin:0 0 9px!important;
  color:#397fc4!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}
.site-cta-copy h1{
  max-width:15ch!important;
  margin:0 auto!important;
  color:#162b5c!important;
  font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif!important;
  font-size:clamp(28px,2.4vw,38px)!important;
  font-weight:800!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  text-wrap:balance!important;
}
.hero-description{
  max-width:390px!important;
  margin:12px auto 0!important;
  color:#4b6693!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.5!important;
  text-align:center!important;
}
.hero-tagline{
  display:flex!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:7px!important;
  margin-top:13px!important;
  color:#162b5c!important;
  font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.hero-tagline .show-line{
  margin:0!important;
  color:#4a76cb!important;
  font-family:"Bricolage Grotesque","Manrope",Arial,sans-serif!important;
  font-size:1.18em!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
}
.packages-heading>p:last-child{
  max-width:760px;
  margin:16px auto 0;
  color:rgba(255,255,255,.86);
  font-size:15px;
  font-weight:600;
  line-height:1.65;
  text-align:center;
}
@media(max-width:900px){
  .site-cta-copy h1{max-width:20ch!important;}
  .hero-description{max-width:620px!important;}
}
@media(max-width:620px){
  .seo-eyebrow{font-size:9px!important;}
  .site-cta-copy h1{font-size:28px!important;}
  .hero-description{font-size:12px!important;line-height:1.45!important;}
  .hero-tagline{flex-wrap:wrap!important;font-size:14px!important;}
}

/* Service structure, navigation, and responsive layout */
main{
  display:block;
  width:100%;
}

.service-section{
  position:relative;
  width:100%;
}

.packages-section,
.hosting-section{
  padding:76px 28px 84px;
}

.packages-wrap,
.renewal-wrap,
.executive-wrap{
  width:min(1180px,100%);
  margin:0 auto;
}

.packages-heading,
.hosting-heading{
  max-width:780px;
  margin:0 auto 34px;
  text-align:center;
}

.packages-heading .section-intro{
  max-width:680px;
  margin:14px auto 0;
  color:rgba(255,255,255,.84);
  font-size:15px;
  line-height:1.65;
}

.hosting-section{
  color:#fff;
  background:transparent;
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:0;
}

.hosting-section .packages-kicker{
  color:#9fdcff;
}

.hosting-section .packages-heading h2{
  color:#fff;
}

.hosting-section .section-intro{
  color:rgba(255,255,255,.82);
}

.hosting-grid{
  margin-top:0;
}

.renewal-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:82px 28px;
  color:#fff;
  background:transparent;
}

.renewal-section::before,
.renewal-section::after{
  content:none;
  display:none;
}

.renewal-wrap{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:40px;
  align-items:center;
}

.renewal-kicker{
  display:inline-flex;
  margin:0 0 13px;
  padding:7px 11px;
  color:#fff;
  background:#184f93;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.renewal-copy h2{
  max-width:650px;
  margin:0;
  color:#fff;
  font-size:clamp(38px,5vw,62px);
  line-height:.98;
  letter-spacing:-.055em;
}

.renewal-copy>p:not(.renewal-kicker){
  max-width:620px;
  margin:20px 0 0;
  color:rgba(255,255,255,.82);
  font-size:15px;
  line-height:1.7;
}

.renewal-button{
  min-height:48px;
  margin-top:25px;
  padding:12px 20px;
  color:#fff;
  background:linear-gradient(135deg,#276dba,#154783);
  border:0;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  box-shadow:0 12px 24px rgba(18,61,132,.22);
  transition:transform .18s ease,box-shadow .18s ease;
}

.renewal-button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(18,61,132,.28);
}

.renewal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.renewal-grid article{
  min-width:0;
  padding:22px 20px;
  background:#f8fbff;
  border:1px solid rgba(74,132,192,.25);
  border-radius:22px;
  box-shadow:0 14px 30px rgba(30,78,132,.08);
}

.renewal-grid i{
  margin-bottom:16px;
  color:#2f78bd;
  font-size:22px;
}

.renewal-grid h3{
  margin:0 0 8px;
  color:#102a56;
  font-size:18px;
  letter-spacing:-.025em;
}

.renewal-grid p{
  margin:0;
  color:#587291;
  font-size:13px;
  line-height:1.58;
}

.executive-section{
  position:relative;
  overflow:hidden;
  padding:76px 28px 82px;
  color:#fff;
  background:transparent;
  border-top:1px solid rgba(255,255,255,.12);
}

.executive-heading{
  max-width:760px;
  margin:0 auto 36px;
  text-align:center;
}

.executive-heading .packages-kicker{
  color:#9fdcff;
}

.executive-heading h2{
  margin:0;
  color:#fff;
  font-size:clamp(38px,5vw,62px);
  line-height:.98;
  letter-spacing:-.055em;
}

.executive-heading>p:last-child{
  max-width:650px;
  margin:18px auto 0;
  color:rgba(255,255,255,.78);
  font-size:15px;
  line-height:1.7;
}

.executive-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.executive-card{
  min-width:0;
  padding:26px 23px 24px;
  color:#102a56;
  background:linear-gradient(155deg,rgba(255,255,255,.99),rgba(231,244,255,.97));
  border:1px solid rgba(255,255,255,.38);
  border-radius:24px;
  box-shadow:0 18px 38px rgba(2,17,41,.22),inset 0 1px 0 #fff;
}

.executive-icon{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  margin-bottom:18px;
  color:#fff;
  background:linear-gradient(135deg,#397fc4,#194e92);
  border-radius:14px;
  box-shadow:0 9px 18px rgba(25,78,146,.22);
}

.executive-card h3{
  margin:0 0 9px;
  color:#102a56;
  font-size:19px;
  letter-spacing:-.025em;
}

.executive-card p{
  margin:0;
  color:#587291;
  font-size:13px;
  line-height:1.62;
}

.executive-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:24px;
  padding:23px 25px;
  color:#0c315f;
  background:linear-gradient(135deg,#fff,#e8f4ff);
  border:1px solid rgba(255,255,255,.9);
  border-radius:23px;
  box-shadow:0 18px 36px rgba(3,17,39,.20);
}

.executive-cta strong{
  display:block;
  margin-bottom:5px;
  font-size:20px;
}

.executive-cta span{
  display:block;
  max-width:690px;
  color:#587291;
  font-size:13px;
  line-height:1.5;
}

.executive-contact-btn{
  flex:0 0 auto;
  min-height:46px;
  padding:11px 18px;
  color:#fff;
  background:linear-gradient(135deg,#276dba,#154783);
  border:1px solid rgba(30,91,153,.5);
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  box-shadow:0 8px 18px rgba(3,22,55,.19);
  transition:transform .18s ease,box-shadow .18s ease;
}

.executive-contact-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(3,22,55,.24);
}

/* Desktop navigation */
.nav{
  width:min(1440px,calc(100% - 40px));
  gap:24px;
}

.nav-links{
  display:flex;
  flex:1 1 auto;
  align-items:center;
  justify-content:flex-end;
  gap:clamp(12px,1.35vw,22px);
  margin-left:auto;
}

.nav-links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:7px 0 9px;
  font-size:clamp(11px,1vw,14px);
  font-weight:800;
  white-space:nowrap;
}

.header-contact-trigger{
  flex:0 0 auto;
}

.mobile-contact-trigger{
  display:none;
}

.menu-btn{
  display:none;
}

/* Mobile navigation */
@media (max-width:1020px){
  .nav{
    width:calc(100% - 28px);
    gap:14px;
  }

  .brand-title-top{
    font-size:29px;
  }

  .nav-links{
    gap:11px;
  }

  .nav-links a{
    font-size:11px;
  }

  .executive-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .renewal-wrap{
    grid-template-columns:1fr;
  }
}

@media (max-width:780px){
  .nav{
    flex-wrap:nowrap;
    width:calc(100% - 20px);
    padding:9px 0;
  }

  .brand{
    flex:1 1 auto;
  }

  .brand-logo{
    flex-basis:52px;
    width:52px;
    height:52px;
  }

  .brand-title-top{
    font-size:24px;
  }

  .brand-title-bottom{
    margin-top:5px;
    font-size:9px;
  }

  .header-contact-trigger{
    display:none;
  }

  .menu-btn{
    position:relative;
    display:flex;
    flex:0 0 44px;
    width:44px;
    height:44px;
    padding:10px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.16);
    border-radius:12px;
  }

  .menu-btn span{
    display:block;
    width:22px;
    height:2px;
    background:#fff;
    border-radius:99px;
    transition:transform .18s ease,opacity .18s ease;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }

  .menu-btn[aria-expanded="true"] span:nth-child(2){
    opacity:0;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  .nav-links{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    left:0;
    display:none;
    width:100%;
    margin:0;
    padding:10px;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
    color:#102a56;
    background:rgba(250,253,255,.98);
    border:1px solid rgba(57,126,196,.20);
    border-radius:0 0 18px 18px;
    box-shadow:0 18px 36px rgba(3,18,47,.22);
    overflow:visible;
  }

  .nav-links.open{
    display:flex;
  }

  .nav-links a,
  .mobile-contact-trigger{
    width:100%;
    min-height:44px;
    padding:11px 13px;
    justify-content:flex-start;
    color:#173665;
    background:transparent;
    border:0;
    border-radius:10px;
    font-size:13px;
    font-weight:800;
    text-align:left;
    text-shadow:none;
  }

  .nav-links a::after{
    display:none;
  }

  .nav-links a:hover,
  .nav-links a.active,
  .mobile-contact-trigger:hover{
    background:#eaf4ff;
  }

  .mobile-contact-trigger{
    display:flex;
    align-items:center;
  }

  .packages-section,
  .hosting-section{
    padding:58px 18px 64px;
  }

  .renewal-section{
    padding:60px 18px;
  }

  .renewal-grid{
    grid-template-columns:1fr;
  }

  .executive-section{
    padding:58px 18px 64px;
  }

  .executive-cta{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media (max-width:620px){
  .packages-section,
  .hosting-section{
    padding:48px 12px 54px;
  }

  .packages-heading,
  .hosting-heading{
    margin-bottom:25px;
  }

  .renewal-section{
    padding:50px 12px;
  }

  .renewal-copy h2{
    font-size:36px;
  }

  .renewal-grid{
    gap:12px;
  }

  .executive-section{
    padding:48px 12px 54px;
  }

  .executive-heading{
    margin-bottom:26px;
  }

  .executive-heading h2{
    font-size:36px;
  }

  .executive-grid{
    grid-template-columns:1fr;
    gap:13px;
  }

  .executive-card{
    padding:21px 18px;
    border-radius:21px;
  }

  .executive-cta{
    padding:20px 18px;
    border-radius:21px;
  }

  .executive-contact-btn{
    width:100%;
  }
}


/* Reusable service purchase intake */
.start-intake{font:inherit;cursor:pointer;}
button.package-button{width:100%;}
button.hosting-option{width:100%;font:inherit;cursor:pointer;}
.hosting-option-action{display:block;margin-top:10px;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#17498f;}
.hosting-option.best-value .hosting-option-action{color:#fff;opacity:.92;}

.purchase-intake-modal{position:fixed;z-index:2200;inset:0;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(3,16,39,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
.purchase-intake-modal.is-open{display:flex;}
.purchase-intake-dialog{position:relative;width:min(760px,100%);max-height:min(88vh,900px);overflow:auto;padding:30px;color:#14335f;background:linear-gradient(160deg,#fff,#eef6ff);border:1px solid rgba(255,255,255,.9);border-radius:26px;box-shadow:0 30px 80px rgba(3,20,52,.38);}
.purchase-intake-close{position:absolute;z-index:2;top:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;padding:0;color:#173f79;font-size:28px;line-height:1;background:#fff;border:1px solid rgba(43,100,166,.18);border-radius:50%;box-shadow:0 8px 18px rgba(10,45,91,.10);}
.purchase-intake-header{padding-right:44px;margin-bottom:22px;}
.purchase-intake-eyebrow{margin:0 0 5px;color:#2d7bc8;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
.purchase-intake-header h2{margin:0;color:#102f5d;font-size:clamp(28px,5vw,42px);line-height:1.02;}
.purchase-intake-header p:not(.purchase-intake-eyebrow){margin:8px 0 0;color:#607895;line-height:1.5;}
.purchase-intake-selected{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:12px 14px;background:#e8f3ff;border:1px solid rgba(53,121,190,.18);border-radius:15px;}
.purchase-intake-selected strong{color:#123d84;}.purchase-intake-selected span{color:#4e6f95;font-size:13px;font-weight:800;text-align:right;}
.purchase-intake-form{display:grid;gap:18px;}
.purchase-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.purchase-field{display:grid;gap:7px;color:#173b70;font-size:13px;font-weight:800;}
.purchase-field.full{width:100%;}.purchase-field label{display:grid;gap:7px;}.purchase-field b,.purchase-choice-group b{color:#c43a48;}.purchase-field small{color:#7890aa;font-weight:700;}
.purchase-field input,.purchase-field textarea,.purchase-field select{width:100%;padding:12px 13px;color:#17345e;background:#fff;border:1px solid #c9d9ea;border-radius:12px;outline:none;box-shadow:inset 0 1px 2px rgba(8,38,76,.04);}
.purchase-field textarea{resize:vertical;min-height:68px;}.purchase-field input:focus,.purchase-field textarea:focus,.purchase-field select:focus{border-color:#3a8dd6;box-shadow:0 0 0 3px rgba(58,141,214,.14);}
.purchase-choice-group{min-width:0;margin:0;padding:16px;background:rgba(255,255,255,.70);border:1px solid rgba(57,118,180,.18);border-radius:17px;}
.purchase-choice-group legend{padding:0 6px;color:#153c73;font-size:14px;font-weight:900;}
.purchase-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px;}
.purchase-choice-grid label,.purchase-segmented label{position:relative;display:block;cursor:pointer;}
.purchase-choice-grid input,.purchase-segmented input{position:absolute;opacity:0;pointer-events:none;}
.purchase-choice-grid span{display:flex;align-items:center;justify-content:center;min-height:45px;padding:9px 10px;text-align:center;color:#456686;font-size:12px;font-weight:800;background:#fff;border:1px solid #d2dfec;border-radius:12px;transition:.16s ease;}
.purchase-choice-grid input:checked+span{color:#fff;background:linear-gradient(135deg,#3185d3,#17498f);border-color:#2f7bc2;box-shadow:0 8px 16px rgba(24,77,137,.18);}
.purchase-choice-group.compact{display:grid;gap:12px;}
.purchase-segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.purchase-segmented span{display:flex;justify-content:center;padding:11px 13px;color:#456686;font-size:12px;font-weight:900;background:#fff;border:1px solid #d2dfec;border-radius:12px;}
.purchase-segmented input:checked+span{color:#17498f;background:#dff0ff;border-color:#75abe0;}
.purchase-conditional{margin-top:2px;}.purchase-inline-check{display:flex;align-items:center;gap:8px;margin-top:9px;color:#52708d;font-size:12px;font-weight:800;cursor:pointer;}.purchase-inline-check input{width:auto;}
.purchase-intake-error{min-height:18px;margin:0;color:#b42332;font-size:12px;font-weight:800;}
.purchase-intake-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:2px;}.purchase-intake-actions.split{justify-content:space-between;margin-top:24px;}
.purchase-primary,.purchase-secondary{min-height:48px;padding:0 20px;font-weight:900;border-radius:13px;}
.purchase-primary{color:#fff;background:linear-gradient(135deg,#3185d3,#17498f);border:1px solid #256db5;box-shadow:0 10px 20px rgba(23,73,143,.22);}.purchase-secondary{color:#17498f;background:#fff;border:1px solid #bfd3e7;}
.purchase-review-list{display:grid;gap:0;margin:0;background:#fff;border:1px solid #d6e3ef;border-radius:18px;overflow:hidden;}
.purchase-review-list>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:13px 16px;border-bottom:1px solid #e8eff6;}.purchase-review-list>div:last-child{border-bottom:0;}.purchase-review-list dt{color:#7890aa;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;}.purchase-review-list dd{margin:0;color:#173b70;font-size:14px;font-weight:800;overflow-wrap:anywhere;}
body.purchase-intake-open{overflow:hidden;}
@media(max-width:680px){.purchase-intake-modal{padding:10px;align-items:flex-end;}.purchase-intake-dialog{max-height:92vh;padding:24px 16px 18px;border-radius:24px 24px 16px 16px;}.purchase-intake-grid{grid-template-columns:1fr;}.purchase-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.purchase-review-list>div{grid-template-columns:1fr;gap:4px;}.purchase-intake-actions.split{display:grid;grid-template-columns:1fr 1.4fr;}.purchase-primary,.purchase-secondary{width:100%;}.purchase-intake-selected{align-items:flex-start;flex-direction:column;gap:3px}.purchase-intake-selected span{text-align:left;}}


/* Compact service viewport layout */
@media (min-width: 901px){
  .packages-section,
  .hosting-section,
  .renewal-section,
  .executive-section{
    padding-top:28px !important;
    padding-bottom:46px !important;
  }

  .packages-wrap,
  .renewal-wrap,
  .executive-wrap{
    width:min(1120px,calc(100% - 36px)) !important;
  }

  .packages-heading,
  .hosting-heading,
  .executive-heading{
    margin-bottom:12px !important;
  }

  .packages-heading h2,
  .hosting-heading h2,
  .executive-heading h2{
    font-size:clamp(34px,3.6vw,50px) !important;
    line-height:1 !important;
  }

  .packages-heading .section-intro,
  .hosting-heading .section-intro,
  .executive-heading>p:last-child{
    margin-top:10px !important;
    font-size:13px !important;
    line-height:1.5 !important;
  }

  .packages-grid{
    gap:14px !important;
  }

  .package-card{
    padding:20px 19px !important;
    border-radius:20px !important;
  }

  .package-card h3{
    font-size:25px !important;
  }

  .package-description{
    min-height:0 !important;
    margin:8px 0 12px !important;
    font-size:12px !important;
    line-height:1.45 !important;
  }

  .package-price{
    margin-bottom:12px !important;
  }

  .package-price strong{
    font-size:34px !important;
  }

  .package-list{
    gap:5px !important;
    margin:0 0 14px !important;
    font-size:12px !important;
    line-height:1.35 !important;
  }

  .package-button{
    min-height:42px !important;
    padding:9px 14px !important;
    font-size:12px !important;
  }

  .renewal-wrap{
    grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr) !important;
    gap:26px !important;
  }

  .renewal-copy h2{
    font-size:clamp(36px,4vw,52px) !important;
  }

  .renewal-copy>p:not(.renewal-kicker){
    margin-top:14px !important;
    font-size:13px !important;
    line-height:1.55 !important;
  }

  .renewal-button{
    min-height:42px !important;
    margin-top:18px !important;
    padding:9px 16px !important;
  }

  .renewal-grid{
    gap:10px !important;
  }

  .renewal-grid article{
    padding:14px 14px !important;
    border-radius:17px !important;
  }

  .renewal-grid i{
    margin-bottom:8px !important;
    font-size:18px !important;
  }

  .renewal-grid h3{
    margin-bottom:5px !important;
    font-size:15px !important;
  }

  .renewal-grid p{
    font-size:11px !important;
    line-height:1.42 !important;
  }

  .hosting-grid{
    gap:14px !important;
  }

  .hosting-card{
    padding:18px !important;
    border-radius:20px !important;
  }

  .hosting-card h3{
    font-size:23px !important;
  }

  .hosting-card p{
    min-height:0 !important;
    margin:5px 0 12px !important;
    font-size:12px !important;
    line-height:1.42 !important;
  }

  .hosting-feature-list{
    gap:5px 12px !important;
    margin:0 0 14px !important;
    font-size:11px !important;
    line-height:1.35 !important;
  }

  .hosting-prices{
    gap:8px !important;
  }

  .hosting-option{
    min-height:82px !important;
    padding:12px 8px !important;
    border-radius:15px !important;
  }

  .hosting-option.best-value{
    padding-top:19px !important;
  }

  .hosting-option .monthly-rate strong{
    font-size:27px !important;
  }

  .hosting-option .billing-term{
    margin-top:5px !important;
    font-size:9px !important;
  }

  .hosting-option-action{
    margin-top:6px !important;
    font-size:8px !important;
  }

  .executive-grid{
    gap:12px !important;
  }

  .executive-card{
    padding:17px 16px !important;
    border-radius:19px !important;
  }

  .executive-icon{
    width:38px !important;
    height:38px !important;
    margin-bottom:10px !important;
    border-radius:11px !important;
  }

  .executive-card h3{
    margin-bottom:5px !important;
    font-size:16px !important;
  }

  .executive-card p{
    font-size:11px !important;
    line-height:1.45 !important;
  }

  .executive-cta{
    margin-top:14px !important;
    padding:15px 17px !important;
    border-radius:18px !important;
  }

  .executive-cta strong{
    font-size:17px !important;
  }

  .executive-cta span{
    font-size:11px !important;
    line-height:1.4 !important;
  }

  .executive-contact-btn{
    min-height:40px !important;
    padding:8px 15px !important;
    font-size:12px !important;
  }
}

@media (min-width: 621px) and (max-width: 900px){
  .packages-section,
  .hosting-section,
  .renewal-section,
  .executive-section{
    padding-top:28px !important;
    padding-bottom:44px !important;
  }

  .package-card,
  .hosting-card,
  .executive-card{
    padding:18px !important;
  }

  .packages-heading,
  .hosting-heading,
  .executive-heading{
    margin-bottom:12px !important;
  }

  .renewal-grid article{
    padding:15px !important;
  }
}

@media (max-width:620px){
  .packages-section,
  .hosting-section,
  .renewal-section,
  .executive-section{
    padding-top:24px !important;
    padding-bottom:38px !important;
  }

  .packages-heading,
  .hosting-heading,
  .executive-heading{
    margin-bottom:10px !important;
  }

  .package-card,
  .hosting-card,
  .executive-card{
    padding:17px 15px !important;
  }

  .package-card h3,
  .hosting-card h3{
    font-size:23px !important;
  }

  .package-description,
  .hosting-card p{
    font-size:12px !important;
    line-height:1.45 !important;
  }

  .package-list,
  .hosting-feature-list{
    font-size:11px !important;
    line-height:1.35 !important;
  }

  .renewal-grid article{
    padding:14px !important;
  }

  .executive-icon{
    width:39px !important;
    height:39px !important;
    margin-bottom:10px !important;
  }

  .executive-card p{
    font-size:12px !important;
    line-height:1.45 !important;
  }
}


/* You Run the Show — Mogra */
.site-cta-copy .show-line{font-family:"Mogra",system-ui!important;}

/* You Run the Show — refined fit */
.site-cta-copy .show-line{
  display:inline-block !important;
  max-width:100%;
  padding:0.08em 0.04em 0.12em !important;
  font-family:"Mogra",system-ui !important;
  font-size:clamp(0.92em,1.02em,1.02em) !important;
  font-weight:400 !important;
  line-height:0.94 !important;
  letter-spacing:-0.025em !important;
  white-space:nowrap !important;
  transform:none !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,.9),
    0 3px 7px rgba(15,42,94,.18) !important;
}

@media (max-width:620px){
  .site-cta-copy .show-line{
    font-size:0.9em !important;
    letter-spacing:-0.035em !important;
  }
}

/* You Run the Show — white */
.site-cta-copy .show-line{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* You Run the Show — better box fit */
.site-cta-copy .show-line{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  padding:0.02em 0 0.08em !important;
  font-size:0.94em !important;
  line-height:0.9 !important;
  letter-spacing:-0.04em !important;
  white-space:nowrap !important;
  text-align:left !important;
}

@media (max-width:620px){
  .site-cta-copy .show-line{
    font-size:0.84em !important;
    letter-spacing:-0.045em !important;
  }
}


/* =========================================================
   FINAL PAGE ARTWORK STACK
   background.jpg -> background2.jpg -> flipped background.jpg
   Uses real <img> elements so old pseudo-element rules cannot hide it.
   ========================================================= */
body{
  background:#102a56 !important;
}

main{
  position:relative !important;
  isolation:isolate !important;
  background:transparent !important;
  overflow:hidden;
}

.page-background-stack{
  position:absolute;
  z-index:0;
  top:0;
  left:0;
  width:100%;
  height:auto;
  pointer-events:none;
  user-select:none;
  overflow:visible;
}

.page-background-stack img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  padding:0;
  border:0;
}

.page-background-stack .page-background-flipped{
  transform:scaleX(-1);
  transform-origin:center center;
}

/* Keep every real page section above the artwork, but transparent. */
.hero,
.packages-section,
.renewal-section,
.hosting-section,
.executive-section{
  position:relative !important;
  z-index:1 !important;
  background:transparent !important;
  background-image:none !important;
}

/* Disable old decorative/background pseudo-elements that compete with the artwork. */
.hero::before,
.hero::after,
.packages-section::before,
.packages-section::after,
.renewal-section::before,
.renewal-section::after,
.hosting-section::before,
.hosting-section::after,
.executive-section::before,
.executive-section::after{
  background-image:none !important;
}

/* BACKTRACKED GLASS EFFECT
   Only Website Redesign + Business Support use the glass treatment. */

/* Website Redesign glass panel */
#website-redesign .renewal-copy{
  box-sizing:border-box !important;
  padding:22px 26px !important;
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
}

#website-redesign .renewal-kicker{
  color:#e8f6ff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.65) !important;
}

#website-redesign .renewal-copy h2{
  color:#fff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
}

#website-redesign .renewal-copy > p:not(.renewal-kicker){
  color:rgba(255,255,255,.96) !important;
  font-weight:600 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.62) !important;
}

/* Business Support glass heading — keep this exact treatment */
#business-support .executive-heading{
  box-sizing:border-box !important;
  width:min(760px,100%) !important;
  max-width:760px !important;
  padding:22px 26px !important;
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
}

#business-support .executive-heading .packages-kicker{
  color:#e8f6ff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.65) !important;
}

#business-support .executive-heading h2{
  color:#fff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
}

#business-support .executive-heading > p:last-child{
  color:rgba(255,255,255,.96) !important;
  font-weight:600 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.62) !important;
}

/* Explicitly keep Web Design + Hosting without glass panels */
#web-design .packages-heading,
#hosting .packages-heading{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media(max-width:620px){
  #website-redesign .renewal-copy,
  #business-support .executive-heading{
    padding:18px 16px !important;
    border-radius:18px !important;
  }
}

/* Web Design glass effect — visual only; does not move or resize the heading */
#web-design .packages-heading{
  position:relative !important;
  isolation:isolate !important;
}

#web-design .packages-heading::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:-1 !important;
  top:-22px !important;
  right:-26px !important;
  bottom:-22px !important;
  left:-26px !important;
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  pointer-events:none !important;
}

#web-design .packages-kicker{
  color:#e8f6ff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.65) !important;
}

#web-design .packages-heading h2{
  color:#fff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
}

#web-design .packages-heading .section-intro{
  color:rgba(255,255,255,.96) !important;
  font-weight:600 !important;
  text-shadow:0 2px 8px rgba(0,0,0,.62) !important;
}

@media(max-width:620px){
  #web-design .packages-heading::before{
    top:-18px !important;
    right:-16px !important;
    bottom:-18px !important;
    left:-16px !important;
    border-radius:18px !important;
  }
}

/* Web Design: one glass panel around BOTH the heading and package cards.
   Uses a pseudo-element so the existing heading/card positions do not move. */
#web-design .packages-wrap{
  position:relative !important;
  isolation:isolate !important;
}

/* Remove the smaller heading-only glass panel. */
#web-design .packages-heading::before{
  content:none !important;
  display:none !important;
}

/* One large glass panel surrounding the full Web Design block. */
#web-design .packages-wrap::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:-1 !important;
  top:-26px !important;
  right:-28px !important;
  bottom:-26px !important;
  left:-28px !important;
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:26px !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  pointer-events:none !important;
}

@media(max-width:620px){
  #web-design .packages-wrap::before{
    top:-18px !important;
    right:-12px !important;
    bottom:-18px !important;
    left:-12px !important;
    border-radius:20px !important;
  }
}

/* Hosting & Support: one glass panel around BOTH the heading and hosting cards.
   Mirrors the Web Design treatment without changing the existing internal layout. */
#hosting .packages-wrap{
  position:relative !important;
  isolation:isolate !important;
}

/* One large glass panel surrounding the full Hosting & Support block. */
#hosting .packages-wrap::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:-1 !important;
  top:-26px !important;
  right:-28px !important;
  bottom:-26px !important;
  left:-28px !important;
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  border-radius:26px !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  pointer-events:none !important;
}

@media(max-width:620px){
  #hosting .packages-wrap::before{
    top:-18px !important;
    right:-12px !important;
    bottom:-18px !important;
    left:-12px !important;
    border-radius:20px !important;
  }
}

/* Selected nav item hover: subtle center-out expansion + brighter emphasis */
.nav-links a.active::after{
  transform:scaleX(1);
  transform-origin:center;
  transition:transform .22s ease, filter .22s ease, box-shadow .22s ease;
}

@media (hover:hover) and (pointer:fine){
  .nav-links a.active:hover{
    color:#fff;
    text-shadow:0 1px 3px rgba(0,0,0,.30),0 0 8px rgba(255,255,255,.18);
    transform:translateY(-1px);
  }

  .nav-links a.active:hover::after{
    transform:scaleX(1.12);
    filter:brightness(1.18);
    box-shadow:0 0 8px rgba(57,184,255,.28);
  }
}


/* Hero CTA cards: dark glass ONLY. Button styling intentionally left unchanged. */
.site-cta-choice{
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
}

.site-cta-choice:hover{
  background:linear-gradient(135deg,rgba(10,38,80,.72),rgba(18,63,120,.52)) !important;
  border-color:rgba(255,255,255,.30) !important;
  box-shadow:0 17px 38px rgba(4,20,45,.25),inset 0 1px 0 rgba(255,255,255,.16) !important;
}

.site-cta-note{
  color:#e8f6ff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.55) !important;
}

.site-cta-note::before,
.site-cta-note::after,
.site-cta-choice:nth-child(2) .site-cta-note::before,
.site-cta-choice:nth-child(2) .site-cta-note::after{
  background:#9fdcff !important;
}

/* FINAL HERO CTA FIX: one dark-glass card around the WHOLE CTA block.
   Individual option cards/buttons are restored to their original styling. */
.site-cta{
  background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
  border:1px solid rgba(255,255,255,.20) !important;
  box-shadow:0 14px 34px rgba(4,20,45,.20),inset 0 1px 0 rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
}

/* Keep the hero title readable on the dark glass card. */
.site-cta-copy h2{
  color:#fff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
  filter:none !important;
}
.site-cta-copy .show-line{
  color:#e8f6ff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
  filter:none !important;
}

/* Restore the two inner option cards to their original light treatment. */
.site-cta-choice{
  background:linear-gradient(180deg,rgba(240,244,250,.95),rgba(223,233,246,.88)) !important;
  border:2px solid rgba(162,193,230,.96) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 0 0 1px rgba(255,255,255,.44),
    0 12px 24px rgba(41,82,152,.12) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.site-cta-choice:hover{
  background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(229,244,255,.90)) !important;
  border-color:rgba(57,143,219,.88) !important;
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 0 0 1px rgba(255,255,255,.40),
    0 0 0 1px rgba(38,111,183,.12),
    0 15px 30px rgba(18,61,132,.19) !important;
}
.site-cta-note{
  color:#4b6693 !important;
  text-shadow:none !important;
}
.site-cta-note::before,
.site-cta-note::after{
  background:#63aef1 !important;
}
.site-cta-choice:nth-child(2) .site-cta-note::before,
.site-cta-choice:nth-child(2) .site-cta-note::after{
  background:#365da6 !important;
}

/* Hero title: keep "We Run the Site." white */
.site-cta-copy h1{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:0 3px 12px rgba(0,0,0,.42) !important;
}

/* Hosting cards: equal dimensions with matching two-line descriptions */
.hosting-section .hosting-grid{
  align-items:stretch !important;
  grid-auto-rows:1fr !important;
}

.hosting-section .hosting-card{
  height:100% !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

.hosting-section .hosting-card h3{
  min-height:2.15em !important;
  display:flex !important;
  align-items:flex-start !important;
}

.hosting-section .hosting-card > p{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  overflow:hidden !important;
  min-height:3.10em !important;
  max-height:3.10em !important;
  margin-bottom:22px !important;
}

.hosting-section .hosting-feature-list{
  flex:1 1 auto !important;
}

.hosting-section .hosting-prices{
  margin-top:auto !important;
}

@media(max-width:620px){
  .hosting-section .hosting-card h3{
    min-height:0 !important;
  }
  .hosting-section .hosting-card > p{
    min-height:3.10em !important;
    max-height:3.10em !important;
  }
}

/* Final hero polish: phone-style white outline + matching title shadow */
.site-cta{
  border:1px solid rgba(255,255,255,.90) !important;
  box-shadow:
    0 0 0 5px rgba(255,255,255,.08),
    0 20px 38px rgba(0,0,0,.28),
    inset 0 0 0 1px rgba(255,255,255,.22),
    inset 0 14px 26px rgba(255,255,255,.10) !important;
}

.site-cta-copy h1{
  text-shadow:
    0 3px 12px rgba(0,0,0,.72),
    0 1px 2px rgba(0,0,0,.55) !important;
}

/* =========================================================
   FINAL MOBILE REFINEMENT
   Keep the desktop visual language, but give mobile more room.
   ========================================================= */
@media (max-width:780px){
  /* Header: large centered wordmark, logo left, menu right */
  .site-header{
    min-height:82px !important;
  }

  .nav{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:calc(100% - 24px) !important;
    min-height:82px !important;
    margin:0 auto !important;
    padding:10px 0 !important;
    gap:0 !important;
  }

  .brand{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    min-width:0 !important;
    padding:0 58px !important;
    gap:0 !important;
  }

  .brand-logo{
    position:absolute !important;
    left:0 !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:58px !important;
    height:58px !important;
    flex:0 0 58px !important;
    object-fit:contain !important;
  }

  .brand-title{
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    justify-items:center !important;
    text-align:center !important;
    overflow:visible !important;
  }

  .brand-title-top{
    max-width:none !important;
    overflow:visible !important;
    text-overflow:clip !important;
    font-size:clamp(23px,7vw,31px) !important;
    line-height:.92 !important;
    letter-spacing:.025em !important;
    white-space:nowrap !important;
  }

  .brand-title-bottom{
    justify-content:center !important;
    width:100% !important;
    margin-top:6px !important;
    gap:7px !important;
    font-size:9px !important;
    letter-spacing:.22em !important;
  }

  /* Reliable hamburger button */
  .menu-btn{
    position:absolute !important;
    z-index:5 !important;
    top:50% !important;
    right:0 !important;
    display:flex !important;
    flex:0 0 48px !important;
    width:48px !important;
    height:48px !important;
    padding:0 !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:6px !important;
    color:#fff !important;
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.28) !important;
    border-radius:13px !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
    transform:translateY(-50%) !important;
  }

  .menu-btn:hover{
    transform:translateY(-50%) !important;
    background:rgba(255,255,255,.12) !important;
  }

  .menu-btn span{
    position:relative !important;
    display:block !important;
    width:24px !important;
    height:2px !important;
    min-height:2px !important;
    margin:0 !important;
    background:#fff !important;
    border:0 !important;
    border-radius:999px !important;
    transform:none !important;
    opacity:1 !important;
    transition:transform .2s ease,opacity .2s ease !important;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(1){
    transform:translateY(8px) rotate(45deg) !important;
  }
  .menu-btn[aria-expanded="true"] span:nth-child(2){
    opacity:0 !important;
    transform:scaleX(.2) !important;
  }
  .menu-btn[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg) !important;
  }

  .nav-links{
    top:calc(100% + 4px) !important;
    right:-12px !important;
    left:-12px !important;
    width:auto !important;
    padding:12px !important;
    border-radius:0 0 20px 20px !important;
  }

  /* Hero starts below the larger header */
  .hero{
    padding:100px 12px 38px !important;
    gap:20px !important;
  }

  /* Make the whole hero CTA look like the desktop glass card */
  .site-cta{
    width:min(100%,620px) !important;
    max-width:620px !important;
    padding:22px 18px 20px !important;
    gap:18px !important;
    border-radius:24px !important;
    background:linear-gradient(135deg,rgba(8,31,67,.62),rgba(15,53,105,.42)) !important;
    border:1px solid rgba(255,255,255,.90) !important;
    box-shadow:
      0 0 0 5px rgba(255,255,255,.08),
      0 20px 38px rgba(0,0,0,.28),
      inset 0 0 0 1px rgba(255,255,255,.22),
      inset 0 14px 26px rgba(255,255,255,.10) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
  }

  .site-cta-copy{
    width:100% !important;
    text-align:center !important;
  }

  .site-cta-copy h1{
    width:100% !important;
    margin:0 auto !important;
    max-width:none !important;
    text-align:center !important;
    font-size:clamp(34px,9vw,44px)!important;
    line-height:.95 !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-shadow:0 3px 12px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.55) !important;
  }

  .site-cta-copy h2{
    width:100% !important;
    margin:5px auto 0 !important;
    text-align:center !important;
    font-size:clamp(32px,8.5vw,42px)!important;
    line-height:1 !important;
  }

  .site-cta-copy .show-line{
    display:block !important;
    width:100% !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .site-cta-actions{
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    width:100% !important;
    gap:12px !important;
  }

  .site-cta-choice{
    display:grid !important;
    grid-template-rows:1fr 46px !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:96px !important;
    min-height:96px !important;
    max-height:96px !important;
    margin:0 !important;
    padding:8px 12px 10px !important;
    gap:5px !important;
    border-radius:17px !important;
  }

  .site-cta-choice:nth-child(1){ order:1 !important; }
  .site-cta-choice:nth-child(2){ order:2 !important; }

  .site-cta-note{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:stretch !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    font-size:14px !important;
    line-height:1 !important;
    letter-spacing:.08em !important;
    white-space:nowrap !important;
    text-align:center !important;
  }

  .site-cta-note::before,
  .site-cta-note::after{
    width:28px !important;
    height:3px !important;
  }

  .site-cta-btn{
    display:flex !important;
    flex:0 0 46px !important;
    width:100% !important;
    min-width:0 !important;
    height:46px !important;
    min-height:46px !important;
    max-height:46px !important;
    padding:0 12px !important;
    font-size:18px !important;
    font-weight:800 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
  }

  /* Phone previews: substantially taller and more desktop-like */
  .hero-card{
    width:min(100%,620px) !important;
    max-width:620px !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
  }

  .phone-grid{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }

  .phone{
    width:100% !important;
    min-height:500px !important;
    height:500px !important;
    padding:18px 14px 14px !important;
    border-radius:25px !important;
  }

  .phone-screen{
    height:100% !important;
    gap:9px !important;
  }

  .mini-header{
    padding:15px 16px !important;
  }

  .card-title{
    font-size:20px !important;
  }

  /* Lunch preview */
  .photo-frame{
    flex:0 0 220px !important;
    min-height:220px !important;
    padding:12px 12px 4px !important;
  }

  .photo-card{
    width:calc(100% + 24px) !important;
    height:215px !important;
    margin:-12px -12px 0 !important;
    transform:rotate(-18deg) scale(1.12) !important;
  }

  .info-card{
    padding:15px 16px !important;
  }

  .info-card h3{
    font-size:16px !important;
  }

  .info-card p{
    font-size:12px !important;
    line-height:1.45 !important;
  }

  .metric{
    min-height:64px !important;
    padding:12px 6px !important;
  }

  .metric strong{
    font-size:18px !important;
  }

  .metric span{
    font-size:10px !important;
  }

  /* Blog preview: larger photos/card content */
  .phone:nth-child(2){
    min-height:540px !important;
    height:540px !important;
  }

  .blog-shell{
    gap:10px !important;
  }

  .blog-top{
    padding:12px 13px !important;
  }

  .blog-mark{
    font-size:15px !important;
  }

  .blog-viewport{
    min-height:300px !important;
    flex:1 1 auto !important;
  }

  .blog-post{
    padding:8px !important;
    gap:10px !important;
  }

  .blog-image,
  .blog-post::before{
    flex-basis:225px !important;
    height:225px !important;
  }

  .blog-copy{
    min-height:70px !important;
    padding:12px 13px !important;
  }

  .blog-copy h3{
    font-size:15px !important;
  }

  .blog-copy p{
    font-size:10px !important;
  }

  .blog-socials{
    padding:12px 14px !important;
  }

  /* Budget preview gets the same breathing room */
  .phone:nth-child(3){
    min-height:500px !important;
    height:500px !important;
  }

  .budget-card{
    padding:17px !important;
  }

  .budget-value{
    font-size:30px !important;
  }

  .category-list{
    gap:9px !important;
  }

  .category{
    padding:13px 14px !important;
  }

  .category-line{
    font-size:12px !important;
  }
}

@media (max-width:430px){
  .site-header,
  .nav{
    min-height:78px !important;
  }

  .nav{
    width:calc(100% - 18px) !important;
  }

  .brand{
    padding:0 50px !important;
  }

  .brand-logo{
    width:50px !important;
    height:50px !important;
    flex-basis:50px !important;
  }

  .brand-title-top{
    font-size:clamp(20px,6.6vw,27px) !important;
  }

  .brand-title-bottom{
    font-size:8px !important;
    letter-spacing:.18em !important;
  }

  .menu-btn{
    width:44px !important;
    height:44px !important;
    flex-basis:44px !important;
  }

  .hero{
    padding:94px 9px 32px !important;
  }

  .site-cta{
    padding:18px 14px !important;
    border-radius:21px !important;
  }

  .site-cta-copy h1{
    font-size:clamp(34px,10vw,42px) !important;
    text-align:center !important;
  }

  .site-cta-copy h2{
    font-size:clamp(30px,9vw,38px) !important;
    text-align:center !important;
  }

  .site-cta-actions{
    gap:9px !important;
  }


  .phone{
    min-height:480px !important;
    height:480px !important;
  }

  .phone:nth-child(2){
    min-height:520px !important;
    height:520px !important;
  }

  .phone:nth-child(3){
    min-height:480px !important;
    height:480px !important;
  }

  .photo-frame{
    flex-basis:205px !important;
    min-height:205px !important;
  }

  .photo-card{
    height:200px !important;
  }

  .blog-image,
  .blog-post::before{
    flex-basis:210px !important;
    height:210px !important;
  }
}


/* ===== Popup usability + simplified mobile dialogs ===== */
body.modal-open,
body.purchase-intake-open{
  overflow:hidden !important;
}

.intake-modal,
.purchase-intake-modal{
  z-index:5000 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
  align-items:flex-start !important;
  justify-content:center !important;
  place-items:start center !important;
  padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom)) !important;
  scroll-padding-top:max(14px,env(safe-area-inset-top)) !important;
}

.intake-dialog,
.purchase-intake-dialog{
  width:min(720px,100%) !important;
  max-width:100% !important;
  max-height:calc(100dvh - max(28px,env(safe-area-inset-top) + env(safe-area-inset-bottom))) !important;
  margin:auto 0 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
  scroll-behavior:smooth !important;
  scroll-padding-top:12px !important;
}

.intake-header,
.purchase-intake-header{
  position:relative !important;
}

.intake-close,
.purchase-intake-close{
  position:sticky !important;
  top:10px !important;
  float:right !important;
  margin:10px 10px -52px 0 !important;
  z-index:30 !important;
}

.intake-form,
.purchase-intake-form{
  gap:18px !important;
}

.intake-field textarea,
.purchase-field textarea{
  min-height:92px !important;
}

/* Keep the forms focused on essential information. */
.intake-required-note{display:none !important;}

@media(max-width:700px){
  .intake-modal,
  .purchase-intake-modal{
    padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom)) !important;
  }

  .intake-dialog,
  .purchase-intake-dialog{
    width:100% !important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top) + env(safe-area-inset-bottom))) !important;
    margin:0 !important;
    border-radius:22px !important;
  }

  .intake-header,
  .purchase-intake-header{
    padding:22px 54px 16px 18px !important;
  }

  .intake-form,
  .purchase-intake-form{
    padding:18px !important;
  }

  .intake-actions,
  .purchase-intake-actions{
    position:static !important;
    margin:0 !important;
    padding:0 !important;
  }
}


/* =========================================================
   FINAL MOBILE NAVIGATION
   One clean menu style that overrides older mobile nav rules.
   ========================================================= */
@media (max-width:780px){
  .site-header{
    overflow:visible !important;
  }

  .nav{
    position:relative !important;
    overflow:visible !important;
  }

  .menu-btn{
    position:absolute !important;
    top:50% !important;
    right:0 !important;
    display:flex !important;
    width:46px !important;
    height:46px !important;
    flex:0 0 46px !important;
    padding:0 !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:5px !important;
    background:rgba(255,255,255,.11) !important;
    border:1px solid rgba(255,255,255,.24) !important;
    border-radius:14px !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.12),
      0 7px 18px rgba(1,13,34,.14) !important;
    transform:translateY(-50%) !important;
    transition:background .2s ease,border-color .2s ease,box-shadow .2s ease !important;
  }

  .menu-btn:hover,
  .menu-btn:active{
    transform:translateY(-50%) !important;
    background:rgba(255,255,255,.17) !important;
    border-color:rgba(255,255,255,.38) !important;
  }

  .menu-btn span{
    display:block !important;
    width:23px !important;
    height:2px !important;
    min-height:2px !important;
    margin:0 !important;
    background:#fff !important;
    border-radius:999px !important;
    opacity:1 !important;
    transform:none !important;
    transition:transform .22s ease,opacity .18s ease,width .22s ease !important;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(1){
    transform:translateY(7px) rotate(45deg) !important;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(2){
    width:0 !important;
    opacity:0 !important;
  }

  .menu-btn[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg) !important;
  }

  #primary-navigation.nav-links{
    position:absolute !important;
    z-index:1002 !important;
    top:calc(100% + 9px) !important;
    right:0 !important;
    left:auto !important;
    display:none !important;
    width:min(340px,calc(100vw - 20px)) !important;
    max-height:calc(100dvh - 92px) !important;
    margin:0 !important;
    padding:9px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:5px !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    color:#102a56 !important;
    background:rgba(248,252,255,.98) !important;
    border:1px solid rgba(83,145,205,.25) !important;
    border-radius:18px !important;
    box-shadow:
      0 22px 52px rgba(2,18,48,.28),
      inset 0 1px 0 rgba(255,255,255,.95) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    transform-origin:top right !important;
  }

  #primary-navigation.nav-links.open{
    display:flex !important;
    animation:mobileNavIn .18s ease-out both;
  }

  #primary-navigation.nav-links a,
  #primary-navigation .mobile-contact-trigger{
    position:relative !important;
    display:flex !important;
    width:100% !important;
    min-height:48px !important;
    padding:12px 14px !important;
    align-items:center !important;
    justify-content:flex-start !important;
    color:#173665 !important;
    background:transparent !important;
    border:1px solid transparent !important;
    border-radius:12px !important;
    font-size:14px !important;
    font-weight:750 !important;
    line-height:1.2 !important;
    text-align:left !important;
    text-shadow:none !important;
    transition:
      background .18s ease,
      border-color .18s ease,
      color .18s ease,
      transform .18s ease !important;
  }

  #primary-navigation.nav-links a::after{
    display:none !important;
  }

  #primary-navigation.nav-links a:hover,
  #primary-navigation .mobile-contact-trigger:hover{
    background:#eef6ff !important;
    border-color:#d8eaff !important;
  }

  #primary-navigation.nav-links a.active{
    padding-left:17px !important;
    color:#0b3b7a !important;
    background:linear-gradient(135deg,#e8f4ff,#f5faff) !important;
    border-color:#c8e2fb !important;
    box-shadow:inset 3px 0 0 #2f7dcc !important;
  }

  #primary-navigation.nav-links a.active::before{
    content:"";
    flex:0 0 7px;
    width:7px;
    height:7px;
    margin-right:10px;
    background:#2f7dcc;
    border-radius:50%;
    box-shadow:0 0 0 4px rgba(47,125,204,.11);
  }

  #primary-navigation .mobile-contact-trigger{
    margin-top:3px !important;
    color:#fff !important;
    background:linear-gradient(135deg,#286fbc,#164a87) !important;
    border-color:rgba(22,74,135,.35) !important;
    box-shadow:0 8px 18px rgba(13,56,110,.16) !important;
  }

  #primary-navigation .mobile-contact-trigger:hover{
    color:#fff !important;
    background:linear-gradient(135deg,#307ccf,#195394) !important;
    border-color:rgba(22,74,135,.45) !important;
  }
}

@media (max-width:480px){
  #primary-navigation.nav-links{
    right:-2px !important;
    width:calc(100vw - 18px) !important;
  }
}

@keyframes mobileNavIn{
  from{
    opacity:0;
    transform:translateY(-7px) scale(.985);
  }
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

/* Desktop card spacing refinement — keep existing card sizes, reduce internal empty space */
@media (min-width:901px){
  /* Website Design package cards */
  .package-description{
    min-height:44px !important;
    margin:9px 0 14px !important;
    line-height:1.42 !important;
  }

  .package-price{
    padding:11px 0 10px !important;
    margin-bottom:0 !important;
  }

  .package-list{
    gap:8px !important;
    margin-top:14px !important;
    margin-bottom:18px !important;
  }

  .package-list li{
    line-height:1.35 !important;
  }

  /* Hosting cards */
  .hosting-card h3{
    margin-bottom:5px !important;
  }

  .hosting-card p{
    min-height:36px !important;
    margin-bottom:12px !important;
    line-height:1.42 !important;
  }

  .hosting-feature-list{
    gap:6px !important;
    margin-bottom:14px !important;
  }

  .hosting-feature-list li{
    padding:8px 10px 8px 29px !important;
    line-height:1.18 !important;
  }

  .hosting-prices{
    gap:9px !important;
  }

  .hosting-option{
    min-height:104px !important;
    padding:13px 9px 11px !important;
  }

  .hosting-option.best-value{
    padding-top:22px !important;
  }

  .hosting-option .billing-term{
    margin-top:5px !important;
    line-height:1.18 !important;
  }
}


/* Final desktop hosting alignment — tighter content, equal top/bottom balance */
@media (min-width:901px){
  .hosting-section .hosting-card{
    padding-top:24px !important;
    padding-bottom:24px !important;
  }

  .hosting-section .hosting-card h3{
    min-height:0 !important;
    margin:0 0 4px !important;
    line-height:1.04 !important;
  }

  .hosting-section .hosting-card > p{
    min-height:2.84em !important;
    max-height:2.84em !important;
    margin:0 0 9px !important;
    line-height:1.42 !important;
  }

  .hosting-section .standard-hosting > p{
    max-width:390px !important;
  }

  .hosting-section .hosting-feature-list{
    flex:0 0 auto !important;
    gap:5px 8px !important;
    margin:0 0 10px !important;
  }

  .hosting-section .hosting-feature-list li{
    padding-top:7px !important;
    padding-bottom:7px !important;
    line-height:1.16 !important;
  }

  .hosting-section .hosting-prices{
    margin-top:0 !important;
    gap:8px !important;
  }

  .hosting-section .hosting-option{
    min-height:98px !important;
    padding:11px 8px 10px !important;
  }

  .hosting-section .hosting-option.best-value{
    padding-top:20px !important;
  }

  .hosting-section .hosting-option .billing-term{
    margin-top:4px !important;
  }

  .hosting-section .hosting-option-action{
    margin-top:6px !important;
  }
}


/* Final desktop hosting balance: one-line titles, equal cards, compact spacing */
@media (min-width:901px){
  .hosting-section .hosting-grid{
    align-items:stretch !important;
  }

  .hosting-section .hosting-card,
  .hosting-section .hosting-card:nth-child(odd),
  .hosting-section .hosting-card:nth-child(even){
    height:100% !important;
    min-height:0 !important;
    transform:none !important;
    padding:24px !important;
    display:flex !important;
    flex-direction:column !important;
  }

  .hosting-section .hosting-card h3{
    min-height:0 !important;
    margin:0 0 5px !important;
    line-height:1.08 !important;
    white-space:nowrap !important;
  }

  .hosting-section .hosting-card > p{
    min-height:4.26em !important;
    max-height:4.26em !important;
    margin:0 0 8px !important;
    line-height:1.42 !important;
    overflow:hidden !important;
  }

  .hosting-section .standard-hosting > p{
    max-width:none !important;
  }

  .hosting-section .hosting-feature-list{
    flex:0 0 auto !important;
    gap:5px 8px !important;
    margin:0 0 10px !important;
  }

  .hosting-section .hosting-prices{
    margin-top:auto !important;
    gap:8px !important;
  }
}
