/* =========================================================
   IPS PRINT ADVERTISEMENT
   PREMIUM EDITORIAL DESIGN
========================================================= */

:root{
    --print-cyan:#08aede;
    --print-blue:#075b83;
    --print-navy:#071e33;
    --print-red:#ed2939;
    --print-text:#263b49;
    --print-muted:#71808b;
    --print-border:#dce8ed;
    --print-light:#f4fafc;
}


/* =========================================================
   HERO
========================================================= */

.ips-print-hero{
    position:relative;
    min-height:430px;

    display:flex;
    align-items:center;

    overflow:hidden;

    background:
        radial-gradient(
            circle at 8% 45%,
            rgba(8,174,222,.12),
            transparent 29%
        ),
        radial-gradient(
            circle at 92% 20%,
            rgba(237,41,57,.075),
            transparent 25%
        ),
        linear-gradient(
            120deg,
            #f1fbfe 0%,
            #ffffff 54%,
            #fff8f8 100%
        );

    border-bottom:1px solid #e1edf1;
}


.ips-print-hero::after{
    content:"";

    position:absolute;

    left:0;
    right:0;
    bottom:0;

    height:3px;

    background:
        linear-gradient(
            90deg,
            var(--print-cyan) 0 70%,
            var(--print-red) 70%
        );
}


/* =========================================================
   TECH GRID
========================================================= */

.ips-print-hero-grid{
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(8,174,222,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(8,174,222,.035) 1px,
            transparent 1px
        );

    background-size:44px 44px;

    pointer-events:none;
}


/* =========================================================
   ORBITS
========================================================= */

.ips-print-orbit{
    position:absolute;

    border:1px solid rgba(8,174,222,.14);

    border-radius:50%;
}

.ips-print-orbit-one{
    width:330px;
    height:330px;

    left:-210px;
    top:45px;

    box-shadow:
        0 0 0 25px rgba(8,174,222,.018),
        0 0 0 55px rgba(8,174,222,.012);
}

.ips-print-orbit-two{
    width:240px;
    height:240px;

    right:-140px;
    bottom:-110px;

    border-color:rgba(237,41,57,.13);
}


/* =========================================================
   HERO INNER
========================================================= */

.ips-print-hero-inner{
    position:relative;
    z-index:3;

    min-height:430px;

    display:grid;
    grid-template-columns:1fr 460px;

    align-items:center;

    gap:40px;

    padding:45px 0;
}


/* =========================================================
   HERO CONTENT
========================================================= */

.ips-print-hero-content{
    max-width:650px;
}


.ips-print-kicker{
    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:18px;

    font-size:10px;
    font-weight:800;

    letter-spacing:2px;

    color:var(--print-blue);
}


.ips-print-kicker span{
    width:7px;
    height:7px;

    border-radius:50%;

    background:var(--print-red);

    box-shadow:
        0 0 0 5px rgba(237,41,57,.08);
}


.ips-print-hero-content h1{
    margin:0;

    font-family:"Manrope",sans-serif;

    font-size:clamp(46px,5.3vw,72px);

    line-height:.94;

    letter-spacing:-4px;

    font-weight:800;

    color:var(--print-navy);
}


.ips-print-hero-content h1 span{
    display:block;

    color:var(--print-cyan);
}


.ips-print-hero-content p{
    max-width:580px;

    margin:23px 0 0;

    font-size:15px;

    line-height:1.8;

    color:var(--print-muted);
}


.ips-print-hero-line{
    width:90px;
    height:2px;

    margin-top:28px;

    background:
        linear-gradient(
            90deg,
            var(--print-cyan),
            var(--print-red)
        );
}


.ips-print-hero-info{
    display:flex;
    align-items:center;

    gap:30px;

    margin-top:25px;
}


.ips-print-hero-info div{
    display:flex;
    flex-direction:column;
}


.ips-print-hero-info strong{
    font-family:"Manrope",sans-serif;

    font-size:22px;

    line-height:1;

    color:var(--print-navy);
}


.ips-print-hero-info small{
    margin-top:6px;

    font-size:8px;
    font-weight:800;

    letter-spacing:1.3px;

    color:#89969e;
}


