/*======================================================================
MANSURGE ABOUT PAGE
Luxury Page Composition
Version : 1.1

Rules
-----
- Page-scoped only.
- Existing MC01 / MC02 / MC09 / MC12 remain untouched globally.
- MF/Common remain the design foundation.
======================================================================*/

.ms-about-page{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 78% 7%,
            rgba(197,165,114,.035),
            transparent 26%
        ),
        var(--ms-bg);
    color:var(--ms-text);
}

/* -------------------------------------------------------------------
01 — HERO
More editorial, quieter than a campaign landing page.
------------------------------------------------------------------- */

.ms-about-page .ms-hero{
    min-height:min(820px,88vh);
    display:flex;
    align-items:center;
    border-bottom:1px solid rgba(197,165,114,.12);
}

.ms-about-page .ms-hero::before{
    background:
        radial-gradient(
            circle at 76% 22%,
            rgba(197,165,114,.09),
            transparent 34%
        ),
        linear-gradient(
            90deg,
            rgba(13,17,17,.15),
            rgba(13,17,17,0)
        );
}

.ms-about-page .ms-hero-inner{
    max-width:720px;
}

.ms-about-page .ms-hero-subtitle{
    background:transparent;
    border-color:rgba(197,165,114,.24);
    padding:9px 16px;
}

.ms-about-page .ms-hero-title{
    max-width:680px;
    text-wrap:balance;
}

.ms-about-page .ms-hero-text{
    max-width:610px;
    color:var(--ms-text-soft);
}

.ms-about-page .ms-hero-placeholder,
.ms-about-page .ms-hero-media img{
    border-radius:clamp(22px,3vw,34px);
}

.ms-about-page .ms-hero-placeholder{
    border-color:rgba(197,165,114,.20);
    background:
        radial-gradient(
            circle at 28% 18%,
            rgba(197,165,114,.15),
            transparent 40%
        ),
        linear-gradient(
            145deg,
            #161d1d,
            #0d1111 72%
        );
    box-shadow:
        0 34px 90px rgba(0,0,0,.34),
        inset 0 0 0 1px rgba(255,255,255,.015);
}

/* -------------------------------------------------------------------
02 — BRAND STORY
Asymmetric editorial spread.
------------------------------------------------------------------- */

.ms-about-story{
    position:relative;
    padding:clamp(100px,10vw,156px) 0;
    border-bottom:1px solid rgba(197,165,114,.12);
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.006),
            transparent 32%
        );
}

.ms-about-story::before{
    content:"";
    position:absolute;
    left:50%;
    top:0;
    width:1px;
    height:88px;
    background:linear-gradient(
        180deg,
        rgba(197,165,114,.55),
        transparent
    );
    opacity:.38;
}

.ms-about-story-grid{
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);
    gap:clamp(70px,8vw,128px);
    align-items:center;
}

.ms-about-story-content{
    max-width:650px;
}

.ms-about-story-content .ms-caption{
    margin-bottom:22px;
}

.ms-about-story-content .ms-h2{
    max-width:560px;
    margin-bottom:34px;
    text-wrap:balance;
}

.ms-about-story-copy{
    display:grid;
    gap:24px;
    color:var(--ms-text-soft);
}

.ms-about-story-copy p{
    margin:0;
}

.ms-about-story-copy p:first-child{
    color:var(--ms-text);
    font-size:clamp(18px,1.55vw,20px);
}

.ms-about-story-media{
    position:relative;
    min-height:620px;
    border:1px solid rgba(197,165,114,.18);
    border-radius:clamp(24px,3vw,34px);
    overflow:hidden;
    background:
        radial-gradient(
            circle at 32% 22%,
            rgba(197,165,114,.12),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #171e1e,
            #0e1313 76%
        );
    box-shadow:0 36px 90px rgba(0,0,0,.32);
}

.ms-about-story-media::after{
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(197,165,114,.10);
    border-radius:calc(clamp(24px,3vw,34px) - 10px);
    pointer-events:none;
}

.ms-about-story-media img{
    width:100%;
    height:100%;
    min-height:620px;
    object-fit:cover;
    object-position:center;
    filter:saturate(.82) contrast(1.04);
    transition:transform .7s ease,filter .7s ease;
}

.ms-about-story-media:hover img{
    transform:scale(1.025);
    filter:saturate(.92) contrast(1.05);
}

.ms-about-story-mark{
    font-size:clamp(110px,15vw,210px);
    font-weight:var(--ms-fw-bold);
    line-height:1;
    color:var(--ms-gold);
    opacity:.12;
    letter-spacing:-.06em;
}

