/*
 * Egypt phone tax calculator (templates/default/egypt_phone_tax_calculator.php).
 * Loaded in <head> by index::egypt_phone_tax_calculator() after
 * destination_v2.css; every rule is scoped to .egtax-v2. White cards on a
 * neutral page, navy text, brand pink for the buttons and the eSIM price.
 */

.egtax-v2 {
   --eg-pink: #E8236E;
   --eg-navy: #14183A;
   --eg-border: #E4E8F0;
   --eg-soft: #F3F5F9;
   --eg-text2: #5B6178;
}

.egtax-v2 .egtax-visually-hidden {
   position: absolute;
   width: 1px;
   height: 1px;
   margin: -1px;
   padding: 0;
   overflow: hidden;
   clip: rect(0, 0, 0, 0);
   white-space: nowrap;
   border: 0;
}

.egtax-v2 .egtax-hero-copy {
   margin-top: 16px;
   max-width: 760px;
}

.egtax-v2 .dv2-hero h1 {
   margin: 0;
}

/* Calculator */
.egtax-v2 .egtax-grid {
   display: grid;
   grid-template-columns: minmax(0, 1fr);
   gap: 16px;
}

.egtax-v2 .egtax-results {
   display: grid;
   grid-template-columns: minmax(0, 1fr);
   gap: 16px;
}

@media (min-width: 960px) {
   .egtax-v2 .egtax-grid {
      grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
      gap: 24px;
      align-items: start;
   }

   .egtax-v2 .egtax-results {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 24px;
   }
}

.egtax-v2 .egtax-label {
   display: block;
   font-size: 16px;
   font-weight: 700;
   color: var(--eg-navy);
}

.egtax-v2 .egtax-help {
   margin: 6px 0 12px;
   font-size: 14px;
   color: var(--eg-text2);
}

.egtax-v2 .egtax-input-wrap {
   position: relative;
}

.egtax-v2 .egtax-prefix {
   position: absolute;
   top: 50%;
   left: 16px;
   transform: translateY(-50%);
   font-size: 18px;
   font-weight: 600;
   color: var(--eg-navy);
}

.egtax-v2 .egtax-input {
   box-sizing: border-box;
   width: 100%;
   height: 52px;
   padding: 0 16px 0 34px;
   border: 1.5px solid var(--eg-border);
   border-radius: 14px;
   background: #fff;
   font-family: inherit;
   font-size: 18px;
   font-weight: 600;
   color: var(--eg-navy);
}

.egtax-v2 .egtax-input:focus {
   outline: none;
   border-color: var(--eg-navy);
   box-shadow: 0 0 0 3px rgba(20, 24, 58, 0.12);
}

.egtax-v2 .egtax-result-label {
   margin: 0;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: .04em;
   text-transform: uppercase;
   color: var(--eg-text2);
}

.egtax-v2 .egtax-result-amount {
   margin: 6px 0 0;
   font-size: 36px;
   font-weight: 700;
   line-height: 1.15;
   color: var(--eg-navy);
}

.egtax-v2 .egtax-skip-price {
   margin: 6px 0 0;
   font-size: 22px;
   font-weight: 700;
   line-height: 1.25;
   color: var(--eg-pink);
}

.egtax-v2 .egtax-result-note {
   margin: 8px 0 0;
   font-size: 14.5px;
   line-height: 1.55;
}

.egtax-v2 .egtax-result-small {
   margin: 12px 0 0;
   padding-top: 12px;
   border-top: 1px solid var(--eg-border);
   font-size: 13px;
   line-height: 1.55;
   color: var(--eg-text2);
}

.egtax-v2 .egtax-result-small a,
.egtax-v2 .egtax-copy a,
.egtax-v2 .egtax-more a {
   color: var(--eg-pink);
   font-weight: 600;
}

/* Explainer */
.egtax-v2 .egtax-copy {
   margin-top: 16px;
}

.egtax-v2 .egtax-copy h3 {
   margin: 0 0 8px;
   font-size: 17px;
   font-weight: 700;
   color: var(--eg-navy);
}

.egtax-v2 .egtax-copy ul {
   margin: 0;
   padding-left: 20px;
}

.egtax-v2 .egtax-copy li {
   margin: 6px 0;
   line-height: 1.6;
}

.egtax-v2 .egtax-two {
   display: grid;
   grid-template-columns: minmax(0, 1fr);
   gap: 0 24px;
}

@media (min-width: 960px) {
   .egtax-v2 .egtax-two {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
   }
}

.egtax-v2 .egtax-more {
   margin: 20px 0 0;
   line-height: 1.6;
}

/* FAQ */
.egtax-v2 .egtax-faq {
   display: grid;
   gap: 12px;
   margin: 16px 0 48px;
}

.egtax-v2 .egtax-faq-item {
   padding: 18px 20px;
   border-radius: 16px;
}

.egtax-v2 .egtax-faq-item summary {
   font-weight: 600;
   color: var(--eg-navy);
   cursor: pointer;
}

.egtax-v2 .egtax-faq-item p {
   margin: 10px 0 0;
   line-height: 1.6;
}