.ips-print-hero-info div + div{
    padding-left:30px;

    border-left:1px solid #d7e3e8;
}


/* =========================================================
   HERO VISUAL
========================================================= */

.ips-print-hero-visual{
    position:relative;

    height:350px;

    display:flex;
    align-items:center;
    justify-content:center;
}


/* Circles */

.ips-print-circle{
    position:absolute;

    border-radius:50%;
}


.circle-one{
    width:290px;
    height:290px;

    border:1px solid rgba(8,174,222,.25);
}


.circle-two{
    width:235px;
    height:235px;

    border:1px dashed rgba(8,174,222,.18);
}


.circle-three{
    width:160px;
    height:160px;

    border:1px solid rgba(237,41,57,.15);
}


/* =========================================================
   AD CARD
========================================================= */

.ips-print-ad-card{
    position:relative;
    z-index:4;

    width:245px;
    height:295px;

    padding:18px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    overflow:hidden;

    border-radius:5px;

    background:
        linear-gradient(
            145deg,
            #071e33,
            #06415f 60%,
            #071e33
        );

    box-shadow:
        0 28px 65px rgba(7,30,51,.24);

    transform:rotate(-4deg);

    transition:
        transform .5s ease,
        box-shadow .5s ease;
}


.ips-print-ad-card:hover{
    transform:rotate(-1deg) translateY(-6px);

    box-shadow:
        0 35px 75px rgba(7,30,51,.28);
}


.ips-print-ad-card::before{
    content:"";

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(8,174,222,.14),
            transparent 42%,
            rgba(237,41,57,.12)
        );
}


.ips-print-ad-card::after{
    content:"";

    position:absolute;

    width:180px;
    height:180px;

    right:-100px;
    bottom:-100px;

    border:1px solid rgba(8,174,222,.28);

    border-radius:50%;
}


.ips-print-ad-top,
.ips-print-ad-center,
.ips-print-ad-bottom{
    position:relative;
    z-index:2;
}


.ips-print-ad-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
}


.ips-print-ad-top span{
    font-size:6.5px;

    letter-spacing:1.4px;

    color:#9cb9c7;
}


.ips-print-ad-top b{
    font-family:"Manrope",sans-serif;

    font-size:17px;

    color:var(--print-cyan);
}


.ips-print-ad-center{
    display:flex;
    flex-direction:column;

    align-items:center;
    justify-content:center;

    text-align:center;
}


.ips-print-ad-center small{
    font-size:7px;
    font-weight:800;

    letter-spacing:2px;

    color:#8faab8;
}


.ips-print-ad-center strong{
    margin:9px 0;

    font-family:"Manrope",sans-serif;

    font-size:42px;
    line-height:.86;

    letter-spacing:-3px;

    color:#fff;
}


.ips-print-ad-center strong i{
    font-style:normal;

    color:var(--print-cyan);
}


.ips-print-ad-center span{
    padding:5px 9px;

    border:1px solid rgba(8,174,222,.45);

    border-radius:30px;

    font-size:6px;
    font-weight:800;

    letter-spacing:1px;

    color:#9ed9e8;
}


.ips-print-ad-bottom{
    display:flex;
    justify-content:space-between;

    padding-top:11px;

    border-top:1px solid rgba(255,255,255,.12);

    font-size:6px;
    font-weight:800;

    letter-spacing:1px;

    color:#819daa;
}


/* =========================================================
   FLOATING LABELS
========================================================= */

.ips-print-floating{
    position:absolute;

    z-index:6;

    display:flex;
    flex-direction:column;

    min-width:125px;

    padding:12px 15px;

    background:#fff;

    border:1px solid #dce8ed;

    border-radius:4px;

    box-shadow:
        0 15px 35px rgba(7,30,51,.10);
}


.ips-print-floating strong{
    font-family:"Manrope",sans-serif;

    font-size:11px;

    color:var(--print-navy);
}


.ips-print-floating span{
    margin-top:4px;

    font-size:7px;
    font-weight:800;

    letter-spacing:1.1px;

    color:#8b989f;
}


.floating-one{
    left:0;
    top:45px;

    border-left:3px solid var(--print-cyan);

    transform:rotate(-3deg);
}


