/*
Theme Name: ENOM Corporate
Version: 3.0.0
*/

:root{
    --navy:#071421;
    --navy2:#0c2033;
    --blue:#1877f2;
    --blue2:#3d98ff;
    --white:#ffffff;
    --bg:#f5f7f9;
    --text:#17222d;
    --muted:#6b7885;
    --line:#dfe5ea;
    --max:1180px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
    margin:0;
    font-family:Arial,Helvetica,sans-serif;
    background:var(--bg);
    color:var(--text);
    line-height:1.6;
}

a{
    color:inherit;
    text-decoration:none;
}

img{
    display:block;
    max-width:100%;
}

.container{
    width:min(var(--max),92%);
    margin:auto;
}


/* HEADER */

.site-header{
    position:sticky;
    top:0;
    z-index:100;
    background:rgba(7,20,33,.97);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.header-inner{
    min-height:76px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.brand{
    display:flex;
    align-items:center;
    gap:12px;
}

.brand img{
    max-height:42px;
    width:auto;
}

.brand-text{
    color:white;
    font-size:14px;
    font-weight:700;
}

.main-nav ul{
    list-style:none;
    display:flex;
    gap:28px;
    margin:0;
    padding:0;
}

.main-nav a{
    color:#d2dbe3;
    font-size:14px;
}

.main-nav a:hover{
    color:white;
}


/* HERO */

.home-hero{
    background:
        linear-gradient(135deg,#071421 0%,#0d2942 100%);
    color:white;
    padding:75px 0;
}

.hero-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
}

.hero-label,
.section-head span,
.intro-title span,
.contact-section span{
    display:block;
    font-size:12px;
    letter-spacing:2px;
    font-weight:700;
    color:var(--blue2);
    margin-bottom:18px;
}

.hero-content h1{
    font-size:clamp(48px,6vw,76px);
    line-height:1.02;
    margin:0 0 28px;
    letter-spacing:-2px;
}

.hero-content p{
    max-width:570px;
    color:#b9c6d1;
    font-size:19px;
    margin:0 0 32px;
}

.hero-buttons{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
}

.btn{
    display:inline-block;
    padding:13px 21px;
    border-radius:6px;
    font-weight:700;
    font-size:14px;
}

.btn.primary{
    background:var(--blue);
    color:white;
}

.btn.outline{
    color:white;
    border:1px solid rgba(255,255,255,.35);
}

.hero-image{
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 30px 70px rgba(0,0,0,.28);
}

.hero-image img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
}


/* INTRO */

.intro-section{
    padding:100px 0;
    background:white;
}

.intro-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
}

.intro-title h2{
    margin:0;
    font-size:clamp(34px,4vw,52px);
    line-height:1.13;
    letter-spacing:-1.5px;
}

.intro-copy{
    font-size:18px;
    color:var(--muted);
}

.intro-copy p{
    margin-top:0;
    margin-bottom:22px;
}

.intro-copy a{
    color:var(--blue);
    font-weight:700;
}


/* SERVICES */

.services-section{
    padding:100px 0;
}

.section-head{
    margin-bottom:45px;
}

.section-head h2{
    margin:0;
    font-size:42px;
    letter-spacing:-1px;
}

.service-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}

.service-card{
    background:white;
    border:1px solid var(--line);
    border-radius:10px;
    padding:35px;
    transition:.2s;
}

.service-card:hover{
    transform:translateY(-4px);
    box-shadow:0 15px 40px rgba(20,40,60,.08);
}

.service-icon{
    color:var(--blue);
    font-weight:700;
    font-size:13px;
}

.service-card h3{
    font-size:25px;
    margin:22px 0 12px;
}

.service-card p{
    color:var(--muted);
    margin:0;
}


/* BRANDS */

.brands-section{
    background:var(--navy);
    color:white;
    padding:100px 0;
}

.section-head.light h2{
    color:white;
}

.brand-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid rgba(255,255,255,.12);
    border-left:1px solid rgba(255,255,255,.12);
}

.brand-grid a{
    min-height:160px;
    padding:28px;
    border-right:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    transition:.2s;
}

.brand-grid a:hover{
    background:var(--blue);
}

.brand-grid strong{
    font-size:22px;
}

.brand-grid span{
    color:#8fa1b1;
    font-size:13px;
}

.brand-grid a:hover span{
    color:white;
}


/* CONTACT */

.contact-section{
    background:white;
    padding:100px 0;
}

.contact-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:80px;
    align-items:end;
}

.contact-section h2{
    font-size:clamp(36px,5vw,60px);
    line-height:1.05;
    letter-spacing:-2px;
    margin:0;
}

.contact-side{
    color:var(--muted);
    font-size:17px;
}

.contact-side p{
    margin:0 0 25px;
}


/* FOOTER */

.site-footer{
    background:#040b12;
    color:#8997a4;
    padding:40px 0;
}

.footer-inner{
    display:flex;
    justify-content:space-between;
    gap:30px;
    flex-wrap:wrap;
}

.footer-inner strong{
    color:white;
}


/* MOBILE */

@media(max-width:900px){

    .main-nav{
        display:none;
    }

    .hero-layout,
    .intro-grid,
    .contact-grid{
        grid-template-columns:1fr;
    }

    .hero-layout{
        gap:45px;
    }

    .service-grid{
        grid-template-columns:1fr;
    }

    .brand-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:600px){

    .home-hero{
        padding:55px 0;
    }

    .hero-content h1{
        font-size:46px;
    }

    .intro-section,
    .services-section,
    .brands-section,
    .contact-section{
        padding:70px 0;
    }

    .brand-grid{
        grid-template-columns:1fr;
    }

    .section-head h2{
        font-size:34px;
    }
}

/* HERO LOGO */
.hero-image{
    min-height:480px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:70px;
    background:
        radial-gradient(circle at center,rgba(24,119,242,.16),transparent 55%),
        #081522;
}

.hero-image img{
    width:min(460px,85%);
    height:auto;
    aspect-ratio:auto;
    object-fit:contain;
    box-shadow:none;
    filter:none;
}

/* ==================================================
   OFFICIAL ENOM LOGO — DO NOT ALTER
   ================================================== */

.hero-image{
    min-height:500px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    padding:65px;
    background:
        radial-gradient(circle at center,
        rgba(24,119,242,.12) 0%,
        rgba(24,119,242,.04) 35%,
        transparent 68%),
        #081522;
}

/* decorative rings BEHIND the official logo */
.hero-image::before{
    content:"";
    position:absolute;
    width:390px;
    height:390px;
    border-radius:50%;
    border:1px solid rgba(80,160,255,.18);
    box-shadow:
        0 0 0 55px rgba(50,130,255,.035),
        0 0 0 110px rgba(50,130,255,.025);
}

/* subtle horizontal communication line */
.hero-image::after{
    content:"";
    position:absolute;
    left:8%;
    right:8%;
    top:50%;
    height:1px;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(73,153,255,.25),
        transparent
    );
}

/* EXACT ORIGINAL LOGO */
.hero-image img{
    position:relative;
    z-index:2;

    width:min(440px,82%);
    height:auto;

    object-fit:contain;
    aspect-ratio:auto;

    /* absolutely no visual alteration */
    filter:none;
    opacity:1;
    transform:none;
    box-shadow:none;

    border:0;
    border-radius:0;
}


/* ==================================================
   ENOM CONTACT PAGE
   ================================================== */

.contact-hero{
    background:var(--navy);
    color:#fff;
    padding:90px 0 80px;
}

.contact-kicker,
.contact-label{
    display:block;
    color:var(--blue2);
    font-size:12px;
    font-weight:700;
    letter-spacing:2px;
    margin-bottom:18px;
}

.contact-hero h1{
    font-size:clamp(44px,6vw,72px);
    line-height:1;
    letter-spacing:-2px;
    margin:0 0 25px;
}

.contact-hero p{
    max-width:670px;
    color:#b9c6d1;
    font-size:18px;
    margin:0;
}


.contact-main{
    padding:100px 0;
    background:#f5f7f9;
}

.contact-layout{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:80px;
    align-items:start;
}


.contact-info h2{
    font-size:clamp(34px,4vw,50px);
    line-height:1.08;
    letter-spacing:-1.5px;
    margin:0 0 50px;
}


.contact-details{
    border-top:1px solid var(--line);
}

.contact-details > div{
    padding:22px 0;
    border-bottom:1px solid var(--line);
}

.contact-details small{
    display:block;
    color:#7a8792;
    font-size:10px;
    letter-spacing:1.5px;
    margin-bottom:7px;
}

.contact-details a,
.contact-details span{
    font-size:17px;
    font-weight:600;
}


.contact-form-box{
    background:#fff;
    border:1px solid var(--line);
    border-radius:12px;
    padding:42px;
}


.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}


.form-field{
    margin-bottom:22px;
}

.form-field label{
    display:block;
    font-size:13px;
    font-weight:700;
    margin-bottom:7px;
}


.form-field input,
.form-field select,
.form-field textarea{
    width:100%;
    border:1px solid #ccd5dc;
    border-radius:6px;
    background:#fff;
    color:#17222d;
    font:inherit;
    padding:13px 14px;
    outline:none;
    transition:border-color .2s, box-shadow .2s;
}


.form-field textarea{
    resize:vertical;
    min-height:160px;
}


.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
    border-color:var(--blue);
    box-shadow:0 0 0 3px rgba(24,119,242,.10);
}


.consent-field{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#65727e;
    font-size:13px;
    margin:4px 0 25px;
}

.consent-field input{
    margin-top:4px;
}


.contact-submit{
    border:0;
    border-radius:6px;
    background:var(--blue);
    color:#fff;
    padding:14px 21px;
    font:inherit;
    font-weight:700;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:18px;
}

.contact-submit:hover{
    background:#0d65d9;
}


.form-message{
    padding:14px 16px;
    border-radius:6px;
    margin-bottom:25px;
    font-size:14px;
}

.form-message.success{
    background:#eaf8ef;
    color:#176b35;
    border:1px solid #bce4c8;
}

.form-message.error{
    background:#fff0f0;
    color:#9a2424;
    border:1px solid #efc2c2;
}


.enom-hp{
    position:absolute !important;
    left:-10000px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}


@media(max-width:850px){

    .contact-layout{
        grid-template-columns:1fr;
        gap:55px;
    }

}

@media(max-width:600px){

    .contact-main{
        padding:65px 0;
    }

    .contact-form-box{
        padding:25px;
    }

    .form-row{
        grid-template-columns:1fr;
        gap:0;
    }

}


/* ==================================================
   ENOM MATH CAPTCHA
   ================================================== */

.captcha-box{
    display:flex;
    align-items:center;
    gap:14px;
}

.captcha-box span{
    min-width:72px;
    font-size:18px;
    font-weight:700;
    color:#17222d;
}

.captcha-box input{
    max-width:110px;
    text-align:center;
    font-weight:700;
}

/* ==================================================
   ENOM SERVICES PAGES
   ================================================== */

.services-hero{
    padding:100px 0 80px;
    background:#0d1823;
    color:#fff;
}

.services-hero .page-eyebrow,
.services-commerce .page-eyebrow{
    display:block;
    margin-bottom:18px;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
}

.services-hero h1{
    max-width:900px;
    margin:0 0 28px;
    font-size:clamp(42px,6vw,76px);
    line-height:1.04;
}

.services-lead{
    max-width:800px;
    margin-bottom:32px;
    font-size:19px;
    line-height:1.75;
}

.services-detail-section{
    padding:90px 0;
}

.services-detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    margin-top:45px;
}

.service-detail-card{
    padding:38px;
    border:1px solid rgba(0,0,0,.10);
    background:#fff;
}

.service-detail-card.featured-service{
    border-width:2px;
}

.service-number{
    display:block;
    margin-bottom:24px;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
}

.service-detail-card h2{
    margin:0 0 18px;
    font-size:28px;
}

.service-detail-card p{
    line-height:1.75;
}

.service-detail-card ul{
    margin:24px 0 0;
    padding-left:20px;
}

.service-detail-card li{
    margin:9px 0;
    line-height:1.55;
}

.services-commerce{
    padding:80px 0;
    background:#f3f5f7;
}

.services-commerce-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:start;
}

.services-commerce h2{
    margin:0;
    font-size:clamp(30px,4vw,48px);
    line-height:1.15;
}

.services-commerce p{
    margin:0;
    font-size:18px;
    line-height:1.8;
}

@media (max-width:800px){

    .services-detail-grid,
    .services-commerce-grid{
        grid-template-columns:1fr;
    }

    .services-hero{
        padding:70px 0 60px;
    }

    .service-detail-card{
        padding:28px;
    }
}

/* ==================================================
   ENOM BRANDS & PROJECTS
   ================================================== */

.brands-hero{
    padding:100px 0 75px;
    background:#0d1823;
    color:#fff;
}

.brands-hero h1{
    max-width:900px;
    margin:0 0 25px;
    font-size:clamp(44px,6vw,76px);
    line-height:1.04;
}

.brands-lead{
    max-width:780px;
    margin:0;
    font-size:19px;
    line-height:1.75;
}

.brands-list-section{
    padding:90px 0;
}

.brands-project-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
}

.brand-project-card{
    display:grid;
    grid-template-columns:110px 1fr;
    gap:28px;
    padding:35px;
    border:1px solid rgba(0,0,0,.1);
    background:#fff;
}

.brand-project-mark{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100px;
    height:100px;
    background:#101c28;
    color:#fff;
    font-size:25px;
    font-weight:800;
    letter-spacing:-1px;
}

.brand-type{
    display:block;
    margin-bottom:8px;
    font-size:12px;
    font-weight:700;
    letter-spacing:2px;
}

.brand-project-card h2{
    margin:0 0 14px;
    font-size:29px;
}

.brand-project-card p{
    margin:0 0 20px;
    line-height:1.7;
}

.brand-project-card a{
    font-weight:700;
    text-decoration:none;
}

.brands-network-info{
    padding:80px 0;
    background:#f3f5f7;
}

.brands-network-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
}

.brands-network-grid h2{
    margin:0;
    font-size:clamp(32px,4vw,48px);
}

.brands-network-grid p{
    margin:0;
    font-size:18px;
    line-height:1.8;
}

@media(max-width:800px){

    .brands-project-grid,
    .brands-network-grid{
        grid-template-columns:1fr;
    }

    .brand-project-card{
        grid-template-columns:1fr;
    }
}

/* ==================================================
   ENOM ABOUT
   ================================================== */

.about-hero{
    padding:100px 0 80px;
    background:#0d1823;
    color:#fff;
}

.about-hero h1{
    max-width:950px;
    margin:0 0 28px;
    font-size:clamp(44px,6vw,76px);
    line-height:1.04;
}

.about-lead{
    max-width:820px;
    margin:0;
    font-size:19px;
    line-height:1.8;
}

.about-intro,
.about-network{
    padding:90px 0;
}

.about-two-columns{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
}

.about-two-columns h2{
    margin:0;
    font-size:clamp(32px,4vw,48px);
    line-height:1.15;
}

.about-copy{
    font-size:18px;
    line-height:1.8;
}

.about-copy p:first-child{
    margin-top:0;
}

.about-copy a{
    font-weight:700;
    text-decoration:none;
}

.about-pillars{
    padding:90px 0;
    background:#f3f5f7;
}

.about-pillar-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    margin-top:45px;
}

.about-pillar-grid article{
    padding:30px;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
}

.about-pillar-grid article > span{
    display:block;
    margin-bottom:30px;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
}

.about-pillar-grid h3{
    margin:0 0 15px;
    font-size:23px;
}

.about-pillar-grid p{
    margin:0;
    line-height:1.65;
}

@media(max-width:900px){

    .about-pillar-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){

    .about-two-columns,
    .about-pillar-grid{
        grid-template-columns:1fr;
    }
}

/* ==================================================
   ENOM BUSINESS TELEPHONY & VOIP
   ================================================== */

.telephony-hero{
    padding:100px 0 80px;
    background:#0d1823;
    color:#fff;
}

.telephony-hero h1{
    max-width:950px;
    margin:0 0 28px;
    font-size:clamp(44px,6vw,76px);
    line-height:1.04;
}

.telephony-lead{
    max-width:800px;
    font-size:20px;
    line-height:1.75;
}

.telephony-intro,
.telephony-features,
.telephony-compare,
.telephony-payg,
.telephony-packages,
.telephony-for{
    padding:85px 0;
}

.telephony-two-col{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:65px;
}

.telephony-two-col h2{
    margin:0;
    font-size:clamp(32px,4vw,48px);
}

.telephony-two-col p{
    font-size:18px;
    line-height:1.8;
}

.telephony-features,
.telephony-packages{
    background:#f3f5f7;
}

.telephony-feature-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:40px;
}

.telephony-feature-grid article{
    padding:28px;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
}

.telephony-feature-grid h3{
    margin-top:0;
}

.telephony-feature-grid p{
    margin-bottom:0;
    line-height:1.65;
}

.telephony-more{
    margin-top:30px;
    padding:22px 25px;
    background:#fff;
}

.telephony-more summary{
    cursor:pointer;
    font-weight:700;
}

.telephony-more-content{
    padding-top:15px;
    line-height:1.8;
}

.table-scroll{
    overflow-x:auto;
}

.telephony-table{
    width:100%;
    margin-top:35px;
    border-collapse:collapse;
    background:#fff;
}

.telephony-table th,
.telephony-table td{
    padding:15px 14px;
    border-bottom:1px solid rgba(0,0,0,.10);
    text-align:left;
    white-space:nowrap;
}

.telephony-table th{
    background:#0d1823;
    color:#fff;
}

.telephony-table tbody tr:hover{
    background:#f6f7f8;
}

.payg-prices{
    display:grid;
    gap:18px;
}

.payg-prices > div{
    padding:22px;
    background:#f3f5f7;
}

.payg-prices strong{
    display:block;
    font-size:32px;
}

.package-notes{
    margin:25px 0;
    line-height:1.7;
}

.telephony-use-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:20px;
    margin-top:35px;
}

.telephony-use-grid article{
    padding:28px;
    border:1px solid rgba(0,0,0,.10);
}

@media(max-width:900px){

    .telephony-feature-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .telephony-use-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){

    .telephony-two-col,
    .telephony-feature-grid,
    .telephony-use-grid{
        grid-template-columns:1fr;
    }
}

/* ==================================================
   ENOM MAIN MENU DROPDOWN
   ================================================== */

.site-header{
    position:relative;
    z-index:1000;
}

.main-nav .main-menu{
    display:flex;
    align-items:center;
    gap:28px;
    margin:0;
    padding:0;
    list-style:none;
}

.main-nav .main-menu > li{
    position:relative;
    margin:0;
    padding:0;
}

.main-nav .main-menu > li > a{
    display:block;
    white-space:nowrap;
}


/* Submenu */
.main-nav .sub-menu{
    position:absolute;
    top:100%;
    left:0;
    z-index:9999;

    min-width:290px;
    margin:0;
    padding:10px 0;

    list-style:none;

    background:#0d1823;
    box-shadow:0 15px 35px rgba(0,0,0,.22);

    opacity:0;
    visibility:hidden;
    transform:translateY(8px);

    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;
}

.main-nav .sub-menu li{
    display:block;
    width:100%;
    margin:0;
}

.main-nav .sub-menu a{
    display:block;
    padding:12px 18px;
    color:#fff;
    text-decoration:none;
    white-space:nowrap;
}

.main-nav .sub-menu a:hover,
.main-nav .sub-menu a:focus{
    background:rgba(255,255,255,.08);
}


/* Open dropdown */
.main-nav .menu-item-has-children:hover > .sub-menu,
.main-nav .menu-item-has-children:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}


/* Mobile */
@media(max-width:900px){

    .main-nav .main-menu{
        gap:14px;
        flex-wrap:wrap;
    }

    .main-nav .sub-menu{
        min-width:260px;
    }
}

/* ==================================================
   ENOM SHOP DESIGN
   ================================================== */

.woocommerce .site-main,
.woocommerce-page .site-main{
    width:100%;
}

.enom-shop-hero{
    margin-top:0;
    padding:95px 0 85px;
    background:#0d1823;
    color:#fff;
}

.enom-shop-hero h1{
    margin:8px 0 24px;
    font-size:clamp(48px,7vw,82px);
    line-height:1;
}

.enom-shop-hero p{
    max-width:780px;
    margin:0;
    font-size:19px;
    line-height:1.8;
    color:rgba(255,255,255,.82);
}

.enom-shop-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:34px;
}

.enom-shop-categories{
    padding:80px 0;
    background:#f3f5f7;
}

