/*
 * Azores.com island child pages — Rev 2
 * Direct theme path: /wp-content/themes/portugal/css/azores-island-child.css
 * Shared by the modernized child pages for all nine Azores islands.
 */

#body.azores-island-child-page .image-page-header .carousel-content-container { height:310px; }
#body.azores-island-child-page > .carousel { float:none!important; clear:both!important; width:100%; margin-bottom:0!important; }

#body.azores-island-child-page .azc-breadcrumb-strip {
    display:block; clear:both; width:100%; margin:0; padding:10px 0 0; background:transparent;
}
#body.azores-island-child-page .azc-breadcrumbs {
    max-width:1120px; margin:0 auto; padding:10px 14px; background:#fcfcfc; box-sizing:border-box;
}
#body.azores-island-child-page .azc-breadcrumbs ol {
    display:flex; flex-wrap:wrap; align-items:center; margin:0; padding:0; list-style:none;
}
#body.azores-island-child-page .azc-breadcrumbs li {
    display:inline-flex; align-items:center; margin:0; padding:0; color:#596b82; list-style:none;
}
#body.azores-island-child-page .azc-breadcrumbs li + li::before {
    content:"›"; display:inline-block; margin:0 9px; color:#8794a5;
}
#body.azores-island-child-page .azc-breadcrumbs a,
#body.azores-island-child-page .azc-breadcrumbs span { font-size:14px; line-height:1.35; text-decoration:none; }
#body.azores-island-child-page .azc-breadcrumbs a { color:#435a78; font-weight:400; }
#body.azores-island-child-page .azc-breadcrumbs span[aria-current="page"] { color:#3b56c4; font-weight:500; }

#body.azores-island-child-page .azores-island-child-wrapper { max-width:1120px; margin:16px auto 55px; }
#body.azores-island-child-page .azores-island-child-content { background:transparent; border:0; overflow:visible; }
#body.azores-island-child-page .information-content { min-height:0; padding:0; }
#body.azores-island-child-page h1.page-title {
    float:none; margin:0 0 22px; color:#3b7bcd; font-size:38px; font-weight:700; line-height:1.18;
}

#body.azores-island-child-page .azc-content { color:#484848; font-size:16px; line-height:1.65; }
#body.azores-island-child-page .azc-content *,
#body.azores-island-child-page .azc-content *::before,
#body.azores-island-child-page .azc-content *::after { box-sizing:border-box; }

#body.azores-island-child-page .azc-intro,
#body.azores-island-child-page .azc-section {
    margin:0 0 24px; padding:32px; background:#fff; border:1px solid #dedede; border-radius:6px;
    box-shadow:0 3px 14px rgba(0,0,0,.07);
}
#body.azores-island-child-page .azc-eyebrow,
#body.azores-island-child-page .azc-kicker {
    margin:0 0 7px; color:#139a68; font-size:14px; font-weight:700; letter-spacing:.05em; line-height:1.3; text-transform:uppercase;
}
#body.azores-island-child-page .azc-content h2 {
    margin:0 0 14px; color:#3b7bcd; font-size:30px; font-weight:700; line-height:1.22;
}
#body.azores-island-child-page .azc-content h3 {
    margin:0 0 8px; color:#3b7bcd; font-size:20px; font-weight:700; line-height:1.3;
}
#body.azores-island-child-page .azc-content p { margin:0 0 15px; font-size:16px; line-height:1.65; }
#body.azores-island-child-page .azc-content p:last-child { margin-bottom:0; }
#body.azores-island-child-page .azc-lead { color:#343434; font-size:19px; line-height:1.58; }
#body.azores-island-child-page .azc-section-heading { max-width:880px; margin:0 0 22px; }

#body.azores-island-child-page .azc-content a { color:#2f62aa; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px; }
#body.azores-island-child-page .azc-content a:hover,
#body.azores-island-child-page .azc-content a:focus { color:#244fa8; }

#body.azores-island-child-page .azc-family-nav {
    display:flex; flex-wrap:wrap; gap:8px; margin:24px 0 0; padding-top:19px; border-top:1px solid #e4e4e4;
}
#body.azores-island-child-page .azc-family-nav > div { margin:0; padding:0; }
#body.azores-island-child-page .azc-family-nav a {
    display:inline-block; padding:8px 12px; background:#f4f4f2; border:1px solid #dedede; border-radius:4px;
    color:#484848; font-size:14px; font-weight:700; line-height:1.2; text-decoration:none;
}
#body.azores-island-child-page .azc-family-nav a:hover,
#body.azores-island-child-page .azc-family-nav a:focus,
#body.azores-island-child-page .azc-family-nav a[aria-current="page"] {
    background:#eaf0fb; border-color:#b9cae7; color:#2f62aa;
}