.floating-two{
    right:-5px;
    bottom:43px;

    border-left:3px solid var(--print-red);

    transform:rotate(3deg);
}


/* =========================================================
   INTRO
========================================================= */

.ips-print-intro{
    padding:65px 0;

    background:#fff;

    border-bottom:1px solid #edf2f4;
}


.ips-print-intro-grid{
    display:grid;

    grid-template-columns:80px 1fr 400px;

    align-items:center;

    gap:25px;
}


.ips-print-intro-number{
    font-family:"Manrope",sans-serif;

    font-size:48px;

    font-weight:800;

    letter-spacing:-3px;

    color:#dceff4;
}


.ips-print-label{
    margin-bottom:8px;

    font-size:9px;
    font-weight:800;

    letter-spacing:1.8px;

    color:var(--print-red);
}


.ips-print-intro h2{
    margin:0;

    font-family:"Manrope",sans-serif;

    font-size:clamp(30px,3.5vw,45px);

    line-height:1;

    letter-spacing:-2px;

    color:var(--print-navy);
}


.ips-print-intro h2 span{
    color:var(--print-cyan);
}


.ips-print-intro-grid > p{
    margin:0;

    padding-left:30px;

    border-left:1px solid #dce8ed;

    font-size:13px;

    line-height:1.8;

    color:var(--print-muted);
}


/* =========================================================
   STANDARD SECTION
========================================================= */

.ips-print-standard{
    padding:85px 0 100px;

    background:
        linear-gradient(
            180deg,
            #f7fcfd,
            #ffffff
        );
}


/* =========================================================
   SECTION TITLE
========================================================= */

.ips-print-section-title{
    display:flex;

    align-items:center;

    gap:22px;

    margin-bottom:38px;
}


.ips-print-section-number{
    width:54px;
    height:54px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 auto;

    border:1px solid rgba(8,174,222,.2);

    border-radius:50%;

    background:#f0fbfd;

    font-size:11px;
    font-weight:800;

    color:var(--print-cyan);
}


.ips-print-section-number.red{
    border-color:rgba(237,41,57,.18);

    background:#fff3f4;

    color:var(--print-red);
}


.ips-print-section-title span{
    display:block;

    margin-bottom:7px;

    font-size:9px;
    font-weight:800;

    letter-spacing:1.8px;

    color:var(--print-red);
}


.ips-print-section-title h2{
    margin:0;

    font-family:"Manrope",sans-serif;

    font-size:35px;

    line-height:1;

    letter-spacing:-1.7px;

    color:var(--print-navy);
}


/* =========================================================
   STANDARD TABLE
========================================================= */

.ips-print-table{
    overflow:hidden;

    border:1px solid var(--print-border);

    border-radius:8px;

    background:#fff;

    box-shadow:
        0 22px 60px rgba(7,30,51,.065);
}


.ips-print-table-head{
    display:grid;

    grid-template-columns:1fr 250px 250px;

    min-height:58px;

    background:var(--print-navy);
}


.ips-print-table-head div{
    display:flex;
    align-items:center;

    padding:0 28px;

    border-right:1px solid rgba(255,255,255,.08);

    font-size:18px;
    font-weight:800;

    letter-spacing:1.6px;

    color:#fff;
}


.ips-print-table-head div:first-child{
    color:#fff; font-size:18px;
}


.ips-print-table-head div:not(:first-child){
    justify-content:center;
}


.ips-print-table-row{
    display:grid;

    grid-template-columns:1fr 250px 250px;

    min-height:105px;

    border-top:1px solid #e7eef1;

    transition:
        background .3s ease;
}


.ips-print-table-row:hover{
    background:#fbfeff;
}


/* Size */

.ips-print-size{
    display:flex;

    align-items:center;

    gap:18px;

    padding:22px 28px;
}


.ips-print-size span{
    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 auto;

    border-radius:50%;

    background:#effafd;

    border:1px solid rgba(8,174,222,.16);

    font-size:9px;
    font-weight:800;

    color:var(--print-cyan);
}


.ips-print-size span.red{
    background:#fff3f4;

    border-color:rgba(237,41,57,.17);

    color:var(--print-red);
}


.ips-print-size strong{
    font-family:"Manrope",sans-serif;

    font-size:16px;

    color:var(--print-navy);
}