.enom-shop-section-head{
    max-width:760px;
    margin-bottom:38px;
}

.enom-shop-section-head > span,
.enom-shop-products-head span{
    display:block;
    margin-bottom:10px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.14em;
}

.enom-shop-section-head h2,
.enom-shop-products-head h2{
    margin:0 0 15px;
    font-size:clamp(30px,4vw,46px);
}

.enom-shop-section-head p{
    font-size:17px;
    line-height:1.7;
}

.enom-shop-category-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}

.enom-shop-category-card{
    display:block;
    min-height:300px;
    padding:32px;
    border:1px solid rgba(13,24,35,.10);
    background:#fff;
    color:#0d1823;
    text-decoration:none;
    transition:
        transform .18s ease,
        box-shadow .18s ease;
}

.enom-shop-category-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 40px rgba(13,24,35,.09);
}

.enom-shop-number{
    display:block;
    margin-bottom:38px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
}

.enom-shop-category-card h3{
    margin:0 0 16px;
    font-size:25px;
}

.enom-shop-category-card p{
    min-height:105px;
    margin:0 0 24px;
    line-height:1.7;
    color:#47515b;
}

.enom-shop-link{
    font-weight:700;
}

.enom-shop-products-head{
    padding:70px 0 10px;
}


/* WooCommerce product area */

.post-type-archive-product .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering{
    margin-top:25px;
}

.woocommerce ul.products{
    clear:both;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin:35px auto 80px;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after{
    display:none;
}

.woocommerce ul.products li.product{
    float:none !important;
    width:auto !important;
    margin:0 !important;
    padding:28px;
    border:1px solid rgba(13,24,35,.10);
    background:#fff;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:21px;
    line-height:1.35;
    color:#0d1823;
}

.woocommerce ul.products li.product .price{
    font-size:18px;
    font-weight:700;
}

.woocommerce ul.products li.product .button{
    margin-top:18px;
}


/* Full width WooCommerce main content */
.woocommerce #primary,
.woocommerce-page #primary{
    width:100%;
    max-width:none;
}

.woocommerce .content-area{
    width:100%;
}

.woocommerce-notices-wrapper,
.woocommerce-result-count,
.woocommerce-ordering,
.woocommerce ul.products{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}


@media(max-width:900px){

    .enom-shop-category-grid,
    .woocommerce ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


@media(max-width:650px){

    .enom-shop-category-grid,
    .woocommerce ul.products{
        grid-template-columns:1fr;
    }

    .enom-shop-hero{
        padding:70px 0 60px;
    }

    .enom-shop-category-card{
        min-height:0;
    }

    .enom-shop-category-card p{
        min-height:0;
    }
}


/* ==================================================
   ENOM YUBOTO PARTNER DESIGN
   ================================================== */

.enom-yuboto-partner{
    margin:20px 0 28px;
    padding:22px;
    border:1px solid rgba(13,24,35,.12);
    background:#f5f7f8;
}

.enom-yuboto-partner-label{
    margin-bottom:18px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.11em;
}

.enom-yuboto-provider-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 25px;
}

.enom-yuboto-provider-grid > div{
    padding:10px 0;
    border-bottom:1px solid rgba(13,24,35,.08);
}

.enom-yuboto-provider-grid span{
    display:block;
    margin-bottom:3px;
    font-size:12px;
    color:#68727c;
}

.enom-yuboto-provider-grid strong{
    font-size:15px;
}

.enom-yuboto-partner p{
    margin:18px 0 0;
    line-height:1.65;
}

.enom-yuboto-shop-label{
    margin:7px 0 4px;
    font-size:12px;
    line-height:1.4;
    color:#65717b;
}

@media(max-width:600px){

    .enom-yuboto-provider-grid{
        grid-template-columns:1fr;
    }
}


/* ==================================================
   ENOM YUBOTO CHECKOUT DESIGN
   ================================================== */

#enom_yuboto_checkout{
    margin:35px 0;
    padding:28px;
    border:1px solid rgba(13,24,35,.12);
    background:#f5f7f8;
}

#enom_yuboto_checkout h3{
    margin-top:0;
}

.enom-yuboto-checkout-note{
    margin-bottom:22px;
    line-height:1.65;
    color:#58636d;
}


/* ==================================================
   ENOM WOOCOMMERCE WIDTH FIX
   ================================================== */

.woocommerce-page main,
.woocommerce main,
.post-type-archive-product main,
.single-product main,
.tax-product_cat main{
    width:100%;
}

.woocommerce .woocommerce-notices-wrapper,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce ul.products,
.single-product .product,
.tax-product_cat .products,
.woocommerce .woocommerce-breadcrumb{
    width:calc(100% - 40px);
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}


/* Product single page */
.single-product div.product{
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}


/* Category pages */
.tax-product_cat .woocommerce-products-header{
    width:calc(100% - 40px);
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}


/* Keep shop content visually compact */
.woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr));
}


/* Prevent excessively wide product cards */
.woocommerce ul.products li.product{
    max-width:100%;
}


/* Cart / checkout / account */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce{
    width:calc(100% - 40px);
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}


/* Mobile */
@media(max-width:900px){

    .woocommerce ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:650px){

    .woocommerce ul.products{
        grid-template-columns:1fr;
    }

    .woocommerce .woocommerce-notices-wrapper,
    .woocommerce .woocommerce-result-count,
    .woocommerce .woocommerce-ordering,
    .woocommerce ul.products,
    .single-product .product,
    .tax-product_cat .woocommerce-products-header,
    .woocommerce-cart .woocommerce,
    .woocommerce-checkout .woocommerce,
    .woocommerce-account .woocommerce{
        width:calc(100% - 24px);
    }
}


/* ==================================================
   YUBOTO MEDIA INTEGRATION
   ================================================== */

.yuboto-brand-row{
    display:flex;
    align-items:center;
    gap:28px;
    max-width:980px;
    margin:34px 0 8px;
    padding:22px 26px;
    border:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.05);
}

.yuboto-brand-logo,
.yuboto-brand-badge{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
}

.yuboto-brand-logo{
    min-width:170px;
}

.yuboto-brand-badge{
    min-width:210px;
}

.yuboto-brand-logo img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:170px;
    max-height:95px;
    object-fit:contain;
}

.yuboto-brand-badge img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:210px;
    max-height:95px;
    object-fit:contain;
}

.yuboto-brand-copy{
    display:flex;
    flex-direction:column;
    gap:6px;
    min-width:0;
}

.yuboto-brand-copy strong{
    font-size:26px;
    line-height:1.2;
    color:#ffffff;
}

.yuboto-brand-copy span{
    font-size:16px;
    line-height:1.5;
    color:rgba(255,255,255,.78);
}


.telephony-feature-icon{
    width:56px !important;
    height:56px !important;
    object-fit:contain;
    margin:0 0 20px !important;
}


.yuboto-provider-section{
    padding:90px 0;
    background:#fff;
}

.yuboto-provider-grid{
    display:grid;
    grid-template-columns:minmax(260px,.7fr) 1.3fr;
    gap:70px;
    align-items:center;
}

.yuboto-provider-visual{
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:330px;
    padding:40px;
    background:#f5f7f8;
}

.yuboto-vpbx-main-logo{
    width:auto;
    max-width:100%;
    max-height:230px;
    object-fit:contain;
}

.yuboto-provider-content h2{
    margin:8px 0 20px;
    font-size:clamp(30px,4vw,46px);
}

.yuboto-provider-content > p{
    font-size:18px;
    line-height:1.8;
}

.yuboto-provider-benefits{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:30px;
}

.yuboto-provider-benefits > div{
    padding:18px;
    border:1px solid rgba(13,24,35,.10);
    text-align:center;
}

.yuboto-provider-benefits img{
    display:block;
    width:55px;
    height:55px;
    object-fit:contain;
    margin:0 auto 12px;
}

.yuboto-provider-benefits strong{
    display:block;
    font-size:14px;
}


@media(max-width:800px){

    .yuboto-provider-grid{
        grid-template-columns:1fr;
        gap:35px;
    }

    .yuboto-provider-benefits{
        grid-template-columns:1fr;
    }

    .yuboto-brand-row{
        flex-wrap:wrap;
        gap:18px;
    }

    .yuboto-brand-logo{
        min-width:140px;
    }

    .yuboto-brand-badge{
        min-width:180px;
    }

    .yuboto-brand-logo img{
        max-width:140px;
        max-height:80px;
    }

    .yuboto-brand-badge img{
        max-width:180px;
        max-height:80px;
    }

    .yuboto-brand-copy strong{
        font-size:22px;
    }

    .yuboto-brand-copy span{
        font-size:15px;
    }
}


/* ==================================================
   ENOM TELEPHONY - COMPACT SECTION SPACING
   ================================================== */

/* Hero: λίγο πιο μαζεμένο κάτω */
.telephony-hero{
    padding:78px 0 58px;
}


/* Κύριες ενότητες */
.telephony-intro,
.telephony-features,
.telephony-compare,
.telephony-payg,
.telephony-packages,
.telephony-for{
    padding-top:58px;
    padding-bottom:58px;
}


/* Yuboto provider block */
.yuboto-provider-section{
    padding-top:58px;
    padding-bottom:58px;
}


/* Λιγότερο κενό γύρω από section headings */
.telephony-page .section-head{
    margin-bottom:28px;
}


/* Features */
.telephony-feature-grid{
    margin-top:28px;
}

.telephony-more{
    margin-top:22px;
}


/* Comparison table */
.telephony-compare .telephony-table{
    margin-top:26px;
}


/* PAYG */
.telephony-payg .telephony-two-col{
    gap:45px;
}


/* Packages */
.telephony-packages .telephony-table{
    margin-top:26px;
}

.telephony-packages .package-notes{
    margin:20px 0;
}


/* Business use */
.telephony-for .telephony-use-grid{
    margin-top:26px;
}


/* Τελικό CTA */
.telephony-page .contact-section{
    padding-top:58px;
    padding-bottom:58px;
}


/* Mobile */
@media(max-width:700px){

    .telephony-hero{
        padding:58px 0 46px;
    }

    .telephony-intro,
    .telephony-features,
    .telephony-compare,
    .telephony-payg,
    .telephony-packages,
    .telephony-for,
    .yuboto-provider-section,
    .telephony-page .contact-section{
        padding-top:42px;
        padding-bottom:42px;
    }
}


/* ==================================================
   ENOM TELEPHONY HERO V2
   ================================================== */

.telephony-hero-v2{
    position:relative;
    overflow:hidden;
    padding:0;
    background:
        radial-gradient(
            circle at 72% 40%,
            rgba(43,93,131,.34) 0,
            rgba(43,93,131,.08) 33%,
            transparent 58%
        ),
        linear-gradient(
            112deg,
            #091723 0%,
            #0b1c2a 48%,
            #102535 100%
        );
}

.telephony-hero-v2::after{
    content:"";
    position:absolute;
    inset:auto 0 0 0;
    height:150px;
    background:linear-gradient(
        to top,
        rgba(4,13,20,.24),
        transparent
    );
    pointer-events:none;
}

.telephony-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);
    gap:50px;
    min-height:610px;
    align-items:stretch;
}

.telephony-hero-copy{
    position:relative;
    z-index:4;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:70px 0 60px;
}

.telephony-hero-eyebrow{
    margin-bottom:13px;
    color:#fff;
}

.telephony-hero-v2 h1{
    max-width:720px;
    margin:0 0 24px;
    font-size:clamp(48px,5.4vw,78px);
    line-height:.98;
    letter-spacing:-.035em;
    color:#fff;
}

.telephony-hero-v2 .telephony-lead{
    max-width:720px;
    margin:0;
    font-size:18px;
    line-height:1.7;
    color:rgba(255,255,255,.88);
}


/* PARTNER PANEL */

.telephony-partner-panel{
    display:grid;
    grid-template-columns:auto minmax(210px,1fr);
    align-items:center;
    gap:22px;
    max-width:760px;
    margin-top:30px;
    padding:16px 20px;
    border-radius:8px;
    background:#fff;
    box-shadow:0 18px 45px rgba(0,0,0,.16);
}

.telephony-partner-assets{
    display:flex;
    align-items:center;
    gap:18px;
}

.telephony-partner-logo,
.telephony-partner-badge{
    display:flex;
    align-items:center;
    justify-content:center;
}

.telephony-partner-logo img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:145px;
    max-height:66px;
    object-fit:contain;
}

.telephony-partner-badge img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:180px;
    max-height:66px;
    object-fit:contain;
}

.telephony-partner-divider{
    display:block;
    width:1px;
    height:52px;
    background:#d9dee3;
}

.telephony-partner-copy{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.telephony-partner-copy strong{
    color:#0b1722;
    font-size:16px;
    line-height:1.25;
}

.telephony-partner-copy span{
    color:#586470;
    font-size:13px;
    line-height:1.4;
}


/* BUTTONS */

.telephony-hero-v2 .hero-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-top:18px;
}

.telephony-hero-v2 .btn{
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}


/* TRUST ITEMS */

.telephony-hero-usps{
    display:flex;
    flex-wrap:wrap;
    gap:28px;
    margin-top:28px;
}

.telephony-hero-usps > div{
    display:flex;
    align-items:center;
    gap:11px;
    color:#fff;
    font-size:14px;
    font-weight:600;
}

.telephony-usp-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    flex:0 0 44px;
    border:1px solid rgba(255,255,255,.65);
    border-radius:50%;
}

.telephony-usp-icon svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.6;
    stroke-linecap:round;
    stroke-linejoin:round;
}


/* RIGHT VISUAL */

.telephony-hero-visual{
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    min-height:610px;
}

.telephony-visual-glow{
    position:absolute;
    z-index:0;
    width:540px;
    height:540px;
    right:-40px;
    bottom:20px;
    border-radius:50%;
    background:
        radial-gradient(
            circle,
            rgba(66,132,172,.38),
            rgba(31,77,107,.12) 52%,
            transparent 72%
        );
    filter:blur(5px);
}

.enom-telephony-visual-img{
    position:relative;
    z-index:2;
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:100%;
    max-height:585px;
    object-fit:contain;
    object-position:center bottom;
    filter:drop-shadow(0 18px 32px rgba(0,0,0,.25));
}

.telephony-visual-chip{
    position:absolute;
    z-index:5;
    right:0;
    bottom:58px;
    display:flex;
    align-items:center;
    gap:8px;
    padding:11px 15px;
    border-radius:999px;
    background:rgba(255,255,255,.94);
    color:#15202b;
    font-size:13px;
    font-weight:700;
    box-shadow:0 12px 35px rgba(0,0,0,.18);
}

.telephony-visual-chip span{
    width:9px;
    height:9px;
    border-radius:50%;
    background:#23c768;
}


/* TABLET */

@media(max-width:1050px){

    .telephony-hero-grid{
        grid-template-columns:minmax(0,1fr) 360px;
        gap:25px;
    }

    .telephony-partner-panel{
        grid-template-columns:1fr;
        max-width:620px;
    }

    .telephony-partner-copy{
        padding-top:4px;
    }

    .enom-telephony-visual-img{
        max-height:520px;
    }
}


/* MOBILE */

@media(max-width:800px){

    .telephony-hero-grid{
        grid-template-columns:1fr;
        min-height:0;
    }

    .telephony-hero-copy{
        padding:58px 0 20px;
    }

    .telephony-hero-v2 h1{
        font-size:clamp(42px,11vw,62px);
    }

    .telephony-partner-panel{
        grid-template-columns:1fr;
    }

    .telephony-partner-assets{
        flex-wrap:wrap;
    }

    .telephony-partner-divider{
        display:none;
    }

    .telephony-hero-usps{
        gap:18px;
    }

    .telephony-hero-visual{
        min-height:420px;
    }

    .enom-telephony-visual-img{
        max-height:440px;
    }

    .telephony-visual-chip{
        right:12px;
        bottom:24px;
    }
}


@media(max-width:520px){

    .telephony-partner-assets{
        gap:12px;
    }

    .telephony-partner-logo img{
        max-width:120px;
    }

    .telephony-partner-badge img{
        max-width:155px;
    }

    .telephony-hero-usps{
        display:grid;
        grid-template-columns:1fr;
    }

    .telephony-visual-chip{
        font-size:11px;
    }
}


/* ==================================================
   ENOM TELEPHONY HERO - FINAL DESKTOP TUNING
   ================================================== */

.telephony-hero-v2 .container{
    max-width:1360px;
}

/* περισσότερο χώρο στο κείμενο */
.telephony-hero-grid{
    grid-template-columns:minmax(0,1.14fr) minmax(380px,.86fr);
    gap:25px;
    min-height:640px;
}

/* λίγο μικρότερος τίτλος για να γίνει 2 γραμμές */
.telephony-hero-v2 h1{
    max-width:760px;
    font-size:clamp(52px,4.5vw,72px);
    line-height:.98;
    letter-spacing:-.035em;
}

/* πιο πλατύ partner panel */
.telephony-partner-panel{
    max-width:790px;
}

/* η δεξιά πλευρά να γεμίζει περισσότερο */
.telephony-hero-visual{
    align-items:flex-end;
    justify-content:center;
    min-height:640px;
    margin-right:-25px;
}

/*
 * Με το σημερινό 313x500 αρχείο.
 * Το μεγεθύνουμε μόνο λίγο ώστε να μη χαλάσει αισθητά.
 */
.enom-telephony-visual-img{
    width:355px !important;
    max-width:none;
    max-height:none;
    height:auto !important;
    object-fit:contain;
    object-position:center bottom;
}

/* μεγαλύτερο glow πίσω από τη φιγούρα */
.telephony-visual-glow{
    width:600px;
    height:600px;
    right:-90px;
    bottom:-15px;
}

/* chip πιο κοντά στη φιγούρα */
.telephony-visual-chip{
    right:8px;
    bottom:48px;
}

/* τα 3 benefits σε μία σειρά */
.telephony-hero-usps{
    flex-wrap:nowrap;
    gap:34px;
}

/* μεγάλα desktop */
@media(min-width:1450px){

    .telephony-hero-v2 .container{
        max-width:1400px;
    }

    .enom-telephony-visual-img{
        width:380px !important;
    }
}


/* tablet */
@media(max-width:1050px){

    .telephony-hero-grid{
        grid-template-columns:minmax(0,1fr) 340px;
    }

    .enom-telephony-visual-img{
        width:315px !important;
    }

    .telephony-hero-usps{
        flex-wrap:wrap;
    }
}


/* mobile */
@media(max-width:800px){

    .telephony-hero-grid{
        grid-template-columns:1fr;
    }

    .telephony-hero-visual{
        margin-right:0;
        min-height:430px;
    }

    .enom-telephony-visual-img{
        width:min(320px,90vw) !important;
    }
}


/* TELEPHONY HERO TITLE SIZE FIX */

.telephony-hero-v2 h1{
    max-width:780px;
    font-size:clamp(44px,3.8vw,60px);
    line-height:1.02;
    letter-spacing:-.025em;
}

@media(max-width:800px){

    .telephony-hero-v2 h1{
        font-size:clamp(38px,9vw,50px);
    }
}


/* ==================================================
   ENOM TELEPHONY HERO - FINAL POLISH
   ================================================== */

/* Bigger Yuboto official graphics - preserve proportions */
.telephony-partner-logo img{
    width:auto !important;
    height:auto !important;
    max-width:165px;
    max-height:74px;
    object-fit:contain;
}

.telephony-partner-badge img{
    width:auto !important;
    height:auto !important;
    max-width:205px;
    max-height:74px;
    object-fit:contain;
}

/* Give the partner assets a little more breathing room */
.telephony-partner-assets{
    gap:20px;
}

.telephony-partner-divider{
    height:58px;
}

/* Move service chip slightly upward */
.telephony-visual-chip{
    bottom:72px;
}


/* Tablet */
@media(max-width:1050px){

    .telephony-partner-logo img{
        max-width:145px;
        max-height:68px;
    }

    .telephony-partner-badge img{
        max-width:185px;
        max-height:68px;
    }

    .telephony-visual-chip{
        bottom:58px;
    }
}


/* Mobile */
@media(max-width:800px){

    .telephony-visual-chip{
        bottom:38px;
    }
}


/* ==================================================
   HERO - LEFT YUBOTO TELEPHONY LOGO
   ================================================== */

.telephony-partner-logo{
    width:115px;
    min-width:115px;
    flex:0 0 115px;
}

.telephony-partner-logo img{
    display:block;
    width:115px !important;
    height:auto !important;

    max-width:none !important;
    max-height:none !important;

    object-fit:contain;
}