/* -------------------------------------------------------------------
03 — PRINCIPLES / MC02
Turn cards into a numbered editorial system.
------------------------------------------------------------------- */

.ms-about-page .ms-why{
    padding:clamp(110px,10vw,156px) 0;
    border-bottom:1px solid rgba(197,165,114,.12);
    background:var(--ms-bg);
}

.ms-about-page .ms-why-layout{
    gap:clamp(72px,8vw,118px);
}

.ms-about-page .ms-why-content{
    position:sticky;
    top:120px;
    align-self:start;
}

.ms-about-page .ms-why-features{
    counter-reset:about-principle;
    gap:0;
    border-top:1px solid rgba(197,165,114,.15);
}

.ms-about-page .ms-why-card{
    counter-increment:about-principle;
    position:relative;
    min-height:0;
    padding:34px 4px 36px 72px;
    border:0;
    border-bottom:1px solid rgba(197,165,114,.15);
    border-radius:0;
    background:transparent;
    box-shadow:none;
    transform:none;
}

.ms-about-page .ms-why-card::before{
    content:counter(about-principle, decimal-leading-zero);
    position:absolute;
    left:0;
    top:38px;
    color:var(--ms-gold);
    font-size:12px;
    font-weight:var(--ms-fw-semibold);
    letter-spacing:.14em;
    opacity:.72;
}

.ms-about-page .ms-why-card:hover{
    transform:none;
    box-shadow:none;
    border-color:rgba(197,165,114,.34);
}

.ms-about-page .ms-why-card-title{
    margin-bottom:12px;
    font-size:clamp(20px,2vw,26px);
}

.ms-about-page .ms-why-card-text{
    max-width:520px;
    color:var(--ms-text-soft);
}

/* -------------------------------------------------------------------
04 — FAQ / MC12
Editorial accordion + native <details> compatibility fix.
------------------------------------------------------------------- */

.ms-about-page .ms-faq{
    padding:clamp(110px,10vw,156px) 0;
    border-bottom:1px solid rgba(197,165,114,.12);
}

.ms-about-page .ms-faq-header{
    max-width:720px;
    margin-bottom:72px;
}

.ms-about-page .ms-faq-subtitle{
    background:transparent;
    border-color:rgba(197,165,114,.22);
}

.ms-about-page .ms-faq-list{
    max-width:960px;
    gap:0;
    border-top:1px solid rgba(197,165,114,.16);
}

.ms-about-page .ms-faq-item{
    border:0;
    border-bottom:1px solid rgba(197,165,114,.16);
    border-radius:0;
    background:transparent;
    box-shadow:none;
}

.ms-about-page .ms-faq-item:hover{
    transform:none;
    box-shadow:none;
    border-color:rgba(197,165,114,.38);
}

.ms-about-page .ms-faq-question{
    padding:30px 0;
    align-items:center;
}

.ms-about-page .ms-faq-question::-webkit-details-marker{
    display:none;
}

.ms-about-page .ms-faq-question{
    list-style:none;
}

.ms-about-page .ms-faq-question-text{
    max-width:760px;
    font-size:clamp(18px,1.8vw,22px);
    font-weight:var(--ms-fw-semibold);
    line-height:1.45;
}

.ms-about-page .ms-faq-icon{
    width:38px;
    height:38px;
    border-color:rgba(197,165,114,.22);
    font-size:20px;
}

/* Critical fix: native details uses [open], not .is-open. */
.ms-about-page .ms-faq-item[open] .ms-faq-icon{
    transform:rotate(45deg);
    background:rgba(197,165,114,.08);
}

.ms-about-page .ms-faq-item[open] .ms-faq-answer{
    display:block;
}

.ms-about-page .ms-faq-answer{
    display:none;
    max-width:800px;
    padding:0 78px 34px 0;
}

.ms-about-page .ms-faq-answer-text{
    color:var(--ms-text-soft);
    font-size:clamp(16px,1.45vw,18px);
    line-height:1.9;
}

/* -------------------------------------------------------------------
05 — CTA / MC09
Quiet premium close rather than a loud conversion block.
------------------------------------------------------------------- */

.ms-about-page .ms-cta-banner{
    padding:clamp(110px,10vw,156px) 0;
}

.ms-about-page .ms-cta-banner-box{
    padding:clamp(52px,6vw,82px);
    border-color:rgba(197,165,114,.20);
    background:
        radial-gradient(
            circle at 86% 12%,
            rgba(197,165,114,.10),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            rgba(20,27,27,.98),
            rgba(11,15,15,.99)
        );
    box-shadow:0 36px 90px rgba(0,0,0,.28);
}