/* Prices */

.ips-print-price{
    position:relative;

    display:flex;
    flex-direction:column;

    align-items:center;
    justify-content:center;

    border-left:1px solid #e7eef1;
}


.ips-print-price small{
    margin-bottom:7px;

    font-size:7px;
    font-weight:800;

    letter-spacing:1.3px;

    color:#9aa7ad;
}


.ips-print-price strong{
    font-family:"Manrope",sans-serif;

    font-size:18px;

    color:#31434e;
}


.ips-print-price.colour{
    background:
        linear-gradient(
            135deg,
            #f1fbfd,
            #fbfeff
        );
}


.ips-print-price.colour::before{
    content:"";

    position:absolute;

    left:0;

    top:23px;
    bottom:23px;

    width:2px;

    background:var(--print-cyan);
}


.ips-print-price.colour strong{
    color:var(--print-cyan);
}


/* =========================================================
   PREMIUM SECTION
========================================================= */

.ips-print-premium{
    position:relative;

    padding:100px 0;

    background:
        radial-gradient(
            circle at 5% 50%,
            rgba(8,174,222,.08),
            transparent 28%
        ),
        #fff;
}


.premium-title{
    margin-bottom:48px;
}


/* =========================================================
   COVER LAYOUT
========================================================= */

.ips-cover-layout{
    display:grid;

    grid-template-columns:330px 1fr;

    gap:55px;

    align-items:start;
}


/* Cover intro */

.ips-cover-intro{
    position:relative;

    padding:34px 30px;

    border:1px solid #dce8ed;

    border-radius:8px;

    background:
        linear-gradient(
            145deg,
            #071e33,
            #0b3a54
        );

    overflow:hidden;

    box-shadow:
        0 25px 60px rgba(7,30,51,.14);
}


.ips-cover-intro::before{
    content:"";

    position:absolute;

    width:220px;
    height:220px;

    right:-125px;
    top:-125px;

    border:1px solid rgba(8,174,222,.28);

    border-radius:50%;
}


.ips-cover-intro::after{
    content:"";

    position:absolute;

    width:140px;
    height:140px;

    right:-75px;
    top:-75px;

    border:1px dashed rgba(237,41,57,.25);

    border-radius:50%;
}


.ips-cover-mark{
    position:relative;
    z-index:2;

    font-family:"Manrope",sans-serif;

    font-size:18px;
    font-weight:800;

    letter-spacing:1px;

    color:var(--print-cyan);
}


.ips-cover-intro h3{
    position:relative;
    z-index:2;

    margin:50px 0 0;

    font-family:"Manrope",sans-serif;

    font-size:32px;

    line-height:1.02;

    letter-spacing:-1.5px;

    color:#fff;
}


.ips-cover-intro h3 span{
    display:block;

    color:var(--print-cyan);
}


.ips-cover-intro p{
    position:relative;
    z-index:2;

    margin:18px 0 0;

    font-size:12px;

    line-height:1.8;

    color:#a7bbc5;
}


.ips-cover-accent{
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;

    gap:8px;

    margin-top:30px;

    font-size:7px;
    font-weight:800;

    letter-spacing:1.1px;

    color:#91aab5;
}


.ips-cover-accent span{
    width:20px;
    height:2px;

    background:var(--print-red);
}


/* =========================================================
   COVER TABLE
========================================================= */

.ips-cover-table{
    overflow:hidden;

    border:1px solid var(--print-border);

    border-radius:8px;

    background:#fff;

    box-shadow:
        0 20px 55px rgba(7,30,51,.06);
}


.ips-cover-head{
    display:grid;

    grid-template-columns:1fr 180px;

    min-height:55px;

    background:#f4fafc;

    border-bottom:1px solid var(--print-border);
}


.ips-cover-head span{
    display:flex;
    align-items:center;

    padding:0 22px;

    font-size:18px;
    font-weight:800;

    letter-spacing:1.5px;

    color:#000;
}


.ips-cover-head span:last-child{
    justify-content:center;

    border-left:1px solid var(--print-border);
}