/* Tablet */
@media(max-width:1050px){

    .telephony-partner-logo{
        width:105px;
        min-width:105px;
        flex-basis:105px;
    }

    .telephony-partner-logo img{
        width:105px !important;
    }
}


/* Mobile */
@media(max-width:600px){

    .telephony-partner-logo{
        width:90px;
        min-width:90px;
        flex-basis:90px;
    }

    .telephony-partner-logo img{
        width:90px !important;
    }
}


/* HERO PARTNER PANEL - CLEAN VERSION */

.telephony-partner-panel{
    grid-template-columns:auto minmax(240px,1fr);
    max-width:650px;
}

.telephony-partner-assets{
    gap:0;
}

.telephony-partner-badge img{
    width:auto !important;
    height:auto !important;
    max-width:225px;
    max-height:78px;
    object-fit:contain;
}


/* ==================================================
   ENOM SHOP PRODUCT VISUALS + RESULT COUNT
   ================================================== */

.woocommerce .enom-result-count{
    float:none !important;
    display:block;
    width:calc(100% - 40px);
    max-width:1200px;
    margin:26px auto 8px !important;
    padding:0;
    color:#5e6872;
    font-size:14px;
}


/* Product image area */

.woocommerce ul.products li.product img{
    display:block;
    width:100%;
    height:190px;
    margin:0 0 22px !important;
    padding:24px;
    object-fit:contain;
    background:#f5f7f8;
    border:1px solid rgba(13,24,35,.08);
}


/* Give product cards consistent height */

.woocommerce ul.products li.product{
    display:flex;
    flex-direction:column;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link{
    display:block;
}

.woocommerce ul.products li.product .button{
    margin-top:auto;
}


/* Catalog ordering stays in same content width */

.woocommerce .woocommerce-ordering{
    float:none;
    width:calc(100% - 40px);
    max-width:1200px;
    margin:10px auto 20px;
    text-align:right;
}


@media(max-width:650px){

    .woocommerce .enom-result-count,
    .woocommerce .woocommerce-ordering{
        width:calc(100% - 24px);
    }

    .woocommerce ul.products li.product img{
        height:170px;
    }
}


/* ==================================================
   ENOM SHOP TOOLBAR ALIGNMENT
   ================================================== */

.enom-result-count,
.woocommerce-result-count{
    float:none !important;
    clear:both;
    display:block;
    width:calc(100% - 40px) !important;
    max-width:1200px !important;
    margin:24px auto 10px !important;
    padding:0 !important;
    font-size:14px;
    color:#5d6872;
}


/* Sorting */
.woocommerce-ordering{
    float:none !important;
    clear:both;
    display:block;
    width:calc(100% - 40px) !important;
    max-width:1200px !important;
    margin:0 auto 24px !important;
    padding:0 !important;
    text-align:right;
}

.woocommerce-ordering select{
    min-width:230px;
    padding:8px 12px;
    border:1px solid #ccd2d7;
    background:#fff;
    color:#17222c;
}


/* Keep products aligned with toolbar */
.tax-product_cat ul.products,
.post-type-archive-product ul.products{
    width:calc(100% - 40px);
    max-width:1200px;
    margin-left:auto !important;
    margin-right:auto !important;
}


@media(max-width:650px){

    .enom-result-count,
    .woocommerce-result-count,
    .woocommerce-ordering,
    .tax-product_cat ul.products,
    .post-type-archive-product ul.products{
        width:calc(100% - 24px) !important;
    }

    .woocommerce-ordering{
        text-align:left;
    }

    .woocommerce-ordering select{
        width:100%;
    }
}


/* ==================================================
   ENOM QUICK ADD TO CART
   ================================================== */

.enom-quick-add-form{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:5px;
    margin-top:10px;
}

.woocommerce ul.products li.product
.enom-quick-add-button{
    margin-top:0 !important;
    background:#147df5;
    color:#fff;
    border:0;
}

.woocommerce ul.products li.product
.enom-quick-add-button:hover{
    background:#0d68d2;
    color:#fff;
}

.enom-quick-add-note{
    font-size:11px;
    color:#77818a;
}


/* ==================================================
   ENOM PRODUCT HOVER PREVIEW
   ================================================== */

.woocommerce ul.products li.product{
    position:relative;
    overflow:visible;
}

.enom-product-preview{
    position:absolute;
    z-index:30;

    top:18px;
    left:18px;
    right:18px;

    padding:20px;

    border-radius:6px;

    background:rgba(9,23,35,.97);
    color:#fff;

    box-shadow:0 18px 45px rgba(0,0,0,.28);

    opacity:0;
    visibility:hidden;

    transform:translateY(8px);

    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease;

    pointer-events:none;
}


/* Show preview */
@media(hover:hover){

    .woocommerce ul.products li.product:hover
    .enom-product-preview,

    .woocommerce ul.products li.product:focus-within
    .enom-product-preview{
        opacity:1;
        visibility:visible;
        transform:translateY(0);
    }
}


.enom-product-preview-head{
    display:flex;
    flex-direction:column;
    gap:3px;
    margin-bottom:16px;
}

.enom-product-preview-head strong{
    font-size:16px;
    line-height:1.3;
}

.enom-product-preview-head span{
    font-size:11px;
    color:rgba(255,255,255,.65);
}


.enom-product-preview-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
}

.enom-product-preview-grid > div{
    padding:9px 10px;
    border:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.04);
}

.enom-product-preview-grid span{
    display:block;
    margin-bottom:3px;
    font-size:10px;
    color:rgba(255,255,255,.63);
}

.enom-product-preview-grid strong{
    display:block;
    font-size:13px;
}


.enom-product-preview-prices{
    display:flex;
    gap:20px;

    margin-top:14px;
    padding-top:13px;

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

.enom-product-preview-prices span{
    display:flex;
    flex-direction:column;
    gap:2px;

    font-size:10px;
    color:rgba(255,255,255,.63);
}

.enom-product-preview-prices strong{
    font-size:14px;
    color:#fff;
}


.enom-product-preview > small{
    display:block;
    margin-top:13px;

    font-size:10px;
    line-height:1.4;

    color:rgba(255,255,255,.58);
}


/* No hover overlay on touch devices */
@media(hover:none){

    .enom-product-preview{
        display:none;
    }
}


/* ==================================================
   TELEPHONY PACKAGE TABLE ACTIONS
   ================================================== */

.telephony-package-name a{
    color:inherit;
    text-decoration:none;
}

.telephony-package-name a:hover{
    color:#147df5;
}

.telephony-actions-head{
    width:115px;
    text-align:center;
}

.telephony-package-actions{
    white-space:nowrap;
    text-align:center;
}

.telephony-table-cart{
    display:inline-block;
    margin:0 4px 0 0;
    padding:0;
}

.telephony-action-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:36px;
    height:36px;

    margin:0 2px;

    border:1px solid #d7dde2;
    border-radius:5px;

    background:#fff;
    color:#14212c;

    cursor:pointer;
    vertical-align:middle;

    transition:
        background .15s ease,
        color .15s ease,
        border-color .15s ease,
        transform .15s ease;
}

.telephony-action-icon svg{
    width:19px;
    height:19px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.telephony-cart-icon:hover{
    background:#147df5;
    border-color:#147df5;
    color:#fff;
    transform:translateY(-1px);
}

.telephony-buy-icon:hover{
    background:#0b1722;
    border-color:#0b1722;
    color:#fff;
    transform:translateY(-1px);
}


/* Make rows subtly interactive */
.telephony-packages .telephony-table tbody tr{
    transition:background .15s ease;
}

.telephony-packages .telephony-table tbody tr:hover{
    background:#f5f8fa;
}


/* Mobile */
@media(max-width:700px){

    .telephony-action-icon{
        width:34px;
        height:34px;
    }

    .telephony-actions-head{
        min-width:100px;
    }
}


/* ==================================================
   TELEPHONY PACKAGE TABLE ACTIONS V2
   ================================================== */

.telephony-package-name a{
    color:inherit;
    text-decoration:none;
}

.telephony-package-name a:hover{
    color:#147df5;
}

.telephony-actions-head{
    width:110px;
    text-align:center;
}

.telephony-package-actions{
    min-width:105px;
    white-space:nowrap;
    text-align:center;
}

.telephony-table-cart{
    display:inline-block;
    margin:0 3px 0 0;
    padding:0;
}

.telephony-action-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:34px;
    height:34px;

    padding:0;
    margin:0 2px;

    border:1px solid #d5dce2;
    border-radius:5px;

    background:#fff;
    color:#14212c;

    cursor:pointer;
    vertical-align:middle;

    transition:.15s ease;
}

.telephony-action-icon svg{
    width:18px;
    height:18px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.telephony-cart-icon:hover{
    background:#147df5;
    border-color:#147df5;
    color:#fff;
}

.telephony-buy-icon:hover{
    background:#0b1722;
    border-color:#0b1722;
    color:#fff;
}

.telephony-packages
.telephony-table tbody tr:hover{
    background:#f5f8fa;
}


/* ==================================================
   ENOM HEADER CART DESIGN
   ================================================== */

.main-nav{
    display:flex;
    align-items:center;
}

.enom-header-cart{
    position:relative;

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

    width:42px;
    height:42px;

    margin-left:16px;

    border-radius:50%;

    color:inherit;
    text-decoration:none;

    transition:
        background .15s ease,
        color .15s ease;
}

.enom-header-cart:hover{
    background:rgba(20,125,245,.08);
    color:#147df5;
}

.enom-header-cart-icon{
    display:flex;
    align-items:center;
    justify-content:center;
}

.enom-header-cart-icon svg{
    width:24px;
    height:24px;

    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.enom-header-cart-count{
    position:absolute;

    top:-2px;
    right:-3px;

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

    min-width:19px;
    height:19px;

    padding:0 5px;

    border:2px solid #fff;
    border-radius:999px;

    background:#147df5;
    color:#fff;

    font-size:10px;
    font-weight:800;
    line-height:1;
}

.enom-header-cart-count.is-empty{
    display:none;
}


/* Mobile */
@media(max-width:800px){

    .enom-header-cart{
        width:38px;
        height:38px;
        margin-left:9px;
    }

    .enom-header-cart-icon svg{
        width:22px;
        height:22px;
    }
}


/* ==================================================
   ENOM HEADER CART - HARD SAFETY FIX
   ================================================== */

.site-header .header-inner{
    min-height:64px;
}

.site-header .main-nav{
    display:flex !important;
    align-items:center !important;
}

.site-header .enom-header-cart{
    position:relative !important;
    display:inline-flex !important;
    flex:0 0 42px !important;

    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;

    height:42px !important;
    min-height:42px !important;
    max-height:42px !important;

    margin:0 0 0 14px !important;
    padding:0 !important;

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

    overflow:visible !important;
}

.site-header .enom-header-cart-icon{
    display:flex !important;
    width:24px !important;
    height:24px !important;
    flex:0 0 24px !important;
}

.site-header .enom-header-cart-icon svg{
    display:block !important;

    width:24px !important;
    height:24px !important;

    min-width:24px !important;
    min-height:24px !important;

    max-width:24px !important;
    max-height:24px !important;

    fill:none !important;
    stroke:currentColor !important;
}

.site-header .enom-header-cart-count{
    position:absolute !important;
    top:-1px !important;
    right:-3px !important;
}


/* ==================================================
   ENOM HEADER LOGO SIZE
   ================================================== */

.site-header .brand{
    display:flex;
    align-items:center;
    gap:12px;
}

.site-header .brand img{
    width:145px !important;
    max-width:145px !important;
    height:auto !important;
    display:block;
}

.site-header .brand-text{
    white-space:nowrap;
}

@media(max-width:900px){

    .site-header .brand img{
        width:125px !important;
        max-width:125px !important;
    }

}


/* ==================================================
   ENOM HEADER LOGO - PROPORTIONAL SCALE
   ================================================== */

.site-header .brand{
    display:flex;
    align-items:center;
    gap:18px;
}

.site-header .brand img{
    width:auto !important;
    height:auto !important;
    max-width:none !important;

    transform:scale(1.28);
    transform-origin:left center;

    display:block;
}

@media(max-width:900px){

    .site-header .brand img{
        transform:scale(1.15);
    }

}


/* ==================================================
   ENOM HEADER / BRAND FINAL SIZE
   ================================================== */

.site-header{
    background:#0c1a27;
}

.site-header .header-inner{
    min-height:82px !important;
    padding-top:10px !important;
    padding-bottom:10px !important;
    display:flex;
    align-items:center;
}

/* Logo */
.site-header .brand img{
    width:175px !important;
    height:auto !important;
    max-width:175px !important;
    max-height:none !important;
    transform:none !important;
    object-fit:contain;
    display:block;
}

/* Logo + Energy Communications */
.site-header .brand{
    display:flex !important;
    align-items:center !important;
    gap:0 !important;
}

/* Move Energy Communications further right */
.site-header .brand-text{
    margin-left:28px !important;
    white-space:nowrap;
    display:block;
}

/* Keep navigation vertically centered */
.site-header .main-nav{
    align-items:center !important;
}

/* Tablet */
@media(max-width:1000px){

    .site-header .header-inner{
        min-height:76px !important;
    }

    .site-header .brand img{
        width:155px !important;
        max-width:155px !important;
    }

    .site-header .brand-text{
        margin-left:20px !important;
    }
}

/* Mobile */
@media(max-width:700px){

    .site-header .header-inner{
        min-height:70px !important;
    }

    .site-header .brand img{
        width:140px !important;
        max-width:140px !important;
    }

    .site-header .brand-text{
        margin-left:14px !important;
    }
}


/* ==================================================
   ENOM CHECKOUT PAGE
   ================================================== */

body.woocommerce-checkout{
    background:#f5f7f9;
}

body.woocommerce-checkout main,
body.woocommerce-checkout .site-main{
    max-width:1200px;
    margin:0 auto;
    padding:38px 24px 60px;
}


/* Hide duplicate WordPress title if intro title exists */
body.woocommerce-checkout
.entry-header{
    display:none;
}


/* Intro */

.enom-checkout-intro{
    max-width:1200px;
    margin:0 auto 30px;
}

.enom-checkout-eyebrow{
    display:block;
    margin-bottom:7px;

    color:#147df5;
    font-size:12px;
    font-weight:700;
    letter-spacing:.07em;
}

.enom-checkout-intro h1{
    margin:0 0 8px;
    color:#0c1a27;
    font-size:34px;
    line-height:1.15;
}

.enom-checkout-intro p{
    max-width:720px;
    margin:0;
    color:#5d6973;
}

.enom-checkout-benefits{
    display:flex;
    flex-wrap:wrap;
    gap:10px 24px;

    margin-top:18px;
    padding:14px 18px;

    background:#fff;
    border:1px solid #e1e6ea;
    border-radius:7px;

    color:#394550;
    font-size:13px;
}


/* Checkout two-column layout */

.woocommerce-checkout form.checkout{
    display:grid;

    grid-template-columns:
        minmax(0,1.15fr)
        minmax(360px,.85fr);

    grid-template-areas:
        "customer ordertitle"
        "customer order";

    column-gap:34px;
    row-gap:0;

    align-items:start;
}


.woocommerce-checkout #customer_details{
    grid-area:customer;

    padding:28px;

    background:#fff;
    border:1px solid #dde3e8;
    border-radius:8px;

    box-shadow:0 3px 14px rgba(0,0,0,.035);
}


.woocommerce-checkout #order_review_heading{
    grid-area:ordertitle;

    margin:0;
    padding:22px 24px 15px;

    background:#0c1a27;
    color:#fff;

    border-radius:8px 8px 0 0;

    font-size:20px;
}


.woocommerce-checkout #order_review{
    grid-area:order;

    margin:0;
    padding:0 24px 24px;

    background:#fff;

    border:1px solid #dde3e8;
    border-top:0;

    border-radius:0 0 8px 8px;

    box-shadow:0 3px 14px rgba(0,0,0,.035);

    position:sticky;
    top:95px;
}


/* Billing / additional columns become clean stacked sections */

.woocommerce-checkout
#customer_details .col-1,
.woocommerce-checkout
#customer_details .col-2{
    float:none !important;

    width:100% !important;

    padding:0 !important;
}

.woocommerce-checkout
#customer_details .col-2{
    margin-top:26px;
}


.woocommerce-checkout
#customer_details h3{
    margin:0 0 20px;

    color:#0c1a27;

    font-size:20px;
}


/* Fields */

.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout
.woocommerce-additional-fields__field-wrapper{
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:16px 18px;
}


.woocommerce-checkout
.form-row{
    float:none !important;
    width:100% !important;
    margin:0 !important;
}


.woocommerce-checkout
.form-row-wide,
.woocommerce-checkout
#billing_address_1_field,
.woocommerce-checkout
#billing_address_2_field,
.woocommerce-checkout
#order_comments_field{
    grid-column:1 / -1;
}


.woocommerce-checkout
label{
    display:block;

    margin-bottom:6px;

    color:#34414c;

    font-size:13px;
    font-weight:600;
}


.woocommerce-checkout
input.input-text,
.woocommerce-checkout
textarea,
.woocommerce-checkout
select,
.woocommerce-checkout
.select2-container .select2-selection--single{
    width:100%;

    min-height:46px;

    padding:10px 12px;

    border:1px solid #cfd7de;
    border-radius:5px;

    background:#fff;
    color:#17232d;

    box-shadow:none;

    font-family:inherit;
    font-size:14px;

    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}


.woocommerce-checkout
textarea{
    min-height:110px;
    resize:vertical;
}


.woocommerce-checkout
input.input-text:focus,
.woocommerce-checkout
textarea:focus,
.woocommerce-checkout
select:focus{
    outline:none;

    border-color:#147df5;

    box-shadow:
        0 0 0 3px rgba(20,125,245,.10);
}


.woocommerce-checkout
.select2-container
.select2-selection--single
.select2-selection__rendered{
    line-height:44px;
    padding-left:0;
}


.woocommerce-checkout
.select2-container
.select2-selection--single
.select2-selection__arrow{
    height:44px;
}


/* Order table */

.woocommerce-checkout
.woocommerce-checkout-review-order-table{
    margin:0 0 20px !important;

    border:0 !important;
}

.woocommerce-checkout
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout
.woocommerce-checkout-review-order-table td{
    padding:14px 8px !important;

    border-bottom:1px solid #e6eaed !important;

    font-size:14px;
}


.woocommerce-checkout
.order-total th,
.woocommerce-checkout
.order-total td{
    color:#0c1a27;

    font-size:17px !important;
    font-weight:700;
}


/* Payment */

.woocommerce-checkout
#payment{
    background:#f6f8fa !important;

    border-radius:6px !important;
}


.woocommerce-checkout
#payment ul.payment_methods{
    padding:18px !important;

    border-bottom:1px solid #dce2e7 !important;
}


.woocommerce-checkout
#payment div.payment_box{
    background:#fff !important;

    color:#4c5963 !important;

    border:1px solid #dbe1e5;

    font-size:13px;
}


.woocommerce-checkout
#payment div.payment_box::before{
    border-bottom-color:#fff !important;
}


.woocommerce-checkout
#payment .place-order{
    padding:18px !important;
}


/* Main checkout button */

.woocommerce-checkout
#place_order{
    width:100%;

    min-height:52px;

    margin-top:10px;

    border:0 !important;
    border-radius:5px !important;

    background:#147df5 !important;
    color:#fff !important;

    font-size:16px !important;
    font-weight:700 !important;

    cursor:pointer;

    transition:
        background .15s ease,
        transform .15s ease;
}


.woocommerce-checkout
#place_order:hover{
    background:#0d68d2 !important;
    transform:translateY(-1px);
}


/* Coupon/login notices */

.woocommerce-checkout
.woocommerce-form-coupon-toggle,
.woocommerce-checkout
.woocommerce-form-login-toggle{
    margin-bottom:14px;
}


.woocommerce-checkout
.woocommerce-info{
    border-top-color:#147df5 !important;

    background:#fff;

    border-radius:5px;

    color:#394550;
}


.woocommerce-checkout
.woocommerce-info::before{
    color:#147df5 !important;
}


/* Error messages */

.woocommerce-checkout
.woocommerce-error{
    background:#fff;

    border-radius:5px;
}


/* Required mark */

.woocommerce-checkout
.required{
    color:#d93025 !important;
}


/* Tablet / mobile */

@media(max-width:900px){

    .woocommerce-checkout form.checkout{
        display:block;
    }

    .woocommerce-checkout
    #customer_details{
        margin-bottom:28px;
    }

    .woocommerce-checkout
    #order_review{
        position:static;
    }

}


