/* ============================================================
   Creative Agency X — Thinking / Resources Core Page
   Route: /resources/
   Global theme tokens only.
   ============================================================ */

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

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

.cax-resources-main 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-resources-main 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-resources-main h3,
.cax-resources-main strong{
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h6);
    font-weight:700;
    line-height:1.08;
}
.cax-resources-main p{
    font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);
    font-size:var(--type-p);
    line-height:1.48;
}
.cax-resources-eyebrow{
    margin:0!important;
    color:var(--resources-red);
    font-family:var(--font-impact,Arial,Helvetica,sans-serif)!important;
    font-size:var(--type-ui)!important;
    font-weight:700;
    line-height:1!important;
    letter-spacing:.07em;
    text-transform:uppercase;
}
.cax-resources-dark{background:#000;color:#fff}
.cax-resources-red{background:#F30101;color:#fff}

/* Breadcrumb */
.cax-resources-breadcrumb{
    min-height:38px;
    padding:10px 0;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
    border-bottom:1px solid #000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
    line-height:1;
    text-transform:uppercase;
}
.cax-resources-breadcrumb a{color:#000;text-decoration:none}
.cax-resources-breadcrumb a:hover{color:#F30101}
.cax-resources-breadcrumb span[aria-current=page]{color:#F30101}

/* Hero */
.cax-resources-hero__grid{
    min-height:clamp(540px,69svh,700px);
    padding:clamp(36px,4vw,62px) 0;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(410px,.95fr);
    gap:clamp(42px,6vw,96px);
    align-items:stretch;
    border-bottom:1px solid #000;
}
.cax-resources-hero__copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.cax-resources-hero__intro{
    max-width:900px;
    margin:22px 0 0;
}
.cax-resources-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    align-items:center;
    margin-top:28px;
}
.cax-resources-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-resources-action--primary{
    background:#000;
    color:#fff;
}
.cax-resources-action--primary:hover{
    background:#F30101;
    color:#fff;
}
.cax-resources-action--text{
    padding-inline:0;
    color:#000;
    border-bottom:2px solid #F30101;
}
.cax-resources-action--text-dark{color:#fff}
.cax-resources-hero__signals{
    margin-top:auto;
    padding-top:22px;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-top:1px solid #000;
}
.cax-resources-hero__signals>div{
    min-width:0;
    padding:0 12px;
    border-right:1px solid var(--resources-line);
}
.cax-resources-hero__signals>div:first-child{padding-left:0}
.cax-resources-hero__signals>div:last-child{border-right:0}
.cax-resources-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-resources-hero__signals strong{
    display:block;
    margin-top:5px;
    font-size:var(--type-ui-lg)!important;
    text-transform:uppercase;
}
.cax-resources-hero__visual{
    margin:0;
    display:grid;
    grid-template-rows:1fr auto;
}
.cax-resources-hero__visual img{
    display:block;
    width:100%;
    height:100%;
    min-height:340px;
    object-fit:cover;
    filter:grayscale(100%);
    border:1px solid #000;
}
.cax-resources-hero__visual figcaption,
.cax-resources-hub-card__image 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-resources-hero__visual figcaption a,
.cax-resources-hub-card__image figcaption a{
    color:#000;
    text-decoration-color:#F30101;
}

/* Section heading */
.cax-resources-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-resources-section-head>p{
    max-width:760px;
    margin:0;
}
.cax-resources-section-head--dark{
    border-color:var(--resources-line-dark);
}
.cax-resources-section-head--dark h2,
.cax-resources-section-head--dark>p{color:#fff}
.cax-resources-section-head--red{
    border-color:rgba(255,255,255,.62);
}
.cax-resources-section-head--red .cax-resources-eyebrow,
.cax-resources-section-head--red h2,
.cax-resources-section-head--red>p{color:#fff}

/* Decision paths */
.cax-resources-decisions{
    padding-bottom:clamp(48px,5vw,82px);
}
.cax-resources-decision-list{
    margin:0;
    padding:0;
    list-style:none;
    border-top:1px solid var(--resources-line-dark);
}
.cax-resources-decision-list li{
    display:grid;
    grid-template-columns:80px minmax(250px,.7fr) minmax(0,1.3fr);
    gap:22px;
    padding:18px 0;
    border-bottom:1px solid var(--resources-line-dark);
}
.cax-resources-decision-list__number{
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-weight:700;
}
.cax-resources-decision-list strong{
    color:#fff;
    text-transform:uppercase;
}
.cax-resources-decision-list p{
    margin:0;
    color:rgba(255,255,255,.78);
}
.cax-resources-inline-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px 18px;
    margin-top:14px;
}
.cax-resources-inline-links a{
    color:#fff;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
}
.cax-resources-inline-links a span{color:#F30101}
.cax-resources-inline-links a:hover{color:#F30101}

/* Resource hub cards */
.cax-resources-hubs{
    padding-bottom:clamp(54px,6vw,96px);
}
.cax-resources-hub-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:1px solid #000;
}
.cax-resources-hub-card{
    min-width:0;
    display:grid;
    grid-template-columns:minmax(240px,.42fr) minmax(0,.58fr);
    border-right:1px solid #000;
    border-bottom:1px solid #000;
}
.cax-resources-hub-card__image{
    margin:0;
    padding:14px;
    display:grid;
    grid-template-rows:1fr auto;
    border-right:1px solid #000;
}
.cax-resources-hub-card__image img{
    width:100%;
    height:100%;
    min-height:260px;
    object-fit:cover;
    filter:grayscale(100%);
}
.cax-resources-hub-card__body{
    padding:18px;
    display:flex;
    flex-direction:column;
}
.cax-resources-hub-card__meta{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding-bottom:12px;
    border-bottom:1px solid #000;
}
.cax-resources-hub-card__meta span{
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-weight:700;
}
.cax-resources-hub-card__meta strong{
    font-size:var(--type-ui)!important;
    text-transform:uppercase;
}
.cax-resources-hub-card h3{
    margin:16px 0 0;
    text-transform:uppercase;
}
.cax-resources-hub-card__body>p{
    margin:10px 0 0;
}
.cax-resources-hub-card ul{
    margin:18px 0;
    padding:0;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    list-style:none;
}
.cax-resources-hub-card li{
    padding:5px 7px;
    border:1px solid #000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
    line-height:1;
}
.cax-resources-card-link{
    margin-top:auto;
    padding-top:14px;
    display:flex;
    justify-content:space-between;
    gap:16px;
    border-top:1px solid #000;
    color:#000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
    text-decoration:none;
    text-transform:uppercase;
}
.cax-resources-card-link span{color:#F30101}
.cax-resources-card-link:hover{color:#F30101}

/* Featured */
.cax-resources-featured{
    padding-bottom:clamp(48px,5vw,82px);
}
.cax-resources-featured-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    border-left:1px solid rgba(255,255,255,.62);
}
.cax-resources-featured-grid a{
    position:relative;
    min-height:360px;
    padding:18px;
    display:flex;
    flex-direction:column;
    border-right:1px solid rgba(255,255,255,.62);
    border-bottom:1px solid rgba(255,255,255,.62);
    color:#fff;
    text-decoration:none;
}
.cax-resources-featured-card__number{
    color:#000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-weight:700;
}
.cax-resources-featured-grid small{
    display:block;
    margin-top:18px;
    color:#fff;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
}
.cax-resources-featured-card__question{
    margin:20px 0 0!important;
    color:#000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif)!important;
    font-size:var(--type-ui-lg)!important;
    font-weight:700;
    line-height:1.2!important;
}
.cax-resources-featured-grid strong{
    display:block;
    margin-top:10px;
    text-transform:uppercase;
}
.cax-resources-featured-grid a>p:not(.cax-resources-featured-card__question){
    margin:10px 0 0;
}
.cax-resources-featured-grid i{
    margin-top:auto;
    align-self:flex-end;
    color:#000;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-style:normal;
}
.cax-resources-featured-grid a:hover{
    background:#000;
}
.cax-resources-featured-grid a:hover
.cax-resources-featured-card__number,
.cax-resources-featured-grid a:hover
.cax-resources-featured-card__question,
.cax-resources-featured-grid a:hover i{
    color:#F30101;
}

/* Full guide library */
.cax-resources-library{
    padding-bottom:clamp(54px,6vw,96px);
}
.cax-resources-guide-group{
    padding-top:34px;
}
.cax-resources-guide-group__head{
    padding:0 0 12px;
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:end;
    border-bottom:1px solid #000;
}
.cax-resources-guide-group__head h3{
    margin:0;
    color:#F30101;
    text-transform:uppercase;
}
.cax-resources-guide-group__head span{
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    font-weight:700;
}
.cax-resources-guide-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-left:1px solid #000;
}
.cax-resources-guide-grid a{
    position:relative;
    min-height:300px;
    padding:18px 52px 18px 18px;
    display:flex;
    flex-direction:column;
    border-right:1px solid #000;
    border-bottom:1px solid #000;
    color:#000;
    text-decoration:none;
}
.cax-resources-guide-card__number{
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-weight:700;
}
.cax-resources-guide-grid strong{
    display:block;
    margin-top:18px;
    text-transform:uppercase;
}
.cax-resources-guide-card__intent{
    margin:10px 0 0!important;
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif)!important;
    font-size:var(--type-ui)!important;
    font-weight:700;
    line-height:1.2!important;
}
.cax-resources-guide-grid a>p:not(.cax-resources-guide-card__intent){
    margin:10px 0 0;
}
.cax-resources-guide-grid small{
    display:block;
    margin-top:auto;
    padding-top:14px;
    border-top:1px solid var(--resources-line);
    font-family:var(--font-ui,"Epic Pro",Arial,Helvetica,sans-serif);
    font-size:var(--type-ui);
    line-height:1.3;
}
.cax-resources-guide-grid i{
    position:absolute;
    right:18px;
    bottom:16px;
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-style:normal;
}
.cax-resources-guide-grid a:hover{
    background:#000;
    color:#fff;
}
.cax-resources-guide-grid a:hover small{
    border-color:var(--resources-line-dark);
}

/* Method */
.cax-resources-method{
    padding-bottom:clamp(48px,5vw,82px);
}
.cax-resources-method-list{
    margin:0;
    padding:0;
    list-style:none;
    border-top:1px solid var(--resources-line-dark);
}
.cax-resources-method-list li{
    display:grid;
    grid-template-columns:80px minmax(250px,.7fr) minmax(0,1.3fr);
    gap:22px;
    padding:18px 0;
    border-bottom:1px solid var(--resources-line-dark);
}
.cax-resources-method-list span{
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
    font-weight:700;
}
.cax-resources-method-list strong{
    color:#fff;
    text-transform:uppercase;
}
.cax-resources-method-list p{
    margin:0;
    color:rgba(255,255,255,.78);
}

/* Service bridge */
.cax-resources-services{
    padding-bottom:clamp(54px,6vw,96px);
}
.cax-resources-service-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:1px solid #000;
}
.cax-resources-service-grid a{
    position:relative;
    min-height:190px;
    padding:18px 58px 18px 18px;
    border-right:1px solid #000;
    border-bottom:1px solid #000;
    color:#000;
    text-decoration:none;
}
.cax-resources-service-grid strong{
    text-transform:uppercase;
}
.cax-resources-service-grid p{
    margin:10px 0 0;
}
.cax-resources-service-grid a>span{
    position:absolute;
    right:18px;
    bottom:16px;
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h5);
}
.cax-resources-service-grid a:hover{
    background:#000;
    color:#fff;
}

/* FAQ */
.cax-resources-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-resources-faq__grid h2{margin-top:12px}
.cax-resources-faq__items{border-top:1px solid #000}
.cax-resources-faq details{border-bottom:1px solid #000}
.cax-resources-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-resources-faq summary::-webkit-details-marker{display:none}
.cax-resources-faq summary>span{
    color:#F30101;
    font-family:var(--font-impact,Arial,Helvetica,sans-serif);
    font-size:var(--type-h6);
    font-weight:700;
}
.cax-resources-faq summary strong{
    text-transform:uppercase;
}
.cax-resources-faq summary i{
    position:relative;
    width:18px;
    height:18px;
}
.cax-resources-faq summary i:before,
.cax-resources-faq summary i:after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    background:#F30101;
    transform:translate(-50%,-50%);
}
.cax-resources-faq summary i:before{
    width:18px;
    height:2px;
}
.cax-resources-faq summary i:after{
    width:2px;
    height:18px;
}
.cax-resources-faq details[open] summary i:after{
    display:none;
}
.cax-resources-faq details>div{
    padding:0 0 18px 62px;
}
.cax-resources-faq details p{
    max-width:920px;
    margin:0;
}

/* Final */
.cax-resources-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-resources-final h2{color:#fff}
.cax-resources-final__grid>div:last-child>p{
    margin:0;
    color:rgba(255,255,255,.8);
}
.cax-resources-final .cax-resources-action--primary{
    background:#F30101;
}

/* Responsive */
@media(max-width:1280px){
    .cax-resources-featured-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media(max-width:1120px){
    .cax-resources-hero__grid,
    .cax-resources-faq__grid,
    .cax-resources-final__grid{
        grid-template-columns:1fr;
    }
    .cax-resources-section-head{
        grid-template-columns:1fr;
        gap:18px;
    }
    .cax-resources-hub-grid{
        grid-template-columns:1fr;
    }
    .cax-resources-guide-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:860px){
    .cax-resources-main h1{
        font-size:var(--type-h3);
        line-height:.96;
    }
    .cax-resources-main h2{
        font-size:var(--type-h4);
        line-height:1;
    }
    .cax-resources-decision-list li,
    .cax-resources-method-list li{
        grid-template-columns:54px 1fr;
    }
    .cax-resources-decision-list li>div,
    .cax-resources-method-list p{
        grid-column:2;
    }
    .cax-resources-hub-card{
        grid-template-columns:1fr;
    }
    .cax-resources-hub-card__image{
        border-right:0;
        border-bottom:1px solid #000;
    }
    .cax-resources-hub-card__image img{
        min-height:0;
        aspect-ratio:16/8;
    }
    .cax-resources-featured-grid,
    .cax-resources-guide-grid,
    .cax-resources-service-grid{
        grid-template-columns:1fr;
    }
    .cax-resources-featured-grid a{
        min-height:280px;
    }
}

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

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