.ips-cover-row{
    display:grid;

    grid-template-columns:1fr 180px;

    min-height:66px;

    border-bottom:1px solid #e8eff2;

    transition:
        background .3s ease;
}


.ips-cover-row:last-child{
    border-bottom:0;
}


.ips-cover-row:hover{
    background:#fbfeff;
}


.ips-cover-row > div{
    display:flex;
    align-items:center;

    gap:14px;

    padding:12px 22px;
}


.ips-cover-row i{
    width:28px;
    height:28px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex:0 0 auto;

    border-radius:50%;

    background:#f0f9fb;

    color:var(--print-cyan);

    font-size:14px;
    font-style:normal;
    font-weight:800;
}


.ips-cover-row strong{
    font-size:16px;

    font-weight:700;

    color:var(--print-navy);
}


.ips-cover-row > b{
    display:flex;
    align-items:center;
    justify-content:center;

    border-left:1px solid #e8eff2;

    font-family:"Manrope",sans-serif;

    font-size:15px;

    color:var(--print-cyan);
}


.ips-cover-row.highlight{
    background:
        linear-gradient(
            90deg,
            #fff,
            #f1fbfd
        );
}


.ips-cover-row.highlight i{
    background:#fff1f2;

    color:var(--print-red);
}


.ips-cover-row.highlight > b{
    color:var(--print-red);

    font-size:17px;
}


/* =========================================================
   SPECIFICATIONS
========================================================= */

.ips-print-specs{
    padding:95px 0 100px;

    background:
        linear-gradient(
            180deg,
            #f5fafc,
            #ffffff
        );
}


.ips-spec-grid{
    display:grid;

    grid-template-columns:1fr 1fr;

    gap:25px;
}


.ips-spec-card{
    overflow:hidden;

    display:grid;

    grid-template-columns:48% 52%;

    min-height:270px;

    border:1px solid var(--print-border);

    border-radius:8px;

    background:#fff;

    box-shadow:
        0 20px 50px rgba(7,30,51,.055);

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}


.ips-spec-card:hover{
    transform:translateY(-5px);

    box-shadow:
        0 28px 60px rgba(7,30,51,.10);
}


.ips-spec-image{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;

    min-height:270px;

    overflow:hidden;

    padding:20px;

    background:
        radial-gradient(
            circle,
            #fff 10%,
            #f0fafc 100%
        );
}


.ips-spec-image::before{
    content:"";

    position:absolute;

    width:180px;
    height:180px;

    border:1px solid rgba(8,174,222,.12);

    border-radius:50%;
}


.ips-spec-image img{
    position:relative;
    z-index:2;

    max-width:92%;
    max-height:220px;

    object-fit:contain;

    filter:
        drop-shadow(
            0 12px 18px rgba(7,30,51,.10)
        );
}


.ips-spec-content{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:30px;
}


.ips-spec-content > span{
    font-size:8px;

    font-weight:800;

    letter-spacing:1.7px;

    color:var(--print-red);
}


.ips-spec-content h3{
    margin:11px 0 0;

    font-family:"Manrope",sans-serif;

    font-size:25px;

    line-height:1.05;

    letter-spacing:-1px;

    color:var(--print-navy);
}


.ips-spec-content h3 em{
    display:block;

    font-style:normal;

    color:var(--print-cyan);
}


.ips-spec-content p{
    margin:14px 0 0;

    font-size:12px;

    line-height:1.7;

    color:var(--print-muted);
}


.ips-spec-content p strong{
    color:var(--print-navy);
}


/* =========================================================
   NAVIGATION
========================================================= */

.ips-print-navigation{
    padding:32px 0;

    background:#fff;

    border-top:1px solid #e5edef;
    border-bottom:1px solid #e5edef;
}


.ips-print-navigation-inner{
    max-width:780px;

    margin:auto;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:5px;

    padding:5px;

    border:1px solid var(--print-border);

    border-radius:7px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(7,30,51,.04);
}


.ips-print-navigation a{
    display:grid;

    grid-template-columns:55px 1fr 20px;

    align-items:center;

    gap:10px;

    min-height:55px;

    padding:0 17px;

    border-radius:4px;

    text-decoration:none;

    transition:.3s ease;
}


.ips-print-navigation a:hover{
    background:#f5fbfd;
}