@media(max-width:650px){

    body.woocommerce-checkout main,
    body.woocommerce-checkout .site-main{
        padding:
            24px 15px
            40px;
    }

    .enom-checkout-intro h1{
        font-size:28px;
    }

    .enom-checkout-benefits{
        flex-direction:column;
        gap:7px;
    }

    .woocommerce-checkout
    #customer_details{
        padding:20px 16px;
    }

    .woocommerce-checkout
    .woocommerce-billing-fields__field-wrapper,
    .woocommerce-checkout
    .woocommerce-additional-fields__field-wrapper{
        grid-template-columns:1fr;
    }

    .woocommerce-checkout
    .form-row{
        grid-column:1 !important;
    }

    .woocommerce-checkout
    #order_review_heading{
        padding:18px;
    }

    .woocommerce-checkout
    #order_review{
        padding:
            0 16px
            18px;
    }

}


/* ==================================================
   ENOM CHECKOUT LEFT COLUMN V2
   ================================================== */

/* Remove duplicate page heading above our custom intro */
body.woocommerce-checkout
main.section > .container > h1:first-child{
    display:none !important;
}


/* Slightly wider customer side */
.woocommerce-checkout form.checkout{
    grid-template-columns:
        minmax(0,1.28fr)
        minmax(370px,.72fr) !important;
}


/* Billing fields */
.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:17px 18px !important;
}


/* First name / last name */
.woocommerce-checkout
#billing_first_name_field,
.woocommerce-checkout
#billing_last_name_field{
    grid-column:auto !important;
}


/* Full-width fields */
.woocommerce-checkout
#billing_country_field,
.woocommerce-checkout
#billing_address_1_field,
.woocommerce-checkout
#billing_address_2_field,
.woocommerce-checkout
#billing_email_field{
    grid-column:1 / -1 !important;
}


/* Two-column rows */
.woocommerce-checkout
#billing_city_field,
.woocommerce-checkout
#billing_postcode_field,
.woocommerce-checkout
#billing_state_field,
.woocommerce-checkout
#billing_phone_field{
    grid-column:auto !important;
}


/* Cleaner address line 2 */
.woocommerce-checkout
#billing_address_2_field{
    margin-top:-5px !important;
}


/* Section heading */
.woocommerce-checkout
.woocommerce-billing-fields > h3{
    padding-bottom:14px;
    margin-bottom:22px !important;

    border-bottom:1px solid #e4e9ed;

    font-size:21px !important;
}


/* Additional information separator */
.woocommerce-checkout
.woocommerce-additional-fields{
    margin-top:28px;
    padding-top:24px;

    border-top:1px solid #e2e7eb;
}


/* Yuboto activation block */
.woocommerce-checkout
#enom_yuboto_checkout{
    margin-top:26px;
    padding:22px;

    background:#f6f9fc;

    border:1px solid #dbe4eb;
    border-left:4px solid #147df5;
    border-radius:7px;
}


.woocommerce-checkout
#enom_yuboto_checkout h3{
    margin:0 0 7px !important;

    font-size:18px !important;
    color:#0c1a27;
}


.woocommerce-checkout
.enom-yuboto-checkout-note{
    margin:0 0 20px;

    color:#66727c;
    font-size:13px;
    line-height:1.55;
}


/* Yuboto fields spacing */
.woocommerce-checkout
#enom_yuboto_checkout .form-row{
    margin-bottom:15px !important;
}


.woocommerce-checkout
#enom_yuboto_checkout .form-row:last-child{
    margin-bottom:0 !important;
}


/* Better optional labels */
.woocommerce-checkout
.optional{
    color:#89939c;
    font-size:11px;
    font-weight:400;
}


/* Prevent Select2 from looking shorter than inputs */
.woocommerce-checkout
.select2-container{
    width:100% !important;
}


/* Mobile */
@media(max-width:900px){

    .woocommerce-checkout form.checkout{
        display:block !important;
    }

}


@media(max-width:650px){

    .woocommerce-checkout
    .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:1fr !important;
    }

    .woocommerce-checkout
    #billing_first_name_field,
    .woocommerce-checkout
    #billing_last_name_field,
    .woocommerce-checkout
    #billing_city_field,
    .woocommerce-checkout
    #billing_postcode_field,
    .woocommerce-checkout
    #billing_state_field,
    .woocommerce-checkout
    #billing_phone_field{
        grid-column:1 !important;
    }

    .woocommerce-checkout
    #enom_yuboto_checkout{
        padding:18px 15px;
    }

}


/* ==================================================
   ENOM CHECKOUT LEFT COLUMN V3
   ================================================== */

body.woocommerce-checkout
form.checkout.woocommerce-checkout{
    display:grid !important;
    grid-template-columns:
        minmax(0,1.25fr)
        minmax(380px,.75fr) !important;
    column-gap:36px !important;
    align-items:start !important;
}


/* LEFT CARD */
body.woocommerce-checkout
form.checkout
#customer_details{
    display:block !important;
    float:none !important;
    width:auto !important;

    background:#fff !important;

    padding:30px !important;

    border:1px solid #dce3e8 !important;
    border-radius:8px !important;
}


/* WooCommerce columns must not float */
body.woocommerce-checkout
#customer_details > .col-1,
body.woocommerce-checkout
#customer_details > .col-2{
    display:block !important;

    float:none !important;
    clear:both !important;

    width:100% !important;

    margin:0 !important;
    padding:0 !important;
}


/* Billing grid */
body.woocommerce-checkout
#customer_details
.woocommerce-billing-fields__field-wrapper{
    display:grid !important;

    grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr) !important;

    gap:18px 20px !important;

    width:100% !important;
}


/* Remove WooCommerce float rules completely */
body.woocommerce-checkout
#customer_details
.woocommerce-billing-fields__field-wrapper > .form-row{
    float:none !important;
    clear:none !important;

    width:auto !important;
    max-width:none !important;

    margin:0 !important;
}


/* Half width */
body.woocommerce-checkout
#customer_details
.enom-checkout-half{
    grid-column:span 1 !important;
}


/* Full width */
body.woocommerce-checkout
#customer_details
.enom-checkout-full{
    grid-column:1 / -1 !important;
}


/* Safety selectors */
body.woocommerce-checkout
#billing_first_name_field,
body.woocommerce-checkout
#billing_last_name_field,
body.woocommerce-checkout
#billing_city_field,
body.woocommerce-checkout
#billing_postcode_field,
body.woocommerce-checkout
#billing_state_field,
body.woocommerce-checkout
#billing_phone_field{
    grid-column:span 1 !important;
}


body.woocommerce-checkout
#billing_country_field,
body.woocommerce-checkout
#billing_address_1_field,
body.woocommerce-checkout
#billing_address_2_field,
body.woocommerce-checkout
#billing_email_field{
    grid-column:1 / -1 !important;
}


/* Inputs */
body.woocommerce-checkout
#customer_details input.input-text,
body.woocommerce-checkout
#customer_details select,
body.woocommerce-checkout
#customer_details textarea,
body.woocommerce-checkout
#customer_details .select2-container{
    width:100% !important;
}


/* Section heading */
body.woocommerce-checkout
.woocommerce-billing-fields > h3{
    margin:0 0 22px !important;
    padding:0 0 14px !important;

    border-bottom:1px solid #e2e7eb;

    font-size:21px !important;
}


/* Additional info */
body.woocommerce-checkout
#customer_details .col-2{
    margin-top:30px !important;
}


body.woocommerce-checkout
.woocommerce-additional-fields{
    padding-top:25px !important;

    border-top:1px solid #e2e7eb;
}


/* Activation box */
body.woocommerce-checkout
#enom_yuboto_checkout{
    margin-top:28px !important;
    padding:24px !important;

    background:#f5f8fb !important;

    border:1px solid #d9e3eb !important;
    border-left:4px solid #147df5 !important;

    border-radius:7px !important;
}


body.woocommerce-checkout
#enom_yuboto_checkout h3{
    margin:0 0 7px !important;

    font-size:19px !important;
}


body.woocommerce-checkout
#enom_yuboto_checkout .form-row{
    display:block !important;

    float:none !important;

    width:100% !important;

    margin:0 0 16px !important;
}


body.woocommerce-checkout
#enom_yuboto_checkout .form-row:last-child{
    margin-bottom:0 !important;
}


/* Mobile */
@media(max-width:900px){

    body.woocommerce-checkout
    form.checkout.woocommerce-checkout{
        display:block !important;
    }

    body.woocommerce-checkout
    form.checkout
    #customer_details{
        margin-bottom:28px !important;
    }
}


@media(max-width:650px){

    body.woocommerce-checkout
    #customer_details
    .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:1fr !important;
    }

    body.woocommerce-checkout
    #customer_details
    .woocommerce-billing-fields__field-wrapper > .form-row{
        grid-column:1 !important;
    }
}


/* ==================================================
   ENOM HOME HERO TITLE - SMALLER
   ================================================== */

body.home main h1{
    font-size:58px !important;
    line-height:1.08 !important;
    letter-spacing:-1.5px !important;
    max-width:600px;
}

@media(max-width:1100px){

    body.home main h1{
        font-size:48px !important;
        letter-spacing:-1px !important;
    }

}

@media(max-width:700px){

    body.home main h1{
        font-size:38px !important;
        line-height:1.1 !important;
        letter-spacing:-0.5px !important;
    }

}


/* ==================================================
   ENOM ABOUT HERO TITLE - SMALLER
   ================================================== */

body.page-id-97 main h1{
    font-size:52px !important;
    line-height:1.08 !important;
    letter-spacing:-1.2px !important;
    max-width:700px;
}

@media(max-width:1100px){

    body.page-id-97 main h1{
        font-size:46px !important;
    }

}

@media(max-width:700px){

    body.page-id-97 main h1{
        font-size:36px !important;
        line-height:1.1 !important;
        letter-spacing:-0.5px !important;
    }

}


/* ==================================================
   ENOM ABOUT PAGE - TIGHTER SECTION SPACING
   ================================================== */

body.page-id-97 main > section{
    padding-top:52px !important;
    padding-bottom:52px !important;
}

/* Αν τα sections είναι μέσα σε wrapper */
body.page-id-97 main .section{
    padding-top:52px !important;
    padding-bottom:52px !important;
}

/* Μικρότερο κενό γύρω από τίτλους */
body.page-id-97 main h2{
    margin-top:0 !important;
    margin-bottom:16px !important;
}

body.page-id-97 main p{
    margin-bottom:14px;
}

/* Η μετάβαση από intro στο επόμενο section */
body.page-id-97 main section + section{
    margin-top:0 !important;
}

@media(max-width:700px){

    body.page-id-97 main > section,
    body.page-id-97 main .section{
        padding-top:36px !important;
        padding-bottom:36px !important;
    }

}


/* ENOM HOME / ABOUT SECTION SPACING */

.intro-section{
    padding:50px 0 40px !important;
}

.services-section{
    padding:45px 0 55px !important;
}

@media(max-width:700px){

    .intro-section{
        padding:35px 0 30px !important;
    }

    .services-section{
        padding:32px 0 40px !important;
    }

}

/* ==================================================
   ENOM GLOBAL HERO TITLES
   Unified title sizing across site
   ================================================== */

:root{
    --enom-hero-title-desktop:52px;
    --enom-hero-title-tablet:44px;
    --enom-hero-title-mobile:36px;
}

/* Home */
.home-hero h1,

/* Generic page heroes */
.page-hero h1,
.hero-section h1,
.inner-hero h1,
[class*="hero"] h1,

/* Telephony */
.telephony-hero h1,
body.page-template-page-telephony h1,

/* ENOM Stores */
.enom-store-hero h1,

/* Known corporate page templates */
body.page-template-page-services h1,
body.page-template-page-brands-projects h1,
body.page-template-page-about h1,
body.page-template-page-contact h1,

/* Current Greek pages */
body.page-id-93 main h1,
body.page-id-96 main h1,
body.page-id-97 main h1,
body.page-id-92 main h1,
body.page-id-146 main h1{

    font-size:var(--enom-hero-title-desktop) !important;
    line-height:1.08 !important;
    letter-spacing:-1px !important;
}

/* Do NOT resize WooCommerce operational pages */
body.woocommerce-cart main h1,
body.woocommerce-checkout main h1,
body.woocommerce-account main h1,
body.single-product main h1{
    font-size:initial;
    letter-spacing:initial;
}


@media(max-width:1100px){

    .home-hero h1,
    .page-hero h1,
    .hero-section h1,
    .inner-hero h1,
    [class*="hero"] h1,
    .telephony-hero h1,
    body.page-template-page-telephony h1,
    .enom-store-hero h1,
    body.page-template-page-services h1,
    body.page-template-page-brands-projects h1,
    body.page-template-page-about h1,
    body.page-template-page-contact h1,
    body.page-id-93 main h1,
    body.page-id-96 main h1,
    body.page-id-97 main h1,
    body.page-id-92 main h1,
    body.page-id-146 main h1{

        font-size:var(--enom-hero-title-tablet) !important;
    }

}


@media(max-width:700px){

    .home-hero h1,
    .page-hero h1,
    .hero-section h1,
    .inner-hero h1,
    [class*="hero"] h1,
    .telephony-hero h1,
    body.page-template-page-telephony h1,
    .enom-store-hero h1,
    body.page-template-page-services h1,
    body.page-template-page-brands-projects h1,
    body.page-template-page-about h1,
    body.page-template-page-contact h1,
    body.page-id-93 main h1,
    body.page-id-96 main h1,
    body.page-id-97 main h1,
    body.page-id-92 main h1,
    body.page-id-146 main h1{

        font-size:var(--enom-hero-title-mobile) !important;
        line-height:1.1 !important;
        letter-spacing:-.5px !important;
    }

}


/* ==================================================
   SERVICES HERO TITLE - UNIFIED SIZE
   ================================================== */

.services-page .services-hero h1{
    font-size:52px !important;
    line-height:1.08 !important;
    letter-spacing:-1px !important;
    max-width:760px !important;
    margin-top:14px !important;
    margin-bottom:20px !important;
}

@media(max-width:1100px){

    .services-page .services-hero h1{
        font-size:44px !important;
    }

}

@media(max-width:700px){

    .services-page .services-hero h1{
        font-size:36px !important;
        line-height:1.10 !important;
        letter-spacing:-0.5px !important;
    }

}


/* ==================================================
   ENOM GLOBAL HERO TITLES - SLIGHTLY SMALLER
   ================================================== */

:root{
    --enom-hero-title-desktop:46px;
    --enom-hero-title-tablet:40px;
    --enom-hero-title-mobile:34px;
}

/* Services page explicit override */
.services-page .services-hero h1{
    font-size:46px !important;
}

@media(max-width:1100px){

    .services-page .services-hero h1{
        font-size:40px !important;
    }

}

@media(max-width:700px){

    .services-page .services-hero h1{
        font-size:34px !important;
    }

}


/* ==================================================
   ENOM SERVICE CARD ICONS
   ================================================== */

.service-detail-card .service-card-icon{
    width:46px;
    height:46px;

    margin:14px 0 17px;

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

    color:#147df5;

    background:rgba(20,125,245,.07);

    border:1px solid rgba(20,125,245,.14);
    border-radius:10px;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease;
}

