/*
Theme Name: Ryarc Enterprise
Description: Approved CampaignManager website, with section-based page editing and native WordPress articles. Staging release.
Version: 0.1.1
Author: Ryarc
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: ryarc-enterprise
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
.admin-bar .masthead{top:32px}
.wp-post-body{max-width:780px;margin:0 auto;padding:40px 24px 80px;line-height:1.75}
.wp-post-body img{max-width:100%;height:auto}
.wp-post-body h2,.wp-post-body h3{margin-top:1.5em}
.wp-post-body a{text-decoration:underline}
.wp-post-body figure{margin:24px 0}
.wp-post-body .wp-block-image img{height:auto}
.wp-post-cover{max-width:900px;margin:0 auto;padding:0 24px}
.wp-post-cover img{width:100%;max-height:480px;object-fit:contain}
.wp-pagination{display:flex;gap:16px;flex-wrap:wrap;padding:24px 0}
@media(max-width:782px){.admin-bar .masthead{top:46px}}
@media(max-width:600px){.admin-bar .masthead{top:0}}
/* Single blog post layout */
.single-post-layout{
    max-width:1200px;
    margin:0 auto;
    padding:0 24px 80px;
    display:grid;
    grid-template-columns:minmax(0, 1fr) 300px;
    gap:64px;
    align-items:start;
}

.single-post-main{
    min-width:0;
}

.single-post-layout .wp-post-cover{
    max-width:none;
    padding:0;
    margin:0 0 32px;
}

.single-post-layout .wp-post-body{
    max-width:none;
    margin:0;
    padding:0;
    line-height:1.75;
}

.single-post-sidebar{
    border-left:1px solid #d9dee3;
    padding-left:28px;
}

.single-post-sidebar h2{
    margin:0 0 24px;
    font-size:1.25rem;
}

.recent-post-card{
    display:block;
    margin-bottom:28px;
    color:inherit;
    text-decoration:none;
}

.recent-post-image{
    margin-bottom:10px;
    aspect-ratio:16/9;
    overflow:hidden;
}

.recent-post-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.recent-post-title{
    font-weight:600;
    line-height:1.35;
}

.post-navigation{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:32px;
    margin-top:48px;
    padding:24px 0;
    border-top:1px solid #d9dee3;
    border-bottom:1px solid #d9dee3;
}

.post-navigation-next{
    text-align:right;
}

.back-to-blog{
    margin-top:24px;
}

@media(max-width:900px){
    .single-post-layout{
        grid-template-columns:1fr;
        gap:48px;
    }

    .single-post-sidebar{
        border-left:0;
        border-top:1px solid #d9dee3;
        padding-left:0;
        padding-top:32px;
    }

    .single-post-sidebar{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:24px;
    }

    .single-post-sidebar h2{
        grid-column:1/-1;
    }
}

@media(max-width:600px){
    .single-post-layout{
        padding-left:20px;
        padding-right:20px;
    }

    .single-post-sidebar{
        grid-template-columns:1fr;
    }

    .post-navigation{
        grid-template-columns:1fr;
        gap:16px;
    }

    .post-navigation-next{
        text-align:left;
    }
}

.post-navigation a{
    color:#087dc1;
    font-weight:500;
    text-decoration:none;
}

.post-navigation a:hover{
    text-decoration:underline;
}

/* Blog article typography */
.wp-post-body{
    font-size:1.05rem;
    line-height:1.75;
    color:#4f5f6f;
}

.wp-post-body p{
    margin:0 0 0.9em;
}

.wp-post-body h2{
    font-size:1.55rem;
    line-height:1.3;
    font-weight:500;
    color:#0b1f33;
    margin:1.5em 0 0.65em;
}

.wp-post-body h3{
    font-size:1.08rem;
    line-height:1.4;
    font-weight:600;
    color:#0b1f33;
    margin:1.7em 0 0.45em;
}

.wp-post-body ul,
.wp-post-body ol{
    margin:0 0 1.4em;
    padding-left:1.4em;
}

.wp-post-body li{
    margin-bottom:0.7em;
}

.wp-post-body figure{
    margin:2em 0;
}

.wp-post-body figcaption{
    margin-top:0.65em;
    font-size:0.875rem;
    line-height:1.5;
    color:#6b7785;
}
/* Mobile single-post featured image */
@media(max-width:600px){
    body.single-post .wp-post-cover{
        aspect-ratio:16/9;
        overflow:hidden;
    }

    body.single-post .wp-post-cover img{
        width:100%;
        height:100%;
        max-height:none;
        object-fit:cover;
        display:block;
    }
}
@media(max-width:600px){
    body.single-post .blog-main{
        padding-top:24px;
        padding-bottom:0;
    }

    body.single-post .blog-top{
        margin-bottom:0;
        padding-bottom:20px;
    }

    body.single-post .single-post-layout{
        padding-top:16px;
    }
}
@media(max-width:600px){
    body.single-post .breadcrumb-current{
        display:none;
    }
}
/* =========================================================
   Fluent Forms — Ryarc Contact Form
   ========================================================= */

body .fluentform{
    font-family:'DM Sans',sans-serif;
    color:#142735;
}

/* Labels */
body .fluentform .ff-el-input--label label{
    color:#142735;
    font-weight:500;
}

/* Text fields, email, telephone, select and textarea */
body .fluentform input[type="text"],
body .fluentform input[type="email"],
body .fluentform input[type="tel"],
body .fluentform select,
body .fluentform textarea{
    font:inherit;
    color:#142735;
    background:#fff;
    border:1px solid #d7dfdf;
    border-radius:0;
    box-shadow:none;
}

/* Consistent field height */
body .fluentform input[type="text"],
body .fluentform input[type="email"],
body .fluentform input[type="tel"],
body .fluentform select{
    min-height:44px;
}

/* Focus state */
body .fluentform input:focus,
body .fluentform select:focus,
body .fluentform textarea:focus{
    border-color:#00677d;
    box-shadow:none;
    outline:1px solid #00677d;
    outline-offset:0;
}

/* ---------------------------------------------------------
   "I am a" radio choices
   --------------------------------------------------------- */

body .fluentform .ff-el-form-check{
    display:inline-block;
    margin:0 30px 10px 0;
    vertical-align:middle;
}

body .fluentform .ff-el-form-check label{
    display:inline-flex !important;
    align-items:center;
    gap:8px;
    margin:0 !important;
    white-space:nowrap;
    cursor:pointer;
}

body .fluentform .ff-el-form-check input[type="radio"]{
    position:static !important;
    width:16px;
    height:16px;
    margin:0 !important;
    flex:0 0 16px;
}

/* Mobile */
@media(max-width:600px){
    body .fluentform .ff-el-form-check{
        display:block;
        margin:0 0 10px;
    }

    body .fluentform .ff-el-form-check label{
        display:inline-flex !important;
    }
}
/* Ryarc contact form — Send button */
form.fluent_form_3 .ff-btn-submit:not(.ff_btn_no_style){
    background-color:#75e4e5 !important;
    color:#0b1926 !important;
    border:1px solid #75e4e5 !important;
    border-radius:0 !important;
    padding:12px 22px;
    font-family:'DM Sans',sans-serif;
    font-weight:600;
    line-height:1;
    box-shadow:none !important;
}

form.fluent_form_3 .ff-btn-submit:not(.ff_btn_no_style):hover,
form.fluent_form_3 .ff-btn-submit:not(.ff_btn_no_style):focus{
    background-color:#0b1926 !important;
    color:#fff !important;
    border-color:#0b1926 !important;
    box-shadow:none !important;
}