.ips-print-navigation a.active{
    background:var(--print-navy);

    color:#fff;
}


.ips-print-navigation a span{
    font-size:8px;

    font-weight:800;

    letter-spacing:1.5px;

    color:var(--print-red);
}


.ips-print-navigation a.active span{
    color:var(--print-cyan);
}


.ips-print-navigation strong{
    font-size:11px;

    color:var(--print-navy);
}


.ips-print-navigation a.active strong{
    color:#fff;
}


.ips-print-navigation b{
    font-size:17px;

    font-weight:400;

    color:var(--print-cyan);
}


/* =========================================================
   FOOTER
========================================================= */

.ips-print-footer{
    padding:15px 0;

    background:#fff5f5;

    border-top:2px solid var(--print-red);
}


.ips-print-footer-inner{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:20px;

    min-height:25px;

    font-size:10px;

    color:#756b6c;
}


.ips-print-footer-inner strong{
    font-size:10px;

    color:var(--print-red);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1050px){

    .ips-print-hero-inner{
        grid-template-columns:1fr 390px;
    }

    .ips-print-table-head,
    .ips-print-table-row{
        grid-template-columns:1fr 190px 190px;
    }

    .ips-cover-layout{
        grid-template-columns:280px 1fr;
        gap:30px;
    }

}


@media(max-width:850px){

    .ips-print-hero-inner{
        grid-template-columns:1fr;

        text-align:center;
    }


    .ips-print-hero-content{
        margin:auto;
    }


    .ips-print-kicker{
        justify-content:center;
    }


    .ips-print-hero-content p{
        margin-left:auto;
        margin-right:auto;
    }


    .ips-print-hero-line{
        margin-left:auto;
        margin-right:auto;
    }


    .ips-print-hero-info{
        justify-content:center;
    }


    .ips-print-hero-visual{
        height:320px;
    }


    .ips-print-intro-grid{
        grid-template-columns:60px 1fr;
    }


    .ips-print-intro-grid > p{
        grid-column:2;

        padding-left:0;

        border-left:0;
    }


    .ips-cover-layout{
        grid-template-columns:1fr;
    }


    .ips-cover-intro{
        max-width:100%;
    }


    .ips-spec-grid{
        grid-template-columns:1fr;
    }

}


@media(max-width:700px){

    .ips-print-hero{
        min-height:auto;
    }


    .ips-print-hero-inner{
        min-height:auto;

        padding:55px 0 35px;
    }


    .ips-print-hero-content h1{
        font-size:43px;

        letter-spacing:-2.5px;
    }


    .ips-print-hero-content p{
        font-size:13px;
    }


    .ips-print-hero-visual{
        height:295px;
    }


    .ips-print-ad-card{
        width:210px;
        height:255px;
    }


    .ips-print-ad-center strong{
        font-size:36px;
    }


    .ips-print-floating{
        min-width:100px;

        padding:9px 11px;
    }


    .floating-one{
        left:5px;
        top:35px;
    }


    .floating-two{
        right:2px;
        bottom:30px;
    }


    .ips-print-intro{
        padding:48px 0;
    }


    .ips-print-intro-grid{
        grid-template-columns:45px 1fr;
        gap:15px;
    }


    .ips-print-intro-number{
        font-size:34px;
    }


    .ips-print-intro h2{
        font-size:31px;
    }


    .ips-print-section-title{
        gap:15px;

        margin-bottom:28px;
    }


    .ips-print-section-number{
        width:44px;
        height:44px;
    }


    .ips-print-section-title h2{
        font-size:28px;
    }


    /* TABLE TO CARDS */

    .ips-print-table-head{
        display:none; 
    }


    .ips-print-table-row{
        display:block;

        min-height:0;

        padding:20px; 
    }


    .ips-print-size{
        padding:0 0 16px;
    }


    .ips-print-price{
        min-height:50px;

        flex-direction:row;

        justify-content:space-between;

        padding:12px 0;

        border-left:0;

        border-top:1px solid #e7eef1;
    }


    .ips-print-price.colour::before{
        display:none;
    }


    .ips-print-price small{
        margin:0;
    }


    .ips-print-price strong{
        font-size:16px;
    }


    /* COVER */

    .ips-cover-head{
        display:none;
    }


    .ips-cover-row{
        display:block;

        min-height:0;

        padding:16px 18px;
    }


    .ips-cover-row > div{
        padding:0 0 12px;
    }


    .ips-cover-row > b{
        justify-content:flex-start;

        min-height:42px;

        padding-left:42px;

        border-left:0;

        border-top:1px solid #e8eff2;

        font-size:15px;
    }


    .ips-cover-row.highlight > b{
        font-size:17px;
    }


    .ips-spec-card{
        grid-template-columns:1fr;
    }


    .ips-spec-image{
        min-height:210px;
    }


    .ips-spec-content{
        padding:24px;
    }


    .ips-print-navigation-inner{
        grid-template-columns:1fr;
    }


    .ips-print-navigation a{
        min-height:50px;
    }


    .ips-print-footer-inner{
        flex-direction:column;

        justify-content:center;

        gap:5px;

        text-align:center;
    }

}