.service-detail-card .service-card-icon svg{
    width:30px;
    height:30px;

    display:block;

    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.service-detail-card:hover .service-card-icon{
    transform:translateY(-2px);

    background:rgba(20,125,245,.11);
    border-color:rgba(20,125,245,.25);
}

@media(max-width:700px){

    .service-detail-card .service-card-icon{
        width:42px;
        height:42px;
        margin:12px 0 14px;
    }

    .service-detail-card .service-card-icon svg{
        width:27px;
        height:27px;
    }
}


/* ==================================================
   ENOM HOME SERVICE ICONS
   ================================================== */

.home .service-card .home-service-svg{
    width:46px;
    height:46px;

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

    margin:12px 0 16px;

    color:#147df5;

    background:rgba(20,125,245,.07);

    border:1px solid rgba(20,125,245,.14);
    border-radius:10px;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease;
}

.home .service-card .home-service-svg svg{
    width:30px;
    height:30px;

    display:block;

    fill:none;
    stroke:currentColor;

    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.home .service-card:hover .home-service-svg{
    transform:translateY(-2px);

    background:rgba(20,125,245,.11);
    border-color:rgba(20,125,245,.25);
}

@media(max-width:700px){

    .home .service-card .home-service-svg{
        width:42px;
        height:42px;
        margin:10px 0 14px;
    }

    .home .service-card .home-service-svg svg{
        width:27px;
        height:27px;
    }

}


/* ==================================================
   ENOM GLOBAL COMPACT SECTION SPACING
   ================================================== */

/* ------------------------------------------
   HERO SECTIONS
   ------------------------------------------ */

body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
main > section[class*="hero"]:not(.telephony-hero-v2){
    padding-top:58px !important;
    padding-bottom:58px !important;
}


/* ------------------------------------------
   NORMAL CONTENT SECTIONS
   ------------------------------------------ */

body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
main > section:not([class*="hero"]){
    padding-top:46px !important;
    padding-bottom:46px !important;
}


/* Remove accidental extra gaps between sections */

body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
main > section + section{
    margin-top:0 !important;
}


/* ------------------------------------------
   SPECIFIC SECTIONS THAT PREVIOUSLY
   USED LARGE 80–100px SPACING
   ------------------------------------------ */

.intro-section,
.services-section,
.services-detail-section,
.services-commerce,
.brands-section,
.brands-network-info,
.about-intro,
.about-pillars,
.about-network,
.contact-section,
.contact-main,
.telephony-section,
.telephony-features,
.telephony-packages,
.telephony-business{
    padding-top:46px !important;
    padding-bottom:46px !important;
}


/* ------------------------------------------
   MOBILE
   ------------------------------------------ */

@media(max-width:700px){

    body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
    main > section[class*="hero"]:not(.telephony-hero-v2){
        padding-top:40px !important;
        padding-bottom:40px !important;
    }

    body:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
    main > section:not([class*="hero"]){
        padding-top:32px !important;
        padding-bottom:32px !important;
    }

    .intro-section,
    .services-section,
    .services-detail-section,
    .services-commerce,
    .brands-section,
    .brands-network-info,
    .about-intro,
    .about-pillars,
    .about-network,
    .contact-section,
    .contact-main,
    .telephony-section,
    .telephony-features,
    .telephony-packages,
    .telephony-business{
        padding-top:32px !important;
        padding-bottom:32px !important;
    }

}


/* ==================================================
   BRANDS & PROJECTS - INNER TITLES
   ================================================== */

body.page-id-96 .brands-network-info h2,
body.page-id-96 .contact-section h2,
body.page-id-115 .brands-network-info h2,
body.page-id-115 .contact-section h2{
    font-size:36px !important;
    line-height:1.12 !important;
    letter-spacing:-0.6px !important;
}

@media(max-width:1100px){

    body.page-id-96 .brands-network-info h2,
    body.page-id-96 .contact-section h2,
    body.page-id-115 .brands-network-info h2,
    body.page-id-115 .contact-section h2{
        font-size:30px !important;
    }

}

@media(max-width:700px){

    body.page-id-96 .brands-network-info h2,
    body.page-id-96 .contact-section h2,
    body.page-id-115 .brands-network-info h2,
    body.page-id-115 .contact-section h2{
        font-size:27px !important;
        line-height:1.15 !important;
    }

}


/* ==================================================
   ABOUT PAGE - INNER TITLES
   ================================================== */

body.page-id-97 .about-intro h2,
body.page-id-97 .about-pillars h2,
body.page-id-97 .about-network h2,
body.page-id-97 .contact-section h2,

body.page-id-99 .about-intro h2,
body.page-id-99 .about-pillars h2,
body.page-id-99 .about-network h2,
body.page-id-99 .contact-section h2{
    font-size:36px !important;
    line-height:1.12 !important;
    letter-spacing:-0.6px !important;
}

@media(max-width:1100px){

    body.page-id-97 .about-intro h2,
    body.page-id-97 .about-pillars h2,
    body.page-id-97 .about-network h2,
    body.page-id-97 .contact-section h2,

    body.page-id-99 .about-intro h2,
    body.page-id-99 .about-pillars h2,
    body.page-id-99 .about-network h2,
    body.page-id-99 .contact-section h2{
        font-size:30px !important;
    }

}

@media(max-width:700px){

    body.page-id-97 .about-intro h2,
    body.page-id-97 .about-pillars h2,
    body.page-id-97 .about-network h2,
    body.page-id-97 .contact-section h2,

    body.page-id-99 .about-intro h2,
    body.page-id-99 .about-pillars h2,
    body.page-id-99 .about-network h2,
    body.page-id-99 .contact-section h2{
        font-size:27px !important;
        line-height:1.15 !important;
    }

}


/* ENOM TELEPHONY - MISSING FEATURE ICONS */

.telephony-inline-icon{
    width:42px;
    height:42px;
    margin:0 0 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#20262c;
}

.telephony-inline-icon svg{
    width:38px;
    height:38px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.6;
    stroke-linecap:round;
    stroke-linejoin:round;
}


/* ==================================================
   ENOM SHOP - COMPACT SPACING
   ================================================== */

body.woocommerce-shop .enom-shop-hero{
    padding-top:48px !important;
    padding-bottom:42px !important;
}

body.woocommerce-shop .enom-shop-categories{
    padding-top:38px !important;
    padding-bottom:38px !important;
}

body.woocommerce-shop .enom-shop-products-head{
    padding-top:34px !important;
    padding-bottom:22px !important;
}

/* WooCommerce product area */
body.woocommerce-shop .site-main,
body.woocommerce-shop main{
    margin-top:0 !important;
}

body.woocommerce-shop ul.products{
    margin-top:20px !important;
}

@media(max-width:700px){

    body.woocommerce-shop .enom-shop-hero{
        padding-top:34px !important;
        padding-bottom:30px !important;
    }

    body.woocommerce-shop .enom-shop-categories{
        padding-top:28px !important;
        padding-bottom:28px !important;
    }

    body.woocommerce-shop .enom-shop-products-head{
        padding-top:26px !important;
        padding-bottom:18px !important;
    }

}


/* ==================================================
   ENOM CONTACT MAP
   ================================================== */

.enom-contact-map{
    padding:42px 0 48px !important;
}

.enom-contact-map .section-head{
    margin-bottom:22px;
}

.enom-contact-map .section-head h2{
    font-size:34px !important;
    line-height:1.15;
    margin:6px 0 0;
}

.enom-contact-map-frame{
    width:100%;
    overflow:hidden;
    border-radius:18px;
    border:1px solid rgba(15,30,45,.10);
    box-shadow:0 12px 34px rgba(15,30,45,.08);
    background:#eef1f4;
}

.enom-contact-map-frame iframe{
    width:100%;
    height:380px;
    display:block;
}

@media(max-width:700px){

    .enom-contact-map{
        padding:30px 0 34px !important;
    }

    .enom-contact-map .section-head h2{
        font-size:27px !important;
    }

    .enom-contact-map-frame iframe{
        height:300px;
    }
}


/* ==================================================
   ENOM CONTACT PAGE - COMPACT SPACING
   ================================================== */

.contact-page .contact-hero{
    padding-top:48px !important;
    padding-bottom:42px !important;
}

.contact-page .contact-main{
    padding-top:38px !important;
    padding-bottom:34px !important;
}

.contact-page .enom-contact-map{
    padding-top:28px !important;
    padding-bottom:42px !important;
}

.contact-page .contact-layout{
    row-gap:28px !important;
}

.contact-page .section-head{
    margin-bottom:18px !important;
}

@media(max-width:700px){

    .contact-page .contact-hero{
        padding-top:34px !important;
        padding-bottom:30px !important;
    }

    .contact-page .contact-main{
        padding-top:28px !important;
        padding-bottom:26px !important;
    }

    .contact-page .enom-contact-map{
        padding-top:22px !important;
        padding-bottom:30px !important;
    }

    .contact-page .contact-layout{
        row-gap:22px !important;
    }

}


/* ==================================================
   ENOM PROTECTED DISPLAY EMAIL
   ================================================== */

.enom-protected-email{
    display:inline-block;
    color:inherit;
    font:inherit;
    cursor:default;

    -webkit-user-select:none !important;
    -moz-user-select:none !important;
    -ms-user-select:none !important;
    user-select:none !important;

    -webkit-touch-callout:none !important;
}

.enom-protected-email::selection{
    background:transparent;
}


/* ==================================================
   ENOM ABOUT COMPANY DETAILS
   ================================================== */

.about-company-details{
    padding:38px 0 !important;
    background:#f5f7f9;
}

.about-company-details .section-head{
    margin-bottom:22px !important;
}

.about-company-details .section-head h2{
    font-size:34px !important;
    line-height:1.15 !important;
    margin:6px 0 0 !important;
}

.about-details-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}

.about-detail-card{
    padding:19px 21px;
    background:#fff;
    border:1px solid rgba(15,30,45,.08);
    border-radius:12px;
}

.about-detail-label{
    display:block;
    margin-bottom:7px;
    font-size:11px;
    font-weight:700;
    letter-spacing:.12em;
    color:#6e7b87;
}

.about-detail-card strong,
.about-detail-card a,
.about-detail-card .enom-protected-email{
    font-size:16px;
    line-height:1.45;
    font-weight:600;
    color:#17222d;
    text-decoration:none;
}

.about-detail-card a:hover{
    color:#147df5;
}


/* Protected visible email */

.enom-protected-email{
    display:inline-block;
    cursor:default;

    -webkit-user-select:none !important;
    -moz-user-select:none !important;
    -ms-user-select:none !important;
    user-select:none !important;

    -webkit-touch-callout:none !important;
}

.enom-protected-email::selection{
    background:transparent;
}


@media(max-width:700px){

    .about-company-details{
        padding:28px 0 !important;
    }

    .about-company-details .section-head h2{
        font-size:27px !important;
    }

    .about-details-grid{
        grid-template-columns:1fr;
    }

    .about-detail-card{
        padding:17px 18px;
    }

}


/* ==================================================
   ENOM CORPORATE FOOTER
   ================================================== */

.site-footer{
    padding:42px 0 24px;
}

.enom-footer-grid{
    display:grid;
    grid-template-columns:
        minmax(0,1.25fr)
        minmax(280px,1fr)
        minmax(190px,.6fr);

    gap:42px;
    align-items:start;
}

.enom-footer-brand{
    max-width:430px;
}

.enom-footer-logo{
    display:inline-block;
    margin-bottom:18px;
}

.enom-footer-logo img{
    display:block;
    width:170px;
    max-width:100%;
    height:auto;
}

.enom-footer-brand strong{
    display:block;
    margin-bottom:8px;
    font-size:17px;
}

.enom-footer-brand p{
    margin:0;
    line-height:1.65;
    opacity:.78;
}


.enom-footer-heading{
    display:block;
    margin-bottom:17px;

    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
}

.enom-footer-detail{
    margin-bottom:12px;
}

.enom-footer-detail small{
    display:block;
    margin-bottom:3px;

    font-size:10px;
    font-weight:700;
    letter-spacing:.10em;

    opacity:.62;
}

.enom-footer-detail span,
.enom-footer-detail a{
    font-size:14px;
    line-height:1.45;
    color:inherit;
    text-decoration:none;
}

.enom-footer-detail a:hover{
    opacity:.72;
}


.enom-footer-protected-email{
    display:inline-block;
    cursor:default;

    -webkit-user-select:none !important;
    -moz-user-select:none !important;
    -ms-user-select:none !important;
    user-select:none !important;

    -webkit-touch-callout:none !important;
}

.enom-footer-protected-email::selection{
    background:transparent;
}


.enom-footer-copyright{
    display:flex;
    flex-direction:column;
    gap:5px;

    font-size:13px;
    line-height:1.45;
    opacity:.70;
}


@media(max-width:900px){

    .enom-footer-grid{
        grid-template-columns:
            minmax(0,1fr)
            minmax(250px,1fr);
    }

    .enom-footer-copyright{
        grid-column:1 / -1;
        padding-top:8px;
    }

}


@media(max-width:650px){

    .site-footer{
        padding:32px 0 22px;
    }

    .enom-footer-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    .enom-footer-logo img{
        width:150px;
    }

    .enom-footer-copyright{
        grid-column:auto;
        padding-top:4px;
    }

}


/* ==================================================
   ENOM FOOTER - COMPACT HEIGHT
   ================================================== */

.site-footer{
    padding:26px 0 18px !important;
}

.enom-footer-grid{
    gap:28px !important;
}

.enom-footer-logo{
    margin-bottom:10px !important;
}

.enom-footer-logo img{
    width:138px !important;
}

.enom-footer-brand strong{
    margin-bottom:5px !important;
    font-size:15px !important;
}

.enom-footer-brand p{
    line-height:1.45 !important;
    font-size:13px !important;
}

.enom-footer-heading{
    margin-bottom:10px !important;
}

.enom-footer-detail{
    margin-bottom:7px !important;
}

.enom-footer-detail small{
    margin-bottom:1px !important;
}

.enom-footer-detail span,
.enom-footer-detail a{
    font-size:13px !important;
    line-height:1.35 !important;
}

.enom-footer-copyright{
    gap:3px !important;
    font-size:12px !important;
    line-height:1.35 !important;
}

@media(max-width:650px){

    .site-footer{
        padding:24px 0 18px !important;
    }

    .enom-footer-grid{
        gap:22px !important;
    }

    .enom-footer-logo img{
        width:130px !important;
    }

}


/* ==================================================
   ENOM LEGAL PAGE V1
   ================================================== */

.enom-legal-hero{
    padding:48px 0 42px !important;
    background:#071421;
    color:#fff;
}

.enom-legal-hero h1{
    margin:10px 0 14px;
    max-width:900px;
    font-size:46px !important;
    line-height:1.08 !important;
    letter-spacing:-.8px;
}

.enom-legal-hero p{
    max-width:820px;
    margin:0;
    font-size:16px;
    line-height:1.65;
    opacity:.82;
}

.enom-legal-content{
    padding:42px 0 48px !important;
    background:#f5f7f9;
}

.enom-legal-container{
    max-width:1050px;
}

.enom-legal-article{
    padding:38px 44px;
    background:#fff;
    border:1px solid rgba(15,30,45,.08);
    border-radius:14px;
}

.enom-legal-version{
    margin-bottom:22px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(15,30,45,.10);
    font-size:13px;
    line-height:1.65;
    color:#66727d;
}

.enom-legal-notice{
    margin:0 0 32px;
    padding:17px 19px;
    border-left:3px solid #147df5;
    background:#f5f9ff;
    border-radius:5px;
    font-size:14px;
    line-height:1.65;
}

.enom-legal-article h2{
    margin:34px 0 12px;
    font-size:24px !important;
    line-height:1.25 !important;
    letter-spacing:-.25px;
    color:#17222d;
}

.enom-legal-article h2:first-of-type{
    margin-top:0;
}

.enom-legal-article p,
.enom-legal-article li{
    font-size:15px;
    line-height:1.72;
    color:#3d4953;
}

.enom-legal-article p{
    margin:0 0 13px;
}

.enom-legal-article ul{
    margin:12px 0 20px;
    padding-left:22px;
}

.enom-footer-legal-links{
    margin-top:8px;
}

.enom-footer-legal-links a{
    font-size:12px;
    color:inherit;
    text-decoration:none;
    opacity:.82;
}

.enom-footer-legal-links a:hover{
    opacity:1;
    text-decoration:underline;
}

@media(max-width:700px){

    .enom-legal-hero{
        padding:34px 0 30px !important;
    }

    .enom-legal-hero h1{
        font-size:34px !important;
    }

    .enom-legal-content{
        padding:28px 0 34px !important;
    }

    .enom-legal-article{
        padding:25px 20px;
    }

    .enom-legal-article h2{
        font-size:21px !important;
    }

}


/* ==================================================
   ENOM LEGAL PAGE - WIDER CONTENT
   ================================================== */

.enom-legal-container{
    max-width:1360px !important;
    width:calc(100% - 60px) !important;
}

.enom-legal-article{
    width:100% !important;
    max-width:none !important;
    padding:38px 52px !important;
}

@media(max-width:900px){

    .enom-legal-container{
        width:calc(100% - 36px) !important;
    }

    .enom-legal-article{
        padding:32px 32px !important;
    }

}

@media(max-width:700px){

    .enom-legal-container{
        width:calc(100% - 24px) !important;
    }

    .enom-legal-article{
        padding:24px 20px !important;
    }

}


/* ==================================================
   ENOM LEGAL PAGE - WIDER CONTENT
   ================================================== */

.enom-legal-container{
    max-width:1360px !important;
    width:calc(100% - 60px) !important;
}

.enom-legal-article{
    width:100% !important;
    max-width:none !important;
    padding:38px 52px !important;
}

@media(max-width:900px){

    .enom-legal-container{
        width:calc(100% - 36px) !important;
    }

    .enom-legal-article{
        padding:32px 32px !important;
    }

}

@media(max-width:700px){

    .enom-legal-container{
        width:calc(100% - 24px) !important;
    }

    .enom-legal-article{
        padding:24px 20px !important;
    }

}


/* ==================================================
   ENOM LEGAL - FULL INTERNAL TEXT WIDTH
   ================================================== */

.enom-legal-article,
.enom-legal-article > *,
.enom-legal-article p,
.enom-legal-article h2,
.enom-legal-article h3,
.enom-legal-article ul,
.enom-legal-article ol,
.enom-legal-article li,
.enom-legal-version,
.enom-legal-notice{
    max-width:none !important;
}

.enom-legal-article p,
.enom-legal-article h2,
.enom-legal-article h3,
.enom-legal-article ul,
.enom-legal-article ol,
.enom-legal-version,
.enom-legal-notice{
    width:100% !important;
}

/* Comfortable reading width on very large screens */
.enom-legal-article p{
    line-height:1.72 !important;
}


/* ==================================================
   ENOM LEGAL - TRUE FULL WIDTH TEXT + JUSTIFY
   ================================================== */

.page-template-page-legal .enom-legal-container{
    width:calc(100% - 60px) !important;
    max-width:1400px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

.page-template-page-legal .enom-legal-article{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    padding:38px 46px !important;
}

.page-template-page-legal .enom-legal-article p,
.page-template-page-legal .enom-legal-article li{
    display:block !important;
    width:100% !important;
    max-width:none !important;

    text-align:justify !important;
    text-justify:inter-word !important;

    line-height:1.78 !important;

    margin-left:0 !important;
    margin-right:0 !important;
}

.page-template-page-legal .enom-legal-article h2,
.page-template-page-legal .enom-legal-article h3{
    width:100% !important;
    max-width:none !important;
    text-align:left !important;
}

.page-template-page-legal .enom-legal-notice{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    text-align:justify !important;
}

.page-template-page-legal .enom-legal-article ul,
.page-template-page-legal .enom-legal-article ol{
    width:100% !important;
    max-width:none !important;
}

@media(max-width:900px){

    .page-template-page-legal .enom-legal-container{
        width:calc(100% - 32px) !important;
    }

    .page-template-page-legal .enom-legal-article{
        padding:30px 28px !important;
    }
}

@media(max-width:700px){

    .page-template-page-legal .enom-legal-container{
        width:calc(100% - 20px) !important;
    }

    .page-template-page-legal .enom-legal-article{
        padding:24px 18px !important;
    }

    .page-template-page-legal .enom-legal-article p,
    .page-template-page-legal .enom-legal-article li{
        text-align:left !important;
    }
}


/* ==================================================
   ENOM LEGAL FINAL FLOW FIX
   ================================================== */

body.page-template-page-legal .enom-legal-container{
    width:calc(100% - 60px) !important;
    max-width:1400px !important;
}

body.page-template-page-legal .enom-legal-article{
    width:100% !important;
    max-width:none !important;
}

body.page-template-page-legal .enom-legal-article p,
body.page-template-page-legal .enom-legal-article li{
    width:100% !important;
    max-width:none !important;

    display:block !important;

    text-align:justify !important;
    text-justify:inter-word !important;

    line-height:1.78 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;

    margin-left:0 !important;
    margin-right:0 !important;
}

body.page-template-page-legal .enom-legal-notice{
    width:100% !important;
    max-width:none !important;

    text-align:justify !important;
    text-justify:inter-word !important;

    white-space:normal !important;
}

body.page-template-page-legal .enom-legal-article h2{
    width:100% !important;
    max-width:none !important;
    text-align:left !important;
}

@media(max-width:700px){

    body.page-template-page-legal .enom-legal-container{
        width:calc(100% - 20px) !important;
    }

    body.page-template-page-legal .enom-legal-article p,
    body.page-template-page-legal .enom-legal-article li{
        text-align:left !important;
    }

}


/* ==================================================
   ENOM LEGAL TYPOGRAPHY + SEO UX V2
   ================================================== */

body.page-template-page-legal
.enom-legal-article h2{
    width:100% !important;
    max-width:none !important;

    margin:36px 0 13px !important;

    font-size:24px !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    letter-spacing:-.25px !important;

    color:#17222d !important;
}

body.page-template-page-legal
.enom-legal-article h2 strong{
    font-weight:800 !important;
}

body.page-template-page-legal
.enom-legal-article p,
body.page-template-page-legal
.enom-legal-article li{
    width:100% !important;
    max-width:none !important;

    font-size:15px !important;
    line-height:1.8 !important;

    text-align:justify !important;
    text-justify:inter-word !important;

    hyphens:auto;
}

body.page-template-page-legal
.enom-legal-article a{
    color:#126ed3;
    font-weight:600;
    text-decoration:none;
    border-bottom:1px solid rgba(18,110,211,.28);
}

body.page-template-page-legal
.enom-legal-article a:hover{
    border-bottom-color:#126ed3;
}

body.page-template-page-legal
.enom-legal-notice{
    font-weight:600;
}

@media(max-width:700px){

    body.page-template-page-legal
    .enom-legal-article h2{
        font-size:21px !important;
        margin-top:30px !important;
    }

    body.page-template-page-legal
    .enom-legal-article p,
    body.page-template-page-legal
    .enom-legal-article li{
        text-align:left !important;
    }

}


/* ENOM LEGAL LAW REFERENCES */
body.page-template-page-legal
.enom-legal-article li strong{
    font-weight:800 !important;
    color:#17222d;
}


/* ==================================================
   ENOM ENGLISH LEGAL – FINAL TYPOGRAPHY
   ================================================== */

body.page-template-page-legal
.enom-legal-article h2 strong{
    font-weight:800 !important;
}

body.page-template-page-legal
.enom-legal-article li strong{
    font-weight:800 !important;
    color:#17222d;
}

body.page-template-page-legal
.enom-legal-article p,
body.page-template-page-legal
.enom-legal-article li{
    text-align:justify !important;
    text-justify:inter-word !important;
    max-width:none !important;
    width:100% !important;
}


/* ==================================================
   ENOM ENGLISH SHOP
   ================================================== */

.enom-shop-intro{
    max-width:1320px;
    margin:0 auto;
    padding:46px 30px 30px;
}

.enom-shop-intro h1{
    margin:0 0 14px;
    font-size:42px;
    font-weight:800;
    line-height:1.15;
}

.enom-shop-intro > p{
    max-width:1050px;
    margin:0 0 12px;
    line-height:1.7;
}

.enom-shop-links{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:30px;
}

.enom-shop-link-card{
    display:block;
    padding:24px;
    background:#fff;
    border:1px solid #e4e9ef;
    border-radius:10px;
    text-decoration:none;
    transition:.2s ease;
}

.enom-shop-link-card:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(0,0,0,.07);
}

.enom-shop-link-card strong{
    display:block;
    margin-bottom:8px;
    font-size:19px;
    color:#17222d;
}

.enom-shop-link-card span{
    color:#596572;
    line-height:1.6;
}

.enom-shop-products{
    max-width:1320px;
    margin:0 auto;
    padding:20px 30px 50px;
}

.enom-shop-products h2{
    margin-bottom:25px;
    font-size:30px;
    font-weight:800;
}

@media(max-width:900px){
    .enom-shop-links{
        grid-template-columns:1fr;
    }
}

@media(max-width:700px){
    .enom-shop-intro,
    .enom-shop-products{
        padding-left:18px;
        padding-right:18px;
    }

    .enom-shop-intro h1{
        font-size:34px;
    }
}



/* =========================================================
   ENOM CHECKOUT FINAL V5
   ========================================================= */

body.woocommerce-checkout{
    background:#f4f6f8;
}

/* Main checkout layout */
body.woocommerce-checkout form.checkout{
    display:grid !important;
    grid-template-columns:minmax(0, 1.38fr) minmax(390px, .92fr) !important;
    column-gap:34px !important;
    row-gap:16px !important;
    align-items:start !important;
    max-width:1280px !important;
    margin:0 auto !important;
    padding:30px 24px 50px !important;
}

/* Customer details */
body.woocommerce-checkout #customer_details{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;
    margin:0 !important;
}

