/* Concern detail page v2 — clean editorial corporate system. */
.concern-page-modern{
    --concern-ink:#071a28;
    --concern-blue:#0877b2;
    --concern-sky:#72d2fb;
    --concern-red:#d82d35;
    --concern-mist:#f3f8fb;
    --concern-line:rgba(7,31,48,.10);
    background:#fff;
    color:var(--concern-ink);
}

/* Hero */
.concern-page-modern .concern-hero{
    min-height:clamp(560px,70vh,700px);
    background:#051824;
}
.concern-page-modern .concern-hero-media{
    inset:-1.5%;
    transform:scale(1.025);
    filter:saturate(.95) contrast(1.03);
}
.concern-page-modern .concern-hero-shade{
    background:
        linear-gradient(92deg,rgba(3,17,28,.91) 0%,rgba(3,17,28,.82) 30%,rgba(3,17,28,.52) 55%,rgba(3,17,28,.18) 82%,rgba(3,17,28,.08) 100%),
        linear-gradient(0deg,rgba(2,14,23,.48),rgba(2,14,23,.03) 58%);
}
.concern-page-modern .concern-hero:before{
    opacity:.18;
    background-size:110px 110px;
}
.concern-page-modern .concern-hero:after{
    height:3px;
    background:linear-gradient(90deg,var(--concern-blue) 0 88%,var(--concern-red) 88%);
    box-shadow:none;
}
.concern-page-modern .concern-hero-inner{
    padding-top:34px;
    padding-bottom:76px;
}
.concern-page-modern .concern-back{
    min-height:40px;
    padding:0 15px;
    border-color:rgba(255,255,255,.20);
    background:rgba(4,21,32,.24);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.concern-page-modern .concern-hero-stage{
    padding:44px 0 26px;
    align-items:center;
}
.concern-page-modern .concern-hero-copy{
    width:min(900px,78%);
}
.concern-page-modern .concern-hero-brandmark{
    max-width:min(270px,34vw);
    margin:0 0 24px;
    padding:0;
}
.concern-page-modern .concern-hero-brandmark-glow,
.concern-page-modern .concern-hero-brandmark:after{display:none}
.concern-page-modern .concern-hero-brandmark img{
    max-height:78px;
    filter:drop-shadow(0 8px 20px rgba(0,0,0,.28));
}
.concern-page-modern .concern-hero-eyebrow{
    gap:12px;
    margin-bottom:18px;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
}
.concern-page-modern .concern-hero-eyebrow>span{
    width:48px;
    height:1px;
    border-radius:0;
    background:linear-gradient(90deg,#92defd,rgba(146,222,253,.18));
    box-shadow:none;
}
.concern-page-modern .concern-hero-eyebrow h2{
    font-size:11px;
    letter-spacing:.25em;
    color:#bfe9fb;
}
.concern-page-modern .concern-hero h1{
    max-width:15ch;
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(58px,6.2vw,92px);
    font-weight:600;
    line-height:.94;
    letter-spacing:-.045em;
    text-wrap:balance;
    text-shadow:0 12px 38px rgba(0,0,0,.22);
}
.concern-page-modern .concern-hero .concern-hero-summary{
    max-width:720px;
    margin-top:24px;
    padding:0;
    border-left:0;
    color:rgba(239,248,252,.87);
    font-size:clamp(16px,1.3vw,19px);
    line-height:1.75;
}
.concern-page-modern .concern-hero-bottomline{display:none}

/* Facts: floating, readable and compact. */
.concern-page-modern .concern-facts{
    position:relative;
    z-index:5;
    margin-top:-48px;
    padding:0 0 62px;
    border:0;
    background:linear-gradient(180deg,#eef6fa 0%,#f9fbfc 100%);
}
.concern-page-modern>.concern-facts:first-child{margin-top:0;padding-top:52px}
.concern-page-modern .concern-facts-grid.dynamic-facts{
    overflow:hidden;
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
    border:1px solid rgba(8,56,83,.08);
    border-radius:24px;
    background:rgba(255,255,255,.96);
    box-shadow:0 26px 60px rgba(7,35,53,.11);
}
.concern-page-modern .concern-facts-grid.dynamic-facts>div{
    position:relative;
    min-height:122px;
    padding:26px 28px;
    border:0;
    border-right:1px solid rgba(8,56,83,.09);
    border-bottom:0;
}
.concern-page-modern .concern-facts-grid.dynamic-facts>div:last-child{border-right:0}
.concern-page-modern .concern-facts small{
    margin-bottom:10px;
    color:#6e8390;
    font-size:9px;
    letter-spacing:.17em;
}
.concern-page-modern .concern-facts strong{
    color:#082033;
    font-size:clamp(19px,1.8vw,26px);
    line-height:1.2;
}

/* Shared section rhythm */
.concern-page-modern .concern-section{padding:104px 0}
.concern-page-modern .concern-kicker{
    position:relative;
    padding-left:54px;
    color:var(--concern-blue);
    font-size:11px;
    letter-spacing:.22em;
}
.concern-page-modern .concern-kicker:before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:38px;
    height:1px;
    background:currentColor;
    opacity:.6;
}
.concern-page-modern .concern-kicker.light{color:#9adfff}

/* About */
.concern-page-modern .concern-about{
    position:relative;
    background:linear-gradient(180deg,#f9fbfc 0%,#f1f7fa 100%);
}
.concern-page-modern .concern-about:before{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    right:-210px;
    top:10%;
    border-radius:50%;
    background:radial-gradient(circle,rgba(91,194,235,.11),rgba(91,194,235,0) 70%);
    pointer-events:none;
}
.concern-page-modern .concern-about-grid{
    gap:clamp(50px,7vw,92px);
}
.concern-page-modern .concern-about-grid.has-media{
    grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
}
.concern-page-modern .concern-section-copy{
    position:relative;
    z-index:1;
}
.concern-page-modern .concern-section-copy .rich-content{
    margin-top:28px;
}
.concern-page-modern .concern-section-copy p{
    max-width:780px;
    margin:0 0 18px;
    color:#405663;
    font-size:18px;
    line-height:1.9;
}
.concern-page-modern .concern-about figure{
    margin:0;
    overflow:hidden;
    border-radius:28px;
    background:#dce9ef;
    box-shadow:0 28px 64px rgba(8,45,67,.14);
}
.concern-page-modern .concern-about figure:before{display:none}
.concern-page-modern .concern-about figure img{
    border-radius:28px;
    box-shadow:none;
}

/* Services */
.concern-page-modern .concern-services{
    background:#fff;
}
.concern-page-modern .concern-section-heading{margin-bottom:36px}
.concern-page-modern .concern-service-grid{
    counter-reset:concern-service;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    border:0;
}
.concern-page-modern .concern-service-grid article{
    counter-increment:concern-service;
    position:relative;
    min-height:210px;
    padding:30px;
    overflow:hidden;
    border:1px solid rgba(8,52,77,.09);
    border-radius:22px;
    background:linear-gradient(180deg,#fff,#f7fafc);
    box-shadow:0 14px 38px rgba(8,41,61,.055);
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.concern-page-modern .concern-service-grid article:before{
    content:counter(concern-service,decimal-leading-zero);
    display:block;
    margin-bottom:52px;
    color:#8ca0ac;
    font:700 10px/1 'DM Sans',sans-serif;
    letter-spacing:.16em;
}
.concern-page-modern .concern-service-grid article:after{
    content:"";
    position:absolute;
    right:-42px;
    bottom:-42px;
    width:120px;
    height:120px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(92,193,235,.14),rgba(92,193,235,0) 68%);
}
.concern-page-modern .concern-service-grid article:hover{
    transform:translateY(-5px);
    border-color:rgba(8,119,178,.23);
    background:#fff;
    box-shadow:0 22px 50px rgba(8,41,61,.10);
}
.concern-page-modern .concern-service-icon{
    position:absolute;
    top:24px;
    right:26px;
    margin:0;
    color:var(--concern-blue);
    font-size:18px;
}
.concern-page-modern .concern-service-grid h3{
    max-width:290px;
    font-size:20px;
    line-height:1.42;
}

/* Additional services */
.concern-page-modern .concern-additional{
    padding-top:88px;
    padding-bottom:88px;
    background:linear-gradient(135deg,#ecf4f8,#f8fbfc 58%,#eef7fa);
}
.concern-page-modern .concern-additional-grid{
    grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);
    gap:60px;
    align-items:start;
}
.concern-page-modern .concern-additional ul{
    gap:12px;
}
.concern-page-modern .concern-additional li{
    min-height:58px;
    display:flex;
    align-items:center;
    padding:15px 20px 15px 42px;
    border:1px solid rgba(8,63,91,.08);
    border-radius:14px;
    background:rgba(255,255,255,.75);
    color:#294451;
    box-shadow:0 8px 24px rgba(8,45,68,.035);
}
.concern-page-modern .concern-additional li:before{
    left:20px;
    top:50%;
    width:7px;
    height:7px;
    transform:translateY(-50%);
    background:var(--concern-blue);
}

/* Commitment */
.concern-page-modern .concern-commitment{
    position:relative;
    overflow:hidden;
    background:linear-gradient(125deg,#061824 0%,#07283a 60%,#084b68 100%);
}
.concern-page-modern .concern-commitment:before{
    content:"";
    position:absolute;
    width:560px;
    height:560px;
    right:-220px;
    top:-260px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(90,201,242,.16),rgba(90,201,242,0) 68%);
}
.concern-page-modern .concern-commitment-grid{
    position:relative;
    z-index:1;
    grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);
    gap:70px;
}
.concern-page-modern .concern-commitment p{
    max-width:900px;
    color:rgba(240,249,253,.9);
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(29px,3vw,44px);
    font-weight:600;
    line-height:1.35;
    letter-spacing:-.025em;
}

/* Custom CMS sections */
.concern-page-modern .concern-custom{background:#fff}
.concern-page-modern .concern-custom-alt{background:linear-gradient(180deg,#f6fafc,#eef5f8)}
.concern-page-modern .concern-custom-grid{
    gap:clamp(48px,6vw,82px);
}
.concern-page-modern .concern-custom-grid.has-media{
    grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);
}
.concern-page-modern .concern-custom-grid figure{
    overflow:hidden;
    border-radius:26px;
    background:#e5eef2;
    box-shadow:0 26px 60px rgba(7,38,57,.11);
}
.concern-page-modern .concern-custom-grid figure img{
    border-radius:26px;
    box-shadow:none;
}
.concern-page-modern .concern-custom-copy h2{
    max-width:760px;
    margin-top:18px;
    color:#0a2232;
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(38px,4.6vw,62px);
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.04em;
}
.concern-page-modern .concern-custom-copy .rich-content{margin-top:24px}

/* CTA */
.concern-page-modern .concern-cta{
    position:relative;
    padding:96px 0;
    background:linear-gradient(120deg,#0877b2 0%,#075d8d 48%,#06334c 100%);
}
.concern-page-modern .concern-cta:before{
    width:520px;
    height:520px;
    right:-180px;
    top:-260px;
    border-color:rgba(255,255,255,.10);
    box-shadow:0 0 0 72px rgba(255,255,255,.018),0 0 0 145px rgba(255,255,255,.012);
}
.concern-page-modern .concern-cta:after{
    content:"";
    position:absolute;
    left:-170px;
    bottom:-270px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(112,215,255,.18),rgba(112,215,255,0) 68%);
}
.concern-page-modern .concern-cta-inner{max-width:980px}
.concern-page-modern .concern-cta-inner>span{color:#c5edff;letter-spacing:.22em}
.concern-page-modern .concern-cta h2{
    max-width:850px;
    font-family:'Cormorant Garamond',serif;
    font-size:clamp(42px,5.5vw,72px);
    font-weight:600;
    line-height:1;
    letter-spacing:-.04em;
}
.concern-page-modern .concern-cta p{font-size:17px;line-height:1.75}
.concern-page-modern .concern-cta .light-button{
    min-height:50px;
    padding:0 22px;
    border-radius:999px;
    box-shadow:0 14px 30px rgba(0,0,0,.12);
}
.concern-page-modern .concern-website-link{padding:8px 0}

@media(max-width:980px){
    .concern-page-modern .concern-hero{min-height:590px}
    .concern-page-modern .concern-hero-copy{width:min(780px,92%)}
    .concern-page-modern .concern-hero h1{font-size:clamp(52px,9vw,74px)}
    .concern-page-modern .concern-facts{margin-top:-36px;padding-bottom:50px}
    .concern-page-modern .concern-facts-grid.dynamic-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
    .concern-page-modern .concern-facts-grid.dynamic-facts>div{border-bottom:1px solid rgba(8,56,83,.08)}
    .concern-page-modern .concern-about-grid.has-media,
    .concern-page-modern .concern-custom-grid.has-media{grid-template-columns:1fr;gap:42px}
    .concern-page-modern .concern-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .concern-page-modern .concern-additional-grid,
    .concern-page-modern .concern-commitment-grid{grid-template-columns:1fr;gap:34px}
}

@media(max-width:640px){
    .concern-page-modern .concern-hero{min-height:530px}
    .concern-page-modern .concern-hero-inner{padding-top:20px;padding-bottom:58px}
    .concern-page-modern .concern-hero-stage{padding:36px 0 18px}
    .concern-page-modern .concern-hero-brandmark{max-width:160px;margin-bottom:18px}
    .concern-page-modern .concern-hero-brandmark img{max-height:52px}
    .concern-page-modern .concern-hero-eyebrow>span{width:34px}
    .concern-page-modern .concern-hero h1{max-width:12ch;font-size:clamp(42px,13vw,58px)}
    .concern-page-modern .concern-hero .concern-hero-summary{margin-top:18px;font-size:15px;line-height:1.65}
    .concern-page-modern .concern-facts{margin-top:-28px;padding-bottom:38px}
    .concern-page-modern .concern-facts-grid.dynamic-facts{grid-template-columns:1fr;border-radius:18px}
    .concern-page-modern .concern-facts-grid.dynamic-facts>div{min-height:94px;padding:20px 22px;border-right:0}
    .concern-page-modern .concern-section{padding:72px 0}
    .concern-page-modern .concern-kicker{padding-left:42px;font-size:10px}
    .concern-page-modern .concern-kicker:before{width:28px}
    .concern-page-modern .concern-section-copy p{font-size:16px;line-height:1.8}
    .concern-page-modern .concern-about figure,
    .concern-page-modern .concern-custom-grid figure{border-radius:20px}
    .concern-page-modern .concern-about figure img,
    .concern-page-modern .concern-custom-grid figure img{border-radius:20px}
    .concern-page-modern .concern-service-grid{grid-template-columns:1fr;gap:12px}
    .concern-page-modern .concern-service-grid article{min-height:168px;padding:24px;border-radius:18px}
    .concern-page-modern .concern-service-grid article:before{margin-bottom:34px}
    .concern-page-modern .concern-additional{padding-top:66px;padding-bottom:66px}
    .concern-page-modern .concern-additional ul{grid-template-columns:1fr}
    .concern-page-modern .concern-additional li{min-height:54px}
    .concern-page-modern .concern-commitment p{font-size:clamp(27px,8vw,36px)}
    .concern-page-modern .concern-custom-copy h2{font-size:clamp(34px,10vw,48px)}
    .concern-page-modern .concern-cta{padding:72px 0}
    .concern-page-modern .concern-cta h2{font-size:clamp(38px,11vw,54px)}
}

@media(prefers-reduced-motion:reduce){
    .concern-page-modern .concern-service-grid article{transition:none}
}