.ms-about-page .ms-cta-banner-box:hover{
    transform:none;
    box-shadow:0 36px 90px rgba(0,0,0,.32);
}

.ms-about-page .ms-cta-banner-content{
    max-width:760px;
}

.ms-about-page .ms-cta-banner-title{
    max-width:690px;
    text-wrap:balance;
}

.ms-about-page .ms-cta-banner-divider{
    opacity:.72;
}

/* -------------------------------------------------------------------
RESPONSIVE
------------------------------------------------------------------- */

@media(max-width:1024px){

    .ms-about-page .ms-hero{
        min-height:auto;
    }

    .ms-about-story-grid{
        grid-template-columns:1fr;
        gap:64px;
    }

    .ms-about-story-content{
        max-width:760px;
    }

    .ms-about-story-media,
    .ms-about-story-media img{
        min-height:500px;
    }

    .ms-about-page .ms-why-content{
        position:static;
    }

}

@media(max-width:767px){

    .ms-about-page .ms-hero{
        text-align:center;
    }

    .ms-about-page .ms-hero-inner,
    .ms-about-page .ms-hero-title,
    .ms-about-page .ms-hero-text{
        margin-left:auto;
        margin-right:auto;
    }

    .ms-about-story{
        padding:84px 0;
    }

    .ms-about-story::before{
        height:54px;
    }

    .ms-about-story-grid{
        gap:44px;
    }

    .ms-about-story-media,
    .ms-about-story-media img{
        min-height:360px;
    }

    .ms-about-page .ms-why{
        padding:84px 0;
    }

    .ms-about-page .ms-why-card{
        padding:28px 0 30px 48px;
    }

    .ms-about-page .ms-why-card::before{
        top:32px;
    }

    .ms-about-page .ms-faq{
        padding:84px 0;
    }

    .ms-about-page .ms-faq-header{
        margin-bottom:48px;
    }

    .ms-about-page .ms-faq-question{
        padding:24px 0;
        gap:16px;
    }

    .ms-about-page .ms-faq-question-text{
        font-size:17px;
    }

    .ms-about-page .ms-faq-icon{
        width:34px;
        height:34px;
    }

    .ms-about-page .ms-faq-answer{
        padding:0 0 28px;
    }

    .ms-about-page .ms-cta-banner{
        padding:84px 0;
    }

}


/* ======================================================================
MC12 ABOUT FAQ — FINAL NATIVE DETAILS GUARANTEE
The canonical MC12 template uses <details open>, while MC12 v1.0 CSS hides
.ms-faq-answer until .is-open exists. About uses the browser-native [open]
state, so this scoped rule is authoritative for this page only.
====================================================================== */
.ms-about-page details.ms-faq-item[open] > .ms-faq-answer{
    display:block !important;
}
.ms-about-page details.ms-faq-item:not([open]) > .ms-faq-answer{
    display:none !important;
}
.ms-about-page details.ms-faq-item[open] > summary .ms-faq-icon{
    transform:rotate(45deg) !important;
    background:rgba(197,165,114,.08);
}