#body.azores-island-child-page .azc-fact-grid,
#body.azores-island-child-page .azc-card-grid,
#body.azores-island-child-page .azc-planning-grid {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;
}
#body.azores-island-child-page .azc-fact-grid { margin-top:22px; }
#body.azores-island-child-page .azc-fact,
#body.azores-island-child-page .azc-card,
#body.azores-island-child-page .azc-planning-card {
    min-width:0; margin:0; padding:20px; background:#fafafa; border:1px solid #d9d9d9; border-top:4px solid #139a68; border-radius:5px;
}
#body.azores-island-child-page .azc-fact { border-top-color:#f0c53a; }
#body.azores-island-child-page .azc-planning-card { border-top-color:#3b7bcd; background:#f8fafc; }
#body.azores-island-child-page .azc-fact strong {
    display:block; margin-bottom:5px; color:#3b7bcd; font-size:17px; line-height:1.3;
}
#body.azores-island-child-page .azc-fact span { display:block; color:#555; font-size:15px; line-height:1.5; }
#body.azores-island-child-page .azc-card p,
#body.azores-island-child-page .azc-planning-card p { margin:0; font-size:15px; line-height:1.58; }

#body.azores-island-child-page .azc-image-grid {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:24px;
}
#body.azores-island-child-page .azc-image-grid:has(.azc-figure:only-child) { grid-template-columns:minmax(0,760px); }
#body.azores-island-child-page .azc-figure { margin:0; }
#body.azores-island-child-page .azc-figure img {
    display:block; width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:5px; box-shadow:0 4px 14px rgba(0,0,0,.12);
}
#body.azores-island-child-page .azc-figure figcaption { margin-top:7px; color:#6d6d6d; font-size:12px; line-height:1.4; }

#body.azores-island-child-page .azc-note {
    margin:22px 0 0; padding:18px 20px; background:#f7fbff; border:1px solid #cddded; border-left:4px solid #3b7bcd; border-radius:4px;
}
#body.azores-island-child-page .azc-note strong { color:#334d72; }
#body.azores-island-child-page .azc-note p,
#body.azores-island-child-page .azc-note li { font-size:15px; line-height:1.6; }
#body.azores-island-child-page .azc-note ul { margin:8px 0 0 20px; padding:0; }
#body.azores-island-child-page .azc-note li { margin:0 0 7px; }

#body.azores-island-child-page .azc-checklist { margin:0; padding-left:21px; }
#body.azores-island-child-page .azc-checklist li { margin:0 0 10px; padding-left:3px; }

#body.azores-island-child-page .azc-table-wrap { width:100%; overflow-x:auto; margin-top:18px; -webkit-overflow-scrolling:touch; }
#body.azores-island-child-page .azc-table {
    width:100%; min-width:680px; border-collapse:collapse; background:#fff; font-size:14px; line-height:1.45;
}
#body.azores-island-child-page .azc-table th,
#body.azores-island-child-page .azc-table td { padding:11px 12px; border:1px solid #d9d9d9; text-align:left; vertical-align:top; }
#body.azores-island-child-page .azc-table th { background:#f2f6fb; color:#355f99; font-weight:700; }
#body.azores-island-child-page .azc-source-note { margin-top:12px!important; color:#6a6a6a; font-size:13px!important; }

#body.azores-island-child-page .azc-faq-list { display:grid; gap:11px; }
#body.azores-island-child-page .azc-faq-list details { background:#fff; border:1px solid #d9d9d9; border-radius:5px; }
#body.azores-island-child-page .azc-faq-list summary {
    position:relative; padding:17px 48px 17px 18px; color:#3b7bcd; cursor:pointer; font-size:17px; font-weight:700; line-height:1.35; list-style:none;
}
#body.azores-island-child-page .azc-faq-list summary::-webkit-details-marker { display:none; }
#body.azores-island-child-page .azc-faq-list summary::after {
    content:"+"; position:absolute; top:50%; right:18px; color:#139a68; font-size:25px; line-height:1; transform:translateY(-50%);
}
#body.azores-island-child-page .azc-faq-list details[open] summary::after { content:"−"; }
#body.azores-island-child-page .azc-faq-list details p { padding:0 18px 18px; color:#4c4c4c; font-size:15px; line-height:1.6; }