/* Order review title */
body.woocommerce-checkout #order_review_heading{
    grid-column:2 !important;
    grid-row:1 !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:0 !important;
    padding:20px 24px 13px !important;

    background:#fff;
    border:1px solid #e3e8ee;
    border-bottom:0;
    border-radius:10px 10px 0 0;

    font-size:22px !important;
    font-weight:800 !important;
}

/* Order review box */
body.woocommerce-checkout #order_review{
    grid-column:2 !important;
    grid-row:2 !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:0 !important;
    padding:4px 24px 24px !important;

    box-sizing:border-box !important;

    background:#fff;
    border:1px solid #e3e8ee;
    border-top:0;
    border-radius:0 0 10px 10px;
}


/* =========================================================
   LEFT COLUMN
   ========================================================= */

body.woocommerce-checkout
#customer_details > .col-1,

body.woocommerce-checkout
#customer_details > .col-2{
    width:100% !important;
    max-width:none !important;
    float:none !important;

    box-sizing:border-box !important;

    background:#fff;
    border:1px solid #e3e8ee;
    border-radius:10px;

    padding:26px !important;
    margin:0 0 22px !important;
}

body.woocommerce-checkout
.woocommerce-billing-fields > h3,

body.woocommerce-checkout
.woocommerce-additional-fields > h3{
    margin:0 0 22px !important;
    font-size:22px !important;
    font-weight:800 !important;
}


/* =========================================================
   FORM FIELDS
   ========================================================= */

body.woocommerce-checkout
.woocommerce form .form-row{
    margin:0 0 17px !important;
}

body.woocommerce-checkout
.woocommerce form .form-row label{
    display:block !important;
    width:auto !important;
    max-width:none !important;

    margin-bottom:7px !important;

    font-size:14px !important;
    font-weight:650 !important;
    line-height:1.4 !important;
}

body.woocommerce-checkout
.woocommerce form .form-row input.input-text,

body.woocommerce-checkout
.woocommerce form .form-row textarea,

body.woocommerce-checkout
.woocommerce form .form-row select,

body.woocommerce-checkout
.select2-container{
    width:100% !important;
    max-width:none !important;
}

body.woocommerce-checkout
.woocommerce form .form-row input.input-text,

body.woocommerce-checkout
.woocommerce form .form-row select,

body.woocommerce-checkout
.select2-container .select2-selection--single{
    min-height:44px !important;
    border-radius:6px !important;
}

body.woocommerce-checkout
.woocommerce form .form-row textarea{
    min-height:90px !important;
    border-radius:6px !important;
}


/* =========================================================
   TELEPHONY / ACTIVATION BOX
   ========================================================= */

body.woocommerce-checkout
.enom-yuboto-fields,

body.woocommerce-checkout
.enom-activation-fields,

body.woocommerce-checkout
[class*="enom"][class*="activation"]{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}

body.woocommerce-checkout
.enom-yuboto-fields .form-row,

body.woocommerce-checkout
.enom-activation-fields .form-row{
    width:100% !important;
    max-width:none !important;
}


/* =========================================================
   ORDER TABLE
   ========================================================= */

body.woocommerce-checkout
#order_review table.shop_table{
    width:100% !important;
    margin:0 0 20px !important;
}

body.woocommerce-checkout
#order_review table.shop_table th,

body.woocommerce-checkout
#order_review table.shop_table td{
    padding:12px 5px !important;
    line-height:1.45 !important;
}


/* =========================================================
   PAYMENT AREA
   ========================================================= */

body.woocommerce-checkout
#payment{
    width:100% !important;
    max-width:none !important;

    background:#f7f9fb !important;
    border-radius:8px !important;
}

body.woocommerce-checkout
#payment .payment_box{
    width:auto !important;
    max-width:none !important;
}


/* =========================================================
   PRIVACY + TERMS
   Critical fix for narrow vertical text
   ========================================================= */

body.woocommerce-checkout
.woocommerce-privacy-policy-text{
    width:100% !important;
    max-width:none !important;

    margin:15px 0 !important;

    font-size:13px !important;
    line-height:1.65 !important;
}

body.woocommerce-checkout
.woocommerce-privacy-policy-text p{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;

    text-align:left !important;
}


/* Terms container */
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper{
    width:100% !important;
    max-width:none !important;

    margin:18px 0 !important;
}


/* Every checkout checkbox row */
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper .form-row,

body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper p.form-row,

body.woocommerce-checkout
#payment .form-row.validate-required{
    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:12px 0 !important;
}


/* Checkbox label */
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
label.woocommerce-form__label,

body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
.woocommerce-form__label-for-checkbox{
    display:flex !important;
    flex-direction:row !important;
    align-items:flex-start !important;

    width:100% !important;
    max-width:none !important;

    gap:10px !important;

    margin:0 !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.6 !important;

    text-align:left !important;
}


/* Checkbox itself */
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
input[type="checkbox"],

body.woocommerce-checkout
#payment input[type="checkbox"]{
    flex:0 0 17px !important;

    width:17px !important;
    height:17px !important;

    min-width:17px !important;
    max-width:17px !important;

    margin:3px 0 0 !important;
}


/* Text beside checkbox */
body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
.woocommerce-form__label-text{
    display:block !important;

    flex:1 1 auto !important;

    width:auto !important;
    max-width:none !important;

    white-space:normal !important;

    line-height:1.6 !important;
}


/* =========================================================
   ENOM SERVICE START CONSENT
   ========================================================= */

body.woocommerce-checkout
.enom-service-start-consent,

body.woocommerce-checkout
.enom-service-consent{
    width:100% !important;
    max-width:none !important;

    padding:14px 0 !important;
    margin:0 !important;
}

body.woocommerce-checkout
.enom-service-start-consent label,

body.woocommerce-checkout
.enom-service-consent label{
    display:flex !important;
    align-items:flex-start !important;

    width:100% !important;
    max-width:none !important;

    gap:10px !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.6 !important;
}


/* =========================================================
   PLACE ORDER BUTTON
   ========================================================= */

body.woocommerce-checkout
#place_order{
    width:100% !important;

    min-height:52px !important;

    margin-top:18px !important;
    padding:14px 20px !important;

    border-radius:7px !important;

    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
}


/* =========================================================
   OPTIONAL LABEL
   ========================================================= */

body.woocommerce-checkout
.optional{
    font-size:11px !important;
    font-weight:400 !important;
    opacity:.7;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1050px){

    body.woocommerce-checkout form.checkout{
        grid-template-columns:minmax(0,1fr) 360px !important;
        gap:24px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:850px){

    body.woocommerce-checkout form.checkout{
        display:block !important;
        padding:20px 14px 35px !important;
    }

    body.woocommerce-checkout
    #customer_details,

    body.woocommerce-checkout
    #order_review_heading,

    body.woocommerce-checkout
    #order_review{
        width:100% !important;
        max-width:none !important;

        margin-left:0 !important;
        margin-right:0 !important;
    }

    body.woocommerce-checkout
    #order_review_heading{
        margin-top:8px !important;
    }

}


/* =========================================================
   ENOM CHECKOUT V6 - EXACT LIVE DOM FIX
   ========================================================= */


/* ---------------------------------------------------------
   MAIN PAGE WIDTH
   --------------------------------------------------------- */

body.page-id-119 main.section > .container{
    width:calc(100% - 40px) !important;
    max-width:1440px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}


/* Hide duplicate page title.
   The custom checkout intro already contains the H1. */

body.page-id-119 main.section > .container > h1:first-child{
    display:none !important;
}


/* ---------------------------------------------------------
   CHECKOUT FORM GRID
   --------------------------------------------------------- */

body.page-id-119
.woocommerce
form.checkout.woocommerce-checkout{
    display:grid !important;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(480px, .85fr) !important;

    column-gap:34px !important;
    row-gap:0 !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 0 50px !important;

    box-sizing:border-box !important;
}


/* Woo inserts these web components between grid items */
body.page-id-119
form.checkout.woocommerce-checkout
> wc-order-attribution-inputs{
    display:none !important;
}


/* LEFT */
body.page-id-119
form.checkout.woocommerce-checkout
#customer_details{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;
    margin:0 !important;
}


/* RIGHT TITLE */
body.page-id-119
form.checkout.woocommerce-checkout
#order_review_heading{
    grid-column:2 !important;
    grid-row:1 !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    box-sizing:border-box !important;

    margin:0 !important;
    padding:23px 28px 16px !important;

    background:#fff;

    border:1px solid #e1e7ed;
    border-bottom:0;

    border-radius:10px 10px 0 0;

    font-size:22px !important;
    font-weight:800 !important;
}


/* RIGHT CONTENT */
body.page-id-119
form.checkout.woocommerce-checkout
#order_review{
    grid-column:2 !important;
    grid-row:2 !important;

    width:100% !important;
    max-width:none !important;

    min-width:0 !important;

    float:none !important;

    box-sizing:border-box !important;

    margin:0 !important;
    padding:0 28px 28px !important;

    background:#fff;

    border:1px solid #e1e7ed;
    border-top:0;

    border-radius:0 0 10px 10px;
}


/* ---------------------------------------------------------
   LEFT BOXES
   --------------------------------------------------------- */

body.page-id-119 #customer_details .col-1,
body.page-id-119 #customer_details .col-2{
    width:100% !important;
    max-width:none !important;

    float:none !important;

    box-sizing:border-box !important;

    margin:0 0 22px !important;
    padding:28px !important;

    background:#fff;

    border:1px solid #e1e7ed;
    border-radius:10px;
}


/* ---------------------------------------------------------
   BILLING FIELDS
   --------------------------------------------------------- */

body.page-id-119
.woocommerce-billing-fields__field-wrapper{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:0 18px !important;
}

body.page-id-119
.enom-checkout-full{
    grid-column:1 / -1 !important;
}

body.page-id-119
.enom-checkout-half{
    width:100% !important;
}


/* Inputs */
body.page-id-119
form.checkout .form-row input.input-text,

body.page-id-119
form.checkout .form-row textarea,

body.page-id-119
form.checkout .form-row select,

body.page-id-119
form.checkout .select2-container{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
}


/* ---------------------------------------------------------
   YUBOTO ACTIVATION BOX - ACTUAL LIVE ID
   --------------------------------------------------------- */

body.page-id-119
#enom_yuboto_checkout{
    width:100% !important;
    max-width:none !important;

    box-sizing:border-box !important;

    margin-top:24px !important;
    padding:24px !important;

    background:#f5f8fb !important;

    border:1px solid #d9e3ec !important;
    border-left:4px solid #1885ea !important;

    border-radius:8px !important;
}

body.page-id-119
#enom_yuboto_checkout h3{
    margin:0 0 9px !important;
    font-size:20px !important;
    font-weight:800 !important;
}

body.page-id-119
#enom_yuboto_checkout
.enom-yuboto-checkout-note{
    margin:0 0 20px !important;

    font-size:13px !important;
    line-height:1.6 !important;
}

body.page-id-119
#enom_yuboto_checkout .form-row{
    width:100% !important;
    max-width:none !important;
    float:none !important;
}


/* ---------------------------------------------------------
   PAYMENT
   --------------------------------------------------------- */

body.page-id-119
#payment{
    width:100% !important;
    max-width:none !important;

    margin-top:15px !important;

    background:#f6f8fa !important;
    border-radius:8px !important;
}

body.page-id-119
#payment .form-row.place-order{
    width:100% !important;
    max-width:none !important;

    float:none !important;

    box-sizing:border-box !important;

    padding:22px !important;
    margin:0 !important;
}


/* ---------------------------------------------------------
   PRIVACY
   --------------------------------------------------------- */

body.page-id-119
.woocommerce-privacy-policy-text,

body.page-id-119
.woocommerce-privacy-policy-text p{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin:0 0 18px !important;

    font-size:13px !important;
    line-height:1.65 !important;

    white-space:normal !important;
    word-break:normal !important;

    text-align:left !important;
}


/* ---------------------------------------------------------
   TERMS
   --------------------------------------------------------- */

body.page-id-119
.woocommerce-terms-and-conditions-wrapper{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    box-sizing:border-box !important;
}


/* Actual terms row */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
> p.form-row.validate-required{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:14px 0 18px !important;
    padding:0 !important;
}


/* Actual Woo terms label */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
label.woocommerce-form__label-for-checkbox{
    display:grid !important;

    grid-template-columns:18px minmax(0,1fr) auto !important;

    align-items:start !important;

    column-gap:10px !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.65 !important;
}


/* Checkbox */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
#terms{
    grid-column:1 !important;

    width:17px !important;
    height:17px !important;

    min-width:17px !important;
    max-width:17px !important;

    margin:3px 0 0 !important;
}


/* ACTUAL text class from live source */
body.page-id-119
.woocommerce-terms-and-conditions-checkbox-text{
    grid-column:2 !important;

    display:block !important;

    width:100% !important;
    max-width:none !important;

    min-width:0 !important;

    white-space:normal !important;

    word-break:normal !important;
    overflow-wrap:normal !important;

    font-size:13px !important;
    line-height:1.65 !important;
}


/* Required asterisk */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
abbr.required{
    grid-column:3 !important;
}


/* ---------------------------------------------------------
   SERVICE START CONSENT - ACTUAL LIVE ID
   --------------------------------------------------------- */

body.page-id-119
#enom_service_start_consent_field{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    box-sizing:border-box !important;

    margin:18px 0 !important;
    padding:16px !important;

    background:#eef5fb;

    border:1px solid #d6e5f2;
    border-radius:7px;
}

body.page-id-119
#enom_service_start_consent_field
.woocommerce-input-wrapper{
    display:block !important;

    width:100% !important;
    max-width:none !important;
}

body.page-id-119
#enom_service_start_consent_field label{
    display:grid !important;

    grid-template-columns:18px minmax(0,1fr) !important;

    column-gap:10px !important;
    align-items:start !important;

    width:100% !important;
    max-width:none !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.65 !important;
}

body.page-id-119
#enom_service_start_consent{
    width:17px !important;
    height:17px !important;

    min-width:17px !important;
    max-width:17px !important;

    margin:3px 0 0 !important;
}


/* ---------------------------------------------------------
   ORDER BUTTON
   --------------------------------------------------------- */

body.page-id-119
#place_order{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    min-height:54px !important;

    margin:20px 0 0 !important;
    padding:15px 20px !important;

    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.3 !important;

    border-radius:7px !important;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media(max-width:1000px){

    body.page-id-119
    .woocommerce
    form.checkout.woocommerce-checkout{
        grid-template-columns:
            minmax(0,1fr)
            minmax(400px,.9fr) !important;
    }

}


@media(max-width:850px){

    body.page-id-119
    main.section > .container{
        width:calc(100% - 24px) !important;
    }

    body.page-id-119
    .woocommerce
    form.checkout.woocommerce-checkout{
        display:block !important;
    }

    body.page-id-119
    #order_review_heading{
        margin-top:12px !important;
    }

    body.page-id-119
    .woocommerce-billing-fields__field-wrapper{
        grid-template-columns:1fr !important;
    }

    body.page-id-119
    .enom-checkout-half,
    body.page-id-119
    .enom-checkout-full{
        grid-column:1 !important;
    }

}


/* =========================================================
   ENOM CHECKOUT V7 - FULL WIDTH LEGAL + BUTTON
   ========================================================= */

body.page-id-119 #payment,
body.page-id-119 #payment .form-row.place-order,
body.page-id-119 .woocommerce-terms-and-conditions-wrapper,
body.page-id-119 .woocommerce-privacy-policy-text,
body.page-id-119 .woocommerce-privacy-policy-text p{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}


/* Privacy text */
body.page-id-119
.woocommerce-privacy-policy-text{
    display:block !important;
    margin:0 0 18px !important;
    padding:0 !important;
}

body.page-id-119
.woocommerce-privacy-policy-text p{
    display:block !important;

    margin:0 !important;

    text-align:left !important;

    font-size:13px !important;
    line-height:1.65 !important;

    white-space:normal !important;
    word-break:normal !important;
}


/* Terms row */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
p.form-row.validate-required{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:15px 0 20px !important;
    padding:0 !important;
}


/* Terms checkbox label */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
label.checkbox{
    display:flex !important;
    flex-direction:row !important;
    align-items:flex-start !important;

    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;

    gap:10px !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.6 !important;
}


/* Terms checkbox */
body.page-id-119
.woocommerce-terms-and-conditions-wrapper
#terms{
    flex:0 0 18px !important;

    width:18px !important;
    min-width:18px !important;
    max-width:18px !important;

    height:18px !important;

    margin:3px 0 0 !important;
}


/* Terms text */
body.page-id-119
.woocommerce-terms-and-conditions-checkbox-text{
    display:block !important;

    flex:1 1 auto !important;

    width:auto !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;

    text-align:left !important;
}


/* Service start consent */
body.page-id-119
#enom_service_start_consent_field{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    float:none !important;

    margin:20px 0 !important;
    padding:17px !important;

    box-sizing:border-box !important;
}

body.page-id-119
#enom_service_start_consent_field
.woocommerce-input-wrapper{
    display:block !important;

    width:100% !important;
    max-width:none !important;
}

body.page-id-119
#enom_service_start_consent_field
label.checkbox{
    display:flex !important;
    flex-direction:row !important;
    align-items:flex-start !important;

    width:100% !important;
    max-width:none !important;

    gap:10px !important;

    white-space:normal !important;

    font-size:13px !important;
    line-height:1.6 !important;
}

body.page-id-119
#enom_service_start_consent{
    flex:0 0 18px !important;

    width:18px !important;
    min-width:18px !important;
    max-width:18px !important;

    height:18px !important;

    margin:3px 0 0 !important;
}


/* =========================================================
   PLACE ORDER BUTTON - FULL COLUMN WIDTH
   ========================================================= */

body.page-id-119
#payment .form-row.place-order
#place_order{
    display:block !important;

    float:none !important;
    clear:both !important;

    width:100% !important;
    max-width:none !important;
    min-width:100% !important;

    box-sizing:border-box !important;

    margin:22px 0 0 !important;
    padding:16px 22px !important;

    min-height:56px !important;

    text-align:center !important;

    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.35 !important;

    border-radius:7px !important;
}


/* Remove Woo float remnants */
body.page-id-119
#payment .place-order::after{
    content:"";
    display:block;
    clear:both;
}


/* =========================================================
   ENOM CHECKOUT V9
   REAL PLACE-ORDER PARENT FIX
   ========================================================= */


/* PAYMENT MUST NOT CREATE ANOTHER GRID */
body.woocommerce-checkout
.enom-checkout-right
#order_review
#payment{
    display:block !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    box-sizing:border-box !important;
}


/* PAYMENT METHODS FULL WIDTH */
body.woocommerce-checkout
.enom-checkout-right
#payment
> ul.wc_payment_methods{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    box-sizing:border-box !important;
}


/* =========================================================
   THIS IS THE ACTUAL PROBLEM
   div.form-row.place-order
   ========================================================= */

body.woocommerce-checkout
.enom-checkout-right
#payment
> div.form-row.place-order,

body.woocommerce-checkout
#payment
div.form-row.place-order{

    display:block !important;

    grid-template-columns:none !important;
    grid-template-rows:none !important;
    grid-template-areas:none !important;

    grid-column:1 / -1 !important;
    grid-row:auto !important;

    float:none !important;
    clear:both !important;

    position:relative !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;
    padding:22px !important;

    box-sizing:border-box !important;

    text-align:left !important;
}


/* Woo clearfix was taking part in the grid */
body.woocommerce-checkout
#payment
.form-row.place-order::before,

body.woocommerce-checkout
#payment
.form-row.place-order::after{

    content:none !important;

    display:none !important;

    width:0 !important;
    height:0 !important;
}


/* =========================================================
   LEGAL / PRIVACY
   ========================================================= */

body.woocommerce-checkout
#payment
.form-row.place-order
.woocommerce-terms-and-conditions-wrapper,

body.woocommerce-checkout
#payment
.form-row.place-order
.woocommerce-privacy-policy-text,

body.woocommerce-checkout
#payment
.form-row.place-order
.woocommerce-privacy-policy-text p{

    display:block !important;

    float:none !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    box-sizing:border-box !important;
}


/* Terms checkbox row */
body.woocommerce-checkout
#payment
.form-row.place-order
.woocommerce-terms-and-conditions-wrapper
p.form-row{

    display:block !important;

    float:none !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:15px 0 !important;

    box-sizing:border-box !important;
}