/* -------------------------------------------------------------------
THE MANSURGE EIGHT — Interactive letter selector
Desktop: hover reveals principle name; click loads one shared content panel.
Mobile: tap directly selects and loads the same panel.
------------------------------------------------------------------- */
.ms-about-eight{
    padding:clamp(100px,10vw,156px) 0 clamp(88px,9vw,132px);
    border-bottom:1px solid rgba(197,165,114,.12);
}
.ms-about-eight-head{
    max-width:820px;
    margin-bottom:clamp(46px,5vw,66px);
}
.ms-about-eight-head .ms-h2{margin:14px 0 10px}
.ms-about-eight-descriptor{
    margin:0 0 24px;
    color:var(--ms-gold);
    font-size:clamp(18px,2vw,24px);
    letter-spacing:.02em;
}
.ms-about-eight-intro{max-width:760px;color:var(--ms-text-soft)}
.ms-about-eight-system{max-width:980px;margin:0 auto}
.ms-about-eight-selector{
    border-top:1px solid rgba(197,165,114,.18);
    border-bottom:1px solid rgba(197,165,114,.18);
    padding:clamp(16px,2vw,22px) clamp(8px,1.5vw,18px) 0;
}
.ms-about-eight-word{
    display:grid;
    grid-template-columns:repeat(8,minmax(0,1fr));
    align-items:center;
    gap:0;
}
.ms-about-eight-letter{
    appearance:none;
    -webkit-appearance:none;
    border:0;
    background:transparent;
    margin:0;
    padding:0;
    min-width:0;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(238,234,225,.46);
    font:inherit;
    font-size:clamp(25px,4vw,52px);
    line-height:1;
    font-weight:700;
    letter-spacing:.02em;
    cursor:pointer;
    transition:color .2s ease,transform .2s ease,opacity .2s ease;
}
.ms-about-eight-letter:hover,
.ms-about-eight-letter:focus-visible{color:rgba(238,234,225,.92)}
.ms-about-eight-letter:focus-visible{
    outline:1px solid rgba(197,165,114,.58);
    outline-offset:3px;
}
.ms-about-eight-letter.is-active{
    color:var(--ms-gold);
    transform:translateY(-1px);
}
.ms-about-eight-hover-name{
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:8px 0 11px;
    color:var(--ms-gold);
    font-size:clamp(12px,1.25vw,15px);
    line-height:1;
    font-weight:600;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.ms-about-eight-panel{
    margin-top:clamp(24px,3vw,34px);
    min-height:clamp(250px,26vw,340px);
    border:1px solid rgba(197,165,114,.15);
    background:rgba(255,255,255,.012);
    padding:clamp(34px,5vw,64px);
    display:flex;
    align-items:center;
}
.ms-about-eight-state{width:100%}
.ms-about-eight-state[hidden]{display:none!important}
.ms-about-eight-state-copy{width:min(100%,760px);margin:0 auto}
.ms-about-eight-state-index{
    margin:0 0 13px;
    color:rgba(197,165,114,.66);
    font-size:12px;
    letter-spacing:.18em;
}
.ms-about-eight-state-copy h3{
    margin:0 0 16px;
    color:var(--ms-text);
    font-size:clamp(30px,4vw,50px);
    line-height:1.05;
    letter-spacing:.07em;
}
.ms-about-eight-promise{
    margin:0 0 16px;
    color:var(--ms-text);
    font-size:clamp(19px,2vw,24px);
    line-height:1.48;
}
.ms-about-eight-explanation{
    margin:0;
    max-width:680px;
    color:var(--ms-text-soft);
    font-size:clamp(16px,1.45vw,19px);
    line-height:1.72;
}
.ms-eight-enhanced .ms-about-eight-state.is-active{animation:msEightPanelIn .24s ease both}
@keyframes msEightPanelIn{
    from{opacity:0;transform:translateY(5px)}
    to{opacity:1;transform:none}
}
@media (max-width:760px){
    .ms-about-eight{padding:84px 0 88px}
    .ms-about-eight-head{margin-bottom:36px}
    .ms-about-eight-selector{padding:12px 4px 0}
    .ms-about-eight-letter{
        min-height:44px;
        font-size:clamp(19px,7vw,26px);
        letter-spacing:0;
    }
    .ms-about-eight-letter.is-active{transform:none}
    .ms-about-eight-hover-name{display:none}
    .ms-about-eight-panel{
        margin-top:18px;
        min-height:0;
        padding:28px 22px 32px;
        align-items:flex-start;
    }
    .ms-about-eight-state-copy h3{font-size:30px;margin-bottom:13px}
    .ms-about-eight-promise{font-size:18px;margin-bottom:13px}
    .ms-about-eight-explanation{font-size:16px;line-height:1.68}
}
@media (prefers-reduced-motion:reduce){
    .ms-about-eight-letter{transition:none!important;transform:none!important}
    .ms-eight-enhanced .ms-about-eight-state.is-active{animation:none!important}
}




/* v3.1.60 — THE MANSURGE EIGHT bidi contract.
   The page may be RTL, but the brand word and English doctrine tokens must
   preserve their canonical left-to-right order: M A N S U R G E. */
.ms-about-eight-word{
    direction:ltr!important;
    unicode-bidi:isolate;
}
.ms-about-eight-letter,
.ms-about-eight-hover-name,
.ms-about-eight-state-index,
.ms-about-eight-state-copy h3{
    direction:ltr!important;
    unicode-bidi:isolate;
}
.ms-about-eight-state-index,
.ms-about-eight-state-copy h3{
    text-align:left;
}
html[dir="rtl"] .ms-about-eight-state-index,
html[dir="rtl"] .ms-about-eight-state-copy h3,
body.rtl .ms-about-eight-state-index,
body.rtl .ms-about-eight-state-copy h3{
    text-align:right;
}
