:root {
  --pc-home-ink: #101a31;
  --pc-home-blue: #316cff;
  --pc-home-soft-blue: #eaf1ff;
  --pc-home-line: #e4e9f2;
  --pc-home-muted: #5f6c83;
}

/* Elementor previously supplied a full-width canvas. Keep the custom homepage
   full bleed when WordPress renders it inside Blocksy's constrained content. */
body.home .site-main .entry-content.is-layout-constrained {
  margin: 0 !important;
  max-width: none !important;
  padding: 0 !important;
  width: 100% !important;
}

body.home .site-main .entry-content.is-layout-constrained > .phonescasely-home {
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

.phonescasely-home { background: #fff; color: var(--pc-home-ink); overflow: hidden; }
.phonescasely-home__container { margin: 0 auto; max-width: 1400px; padding-inline: clamp(20px, 4vw, 64px); }
.phonescasely-home-hero { background: #eaf3ff var(--pc-home-hero) right center / cover no-repeat; min-height: min(650px, 47vw); position: relative; }
.phonescasely-home-hero__inner { align-items: center; display: flex; min-height: inherit; padding-block: clamp(70px, 8vw, 118px); }
.phonescasely-home-hero__content { max-width: 530px; }
.phonescasely-home-eyebrow { color: #40679f; font-size: 12px; font-weight: 800; letter-spacing: .14em; margin: 0 0 14px; text-transform: uppercase; }
.phonescasely-home h1, .phonescasely-home h2 { color: var(--pc-home-ink); font-family: inherit; letter-spacing: -.052em; }
.phonescasely-home h1 { font-size: clamp(42px, 5.2vw, 74px); line-height: .99; margin: 0; max-width: 500px; }
.phonescasely-home h2 { font-size: clamp(30px, 3.4vw, 48px); line-height: 1.02; margin: 0; }
.phonescasely-home-hero__copy { color: #425674; font-size: clamp(16px, 1.35vw, 19px); line-height: 1.55; margin: 25px 0 29px; max-width: 470px; }
.phonescasely-home-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 22px; }
.phonescasely-home-button { align-items: center; background: var(--pc-home-blue); border-radius: 999px; color: #fff !important; display: inline-flex; font-size: 15px; font-weight: 750; gap: 22px; justify-content: center; min-height: 52px; padding: 0 25px; text-decoration: none !important; transition: transform .2s ease, background .2s ease; }
.phonescasely-home-button:hover { background: #164ee0; transform: translateY(-2px); }
.phonescasely-home-text-link { color: var(--pc-home-ink); font-size: 14px; font-weight: 750; text-decoration: underline; text-underline-offset: 4px; }
.phonescasely-home-hero__proof { align-items: center; display: flex; gap: 12px; margin-top: 39px; }
.phonescasely-home-hero__proof strong, .phonescasely-home-hero__proof span { display: block; }
.phonescasely-home-hero__proof strong { font-size: 13px; }
.phonescasely-home-hero__proof span { color: var(--pc-home-muted); font-size: 12px; margin-top: 2px; }
.phonescasely-home-hero__stars { color: #ff9e4c; font-size: 17px; letter-spacing: 1px; line-height: 1; white-space: nowrap; }

.phonescasely-home-promise { border-bottom: 1px solid var(--pc-home-line); border-top: 1px solid var(--pc-home-line); }.phonescasely-home-promise__grid { display: grid; grid-template-columns: repeat(4, 1fr); }.phonescasely-home-promise__grid > div { align-items: center; border-right: 1px solid var(--pc-home-line); display: grid; gap: 0 9px; grid-template-columns: 28px 1fr; min-height: 92px; }.phonescasely-home-promise__grid > div:last-child { border-right: 0; }.phonescasely-home-promise__icon { align-items: center; background: var(--pc-home-soft-blue); border-radius: 50%; color: var(--pc-home-blue); display: flex; font-size: 17px; grid-row: span 2; height: 28px; justify-content: center; width: 28px; }.phonescasely-home-promise strong { font-size: 13px; }.phonescasely-home-promise small { color: var(--pc-home-muted); font-size: 11px; }

.phonescasely-home-section { padding-block: clamp(65px, 8vw, 116px); }.phonescasely-home-section__heading { align-items: end; display: flex; justify-content: space-between; margin-bottom: 35px; }.phonescasely-home-section__heading .phonescasely-home-eyebrow { margin-bottom: 10px; }.phonescasely-home-devices { background: #fbfcff; }.phonescasely-home-devices__grid { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }.phonescasely-home-device { background: #fff; border: 1px solid var(--pc-home-line); border-radius: 15px; color: var(--pc-home-ink); display: block; overflow: hidden; padding: 14px; text-decoration: none !important; transition: border-color .2s ease, transform .2s ease; }.phonescasely-home-device:hover { border-color: #8fb0ff; transform: translateY(-4px); }.phonescasely-home-device__image { align-items: center; background: #f5f7fc; border-radius: 10px; display: flex; height: 200px; justify-content: center; overflow: hidden; }.phonescasely-home-device__image img { height: 100%; object-fit: contain; width: 100%; }.phonescasely-home-device > span { display: block; font-size: 18px; font-weight: 750; margin-top: 16px; }.phonescasely-home-device b { color: #4c607d; display: block; font-size: 12px; margin-top: 6px; }.phonescasely-home-device i { color: var(--pc-home-blue); font-style: normal; margin-left: 4px; }

.phonescasely-home-featured { padding-top: clamp(65px, 8vw, 112px); }.phonescasely-home-products { display: grid; gap: clamp(14px, 2vw, 28px); grid-template-columns: repeat(4, minmax(0, 1fr)); }.phonescasely-home-product-card__image { align-items: center; background: #f8f9fc; border-radius: 12px; display: flex; aspect-ratio: 1 / 1; justify-content: center; overflow: hidden; }.phonescasely-home-product-card__image img { height: 100%; object-fit: contain; width: 100%; }.phonescasely-home-product-card__body { padding: 14px 3px 0; }.phonescasely-home-product-card__name { -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: var(--pc-home-ink); display: -webkit-box; font-size: 15px; font-weight: 750; line-height: 1.3; min-height: 2.6em; overflow: hidden; text-decoration: none; }.phonescasely-home-product-card__rating { color: #ff9e4c; font-size: 14px; letter-spacing: 1px; margin-top: 9px; }.phonescasely-home-product-card__price { color: #4c607d; font-size: 15px; font-weight: 700; margin-top: 7px; }.phonescasely-home-product-card__price ins { color: inherit; text-decoration: none; }

.phonescasely-home-story { background: #101a31; color: #e8efff; }.phonescasely-home-story__grid { align-items: center; display: grid; gap: clamp(34px, 7vw, 116px); grid-template-columns: minmax(260px, .95fr) minmax(290px, 1fr); padding-block: clamp(65px, 8vw, 116px); }.phonescasely-home-story h2 { color: #fff; }.phonescasely-home-story .phonescasely-home-eyebrow { color: #91b4ff; }.phonescasely-home-story__content > p:not(.phonescasely-home-eyebrow) { color: #c9d6ec; font-size: 17px; line-height: 1.6; margin: 23px 0; }.phonescasely-home-story ul { color: #eaf1ff; display: grid; font-size: 14px; gap: 12px; list-style: none; margin: 0 0 28px; padding: 0; }.phonescasely-home-story li { padding-left: 22px; position: relative; }.phonescasely-home-story li:before { color: #76a1ff; content: '•'; font-size: 20px; left: 3px; line-height: .8; position: absolute; }.phonescasely-home-button--light { background: #fff; color: #101a31 !important; }.phonescasely-home-button--light:hover { background: #dfeaff; }.phonescasely-home-story__visual { background: linear-gradient(135deg, #1d335e 0%, #12213d 58%, #0e1930 100%); border: 1px solid rgba(197, 216, 255, .16); border-radius: 18px; height: 430px; overflow: hidden; position: relative; }.phonescasely-home-story__glow { background: radial-gradient(circle, rgba(108,151,241,.7) 0%, rgba(54,89,152,.28) 38%, transparent 70%); height: 410px; left: 48%; position: absolute; top: -115px; transform: translateX(-50%); width: 410px; }.phonescasely-home-story__product { background: #f7f9ff; border: 6px solid rgba(255,255,255,.88); border-radius: 22px; box-shadow: 0 25px 45px rgba(0,0,0,.25); height: 67%; object-fit: contain; padding: 6px; position: absolute; width: 42%; z-index: 1; }.phonescasely-home-story__product--1 { bottom: 28px; left: 16%; transform: rotate(-8deg); }.phonescasely-home-story__product--2 { right: 15%; top: 30px; transform: rotate(9deg); }

.phonescasely-home-reviews { background: #f5f8ff; }.phonescasely-home-reviews__intro { align-items: end; display: flex; justify-content: space-between; margin-bottom: 34px; }.phonescasely-home-reviews__intro .phonescasely-home-eyebrow { margin-bottom: 10px; }.phonescasely-home-reviews__rating { display: grid; gap: 4px; grid-template-columns: auto 1fr; text-align: right; }.phonescasely-home-reviews__rating strong { font-size: 30px; grid-row: span 2; }.phonescasely-home-reviews__rating span { color: #ff9e4c; font-size: 15px; letter-spacing: 1px; }.phonescasely-home-reviews__rating small { color: var(--pc-home-muted); font-size: 11px; }.phonescasely-home-reviews__grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }.phonescasely-home-review-card { background: #fff; border: 1px solid #e3eaf7; border-radius: 15px; display: flex; flex-direction: column; min-height: 240px; padding: 25px; }.phonescasely-home-review-card__stars { color: #ff9e4c; font-size: 15px; letter-spacing: 1px; }.phonescasely-home-review-card > p { color: #293b59; font-size: 15px; line-height: 1.55; margin: 17px 0 auto; }.phonescasely-home-review-card footer { align-items: center; display: flex; gap: 10px; margin-top: 21px; }.phonescasely-home-review-card__avatar { align-items: center; background: #e3edff; border-radius: 50%; color: #3561ad; display: flex; font-size: 13px; font-weight: 800; height: 34px; justify-content: center; width: 34px; }.phonescasely-home-review-card strong, .phonescasely-home-review-card small { display: block; }.phonescasely-home-review-card strong { font-size: 12px; }.phonescasely-home-review-card small { color: var(--pc-home-muted); font-size: 11px; margin-top: 2px; }

.phonescasely-home-closing { background: #eef4ff; text-align: center; }.phonescasely-home-closing .phonescasely-home__container { padding-block: clamp(66px, 8vw, 104px); }.phonescasely-home-closing h2 { font-size: clamp(34px, 4.5vw, 56px); margin: 0 auto 14px; max-width: 700px; }.phonescasely-home-closing p:not(.phonescasely-home-eyebrow) { color: var(--pc-home-muted); font-size: 16px; margin: 0 auto 26px; }

@media (max-width: 1100px) { .phonescasely-home-hero { min-height: 535px; }.phonescasely-home-hero__content { max-width: 450px; }.phonescasely-home-device__image { height: 170px; } }
@media (max-width: 800px) { .phonescasely-home-hero { background-position: 63% center; min-height: 590px; }.phonescasely-home-hero:before { background: linear-gradient(90deg, rgba(239,247,255,.97) 0%, rgba(239,247,255,.86) 44%, rgba(239,247,255,.14) 100%); content: ''; inset: 0; position: absolute; }.phonescasely-home-hero__inner { position: relative; z-index: 1; }.phonescasely-home-promise__grid { grid-template-columns: repeat(2, 1fr); }.phonescasely-home-promise__grid > div { border-bottom: 1px solid var(--pc-home-line); padding-left: 4px; }.phonescasely-home-promise__grid > div:nth-child(2n) { border-right: 0; }.phonescasely-home-devices__grid { grid-template-columns: repeat(2, 1fr); }.phonescasely-home-device__image { height: 180px; }.phonescasely-home-products { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 29px; }.phonescasely-home-story__grid { grid-template-columns: 1fr; }.phonescasely-home-story__visual { height: 370px; }.phonescasely-home-reviews__grid { grid-template-columns: 1fr; }.phonescasely-home-review-card { min-height: 0; }.phonescasely-home-review-card:not(:first-child) { display: none; } }
@media (max-width: 520px) { .phonescasely-home__container { padding-inline: 20px; }.phonescasely-home-hero { background-position: 61% center; min-height: 555px; }.phonescasely-home-hero__inner { align-items: flex-start; padding-top: 62px; }.phonescasely-home-hero__content { max-width: 310px; }.phonescasely-home h1 { font-size: 45px; }.phonescasely-home-hero__copy { font-size: 15px; margin: 18px 0 24px; }.phonescasely-home-actions { align-items: flex-start; flex-direction: column; gap: 13px; }.phonescasely-home-hero__proof { margin-top: 28px; }.phonescasely-home-promise__grid > div { min-height: 77px; }.phonescasely-home-promise strong { font-size: 12px; }.phonescasely-home-promise small { font-size: 10px; }.phonescasely-home-section__heading, .phonescasely-home-reviews__intro { align-items: start; flex-direction: column; gap: 17px; margin-bottom: 25px; }.phonescasely-home-section__heading h2 { font-size: 32px; }.phonescasely-home-device { padding: 10px; }.phonescasely-home-device__image { height: 140px; }.phonescasely-home-device > span { font-size: 15px; margin-top: 11px; }.phonescasely-home-device b { font-size: 11px; }.phonescasely-home-product-card__name { font-size: 14px; }.phonescasely-home-story__visual { height: 310px; }.phonescasely-home-story__case { height: 210px; width: 134px; }.phonescasely-home-reviews__rating { text-align: left; }.phonescasely-home-reviews__intro { margin-bottom: 25px; } }

/* Homepage refinement: compact trust bar, native WooCommerce cards, and review marquee. */
.phonescasely-home-promise { background: #fff; }
.phonescasely-home-promise__grid { align-items: stretch; }
.phonescasely-home-promise__grid > div {
  align-items: center;
  border-right: 1px solid var(--pc-home-line);
  display: flex;
  gap: 11px;
  grid-template-columns: none;
  justify-content: center;
  min-height: 78px;
  padding: 13px clamp(10px, 1.5vw, 24px);
}
.phonescasely-home-promise__grid > div > span:last-child { min-width: 0; }
.phonescasely-home-promise__grid > div:last-child { border-right: 0; }
.phonescasely-home-promise__icon { flex: 0 0 28px; grid-row: auto; }
.phonescasely-home-promise strong, .phonescasely-home-promise small { display: block; }
.phonescasely-home-promise strong { font-size: 13px; line-height: 1.25; }
.phonescasely-home-promise small { font-size: 11px; line-height: 1.25; margin-top: 2px; }

.phonescasely-home-products { display: block; }
.phonescasely-home-products .woocommerce { margin: 0; }
.phonescasely-home-products .products { margin-bottom: 0; }

.phonescasely-home-reviews { overflow: hidden; padding-bottom: clamp(65px, 8vw, 116px); }
.phonescasely-home-review-rail { margin-top: 0; overflow: hidden; padding-inline: clamp(20px, 4vw, 64px); }
.phonescasely-home-review-rail__track { animation: phonescasely-review-scroll 195s linear infinite; display: flex; gap: 18px; width: max-content; will-change: transform; }
.phonescasely-home-review-rail:hover .phonescasely-home-review-rail__track { animation-play-state: paused; }
.phonescasely-home-review-card { flex: 0 0 340px; min-height: 225px; }
.phonescasely-home-review-card > p { font-size: 14px; }
@keyframes phonescasely-review-scroll { from { transform: translateX(0); } to { transform: translateX(calc(-50% - 9px)); } }

@media (max-width: 800px) {
  .phonescasely-home-promise__grid > div { justify-content: flex-start; padding-inline: 20px; }
  .phonescasely-home-promise__grid > div:nth-child(2n) { border-right: 0; }
  .phonescasely-home-review-rail { padding-inline: 20px; }
  .phonescasely-home-review-card { flex-basis: min(310px, calc(100vw - 55px)); }
}

@media (max-width: 520px) {
  .phonescasely-home-promise__grid > div { gap: 8px; min-height: 70px; padding-inline: 12px; }
  .phonescasely-home-promise__icon { flex-basis: 25px; height: 25px; width: 25px; }
  .phonescasely-home-promise strong { font-size: 11px; }
  .phonescasely-home-promise small { font-size: 9px; }
  .phonescasely-home-review-card { min-height: 205px; padding: 20px; }
}

/* The original mobile layout hid all but one review; keep every card in the rail. */
.phonescasely-home-review-rail .phonescasely-home-review-card:not(:first-child) {
  display: flex;
}
@media (max-width: 800px) {
  .phonescasely-home-review-rail__track {
    animation-duration: 125s;
  }
}

@media (prefers-reduced-motion: reduce) { .phonescasely-home-review-rail__track { animation: none; } }

/* Device collection artwork is intentionally a true square, edge to edge. */
.phonescasely-home-device__image {
  aspect-ratio: 1 / 1;
  height: auto !important;
}
.phonescasely-home-device__image img {
  object-fit: cover;
}

/* Match New Arrivals card typography to the compact device-category cards. */
.phonescasely-home-products ul.products li.product .woocommerce-loop-product__title {
  font-size: 18px !important;
  line-height: 1.3 !important;
  min-height: 2.6em !important;
}
@media (max-width: 520px) {
  .phonescasely-home-products ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px !important;
  }
}

/* Product-led story visual: a genuine studio still-life, not a synthetic card collage. */
.phonescasely-home-story__visual { background: #13213b; }
.phonescasely-home-story__image { display: block; height: 100%; object-fit: cover; object-position: 58% center; width: 100%; }

/* Restrained mobile composition for the product-led brand section. */
@media (max-width: 800px) {
  .phonescasely-home-story__visual { height: min(94vw, 400px); }
  .phonescasely-home-story__image { object-position: 61% center; }
}

@media (max-width: 520px) {
  .phonescasely-home-hero__proof { margin-top: 24px; }
  .phonescasely-home-hero__stars { font-size: 14px; }
  .phonescasely-home-closing p:not(.phonescasely-home-eyebrow) { font-size: 14px; max-width: 290px; }
}

/* Review cards use the actual reviewed product, keeping social proof tied to a shoppable item. */
.phonescasely-home-review-card { min-height: 306px; padding: 22px; }
.phonescasely-home-review-card > p { -webkit-box-orient: vertical; -webkit-line-clamp: 3; display: -webkit-box; min-height: 65px; overflow: hidden; }
.phonescasely-home-review-card footer { margin-top: 16px; }
.phonescasely-home-review-card__product { align-items: center; border-top: 1px solid #edf0f6; color: var(--pc-home-ink) !important; display: grid; gap: 10px; grid-template-columns: 42px minmax(0, 1fr) auto; margin-top: 17px; padding-top: 14px; text-decoration: none !important; }
.phonescasely-home-review-card__product-image { align-items: center; background: #fff; border: 1px solid #e1e7f0; border-radius: 8px; display: flex; height: 42px; justify-content: center; overflow: hidden; padding: 3px; width: 42px; }
.phonescasely-home-review-card__product-image img { height: 100%; object-fit: contain; width: 100%; }
.phonescasely-home-review-card__product-copy { display: block; min-width: 0; }
.phonescasely-home-review-card__product-copy strong { color: var(--pc-home-ink); display: block; font-size: 11px !important; font-weight: 750; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.phonescasely-home-review-card__product-copy small { color: #435a7e; display: block; font-size: 12px; font-weight: 750; margin-top: 3px; }
.phonescasely-home-review-card__product-copy small del { color: #8290a4; font-weight: 500; }
.phonescasely-home-review-card__product-copy small ins { color: inherit; text-decoration: none; }
.phonescasely-home-review-card__product-arrow { color: var(--pc-home-blue); font-size: 17px; line-height: 1; }
.phonescasely-home-review-card__product:hover .phonescasely-home-review-card__product-copy strong { text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 520px) {
  .phonescasely-home-review-card { min-height: 294px; }
  .phonescasely-home-review-card__product { grid-template-columns: 39px minmax(0, 1fr) auto; }
  .phonescasely-home-review-card__product-image { height: 39px; width: 39px; }
}

/* A practical model finder breaks up the product grids and shortens the path
   from landing page to an exact compatible case. */
.phonescasely-home-model-finder {
  background: #edf3ff;
  border-block: 1px solid #dbe5f7;
}
.phonescasely-home-model-finder__grid {
  align-items: start;
  display: grid;
  gap: clamp(42px, 7vw, 120px);
  grid-template-columns: minmax(240px, .8fr) minmax(500px, 1.2fr);
  padding-block: clamp(58px, 7vw, 95px);
}
.phonescasely-home-model-finder__intro h2 {
  font-size: clamp(32px, 3.6vw, 49px);
  max-width: 410px;
}
.phonescasely-home-model-finder__intro > p:not(.phonescasely-home-eyebrow) {
  color: #50627d;
  font-size: 16px;
  line-height: 1.6;
  margin: 20px 0 24px;
  max-width: 360px;
}
.phonescasely-home-model-finder__groups {
  border-top: 1px solid #cfdcf1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.phonescasely-home-model-finder__group {
  border-bottom: 1px solid #cfdcf1;
  padding: 21px 14px 22px 0;
}
.phonescasely-home-model-finder__group:nth-child(odd) { margin-right: 28px; }
.phonescasely-home-model-finder__group strong {
  color: #1b2a45;
  display: block;
  font-size: 15px;
  font-weight: 750;
  letter-spacing: -.015em;
  margin-bottom: 12px;
}
.phonescasely-home-model-finder__group > div { display: flex; flex-wrap: wrap; gap: 8px 13px; }
.phonescasely-home-model-finder__group a {
  border-bottom: 1px solid transparent;
  color: #536684;
  font-size: 13px;
  line-height: 1.35;
  text-decoration: none;
}
.phonescasely-home-model-finder__group a:hover { border-bottom-color: currentColor; color: #1b2a45; }

/* Best sellers get their own quieter background so the page no longer reads
   as one long sequence of identical white product shelves. */
.phonescasely-home-best { background: #f8f9fb; }
.phonescasely-home-best .phonescasely-home-section__heading { margin-bottom: 39px; }
.phonescasely-home-best .phonescasely-home-products ul.products li.product {
  background: transparent;
  padding: 0 0 15px;
}

@media (max-width: 900px) {
  .phonescasely-home-model-finder__grid { gap: 39px; grid-template-columns: 1fr; }
  .phonescasely-home-model-finder__intro h2,
  .phonescasely-home-model-finder__intro > p:not(.phonescasely-home-eyebrow) { max-width: 520px; }
}

@media (max-width: 560px) {
  .phonescasely-home-model-finder__grid { padding-block: 48px; }
  .phonescasely-home-model-finder__groups { grid-template-columns: 1fr; }
  .phonescasely-home-model-finder__group { padding: 17px 0 18px; }
  .phonescasely-home-model-finder__group:nth-child(odd) { margin-right: 0; }
  .phonescasely-home-model-finder__group strong { font-size: 14px; margin-bottom: 10px; }
  .phonescasely-home-model-finder__group a { font-size: 12px; }
  .phonescasely-home-best .phonescasely-home-section__heading { margin-bottom: 27px; }
}