@media(max-width:480px){

    .ips-print-hero-content h1{
        font-size:38px;
    }


    .ips-print-hero-info{
        gap:18px;
    }


    .ips-print-hero-info div + div{
        padding-left:18px;
    }


    .ips-print-circle.circle-one{
        width:250px;
        height:250px;
    }


    .ips-print-circle.circle-two{
        width:205px;
        height:205px;
    }


    .ips-print-circle.circle-three{
        width:140px;
        height:140px;
    }


    .ips-print-section-title h2{
        font-size:25px;
    }


    .ips-cover-intro{
        padding:27px 23px;
    }


    .ips-cover-intro h3{
        margin-top:38px;

        font-size:28px;
    }


    .ips-spec-image{
        min-height:180px;
    }


    .ips-spec-image img{
        max-height:155px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

    .ips-print-ad-card,
    .ips-print-spec-card,
    .ips-spec-card{
        transition:none;
    }

}


/* =========================================
   PROMINENT ADVERTISEMENT SIZE IMAGE
========================================= */

.ips-spec-card-prominent {
    overflow: hidden;
}

.ips-spec-image-large {
    position: relative;
    min-height: 430px;
    padding: 0;
    background: #f4f8fa;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.ips-spec-image-large img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: contain;
    display: block;
    transition: transform .7s cubic-bezier(.2,.8,.2,1);
}

.ips-spec-card-prominent:hover .ips-spec-image-large img {
    transform: scale(1.035);
}


/* Image label */

.ips-spec-image-label {
    position: absolute;
    left: 24px;
    bottom: 22px;

    display: flex;
    flex-direction: column;
    gap: 4px;

    padding: 12px 17px;

    background: rgba(5, 25, 43, .92);
    color: #fff;

    border-left: 3px solid #08aedb;

    backdrop-filter: blur(8px);
}

.ips-spec-image-label span {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.8px;
    color: #8edff4;
}

.ips-spec-image-label strong {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .5px;
}


/* Content */

.ips-spec-card-prominent .ips-spec-content {
    padding: 28px 30px 32px;
}

.ips-spec-card-prominent .ips-spec-content > span {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #08aedb;
}

.ips-spec-card-prominent .ips-spec-content h3 {
    margin: 8px 0 10px;
    font-size: 28px;
    line-height: 1.05;
}

.ips-spec-card-prominent .ips-spec-content h3 em {
    color: #ed2939;
    font-style: normal;
}

.ips-spec-card-prominent .ips-spec-content p {
    margin: 0;
    color: #647482;
    line-height: 1.7;
}

.ips-spec-grid {
    grid-template-columns: 1.35fr 1fr;
    gap: 28px;
}

/* =========================================================
   PROMINENT ADVERTISEMENT SIZE
========================================================= */

.ips-spec-card-size {
    display: block !important;
    overflow: hidden;
    width: 100%;
}


/* IMAGE */

.ips-spec-card-size .ips-spec-image-size {
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5fbfd;
    overflow: hidden;
}

.ips-spec-card-size .ips-spec-image-size img {
    width: 100%;
    height: auto;
    max-width: 100%;
    max-height: none;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 12px 22px rgba(7,30,51,.10));
}

/* ACTUAL IMAGE */