#body.azores-island-child-page .azc-cta {
    display:flex; align-items:center; justify-content:space-between; gap:28px; margin:0 0 24px; padding:30px 32px; background:#3b7bcd;
    border-radius:6px; box-shadow:0 4px 14px rgba(0,0,0,.12);
}
#body.azores-island-child-page .azc-cta > div:first-child { max-width:650px; }
#body.azores-island-child-page .azc-cta .azc-kicker,
#body.azores-island-child-page .azc-cta h2,
#body.azores-island-child-page .azc-cta p { color:#fff; }
#body.azores-island-child-page .azc-cta h2 { margin-bottom:8px; }
#body.azores-island-child-page .azc-actions { flex:0 0 260px; }
#body.azores-island-child-page .azc-button,
#body.azores-island-child-page .azc-content a.azc-button {
    display:block; width:100%; margin:8px 0 0; padding:11px 16px; background:#fff; border:1px solid #fff; border-radius:4px;
    color:#2f62aa; font-size:15px; font-weight:700; line-height:1.3; text-align:center; text-decoration:none;
}
#body.azores-island-child-page .azc-button:hover,
#body.azores-island-child-page .azc-button:focus,
#body.azores-island-child-page .azc-content a.azc-button:hover,
#body.azores-island-child-page .azc-content a.azc-button:focus { background:#f1f6fd; color:#244fa8; }

#body.azores-island-child-page .azc-content-review {
    margin:0; padding:18px 22px; background:#fff; border:1px solid #dedede; border-radius:5px; color:#666; font-size:14px; line-height:1.5;
}
#body.azores-island-child-page .azc-content-review strong { color:#484848; }

@media screen and (max-width:1140px) {
    #body.azores-island-child-page .azc-breadcrumbs { margin-right:16px; margin-left:16px; }
    #body.azores-island-child-page .azores-island-child-wrapper { margin-right:16px; margin-left:16px; }
}
@media screen and (max-width:900px) {
    #body.azores-island-child-page .azc-fact-grid,
    #body.azores-island-child-page .azc-card-grid,
    #body.azores-island-child-page .azc-planning-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    #body.azores-island-child-page .azc-cta { display:block; }
    #body.azores-island-child-page .azc-actions { max-width:520px; margin-top:20px; }
}
@media screen and (max-width:767px) {
    #body.azores-island-child-page .image-page-header .carousel-content-container { height:190px; }
    #body.azores-island-child-page .azc-breadcrumb-strip { padding-top:8px; }
    #body.azores-island-child-page .azc-breadcrumbs { width:calc(100% - 24px); margin-right:auto; margin-left:auto; padding:9px 10px; }
    #body.azores-island-child-page .azores-island-child-wrapper { margin-top:12px; margin-bottom:35px; }
    #body.azores-island-child-page h1.page-title { margin-bottom:16px; font-size:30px; }
    #body.azores-island-child-page .azc-intro,
    #body.azores-island-child-page .azc-section { padding:23px 19px; }
    #body.azores-island-child-page .azc-content h2 { font-size:26px; }
    #body.azores-island-child-page .azc-lead { font-size:18px; }
    #body.azores-island-child-page .azc-cta { padding:24px 19px; }
}
@media screen and (max-width:600px) {
    #body.azores-island-child-page .azores-island-child-wrapper { margin-right:12px; margin-left:12px; }
    #body.azores-island-child-page .azc-fact-grid,
    #body.azores-island-child-page .azc-card-grid,
    #body.azores-island-child-page .azc-planning-grid,
    #body.azores-island-child-page .azc-image-grid { grid-template-columns:1fr; }
    #body.azores-island-child-page .azc-family-nav { display:block; }
    #body.azores-island-child-page .azc-family-nav > div { margin-bottom:8px; }
    #body.azores-island-child-page .azc-family-nav a { display:block; width:100%; }
}

/* =========================================================
   REV 2 — WORDPRESS GRID/FLEX SAFETY FOR ALL ISLAND CHILD PAGES
   Prevent Classic Editor/wpautop line breaks from becoming
   layout items inside the shared modern components.
   ========================================================= */
#body.azores-island-child-page .azc-family-nav > br,
#body.azores-island-child-page .azc-fact-grid > br,
#body.azores-island-child-page .azc-card-grid > br,
#body.azores-island-child-page .azc-planning-grid > br,
#body.azores-island-child-page .azc-image-grid > br { display:none!important; }

#body.azores-island-child-page .azc-family-nav > p:empty,
#body.azores-island-child-page .azc-fact-grid > p:empty,
#body.azores-island-child-page .azc-card-grid > p:empty,
#body.azores-island-child-page .azc-planning-grid > p:empty,
#body.azores-island-child-page .azc-image-grid > p:empty { display:none!important; }