/* Terms label */
body.woocommerce-checkout
#payment
.form-row.place-order
.woocommerce-terms-and-conditions-wrapper
label.checkbox{

    display:flex !important;
    flex-direction:row !important;
    align-items:flex-start !important;

    gap:10px !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;

    white-space:normal !important;

    line-height:1.55 !important;
}


/* Terms text */
body.woocommerce-checkout
#payment
.woocommerce-terms-and-conditions-checkbox-text{

    display:block !important;

    flex:1 1 auto !important;

    width:auto !important;
    min-width:0 !important;
    max-width:none !important;

    white-space:normal !important;

    word-break:normal !important;
    overflow-wrap:normal !important;
}


/* =========================================================
   SERVICE CONSENT
   ========================================================= */

body.woocommerce-checkout
#payment
#enom_service_start_consent_field{

    display:block !important;

    float:none !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:20px 0 !important;
    padding:16px !important;

    box-sizing:border-box !important;
}


/* =========================================================
   BUTTON - ENTIRE COLUMN
   ========================================================= */

body.woocommerce-checkout
.enom-checkout-right
#payment
.form-row.place-order
button#place_order,

body.woocommerce-checkout
#payment
#place_order{

    display:block !important;

    float:none !important;
    clear:both !important;

    position:static !important;

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:22px 0 0 !important;

    padding:16px 20px !important;

    box-sizing:border-box !important;

    min-height:56px !important;

    text-align:center !important;

    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.35 !important;

    border-radius:7px !important;
}


/* Mobile */
@media(max-width:900px){

    body.woocommerce-checkout
    #payment
    div.form-row.place-order{
        padding:18px !important;
    }

}



/* =========================================================
   ENOM BRANDS & PROJECTS - OFFICIAL LOGOS
   ========================================================= */

.brand-project-card .brand-project-mark.brand-project-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:170px !important;
    min-width:170px !important;
    height:110px !important;

    padding:10px !important;
    margin:0 !important;

    box-sizing:border-box !important;

    background:#fff !important;
    border-radius:10px !important;

    overflow:hidden !important;
}

.brand-project-card .brand-project-logo-img{
    display:block !important;

    width:100% !important;
    height:100% !important;

    max-width:150px !important;
    max-height:90px !important;

    object-fit:contain !important;
    object-position:center !important;

    margin:0 auto !important;
    padding:0 !important;

    border:0 !important;
    box-shadow:none !important;
}


/* Preserve original proportions on every logo */
.brand-project-card .brand-project-logo img{
    object-fit:contain !important;
}


/* Tablet / mobile */
@media(max-width:700px){

    .brand-project-card .brand-project-mark.brand-project-logo{
        width:150px !important;
        min-width:150px !important;
        height:100px !important;
    }

    .brand-project-card .brand-project-logo-img{
        max-width:130px !important;
        max-height:80px !important;
    }

}


/* =========================================================
   ENOM BRANDS LOGOS - FINAL LAYOUT
   ========================================================= */

.brands-project-grid .brand-project-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto !important;

    gap:12px !important;

    align-items:start !important;

    padding:28px 36px !important;

    box-sizing:border-box !important;
}


/* Logo gets its own full-width row */
.brands-project-grid
.brand-project-card
.brand-project-mark.brand-project-logo{

    grid-column:1 / -1 !important;

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

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    height:105px !important;

    margin:0 0 6px !important;
    padding:0 !important;

    background:transparent !important;

    overflow:visible !important;
}


/* Every logo gets EXACTLY the same image box */
.brands-project-grid
.brand-project-card
.brand-project-logo-img{

    display:block !important;

    width:260px !important;
    height:90px !important;

    max-width:100% !important;
    max-height:90px !important;

    object-fit:contain !important;
    object-position:center center !important;

    margin:0 auto !important;
    padding:0 !important;

    border:0 !important;
    box-shadow:none !important;
}


/* Text block starts below logo */
.brands-project-grid
.brand-project-card
> div:not(.brand-project-logo){

    grid-column:1 !important;

    width:100% !important;
    min-width:0 !important;

    margin:0 !important;
}


/* Keep headings away from logo */
.brands-project-grid
.brand-project-card
.brand-type{

    display:block !important;

    margin:0 0 8px !important;
}


.brands-project-grid
.brand-project-card h2{

    margin:0 0 12px !important;
}


/* Mobile */
@media(max-width:700px){

    .brands-project-grid .brand-project-card{
        padding:24px !important;
    }

    .brands-project-grid
    .brand-project-card
    .brand-project-mark.brand-project-logo{

        height:95px !important;
    }

    .brands-project-grid
    .brand-project-card
    .brand-project-logo-img{

        width:230px !important;
        height:80px !important;
        max-height:80px !important;
    }
}



/* =========================================================
   ENOM HOME BRANDS FINAL V1
   ========================================================= */

.brands-section .enom-home-brand-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:18px !important;

    width:100% !important;
}


/* CARD */
.brands-section .enom-home-brand-card{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;

    min-width:0 !important;
    min-height:190px !important;

    padding:22px 18px !important;

    box-sizing:border-box !important;

    background:#fff !important;
    border:1px solid rgba(10,30,46,.10) !important;
    border-radius:10px !important;

    text-align:center !important;

    text-decoration:none !important;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease !important;
}


.brands-section .enom-home-brand-card:hover{
    transform:translateY(-3px) !important;

    border-color:rgba(10,30,46,.20) !important;

    box-shadow:
        0 12px 28px rgba(10,30,46,.09) !important;
}


/* SAME VISUAL AREA FOR ALL FOUR LOGOS */
.brands-section .enom-home-brand-logo{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:100% !important;
    height:92px !important;

    margin:0 0 18px !important;

    overflow:hidden !important;
}


/* ORIGINAL 500PX PNG — NO DISTORTION */
.brands-section .enom-home-brand-logo-img{
    display:block !important;

    width:260px !important;
    height:82px !important;

    max-width:100% !important;
    max-height:82px !important;

    object-fit:contain !important;
    object-position:center center !important;

    margin:0 auto !important;
    padding:0 !important;

    border:0 !important;
    box-shadow:none !important;
}


/* TEXT */
.brands-section .enom-home-brand-content{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;

    width:100% !important;
    min-width:0 !important;

    gap:6px !important;
}


.brands-section .enom-home-brand-content strong{
    display:block !important;

    margin:0 !important;

    color:#0b1d2b !important;

    font-size:17px !important;
    font-weight:800 !important;
    line-height:1.25 !important;
}


.brands-section .enom-home-brand-content span{
    display:block !important;

    margin:0 !important;

    color:#62717c !important;

    font-size:13px !important;
    line-height:1.45 !important;
}


/* TABLET */
@media(max-width:1050px){

    .brands-section .enom-home-brand-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

}


/* MOBILE */
@media(max-width:620px){

    .brands-section .enom-home-brand-grid{
        grid-template-columns:1fr !important;
    }

    .brands-section .enom-home-brand-card{
        min-height:175px !important;
        padding:20px !important;
    }

    .brands-section .enom-home-brand-logo{
        height:85px !important;
        margin-bottom:14px !important;
    }

    .brands-section .enom-home-brand-logo-img{
        width:230px !important;
        height:76px !important;
        max-height:76px !important;
    }

}



/* =========================================================
   ENOM ENGLISH HOME SERVICE ICONS
   Same dimensions as Greek homepage
   ========================================================= */

body.page-id-94
.service-card
.home-service-svg{
    width:46px !important;
    height:46px !important;

    min-width:46px !important;
    min-height:46px !important;
    max-width:46px !important;
    max-height:46px !important;

    flex:0 0 46px !important;

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

    margin:12px 0 16px !important;
    padding:0 !important;

    color:#147df5 !important;

    background:rgba(20,125,245,.07) !important;

    border:1px solid rgba(20,125,245,.14) !important;
    border-radius:10px !important;

    box-sizing:border-box !important;

    overflow:hidden !important;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease !important;
}


body.page-id-94
.service-card
.home-service-svg svg{
    display:block !important;

    width:30px !important;
    height:30px !important;

    min-width:30px !important;
    min-height:30px !important;
    max-width:30px !important;
    max-height:30px !important;

    margin:0 !important;
    padding:0 !important;

    fill:none !important;
    stroke:currentColor !important;

    stroke-width:1.8 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;

    box-sizing:border-box !important;
}


body.page-id-94
.service-card:hover
.home-service-svg{
    transform:translateY(-2px) !important;

    background:rgba(20,125,245,.11) !important;
    border-color:rgba(20,125,245,.25) !important;
}


@media(max-width:700px){

    body.page-id-94
    .service-card
    .home-service-svg{
        width:42px !important;
        height:42px !important;

        min-width:42px !important;
        min-height:42px !important;
        max-width:42px !important;
        max-height:42px !important;

        flex-basis:42px !important;

        margin:10px 0 14px !important;
    }

    body.page-id-94
    .service-card
    .home-service-svg svg{
        width:27px !important;
        height:27px !important;

        min-width:27px !important;
        min-height:27px !important;
        max-width:27px !important;
        max-height:27px !important;
    }

}



/* =========================================================
   ENOM MENU LANGUAGE FLAGS V1
   GR menu: EN -> UK flag
   EN menu: EL -> Greek flag
   ========================================================= */

#menu-item-107 > a,
#menu-item-114 > a{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    gap:6px !important;

    white-space:nowrap !important;
}


/* Greek menu -> English */
#menu-item-107 > a::before{
    content:"🇬🇧";
    display:inline-block;

    font-size:19px;
    line-height:1;

    vertical-align:middle;
}


/* English menu -> Greek */
#menu-item-114 > a::before{
    content:"🇬🇷";
    display:inline-block;

    font-size:19px;
    line-height:1;

    vertical-align:middle;
}


/* Slightly cleaner on mobile */
@media(max-width:900px){

    #menu-item-107 > a::before,
    #menu-item-114 > a::before{
        font-size:18px;
    }

}



/* =========================================================
   ENOM MOBILE HEADER / MENU FINAL V1
   ========================================================= */

/* Hidden on desktop */
.enom-mobile-header-actions{
    display:none;
}


/* =========================================================
   MOBILE / TABLET
   ========================================================= */

@media(max-width:900px){

    .site-header{
        position:relative !important;
        z-index:9999 !important;
    }


    .site-header .header-inner{
        position:relative !important;

        display:grid !important;
        grid-template-columns:minmax(0,1fr) auto !important;

        align-items:center !important;

        gap:12px !important;

        width:100% !important;

        min-height:68px !important;

        padding-top:8px !important;
        padding-bottom:8px !important;

        box-sizing:border-box !important;
    }


    /* -------------------------
       LOGO
       ------------------------- */

    .site-header .brand{
        display:flex !important;
        align-items:center !important;

        min-width:0 !important;

        margin:0 !important;
    }


    .site-header .brand img{
        width:auto !important;
        height:48px !important;

        max-width:155px !important;

        object-fit:contain !important;
    }


    .site-header .brand-text{
        display:none !important;
    }


    /* -------------------------
       CART + HAMBURGER
       ------------------------- */

    .enom-mobile-header-actions{
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;

        gap:10px !important;

        margin-left:auto !important;
    }


    .enom-mobile-header-actions .enom-header-cart{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        position:relative !important;

        margin:0 !important;
        padding:7px !important;

        width:40px !important;
        height:40px !important;

        box-sizing:border-box !important;
    }


    .enom-mobile-header-actions
    .enom-header-cart-icon svg{
        width:24px !important;
        height:24px !important;
    }


    /* Hide the duplicate desktop cart inside nav */
    .site-header
    #enom-main-navigation
    > .enom-header-cart{
        display:none !important;
    }


    /* -------------------------
       HAMBURGER BUTTON
       ------------------------- */

    .enom-menu-toggle{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;

        gap:5px !important;

        width:42px !important;
        height:42px !important;

        margin:0 !important;
        padding:8px !important;

        background:transparent !important;

        border:1px solid rgba(255,255,255,.24) !important;
        border-radius:7px !important;

        cursor:pointer !important;

        box-sizing:border-box !important;
    }


    .enom-menu-toggle span{
        display:block !important;

        width:22px !important;
        height:2px !important;

        margin:0 !important;
        padding:0 !important;

        background:#fff !important;

        border-radius:2px !important;

        transition:
            transform .2s ease,
            opacity .2s ease !important;
    }


    /* Hamburger -> X */
    .enom-menu-open
    .enom-menu-toggle span:nth-child(1){
        transform:translateY(7px) rotate(45deg) !important;
    }

    .enom-menu-open
    .enom-menu-toggle span:nth-child(2){
        opacity:0 !important;
    }

    .enom-menu-open
    .enom-menu-toggle span:nth-child(3){
        transform:translateY(-7px) rotate(-45deg) !important;
    }


    /* -------------------------
       NAVIGATION PANEL
       ------------------------- */

    .site-header .main-nav{
        display:none !important;

        grid-column:1 / -1 !important;

        position:absolute !important;

        top:100% !important;
        left:0 !important;
        right:0 !important;

        width:100% !important;
        max-width:none !important;

        margin:0 !important;
        padding:10px 0 14px !important;

        background:#0b1d2b !important;

        border-top:1px solid rgba(255,255,255,.10) !important;

        box-shadow:
            0 16px 32px rgba(0,0,0,.24) !important;

        z-index:99999 !important;

        box-sizing:border-box !important;

        overflow:visible !important;
    }


    .site-header
    .header-inner.enom-menu-open
    .main-nav{
        display:block !important;
    }


    /* -------------------------
       MAIN MENU
       ------------------------- */

    .site-header
    .main-nav
    .main-menu{
        display:flex !important;
        flex-direction:column !important;

        align-items:stretch !important;

        gap:0 !important;

        width:100% !important;

        margin:0 !important;
        padding:0 !important;

        list-style:none !important;
    }


    .site-header
    .main-nav
    .main-menu > li{
        display:block !important;

        position:relative !important;

        width:100% !important;

        margin:0 !important;
        padding:0 !important;

        border-bottom:
            1px solid rgba(255,255,255,.08) !important;
    }


    .site-header
    .main-nav
    .main-menu > li:last-child{
        border-bottom:0 !important;
    }


    .site-header
    .main-nav
    .main-menu > li > a{
        display:flex !important;

        align-items:center !important;

        width:100% !important;

        min-height:46px !important;

        margin:0 !important;
        padding:11px 16px !important;

        box-sizing:border-box !important;

        color:#fff !important;

        font-size:15px !important;
        font-weight:600 !important;
        line-height:1.35 !important;

        text-decoration:none !important;

        white-space:normal !important;
    }


    .site-header
    .main-nav
    .main-menu > li > a:hover,
    .site-header
    .main-nav
    .main-menu > li.current-menu-item > a{
        background:
            rgba(255,255,255,.07) !important;
    }


    /* -------------------------
       SUBMENUS
       No floating dropdown on mobile
       ------------------------- */

    .site-header
    .main-nav
    .main-menu
    .sub-menu{

        display:block !important;

        position:static !important;

        top:auto !important;
        left:auto !important;

        width:100% !important;
        min-width:0 !important;
        max-width:none !important;

        margin:0 !important;
        padding:0 0 6px !important;

        opacity:1 !important;
        visibility:visible !important;

        transform:none !important;

        background:
            rgba(255,255,255,.035) !important;

        border:0 !important;
        box-shadow:none !important;
    }


    .site-header
    .main-nav
    .main-menu
    .sub-menu li{
        display:block !important;

        width:100% !important;

        margin:0 !important;
        padding:0 !important;
    }


    .site-header
    .main-nav
    .main-menu
    .sub-menu a{
        display:block !important;

        width:100% !important;

        margin:0 !important;
        padding:10px 16px 10px 32px !important;

        box-sizing:border-box !important;

        color:rgba(255,255,255,.82) !important;

        font-size:14px !important;
        line-height:1.4 !important;

        white-space:normal !important;
    }


    .site-header
    .main-nav
    .main-menu
    .sub-menu a:hover{
        color:#fff !important;

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


    /* Language flag menu items */
    #menu-item-107 > a,
    #menu-item-114 > a{
        justify-content:flex-start !important;
        gap:8px !important;
    }

}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media(max-width:480px){

    .site-header .header-inner{
        min-height:62px !important;
        gap:8px !important;
    }


    .site-header .brand img{
        height:42px !important;
        max-width:135px !important;
    }


    .enom-mobile-header-actions{
        gap:6px !important;
    }


    .enom-menu-toggle{
        width:38px !important;
        height:38px !important;
    }


    .enom-mobile-header-actions
    .enom-header-cart{
        width:38px !important;
        height:38px !important;
    }


    .site-header
    .main-nav
    .main-menu > li > a{
        min-height:44px !important;
        padding-left:14px !important;
        padding-right:14px !important;
    }

}



/* =========================================================
   ENOM CHECKOUT MOBILE FULL WIDTH V1
   ========================================================= */

@media(max-width:700px){

    /* Whole checkout page */
    body.page-id-119{
        overflow-x:hidden !important;
    }


    body.page-id-119 main.section{
        width:100% !important;

        margin:0 !important;
        padding:18px 0 36px !important;
    }


    /* Main theme container */
    body.page-id-119
    main.section > .container{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;

        padding-left:12px !important;
        padding-right:12px !important;

        box-sizing:border-box !important;
    }


    /* Woo wrapper */
    body.page-id-119
    .woocommerce{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        box-sizing:border-box !important;
    }


    /* Intro box */
    body.page-id-119
    .enom-checkout-intro{

        width:100% !important;
        max-width:none !important;

        margin:0 0 18px !important;
        padding:18px !important;

        box-sizing:border-box !important;
    }


    body.page-id-119
    .enom-checkout-intro h1{

        font-size:28px !important;
        line-height:1.15 !important;
    }


    /* Checkout form becomes one full-width column */
    body.page-id-119
    form.checkout.woocommerce-checkout{

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        box-sizing:border-box !important;
    }


    /* Customer details */
    body.page-id-119
    #customer_details{

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;
    }


    body.page-id-119
    #customer_details .col-1,

    body.page-id-119
    #customer_details .col-2{

        float:none !important;

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 0 18px !important;

        padding:16px !important;

        box-sizing:border-box !important;
    }


    /* All billing rows full width on phone */
    body.page-id-119
    .woocommerce-billing-fields__field-wrapper{

        display:block !important;
        width:100% !important;
    }


    body.page-id-119
    .woocommerce-billing-fields__field-wrapper
    .form-row,

    body.page-id-119
    .enom-checkout-half,

    body.page-id-119
    .enom-checkout-full{

        float:none !important;

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 0 14px !important;

        box-sizing:border-box !important;
    }


    /* Inputs and selects */
    body.page-id-119
    .woocommerce form .form-row input.input-text,

    body.page-id-119
    .woocommerce form .form-row textarea,

    body.page-id-119
    .woocommerce form .form-row select,

    body.page-id-119
    .select2-container{

        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        box-sizing:border-box !important;
    }


    /* Yuboto activation block */
    body.page-id-119
    #enom_yuboto_checkout{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        box-sizing:border-box !important;
    }


    /* Right checkout column */
    body.page-id-119
    .enom-checkout-right{

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:20px 0 0 !important;
        padding:0 !important;

        box-sizing:border-box !important;
    }


    body.page-id-119
    #order_review_heading{

        width:100% !important;

        margin:0 0 10px !important;
    }


    body.page-id-119
    #order_review{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;
        padding:0 !important;

        box-sizing:border-box !important;
    }


    /* Order table */
    body.page-id-119
    .woocommerce-checkout-review-order-table{

        width:100% !important;
        max-width:100% !important;

        table-layout:auto !important;

        box-sizing:border-box !important;
    }


    body.page-id-119
    .woocommerce-checkout-review-order-table th,

    body.page-id-119
    .woocommerce-checkout-review-order-table td{

        padding:10px 8px !important;

        font-size:13px !important;

        word-break:normal !important;
        overflow-wrap:anywhere !important;
    }


    /* Payment */
    body.page-id-119
    #payment{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;

        box-sizing:border-box !important;
    }


    body.page-id-119
    #payment
    .form-row.place-order{

        display:block !important;

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        margin:0 !important;

        padding:16px !important;

        box-sizing:border-box !important;
    }


    /* Legal texts */
    body.page-id-119
    .woocommerce-terms-and-conditions-wrapper,

    body.page-id-119
    .woocommerce-privacy-policy-text,

    body.page-id-119
    #enom_service_start_consent_field{

        width:100% !important;
        max-width:none !important;
        min-width:0 !important;

        box-sizing:border-box !important;
    }


    /* Full width button */
    body.page-id-119
    #place_order{

        display:block !important;

        float:none !important;

        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;

        margin:18px 0 0 !important;

        padding:15px 12px !important;

        box-sizing:border-box !important;
    }

}


