/* ============================================================
   Creative Agency X — Pricing Detail Template V1
   Uses existing theme width and type tokens only.
   ============================================================ */

.cax-price-detail{
    --pd-red:#F30101;
    --pd-black:#000;
    --pd-white:#fff;
    --pd-light:#f5f5f5;
    --pd-line:rgba(0,0,0,.24);
    --pd-line-dark:rgba(255,255,255,.27);
    color:#000;
    background:#fff;
    overflow:hidden;
}
.cax-price-detail,
.cax-price-detail *,
.cax-price-detail *::before,
.cax-price-detail *::after{box-sizing:border-box}

.cax-price-shell{
    width:min(
        var(--site-width,1600px),
        calc(100% - (var(--site-gutter,24px)*2))
    );
    margin-inline:auto;
}

.cax-price-detail h1{
    margin:12px 0 0;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h2);
    font-weight:700;
    line-height:.94;
    letter-spacing:-.035em;
    text-transform:uppercase;
}
.cax-price-detail h2{
    margin:12px 0 0;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h3);
    font-weight:700;
    line-height:.98;
    letter-spacing:-.025em;
    text-transform:uppercase;
}
.cax-price-detail h3,
.cax-price-detail strong{
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h6);
    font-weight:700;
    line-height:1.08;
}
.cax-price-detail p{
    font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);
    font-size:var(--type-p);
    line-height:1.48;
}
.cax-price-eyebrow,
.cax-price-meta,
.cax-price-breadcrumb{
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
}
.cax-price-eyebrow{
    margin:0!important;
    color:var(--pd-red);
    font-weight:700;
    letter-spacing:.07em;
    line-height:1!important;
    text-transform:uppercase;
}
.cax-price-dark{background:#000;color:#fff}
.cax-price-red{background:#F30101;color:#fff}

.cax-price-breadcrumb{
    min-height:38px;
    padding:10px 0;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
    border-bottom:1px solid #000;
    font-weight:700;
    line-height:1;
    text-transform:uppercase;
}
.cax-price-breadcrumb a{color:#000;text-decoration:none}
.cax-price-breadcrumb a:hover{color:#F30101}
.cax-price-breadcrumb i{color:#F30101;font-style:normal}
.cax-price-breadcrumb span[aria-current=page]{opacity:.6}

/* Hero */
.cax-price-hero__grid{
    min-height:clamp(500px,66svh,660px);
    padding:clamp(30px,3vw,48px) 0;
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
    gap:clamp(36px,5vw,82px);
    align-items:stretch;
    border-bottom:1px solid #000;
}
.cax-price-hero__copy{display:flex;flex-direction:column;justify-content:center}
.cax-price-meta{display:flex;align-items:center;gap:8px;color:#F30101;font-weight:700;text-transform:uppercase}
.cax-price-meta i{font-style:normal}
.cax-price-meta span:last-child{color:#000}
.cax-price-hero__intro{max-width:850px;margin:20px 0 0}
.cax-price-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:26px}
.cax-price-action{
    min-height:48px;
    padding:12px 16px;
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui-lg);
    font-weight:700;
    line-height:1;
    text-decoration:none;
    text-transform:uppercase;
}
.cax-price-action--primary{background:#000;color:#fff}
.cax-price-action--text{padding-inline:0;color:#000;border-bottom:2px solid #F30101}
.cax-price-hero__signals{
    margin-top:auto;
    padding-top:22px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-top:1px solid #000;
}
.cax-price-hero__signals>div{padding:0 11px;border-right:1px solid var(--pd-line)}
.cax-price-hero__signals>div:first-child{padding-left:0}
.cax-price-hero__signals>div:last-child{border-right:0}
.cax-price-hero__signals span{display:block;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);font-weight:700;text-transform:uppercase}
.cax-price-hero__signals strong{display:block;margin-top:4px;font-size:var(--type-ui-lg)!important;text-transform:uppercase}
.cax-price-hero__visual{margin:0;align-self:stretch}
.cax-price-hero__visual img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover;filter:grayscale(100%);border:1px solid #000}
.cax-price-hero__visual figcaption{padding-top:8px;display:flex;justify-content:space-between;gap:16px;font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);font-size:var(--type-ui);line-height:1.25}
.cax-price-hero__visual figcaption a{color:#000;text-decoration-color:#F30101}

/* Shared headings */
.cax-price-section-head{
    padding:clamp(36px,4vw,60px) 0 clamp(20px,2vw,30px);
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
    gap:clamp(40px,5vw,84px);
    align-items:end;
    border-bottom:1px solid #000;
}
.cax-price-section-head>p{max-width:720px;margin:0}
.cax-price-section-head--red{border-color:rgba(255,255,255,.62)}
.cax-price-section-head--red .cax-price-eyebrow,
.cax-price-section-head--red h2,
.cax-price-section-head--red>p{color:#fff}
.cax-price-section-head--dark{border-color:var(--pd-line-dark)}
.cax-price-section-head--dark h2,
.cax-price-section-head--dark>p{color:#fff}
.cax-price-section-intro{margin-top:0;color:rgba(255,255,255,.8)}

/* Market */
.cax-price-split{
    padding:clamp(54px,6vw,96px) 0;
    display:grid;
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:clamp(50px,7vw,110px);
}
.cax-price-split h2{color:#fff}
.cax-price-market__bands{margin-top:24px;border-top:1px solid var(--pd-line-dark)}
.cax-price-market__bands article{
    display:grid;
    grid-template-columns:minmax(240px,.55fr) 160px minmax(0,1.45fr);
    gap:20px;
    padding:14px 0;
    border-bottom:1px solid var(--pd-line-dark);
}
.cax-price-market__bands strong{color:#fff;text-transform:uppercase}
.cax-price-market__bands span{color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui-lg);font-weight:700}
.cax-price-market__bands p{margin:0;color:rgba(255,255,255,.78)}
.cax-price-bridge{margin:28px 0 0;padding-top:16px;border-top:3px solid #F30101;color:#fff;font-family:var(--font-impact,Arial,Helvetica,sans-serif)!important;font-size:var(--type-h6)!important;font-weight:700;line-height:1.15!important;text-transform:uppercase}

/* Formula */
.cax-price-formula{padding-bottom:clamp(48px,5vw,80px)}
.cax-price-formula__equation{
    padding:clamp(30px,3.5vw,50px) 0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    gap:28px;
    align-items:center;
    border-bottom:1px solid rgba(255,255,255,.62);
}
.cax-price-formula__equation strong{color:#fff;font-size:var(--type-h3)!important;text-transform:uppercase}
.cax-price-formula__equation span{color:#000;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h4);font-weight:700}
.cax-price-formula__notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid rgba(255,255,255,.62)}
.cax-price-formula__notes p{margin:0;min-height:130px;padding:16px;border-right:1px solid rgba(255,255,255,.62);border-bottom:1px solid rgba(255,255,255,.62)}

/* Tables */
.cax-price-ranges{padding-bottom:clamp(54px,6vw,92px)}
.cax-price-ranges__meta{padding:12px 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;border-bottom:1px solid #000;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);font-weight:700;text-transform:uppercase}
.cax-price-ranges__meta strong{color:#F30101;font-size:var(--type-ui)!important}
.cax-price-table-wrap{overflow-x:auto;border-bottom:1px solid #000}
.cax-price-table{width:100%;min-width:1080px;border-collapse:collapse}
.cax-price-table th,
.cax-price-table td{
    padding:13px 14px;
    border-right:1px solid var(--pd-line);
    border-bottom:1px solid var(--pd-line);
    vertical-align:top;
    text-align:left;
    font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);
    font-size:var(--type-ui-lg);
    line-height:1.35;
}
.cax-price-table th{font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);text-transform:uppercase}
.cax-price-table thead th{color:#F30101}
.cax-price-table tbody th{font-size:var(--type-ui-lg);color:#000}
.cax-price-table small{display:block;margin-top:6px;font-size:var(--type-ui);opacity:.68}
.cax-price-table__cax strong{color:#F30101;font-size:var(--type-ui-lg)!important}
.cax-price-table--dark{color:#fff}
.cax-price-table--dark th,
.cax-price-table--dark td{border-color:var(--pd-line-dark)}
.cax-price-table--dark tbody th{color:#fff}
.cax-price-note{max-width:1050px;margin:22px 0 0;font-size:var(--type-ui-lg)!important;opacity:.72}
.cax-price-note--dark{color:rgba(255,255,255,.68)}

/* Fit */
.cax-price-fit__grid,
.cax-price-budget__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:1px solid #000;
    margin-bottom:clamp(50px,6vw,90px);
}
.cax-price-fit__grid article,
.cax-price-budget__grid article{
    min-height:230px;
    padding:18px;
    display:grid;
    grid-template-columns:58px minmax(0,1fr);
    gap:10px 18px;
    align-content:start;
    border-right:1px solid #000;
    border-bottom:1px solid #000;
}
.cax-price-fit__grid article>span{color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h5);font-weight:700}
.cax-price-fit__grid strong{text-transform:uppercase}
.cax-price-fit__grid p{grid-column:2;margin:0}
.cax-price-fit__grid small{grid-column:2;margin-top:10px;padding-top:10px;border-top:1px solid var(--pd-line);color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);font-weight:700;text-transform:uppercase}

/* Inclusions */
.cax-price-inclusions{padding-bottom:clamp(54px,6vw,90px)}
.cax-price-two-col{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #000}
.cax-price-two-col article{padding:18px;border-right:1px solid #000;border-bottom:1px solid #000}
.cax-price-two-col ul{margin:16px 0 0;padding:0;list-style:none}
.cax-price-two-col li{position:relative;padding:9px 0 9px 20px;border-bottom:1px solid var(--pd-line);font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);font-size:var(--type-ui-lg);line-height:1.35}
.cax-price-two-col li:before{content:"+";position:absolute;left:0;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-weight:700}

/* Drivers */
.cax-price-drivers{padding-bottom:clamp(48px,5vw,80px)}
.cax-price-driver-list{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.62)}
.cax-price-driver-list li{
    display:grid;
    grid-template-columns:70px minmax(250px,.7fr) minmax(0,1.3fr);
    gap:22px;
    padding:16px 0;
    border-bottom:1px solid rgba(255,255,255,.62);
}
.cax-price-driver-list span{font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h5);font-weight:700}
.cax-price-driver-list strong{text-transform:uppercase}
.cax-price-driver-list p{margin:0}

/* Addons */
.cax-price-addons{padding-bottom:clamp(54px,6vw,90px)}

/* Ongoing */
.cax-price-ongoing{padding-bottom:clamp(54px,6vw,90px)}
.cax-price-ongoing__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-left:1px solid var(--pd-line-dark);
}
.cax-price-ongoing__grid article{min-height:200px;padding:18px;border-right:1px solid var(--pd-line-dark);border-bottom:1px solid var(--pd-line-dark)}
.cax-price-ongoing__grid strong{display:block;color:#fff;text-transform:uppercase}
.cax-price-ongoing__grid span{display:block;margin-top:8px;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui-lg);font-weight:700}
.cax-price-ongoing__grid p{color:rgba(255,255,255,.77)}

/* Timeline */
.cax-price-timeline__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-left:1px solid #000;
    margin-bottom:clamp(50px,6vw,90px);
}
.cax-price-timeline__grid article{min-height:190px;padding:18px;border-right:1px solid #000;border-bottom:1px solid #000}
.cax-price-timeline__grid strong{display:block;text-transform:uppercase}
.cax-price-timeline__grid span{display:block;margin-top:8px;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui-lg);font-weight:700}
.cax-price-timeline__grid p{margin:12px 0 0}

/* Budget */
.cax-price-budget__grid article{display:block}
.cax-price-budget__grid article>span{display:block;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h5);font-weight:700}
.cax-price-budget__grid strong{display:block;margin-top:8px;text-transform:uppercase}
.cax-price-budget__grid p{margin:12px 0 0}
.cax-price-budget__grid small{display:block;margin-top:14px;padding-top:10px;border-top:1px solid var(--pd-line);font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);font-weight:700;text-transform:uppercase}

/* Link grids */
.cax-price-link-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:1px solid #000;
    margin-bottom:clamp(50px,6vw,90px);
}
.cax-price-link-grid a{
    position:relative;
    min-height:170px;
    padding:18px 54px 18px 18px;
    border-right:1px solid #000;
    border-bottom:1px solid #000;
    color:#000;
    text-decoration:none;
}
.cax-price-link-grid strong{text-transform:uppercase}
.cax-price-link-grid p{margin:10px 0 0}
.cax-price-link-grid a>span{position:absolute;right:18px;bottom:14px;color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h5)}
.cax-price-link-grid a:hover{background:#000;color:#fff}
.cax-price-link-grid--red{border-color:rgba(255,255,255,.62)}
.cax-price-link-grid--red a{color:#fff;border-color:rgba(255,255,255,.62)}
.cax-price-link-grid--red a>span{color:#000}
.cax-price-link-grid--red a:hover{background:#000}

/* Sources */
.cax-price-sources{padding-bottom:clamp(54px,6vw,90px)}
.cax-price-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:1px solid var(--pd-line-dark)}
.cax-price-source-grid article{padding:18px;border-right:1px solid var(--pd-line-dark);border-bottom:1px solid var(--pd-line-dark)}
.cax-price-source-grid strong{color:#fff;text-transform:uppercase}
.cax-price-source-grid p{color:rgba(255,255,255,.74)}
.cax-price-source-grid a{color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-ui);font-weight:700}

/* FAQ */
.cax-price-faq__grid{
    padding:clamp(54px,6vw,90px) 0;
    display:grid;
    grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);
    gap:clamp(54px,7vw,110px);
}
.cax-price-faq__grid h2{margin-top:12px}
.cax-price-faq__items{border-top:1px solid #000}
.cax-price-faq details{border-bottom:1px solid #000}
.cax-price-faq summary{
    min-height:64px;
    padding:10px 0;
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 26px;
    gap:10px;
    align-items:center;
    cursor:pointer;
    list-style:none;
}
.cax-price-faq summary::-webkit-details-marker{display:none}
.cax-price-faq summary span{color:#F30101;font-family:var(--font-impact,Arial,Helvetica,sans-serif);font-size:var(--type-h6);font-weight:700}
.cax-price-faq summary strong{text-transform:uppercase}
.cax-price-faq summary i{position:relative;width:18px;height:18px}
.cax-price-faq summary i:before,
.cax-price-faq summary i:after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    background:#F30101;
    transform:translate(-50%,-50%);
}
.cax-price-faq summary i:before{width:18px;height:2px}
.cax-price-faq summary i:after{width:2px;height:18px}
.cax-price-faq details[open] summary i:after{display:none}
.cax-price-faq details>div{padding:0 0 18px 62px}
.cax-price-faq details p{margin:0;max-width:900px}

/* Final */
.cax-price-final__grid{
    min-height:clamp(360px,48svh,500px);
    padding:clamp(50px,6vw,90px) 0;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
    gap:clamp(52px,7vw,110px);
    align-items:center;
}
.cax-price-final h2{color:#fff}
.cax-price-final__grid>div:last-child>p{margin:0;color:rgba(255,255,255,.8)}
.cax-price-final .cax-price-action{margin-top:20px;background:#F30101}

@media(max-width:1180px){
    .cax-price-hero__grid,
    .cax-price-split,
    .cax-price-faq__grid,
    .cax-price-final__grid{grid-template-columns:1fr}
    .cax-price-section-head{grid-template-columns:1fr;gap:18px}
    .cax-price-hero__grid{min-height:0}
    .cax-price-hero__visual{max-width:900px}
    .cax-price-ongoing__grid,
    .cax-price-timeline__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:860px){
    .cax-price-detail h1{font-size:var(--type-h3);line-height:.96}
    .cax-price-detail h2{font-size:var(--type-h4);line-height:1}
    .cax-price-formula__equation{grid-template-columns:1fr}
    .cax-price-formula__equation span{font-size:var(--type-h5)}
    .cax-price-formula__notes,
    .cax-price-fit__grid,
    .cax-price-budget__grid,
    .cax-price-two-col,
    .cax-price-ongoing__grid,
    .cax-price-timeline__grid,
    .cax-price-link-grid,
    .cax-price-source-grid{grid-template-columns:1fr}
    .cax-price-driver-list li{grid-template-columns:54px 1fr}
    .cax-price-driver-list p{grid-column:2}
    .cax-price-market__bands article{grid-template-columns:1fr;gap:5px}

    .cax-price-table-wrap{overflow:visible;border:0}
    .cax-price-table{min-width:0;display:block}
    .cax-price-table thead{display:none}
    .cax-price-table tbody{display:grid;gap:12px}
    .cax-price-table tr{display:block;border:1px solid #000}
    .cax-price-table--dark tr{border-color:var(--pd-line-dark)}
    .cax-price-table th,
    .cax-price-table td{display:block;width:100%;border-right:0;padding:11px 12px}
    .cax-price-table td:before{
        content:attr(data-label);
        display:block;
        margin-bottom:4px;
        color:#F30101;
        font-family:var(--font-impact,Arial,Helvetica,sans-serif);
        font-size:var(--type-ui);
        font-weight:700;
        text-transform:uppercase;
    }
}

@media(max-width:580px){
    .cax-price-shell{width:min(var(--site-width,1600px),calc(100% - 32px))}
    .cax-price-hero__signals{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 0}
    .cax-price-hero__signals>div:nth-child(2){border-right:0}
    .cax-price-actions{align-items:stretch}
    .cax-price-action{width:100%}
    .cax-price-action--text{width:max-content}
    .cax-price-faq details>div{padding-left:0}
    .cax-price-faq summary{grid-template-columns:42px minmax(0,1fr) 24px}
}

@media(prefers-reduced-motion:reduce){
    .cax-price-detail *{scroll-behavior:auto!important;transition:none!important}
}
