/* Miyamoto QA pass — strictly scoped refinements; locked animations preserved. */
/* Correct only alignment of Home CTA: do not touch hover, color or arrow behavior. */
body:not(.inner-page) .round-link {
    display:inline-flex;
    align-items:center;
    vertical-align:middle;
    gap:25px;
    line-height:1.2;
}
body:not(.inner-page) .round-link > span {
    flex:0 0 44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    line-height:1;
    vertical-align:middle;
}
/* Prevent over-wide Conversation CTA; preserve square corners. */
#contact a.contact-large[href^="mailto:"] {
    display:inline-flex!important;
    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;
    align-self:flex-start!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    padding:20px 26px!important;
    border-radius:0!important;
    white-space:normal!important;
}
#contact a.contact-large[href^="mailto:"]:hover,#contact a.contact-large[href^="mailto:"]:focus-visible {
    padding:20px 26px!important;
}
a.miya-conversation-btn {
    width:max-content!important;
    max-width:100%!important;
    border-radius:0!important;
}
/* Ice Blue contrast on the four core commitments (not other themes). */
body.ice-blue .value-grid {
    background:#DDF7FF!important;
    color:#102C46!important;
}
body.ice-blue .value-grid article {
    border-color:#A5CFDE!important;
}
body.ice-blue .value-grid h3 {
    color:#102C46!important;
}
body.ice-blue .value-grid p {
    color:#36556A!important;
}
body.ice-blue .value-grid small {
    color:#075D9C!important;
}
/* Readability for alternate page variants with blue backgrounds. */
body.ice-blue .why-grid p,body.ice-blue .process-card p {
    color:#36556A;
}
/* Project listing: reserve independent room for arrow and allow long names to wrap. */
.project-card .project-meta {
    min-width:0;
    gap:14px;
}
.project-card .project-meta h3 {
    min-width:0;
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
    line-height:1.22;
}
.project-card .project-meta .arrow,.project-card .project-meta > span:last-child {
    flex-shrink:0;
}
/* Header logo and navigation must never overlap. */
@media(min-width:801px) {
    #header .brand {
        flex-shrink:0;
    }
    #header #nav {
        min-width:0;
    }
    #header #nav a {
        white-space:nowrap;
    }
}
/* Smooth transitions ONLY for already-approved detail page bottom CTA. */
.inner-page .detail-navigation .round-link > span {
    transition:background-color .36s cubic-bezier(.22,1,.36,1),color .36s cubic-bezier(.22,1,.36,1),border-color .36s cubic-bezier(.22,1,.36,1)!important;
}
/* Ensure direct email links receive clicks even within decorated containers. */
a[href^="mailto:"] {
    pointer-events:auto;
    cursor:pointer;
}
@media(max-width:700px) {
    #contact a.contact-large[href^="mailto:"] {
        padding:17px 20px!important;
    }
    #contact a.contact-large[href^="mailto:"]:hover {
        padding:17px 20px!important;
    }
}