/* Extra-small phones */
@media(max-width:390px){

    body.page-id-119
    main.section > .container{

        padding-left:8px !important;
        padding-right:8px !important;
    }


    body.page-id-119
    #customer_details .col-1,

    body.page-id-119
    #customer_details .col-2,

    body.page-id-119
    #payment
    .form-row.place-order{

        padding:13px !important;
    }


    body.page-id-119
    .enom-checkout-intro{

        padding:15px !important;
    }

}



/* =========================================================
   ENOM PAYMENTS HUB V1
   ========================================================= */

.enom-payments-page{
    max-width:1180px;
    margin:0 auto;
    padding:42px 0 60px;
}

.enom-payments-intro{
    max-width:760px;
    margin:0 0 32px;
}

.enom-payments-kicker{
    display:block;
    margin-bottom:7px;
    font-size:13px;
    font-weight:800;
    letter-spacing:.11em;
    color:#147df5;
}

.enom-payments-intro h1{
    margin:0 0 12px;
    font-size:42px;
    line-height:1.1;
}

.enom-payments-intro p{
    margin:0;
    font-size:17px;
    line-height:1.65;
}

.enom-payment-grid{
    display:grid;
    grid-template-columns:minmax(0,2fr) minmax(280px,1fr);
    gap:24px;
    align-items:start;
}

.enom-payment-card{
    position:relative;
    padding:28px;
    border:1px solid rgba(20,45,70,.12);
    border-radius:16px;
    background:#fff;
    box-shadow:0 12px 32px rgba(7,31,52,.07);
    box-sizing:border-box;
}

.enom-payment-card h2{
    margin:8px 0 12px;
    font-size:25px;
    line-height:1.2;
}

.enom-payment-card > p{
    line-height:1.65;
}

.enom-payment-icon{
    font-size:31px;
    line-height:1;
}

.enom-payment-status{
    position:absolute;
    top:24px;
    right:24px;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:800;
}

.enom-payment-status.is-active{
    background:#eaf8ef;
    color:#18713b;
}

.enom-payment-status.is-soon{
    background:#f0f2f5;
    color:#65717e;
}

.enom-payment-card-disabled{
    background:#fafbfc;
}

.enom-payment-muted{
    color:#6a7480;
    font-size:14px;
}

.enom-bank-box{
    margin-top:22px;
    overflow:hidden;
    border:1px solid #dde5ec;
    border-radius:12px;
}

.enom-bank-row{
    display:grid;
    grid-template-columns:190px minmax(0,1fr);
    gap:18px;
    padding:13px 16px;
    border-bottom:1px solid #e8edf2;
}

.enom-bank-row:last-child{
    border-bottom:0;
}

.enom-bank-row span{
    color:#617080;
    font-size:14px;
}

.enom-bank-row strong{
    min-width:0;
    overflow-wrap:anywhere;
    font-size:14px;
}

.enom-bank-highlight{
    background:#f3f8ff;
}

.enom-bank-highlight strong{
    font-size:16px;
    letter-spacing:.02em;
}

.enom-transfer-types{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:18px;
}

.enom-transfer-box{
    padding:17px;
    border:1px solid #e0e7ee;
    border-radius:12px;
    background:#f8fafc;
}

.enom-transfer-box h3{
    margin:0 0 12px;
    font-size:16px;
}

.enom-transfer-box p{
    margin:6px 0;
    font-size:14px;
    overflow-wrap:anywhere;
}

.enom-payment-note{
    margin-top:18px;
    padding:15px 17px;
    border-radius:10px;
    background:#fff8e8;
    line-height:1.55;
    font-size:14px;
}

.enom-payments-security{
    margin-top:26px;
    padding:24px 26px;
    border-radius:14px;
    background:#f4f7fa;
}

.enom-payments-security h2{
    margin:0 0 10px;
    font-size:21px;
}

.enom-payments-security p{
    margin:0;
    line-height:1.65;
}


@media(max-width:850px){

    .enom-payment-grid{
        grid-template-columns:1fr;
    }

}


@media(max-width:600px){

    .enom-payments-page{
        padding:26px 0 42px;
    }

    .enom-payments-intro h1{
        font-size:32px;
    }

    .enom-payment-card{
        padding:20px 16px;
        border-radius:13px;
    }

    .enom-payment-status{
        top:17px;
        right:16px;
    }

    .enom-bank-row{
        display:block;
        padding:12px 13px;
    }

    .enom-bank-row span{
        display:block;
        margin-bottom:5px;
    }

    .enom-bank-row strong{
        display:block;
    }

    .enom-transfer-types{
        grid-template-columns:1fr;
    }

    .enom-payments-security{
        padding:19px 17px;
    }

}



/* =========================================================
   ENOM ENGLISH SHOP PAYMENTS HERO V1
   ========================================================= */

.enom-payments-hero{
    margin:0;
}

.enom-en-shop-content,
.enom-en-payments-content{
    padding-top:38px;
}

@media(max-width:700px){

    .enom-en-shop-content,
    .enom-en-payments-content{
        padding-top:26px;
    }

}



/* =========================================================
   ENOM YUBOTO EXTRA SERVICES CSS V1
   ========================================================= */

.enom-yuboto-extra{
    padding:52px 0 58px;
    background:#f5f7fa;
    border-top:1px solid #e4e9ef;
}

.enom-yuboto-extra-head{
    max-width:850px;
    margin:0 0 30px;
}

.enom-yuboto-extra-head h2{
    margin:8px 0 12px;
    font-size:34px;
    line-height:1.18;
}

.enom-yuboto-extra-head p{
    margin:0;
    max-width:800px;
    font-size:16px;
    line-height:1.7;
    color:#536171;
}

.enom-yuboto-extra-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.enom-yuboto-extra-card{
    position:relative;
    min-width:0;
    padding:22px;
    background:#fff;
    border:1px solid #dfe6ed;
    border-radius:14px;
    box-shadow:0 8px 24px rgba(10,31,51,.045);
}

.enom-yuboto-extra-card h3{
    margin:11px 0 10px;
    font-size:20px;
    line-height:1.25;
}

.enom-yuboto-extra-card p{
    margin:0 0 15px;
    color:#586675;
    line-height:1.6;
}

.enom-yuboto-extra-card ul{
    margin:0;
    padding-left:19px;
}

.enom-yuboto-extra-card li{
    margin:6px 0;
    line-height:1.45;
    font-size:14px;
}

.enom-yuboto-card-tag{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:4px 9px;
    border-radius:999px;
    background:#eaf3ff;
    color:#126fd3;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.07em;
}

.enom-yuboto-ai-card{
    border-color:#cfdff4;
    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f4f8ff 100%
        );
}

.enom-yuboto-extra-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;

    margin-top:24px;
    padding:24px 26px;

    background:#0c1c2b;
    color:#fff;

    border-radius:14px;
}

.enom-yuboto-extra-cta h3{
    margin:0 0 7px;
    font-size:21px;
    color:#fff;
}

.enom-yuboto-extra-cta p{
    max-width:680px;
    margin:0;
    line-height:1.55;
    color:rgba(255,255,255,.76);
}

.enom-yuboto-extra-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    flex:0 0 auto;
}

.enom-yuboto-extra-cta .btn.outline{
    color:#fff;
    border-color:rgba(255,255,255,.42);
}


@media(max-width:1000px){

    .enom-yuboto-extra-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .enom-yuboto-extra-cta{
        align-items:flex-start;
        flex-direction:column;
    }

}


@media(max-width:650px){

    .enom-yuboto-extra{
        padding:36px 0 42px;
    }

    .enom-yuboto-extra-head{
        margin-bottom:22px;
    }

    .enom-yuboto-extra-head h2{
        font-size:27px;
    }

    .enom-yuboto-extra-grid{
        grid-template-columns:1fr;
        gap:13px;
    }

    .enom-yuboto-extra-card{
        padding:18px 16px;
    }

    .enom-yuboto-extra-cta{
        margin-top:18px;
        padding:20px 17px;
    }

    .enom-yuboto-extra-actions{
        width:100%;
    }

    .enom-yuboto-extra-actions .btn{
        width:100%;
        box-sizing:border-box;
        text-align:center;
    }

}



/* =========================================================
   ENOM TELEPHONY HERO FINAL CLEAN V1
   ========================================================= */

@media (min-width:901px){

    /* No generic section padding under the hero */
    body.page-id-146 main > section.telephony-hero.telephony-hero-v2,
    body.page-id-147 main > section.telephony-hero.telephony-hero-v2{
        padding:0 !important;
        min-height:0 !important;
        overflow:hidden !important;
    }


    /* Slightly shorter hero */
    body.page-id-146 .telephony-hero-grid,
    body.page-id-147 .telephony-hero-grid{
        grid-template-columns:
            minmax(0,1.1fr)
            minmax(330px,.9fr) !important;

        gap:38px !important;

        min-height:490px !important;
        height:490px !important;

        align-items:stretch !important;
    }


    /* Compact left side */
    body.page-id-146 .telephony-hero-copy,
    body.page-id-147 .telephony-hero-copy{
        padding:24px 0 20px !important;
        justify-content:center !important;
    }


    body.page-id-146 .telephony-hero-v2 h1,
    body.page-id-147 .telephony-hero-v2 h1{
        font-size:clamp(40px,3.5vw,54px) !important;
        line-height:1 !important;
        margin-bottom:12px !important;
    }


    body.page-id-146 .telephony-hero-v2 .telephony-lead,
    body.page-id-147 .telephony-hero-v2 .telephony-lead{
        font-size:16px !important;
        line-height:1.5 !important;
    }


    body.page-id-146 .telephony-partner-panel,
    body.page-id-147 .telephony-partner-panel{
        margin-top:14px !important;
        padding:9px 14px !important;
    }


    body.page-id-146 .telephony-hero-v2 .hero-buttons,
    body.page-id-147 .telephony-hero-v2 .hero-buttons{
        margin-top:10px !important;
    }


    body.page-id-146 .telephony-hero-usps,
    body.page-id-147 .telephony-hero-usps{
        margin-top:12px !important;
        gap:18px !important;
    }


    /* Right column reaches the exact bottom of hero */
    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        position:relative !important;

        min-height:490px !important;
        height:490px !important;

        padding:0 !important;
        margin:0 !important;

        align-self:stretch !important;
        overflow:visible !important;
    }


    /*
     * Woman anchored to the actual bottom edge.
     * -8px removes the tiny transparent bottom edge of the PNG.
     */
    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        position:absolute !important;

        left:50% !important;
        right:auto !important;
        top:auto !important;
        bottom:-8px !important;

        transform:translateX(-50%) !important;

        width:auto !important;
        height:440px !important;

        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;

        object-fit:contain !important;
        object-position:center bottom !important;
    }


    body.page-id-146 .telephony-visual-chip,
    body.page-id-147 .telephony-visual-chip{
        bottom:22px !important;
    }

}


/* ==================================================
   TELEPHONY WOMAN - ORIGINAL SIZE + BOTTOM ALIGN
   ================================================== */

@media (min-width:901px){

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        position:absolute !important;

        left:50% !important;
        right:auto !important;
        top:auto !important;
        bottom:-8px !important;

        transform:translateX(-50%) !important;

        width:355px !important;
        height:auto !important;

        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;
    }
}


/* ==================================================
   TELEPHONY WOMAN - ORIGINAL SIZE + BOTTOM ALIGN
   ================================================== */

@media (min-width:901px){

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        position:absolute !important;

        left:50% !important;
        right:auto !important;
        top:auto !important;
        bottom:-8px !important;

        transform:translateX(-50%) !important;

        width:355px !important;
        height:auto !important;

        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;
    }
}


/* ==================================================
   TELEPHONY HERO - OVERRIDE GLOBAL HERO SPACING
   ================================================== */

body.page-id-146:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
main > section.telephony-hero.telephony-hero-v2,

body.page-id-147:not(.woocommerce-cart):not(.woocommerce-checkout):not(.woocommerce-account):not(.single-product)
main > section.telephony-hero.telephony-hero-v2{
    padding-top:0 !important;
    padding-bottom:0 !important;
}


/* Woman stays full size and sits on hero bottom */
@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        align-items:flex-end !important;
        padding-bottom:0 !important;
        margin-bottom:0 !important;
    }

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        width:355px !important;
        height:auto !important;
        max-width:none !important;
        max-height:none !important;

        margin-bottom:0 !important;
        transform:none !important;

        position:relative !important;
        top:auto !important;
        bottom:0 !important;
    }
}


/* TELEPHONY WOMAN - BOTTOM + LEFT POSITION */

@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        padding-bottom:0 !important;
        margin-bottom:0 !important;
        align-items:flex-end !important;
    }

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        padding-bottom:0 !important;
        margin-bottom:0 !important;

        position:relative !important;
        left:-30px !important;
        right:auto !important;
        bottom:0 !important;

        transform:none !important;
    }

}


/* TELEPHONY WOMAN - BOTTOM + LEFT POSITION */

@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        padding-bottom:0 !important;
        margin-bottom:0 !important;
        align-items:flex-end !important;
    }

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        padding-bottom:0 !important;
        margin-bottom:0 !important;

        position:relative !important;
        left:-30px !important;
        right:auto !important;
        bottom:0 !important;

        transform:none !important;
    }

}


/* TELEPHONY - CENTER WOMAN WITH CLOUD VPBX CHIP */

@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        position:relative !important;
        justify-content:center !important;
    }

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        left:auto !important;
        right:auto !important;
        margin-left:auto !important;
        margin-right:auto !important;
        transform:none !important;
    }

    body.page-id-146 .telephony-visual-chip,
    body.page-id-147 .telephony-visual-chip{
        left:50% !important;
        right:auto !important;
        transform:translateX(-50%) !important;
    }
}


/* ==================================================
   TELEPHONY VISUAL - WOMAN + VPBX SAME CENTER AXIS
   ================================================== */

@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        position:relative !important;

        display:grid !important;
        grid-template-columns:1fr !important;
        grid-template-rows:1fr !important;

        justify-items:center !important;
        align-items:end !important;

        padding-bottom:0 !important;
        margin-bottom:0 !important;
    }


    body.page-id-146 .telephony-visual-glow,
    body.page-id-147 .telephony-visual-glow{
        grid-column:1 !important;
        grid-row:1 !important;

        justify-self:center !important;
        align-self:end !important;
    }


    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        grid-column:1 !important;
        grid-row:1 !important;

        justify-self:center !important;
        align-self:end !important;

        position:relative !important;

        left:auto !important;
        right:auto !important;
        top:auto !important;
        bottom:auto !important;

        transform:none !important;

        width:355px !important;
        height:auto !important;

        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;

        z-index:2 !important;
    }


    body.page-id-146 .telephony-visual-chip,
    body.page-id-147 .telephony-visual-chip{
        grid-column:1 !important;
        grid-row:1 !important;

        justify-self:center !important;
        align-self:end !important;

        position:relative !important;

        left:auto !important;
        right:auto !important;
        top:auto !important;
        bottom:auto !important;

        transform:none !important;

        margin:0 0 22px 0 !important;

        z-index:4 !important;
    }

}


/* ==================================================
   TELEPHONY VISUAL FINAL ALIGNMENT
   Woman + Cloud chip centered, glow visible
   ================================================== */

@media (min-width:901px){

    body.page-id-146 .telephony-hero-visual,
    body.page-id-147 .telephony-hero-visual{
        position:relative !important;

        display:flex !important;
        align-items:flex-end !important;
        justify-content:center !important;

        padding-bottom:0 !important;
    }

    /* Woman */
    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        position:relative !important;

        left:auto !important;
        right:auto !important;
        top:auto !important;
        bottom:auto !important;

        transform:none !important;

        width:355px !important;
        height:auto !important;

        max-width:none !important;
        max-height:none !important;

        margin:0 !important;
        padding:0 !important;

        z-index:2 !important;
    }

    /* Background glow */
    body.page-id-146 .telephony-visual-glow,
    body.page-id-147 .telephony-visual-glow{
        position:absolute !important;

        left:50% !important;
        right:auto !important;

        transform:translateX(-50%) !important;

        bottom:10px !important;

        z-index:0 !important;
        display:block !important;
    }

    /* Cloud VPBX · SIP · VoIP */
    body.page-id-146 .telephony-visual-chip,
    body.page-id-147 .telephony-visual-chip{
        position:absolute !important;

        left:50% !important;
        right:auto !important;

        transform:translateX(-50%) !important;

        bottom:24px !important;

        margin:0 !important;

        z-index:5 !important;
        display:flex !important;
        visibility:visible !important;
        opacity:1 !important;
    }

}


/* TELEPHONY WOMAN - MOVE DOWN ONLY */

@media (min-width:901px){

    body.page-id-146 .enom-telephony-visual-img,
    body.page-id-147 .enom-telephony-visual-img{
        transform:translateY(90px) !important;
    }

}


/* TELEPHONY VPBX CHIP - FINAL POSITION ONLY */
@media (min-width:901px){

    body.page-id-146 .telephony-visual-chip,
    body.page-id-147 .telephony-visual-chip{
        left:calc(50% - 12px) !important;
        right:auto !important;
        bottom:38px !important;
        transform:translateX(-50%) !important;
    }

}

/* =========================================================
   ENOM HIRING BADGE V1
   ========================================================= */

.enom-hiring-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:max-content;
    margin-top:14px;
    margin-bottom:4px;
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:999px;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    color:#fff;
    font-size:12px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    text-decoration:none;
    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease;
}

.enom-hiring-badge:hover{
    transform:translateY(-1px);
    background:rgba(255,255,255,.14);
    border-color:rgba(255,255,255,.42);
    color:#fff;
}

.enom-hiring-dot{
    width:7px;
    height:7px;
    flex:0 0 7px;
    border-radius:50%;
    background:#6ee7a8;
    box-shadow:0 0 0 4px rgba(110,231,168,.12);
}

@media (max-width:700px){
    .enom-hiring-badge{
        margin-top:12px;
        padding:7px 11px;
        font-size:11px;
    }
}


/* =========================================================
   ENOM CAREERS PAGE V1
   ========================================================= */

.enom-careers-hero{
    padding:72px 0 68px;
    background:
        radial-gradient(circle at 82% 20%,rgba(54,102,180,.28),transparent 34%),
        linear-gradient(135deg,#07111d 0%,#0d1d30 52%,#111827 100%);
    color:#fff;
}

.enom-careers-hero .container{
    max-width:1100px;
}

.enom-careers-kicker{
    display:block;
    margin-bottom:14px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    opacity:.72;
}

.enom-careers-hero h1{
    max-width:820px;
    margin:0 0 18px;
    font-size:46px;
    line-height:1.08;
    color:#fff;
}

.enom-careers-hero p{
    max-width:780px;
    margin:0;
    font-size:18px;
    line-height:1.7;
    color:rgba(255,255,255,.82);
}

.enom-careers-section{
    padding:58px 0 64px;
}

.enom-careers-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
}

.enom-careers-card{
    padding:30px;
    border:1px solid #e4e9ef;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 30px rgba(15,23,42,.05);
}

.enom-careers-card > span{
    display:inline-block;
    margin-bottom:18px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    color:#65758b;
}

.enom-careers-card h2{
    margin:0 0 12px;
    font-size:23px;
}

.enom-careers-card p{
    margin:0;
    line-height:1.72;
    color:#536171;
}

.enom-careers-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:28px;
    padding:34px;
    border-radius:18px;
    background:#0d1725;
    color:#fff;
}

.enom-careers-cta span{
    display:block;
    margin-bottom:8px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    opacity:.65;
}

.enom-careers-cta h2{
    margin:0 0 10px;
    font-size:26px;
    color:#fff;
}

.enom-careers-cta p{
    max-width:700px;
    margin:0;
    color:rgba(255,255,255,.72);
}

.enom-careers-cta .btn{
    white-space:nowrap;
}

@media (max-width:800px){

    .enom-careers-hero{
        padding:54px 0;
    }

    .enom-careers-hero h1{
        font-size:34px;
    }

    .enom-careers-grid{
        grid-template-columns:1fr;
    }

    .enom-careers-cta{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media (max-width:520px){

    .enom-careers-hero h1{
        font-size:29px;
    }

    .enom-careers-hero p{
        font-size:16px;
    }

    .enom-careers-card,
    .enom-careers-cta{
        padding:24px;
    }
}