.ips-spec-card-size .ips-spec-image-size img {
    width: 100%;
    height: 100%;

    max-width: 100%;
    max-height: 100%;

    object-fit: contain;

    display: block;

    filter: drop-shadow(
        0 18px 28px rgba(7,30,51,.13)
    );

    transition: transform .5s ease;
}


.ips-spec-card-size:hover
.ips-spec-image-size img {
    transform: scale(1.025);
}


/* CONTENT */

.ips-spec-card-size .ips-spec-content {
    padding: 30px 34px 35px;
}


.ips-spec-card-size .ips-spec-content > span {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 2px;
    color: var(--print-red);
}


.ips-spec-card-size .ips-spec-content h3 {
    margin: 10px 0 0;

    font-family: "Manrope", sans-serif;

    font-size: 28px;
    line-height: 1.05;

    color: var(--print-navy);
}


.ips-spec-card-size .ips-spec-content h3 em {
    font-style: normal;
    color: var(--print-cyan);
}


.ips-spec-card-size .ips-spec-content p {
    margin: 13px 0 0;

    font-size: 13px;
    line-height: 1.7;

    color: var(--print-muted);
}


/* =========================================================
   MATERIAL REQUIREMENT HIGHLIGHT
========================================================= */

.ips-material-highlight {

    position: relative;

    margin-top: 25px;

    min-height: 95px;

    display: flex;
    align-items: center;

    padding: 20px 28px;

    border: 1px solid rgba(8,174,222,.20);

    border-left: 5px solid var(--print-red);

    border-radius: 7px;

    background:
        linear-gradient(
            100deg,
            #071e33 0%,
            #0a3851 62%,
            #075b83 100%
        );

    box-shadow:
        0 18px 45px rgba(7,30,51,.13);

    overflow: hidden;
}


/* Decorative glow */

.ips-material-highlight::before {

    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    right: -90px;
    top: -115px;

    border: 1px solid rgba(8,174,222,.22);

    border-radius: 50%;
}


.ips-material-highlight::after {

    content: "";

    position: absolute;

    width: 120px;
    height: 120px;

    right: -40px;
    bottom: -70px;

    border: 1px dashed rgba(237,41,57,.28);

    border-radius: 50%;
}


/* IPS badge */

.ips-material-icon {

    position: relative;
    z-index: 2;

    width: 54px;
    height: 54px;

    flex: 0 0 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(8,174,222,.35);

    border-radius: 50%;

    background: rgba(255,255,255,.06);

}


.ips-material-icon span {

    font-family: "Manrope", sans-serif;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 1px;

    color: var(--print-cyan);
}


/* TEXT */

.ips-material-text {

    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;

    margin-left: 20px;
}


.ips-material-text span {

    margin-bottom: 6px;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 1.8px;

    color: #8fd7e7;
}


.ips-material-text strong {

    font-family: "Manrope", sans-serif;

    font-size: 18px;
    font-weight: 700;

    color: #ffffff;
}


/* Arrow */

.ips-material-arrow {

    position: relative;
    z-index: 2;

    margin-left: auto;

    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(255,255,255,.14);

    border-radius: 50%;

    color: var(--print-cyan);

    font-size: 20px;

    transition: .3s ease;
}


.ips-material-highlight:hover
.ips-material-arrow {

    transform: translateX(5px);

    background: rgba(255,255,255,.06);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:700px) {

    .ips-spec-card-size
    .ips-spec-image-size {

        height: 360px;
        min-height: 360px;

        padding: 18px;
    }


    .ips-material-highlight {

        padding: 18px;

        min-height: auto;
    }


    .ips-material-icon {

        width: 45px;
        height: 45px;

        flex: 0 0 45px;
    }


    .ips-material-text {

        margin-left: 14px;
    }


    .ips-material-text strong {

        font-size: 14px;

        line-height: 1.4;
    }

}


@media(max-width:480px) {

    .ips-spec-card-size
    .ips-spec-image-size {

        height: 300px;
        min-height: 300px;
    }


    .ips-material-highlight {

        align-items: flex-start;
    }


    .ips-material-arrow {

        width: 35px;
        height: 35px;

        flex: 0 0 35px;
    }

}