/* Rotaract District - Lean & Responsive CSS */
@import '@enriched.css';

/* Enhanced Pinky Theme */
:root{
    --rot-primary:#d41367;
    --rot-primary-dark:#a30f4f;
    --rot-primary-light:#f8a5c9;
    --rot-accent:#f7a81b;
    --rot-accent-dark:#dd8a0e;
    --rot-highlight:#00adbb;
    --rd-spacing-xl:5rem;
    --rd-spacing-lg:3rem;
    --rd-spacing-md:2rem;
    --rd-spacing-sm:1rem;
    --rd-spacing-xs:0.5rem;
    --rd-radius-lg:1.5rem;
    --rd-radius-md:1rem;
    --rd-radius-sm:0.5rem;
    --rd-shadow-lg:0 20px 40px rgba(212,19,103,0.15);
    --rd-shadow-md:0 10px 20px rgba(212,19,103,0.1);
    --rd-shadow-sm:0 5px 10px rgba(212,19,103,0.05);
    --rd-transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
    --rd-container-max:78rem;
    --rd-header-height:4.75rem;
    --rd-header-height-mobile:6.25rem;
    --rd-header-bg:color-mix(in oklab,var(--enriched-surface) 94%,transparent);
    --rd-hairline:1px solid var(--enriched-border);
    --rd-focus:0 0 0 3px var(--enriched-focus-ring);
    --rd-hero-pad:var(--rd-spacing-xl);
    --rd-hero-pad-tablet:var(--rd-spacing-lg);
    --rd-hero-pad-mobile:3.75rem;
}

[data-theme="dark"]{
    --rd-shadow-lg:0 20px 40px rgba(0,0,0,0.3);
    --rd-shadow-md:0 10px 20px rgba(0,0,0,0.2);
    --rd-shadow-sm:0 5px 10px rgba(0,0,0,0.1);
}

/* Base Styles */
.rd-body{
    min-height:100vh;
    font-family:'Inter',-apple-system,system-ui,Segoe UI,Roboto,sans-serif;
    background:var(--enriched-bg);
    color:var(--enriched-text);
    overflow-x:hidden;
    line-height:1.6;
}

.rd-section{
    padding:var(--rd-spacing-xl) 0;
    position:relative;
    scroll-margin-top:calc(var(--rd-header-height) + var(--enriched-spacing-lg));
}

.rd-body :where(a,button,[role="button"],input,select,textarea):focus-visible{
    outline:none;
    box-shadow:var(--rd-focus);
    border-radius:var(--enriched-border-radius-md);
}

.rd-body :where(img){
    max-width:100%;
    height:auto;
}

.rd-body :where(.enr-container){
    max-width:var(--rd-container-max);
    margin:0 auto;
    padding-left:var(--enriched-safe-left);
    padding-right:var(--enriched-safe-right);
}

.rd-country{
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    min-width:0;
}

.rd-flag{
    width:1.2rem;
    height:1.2rem;
    border-radius:0.35rem;
    object-fit:cover;
    border:1px solid color-mix(in oklab,var(--enriched-border) 80%,transparent);
    box-shadow:0 6px 12px color-mix(in oklab,var(--rot-primary) 12%,transparent);
    flex:0 0 auto;
}

.rd-country-name{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rd-country-sep{
    display:inline-block;
    padding:0 0.55rem;
    opacity:0.7;
}

/* Theme Toggle */
.rd-theme-toggle{
    position:fixed;
    right:calc(var(--enriched-safe-right) + var(--enriched-spacing-sm));
    bottom:calc(var(--enriched-safe-bottom) + var(--enriched-spacing-sm));
    z-index:var(--enriched-z-toast);
    transition:var(--rd-transition);
    will-change:transform,opacity;
}

.rd-theme-toggle.is-hidden{
    opacity:0;
    transform:translateY(10px);
    pointer-events:none;
}

.rd-theme-toggle.near-footer{
    opacity:0;
    transform:translateY(10px);
    pointer-events:none;
}

.rd-theme-btn{
    width:3rem;
    height:3rem;
    border-radius:var(--enriched-border-radius-o);
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    color:var(--rot-primary);
    cursor:pointer;
    display:grid;
    place-items:center;
    font-size:1.1rem;
    transition:var(--rd-transition);
    box-shadow:var(--rd-shadow-sm);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-theme-btn:hover{
    transform:translateY(-2px) scale(1.03);
    box-shadow:var(--rd-shadow-md);
    border-color:color-mix(in oklab,var(--rot-primary) 45%,var(--enriched-border));
}

.rd-theme-btn:active{
    transform:translateY(0) scale(0.98);
}

/* Theme Toggle - Responsive */
@media (max-width:768px){
    .rd-theme-btn{
        width:2.75rem;
        height:2.75rem;
        font-size:1rem;
    }
}

/* Topbar */
.rd-topbar{
    position:relative;
    top:auto;
    left:auto;
    right:auto;
    width:100%;
    z-index:var(--enriched-z-overlay);
    padding:0.85rem 0;
    background:var(--rd-header-bg);
    backdrop-filter:blur(var(--enriched-glass-blur));
    border-bottom:var(--rd-hairline);
    transition:var(--rd-transition);
    transform:translateZ(0);
}

.rd-topbar.is-sticky{
    position:sticky;
    top:0;
}

.rd-topbar.scrolled{
    padding:0.65rem 0;
    box-shadow:var(--rd-shadow-sm);
}

.rd-topbar.scrolled.hidden{
    transform:translateY(-100%);
}

.rd-topbar-container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--enriched-spacing-lg);
    min-height:var(--rd-header-height);
    min-width:0;
    box-sizing:border-box;
}

.rd-topbar-brand{
    display:flex;
    align-items:center;
    gap:var(--rd-spacing-sm);
    flex:0 0 auto;
    min-width:0;
    max-width:100%;
}

.rd-logo{
    height:2.35rem;
    width:auto;
    max-width:100%;
    display:block;
    transition:var(--rd-transition);
    filter:drop-shadow(0 6px 12px color-mix(in oklab,var(--rot-primary) 18%,transparent));
}

.rd-logo:hover{
    transform:scale(1.04);
}

.rd-topbar-nav{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:var(--enriched-spacing-lg);
    margin:0;
    flex:1 1 auto;
    min-width:0;
    max-width:100%;
}

.rd-nav-link{
    color:var(--enriched-text);
    text-decoration:none;
    font-weight:800;
    font-size:0.875rem;
    padding:0.5rem 0;
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    transition:var(--rd-transition);
    opacity:0.92;
    flex:0 1 auto;
    min-width:0;
    max-width:100%;
    white-space:nowrap;
}

.rd-nav-link:hover,
.rd-nav-link.active{
    color:var(--rot-primary);
    opacity:1;
}

.rd-nav-link::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-0.15rem;
    width:0;
    height:2px;
    background:var(--rot-primary);
    transition:width 0.3s ease;
    border-radius:var(--enriched-border-radius-o);
}

.rd-nav-link.active::after,
.rd-nav-link:hover::after{
    width:100%;
}

.rd-nav-text{
    display:inline;
}

/* Topbar - Responsive */
@media (max-width:768px){
    .rd-topbar{
        padding:0.85rem 0;
    }
    .rd-topbar-container{
        min-height:var(--rd-header-height-mobile);
        flex-wrap:wrap;
        width:100%;
        max-width:100%;
        justify-content:center;
        gap:0.65rem;
    }
    .rd-topbar-brand{
        flex:0 0 100%;
        justify-content:center;
        width:100%;
    }
    .rd-topbar-nav{
        flex:0 0 100%;
        width:100%;
        justify-content:center;
        gap:0.7rem;
        flex-wrap:nowrap;
    }
    .rd-nav-link{
        width:2.9rem;
        height:2.9rem;
        padding:0;
        border-radius:var(--enriched-border-radius-o);
        border:1px solid var(--enriched-border);
        background:color-mix(in oklab,var(--enriched-surface) 92%,transparent);
        display:flex;
        align-items:center;
        justify-content:center;
        max-width:none;
    }
    .rd-nav-link::after{
        display:none;
    }
    .rd-nav-link i{
        margin:0;
        font-size:1.1rem;
    }
    .rd-nav-text{
        position:absolute;
        width:1px;
        height:1px;
        padding:0;
        margin:-1px;
        overflow:hidden;
        clip:rect(0,0,0,0);
        white-space:nowrap;
        border:0;
    }
}

@media (max-width:480px){
    .rd-topbar-container{
        min-height:6.6rem;
        width:100%;
        max-width:100%;
    }
    .rd-logo{
        height:2.55rem;
    }
    .rd-nav-link{
        width:3.05rem;
        height:3.05rem;
    }
}

/* Hero Section */
.rd-hero{
    position:relative;
    padding:var(--rd-hero-pad) 0;
    min-height:calc(100svh - var(--rd-header-height));
    display:flex;
    align-items:center;
    background:
        radial-gradient(800px 420px at 18% 20%,color-mix(in oklab,var(--rot-primary) 12%,transparent) 0%,transparent 55%),
        radial-gradient(700px 360px at 82% 28%,color-mix(in oklab,var(--rot-accent) 12%,transparent) 0%,transparent 55%),
        linear-gradient(180deg,color-mix(in oklab,var(--enriched-bg) 92%,var(--enriched-surface-full) 8%) 0%,transparent 65%);
}

.rd-hero::before{
    content:'';
    position:absolute;
    inset:-1px 0 auto 0;
    height:1px;
    background:linear-gradient(90deg,transparent 0%,color-mix(in oklab,var(--rot-primary) 25%,transparent) 20%,color-mix(in oklab,var(--rot-accent) 25%,transparent) 80%,transparent 100%);
    opacity:0.8;
}

.rd-hero-container{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:var(--rd-spacing-xl);
    align-items:center;
    width:100%;
}

.rd-hero-content{
    max-width:40rem;
}

.rd-hero-kicker{
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    font-size:0.8rem;
    font-weight:800;
    color:var(--rot-primary);
    text-transform:uppercase;
    letter-spacing:0.08em;
    padding:0.55rem 0.85rem;
    border-radius:var(--enriched-border-radius-o);
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    box-shadow:var(--rd-shadow-sm);
    margin-bottom:1.25rem;
}

.rd-hero-headline{
    font-size:clamp(2.45rem,4.6vw,3.6rem);
    font-weight:900;
    line-height:1.06;
    margin:0 0 1.15rem;
    color:var(--enriched-text-darker);
    letter-spacing:-0.02em;
}

.rd-hero-subhead{
    font-size:1.15rem;
    color:var(--enriched-text-light);
    margin:0 0 1.75rem;
    line-height:1.7;
    max-width:36rem;
}

.rd-hero-actions{
    display:flex;
    gap:0.85rem;
    margin-bottom:2.25rem;
    flex-wrap:wrap;
    align-items:center;
}

.rd-hero-action{
    display:inline-flex;
    align-items:center;
    gap:0.55rem;
    white-space:nowrap;
}

.rd-hero-badges{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0.85rem;
    max-width:40rem;
}

.rd-badge{
    display:flex;
    align-items:center;
    gap:0.85rem;
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:0.95rem 1rem;
    transition:var(--rd-transition);
    box-shadow:var(--enriched-shadow-xs);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-badge:hover{
    transform:translateY(-3px);
    box-shadow:var(--rd-shadow-sm);
    border-color:color-mix(in oklab,var(--rot-primary) 35%,var(--enriched-border));
}

.rd-badge-icon{
    width:2.25rem;
    height:2.25rem;
    border-radius:var(--enriched-border-radius-lg);
    display:grid;
    place-items:center;
    color:var(--rot-primary);
    background:linear-gradient(135deg,color-mix(in oklab,var(--rot-primary) 14%,transparent) 0%,color-mix(in oklab,var(--rot-accent) 10%,transparent) 100%);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
}

.rd-badge-title{
    font-size:0.9rem;
    font-weight:800;
    color:var(--enriched-text);
    line-height:1.2;
}

.rd-badge-sub{
    font-size:0.78rem;
    color:var(--enriched-text-lighter);
    line-height:1.2;
    margin-top:0.15rem;
}

.rd-hero-visual{
    position:relative;
    isolation:isolate;
}

.rd-hero-image-wrapper{
    position:relative;
    border-radius:var(--enriched-border-radius-xxxl);
    overflow:hidden;
    box-shadow:var(--rd-shadow-lg);
    border:1px solid color-mix(in oklab,var(--enriched-border) 70%,transparent);
    background:var(--enriched-section-bg-elevated);
    transform:translateZ(0);
}

.rd-hero-image-wrapper::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 0%,color-mix(in oklab,var(--enriched-bg-inverse) 12%,transparent) 65%,color-mix(in oklab,var(--enriched-bg-inverse) 18%,transparent) 100%);
    pointer-events:none;
}

.rd-hero-image{
    width:100%;
    height:clamp(22rem,38vw,30rem);
    display:block;
    object-fit:cover;
    transition:transform 0.6s ease;
}

.rd-hero-image-wrapper:hover .rd-hero-image{
    transform:scale(1.04);
}

.rd-hero-cards{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    bottom:-2.25rem;
    width:min(46rem,100%);
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0.85rem;
    padding:0 var(--enriched-spacing-md);
    z-index:2;
}

.rd-hero-cards:has(.rd-hero-card:only-child){
    grid-template-columns:1fr;
    width:min(46rem,100%);
}

.rd-hero-card{
    background:color-mix(in oklab,var(--enriched-surface) 92%,transparent);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:1.15rem 1.15rem;
    display:flex;
    gap:0.85rem;
    transition:var(--rd-transition);
    box-shadow:var(--enriched-shadow-sm);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-hero-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--rd-shadow-md);
    border-color:color-mix(in oklab,var(--rot-primary) 32%,var(--enriched-border));
}

.rd-hero-card-icon{
    width:2.65rem;
    height:2.65rem;
    border-radius:var(--enriched-border-radius-lg);
    display:grid;
    place-items:center;
    color:var(--rot-primary);
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    flex:0 0 auto;
}

.rd-hero-card-content{
    flex:1;
    min-width:0;
}

.rd-hero-card-title{
    font-size:0.72rem;
    font-weight:900;
    color:var(--enriched-text-lighter);
    text-transform:uppercase;
    letter-spacing:0.08em;
    margin-bottom:0.4rem;
}

.rd-hero-card-value{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.65rem;
}

.rd-hero-card-value span{
    font-size:0.98rem;
    font-weight:800;
    color:var(--enriched-text);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rd-hero-scroll-hint{
    position:absolute;
    bottom:calc(var(--enriched-spacing-xl) + var(--enriched-safe-bottom));
    left:50%;
    transform:translateX(-50%);
    animation:rd-bounce 2s infinite;
    z-index:1;
}

.rd-hero-scroll-hint a{
    width:2.75rem;
    height:2.75rem;
    display:grid;
    place-items:center;
    border-radius:var(--enriched-border-radius-o);
    color:var(--rot-primary);
    text-decoration:none;
    background:color-mix(in oklab,var(--enriched-surface) 85%,transparent);
    border:1px solid var(--enriched-border);
    box-shadow:var(--rd-shadow-sm);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

@keyframes rd-bounce{
    0%,100%{transform:translateX(-50%) translateY(0);}
    50%{transform:translateX(-50%) translateY(-10px);}
}

@media (max-width:1024px){
    .rd-hero{
        min-height:auto;
        padding:var(--rd-hero-pad-tablet) 0;
    }
    .rd-hero-container{
        grid-template-columns:1fr;
        gap:var(--rd-spacing-lg);
        text-align:center;
    }
    .rd-hero-content{
        max-width:none;
        margin:0 auto;
    }
    .rd-hero-subhead{
        margin-left:auto;
        margin-right:auto;
    }
    .rd-hero-actions{
        justify-content:center;
    }
    .rd-hero-badges{
        grid-template-columns:repeat(2,minmax(0,1fr));
        margin:0 auto;
    }
    .rd-hero-cards{
        position:relative;
        left:auto;
        transform:none;
        bottom:auto;
        width:100%;
        margin-top:1.25rem;
        padding:0;
    }
    .rd-hero-cards:has(.rd-hero-card:only-child){
        grid-template-columns:1fr;
        width:100%;
    }
    .rd-hero-scroll-hint{
        display:none;
    }
}

@media (max-width:768px){
    .rd-hero{
        padding:var(--rd-hero-pad-mobile) 0; 
        min-height:auto;
    }
    .rd-hero-headline{
        font-size:clamp(2.1rem,7.2vw,2.85rem);
    }
    .rd-hero-subhead{
        font-size:1.08rem;
    }
    .rd-hero-actions{
        flex-direction:column;
        align-items:stretch;
    }
    .rd-hero-badges{
        grid-template-columns:1fr;
    }
    .rd-hero-cards{
        grid-template-columns:1fr;
        gap:0.75rem;
    }
    .rd-hero-image{
        height:clamp(19.5rem,56vw,25rem);
    }
}

@media (max-width:480px){
    .rd-hero{
        padding:3.35rem 0;
    }
    .rd-hero-kicker{
        padding:0.5rem 0.8rem;
        font-size:0.78rem;
    }
    .rd-badge{
        padding:0.9rem 0.95rem;
    }
    .rd-hero-card{
        padding:1rem 1rem;
    }
}

/* About Section */
.rd-about{
    background:color-mix(in oklab,var(--rot-primary) 3%,transparent);
}

.rd-about-container{
    max-width:var(--rd-container-max);
    margin:0 auto;
}

.rd-about-header{
    text-align:center;
    max-width:48rem;
    margin:0 auto 3rem;
}

.rd-about-title{
    font-size:clamp(2rem,4vw,2.6rem);
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0 0 0.9rem;
    letter-spacing:-0.02em;
}

.rd-about-sub{
    font-size:1.15rem;
    color:var(--rot-primary);
    font-weight:800;
    margin:0 0 1rem;
}

.rd-about-summary{
    font-size:1.08rem;
    color:var(--enriched-text-light);
    line-height:1.75;
}

.rd-about-sections{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
    gap:1.75rem;
    margin-bottom:3rem;
}

.rd-about-card{
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:2rem;
    transition:var(--rd-transition);
    box-shadow:var(--enriched-shadow-xs);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-about-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--rd-shadow-md);
    border-color:color-mix(in oklab,var(--rot-primary) 30%,var(--enriched-border));
}

.rd-about-card-icon{
    width:3rem;
    height:3rem;
    border-radius:var(--enriched-border-radius-xl);
    display:grid;
    place-items:center;
    font-size:1.35rem;
    color:var(--rot-primary);
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    margin-bottom:1.1rem;
}

.rd-about-card-title{
    font-size:1.2rem;
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0 0 0.85rem;
}

.rd-about-card-body{
    color:var(--enriched-text-light);
    line-height:1.7;
    margin:0;
}

.rd-about-facts{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));
    gap:1.25rem;
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xxxl);
    padding:2rem;
    box-shadow:var(--enriched-shadow-sm);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-fact-card{
    display:flex;
    align-items:center;
    gap:1rem;
    padding:0.75rem 0.75rem;
    border-radius:var(--enriched-border-radius-lg);
    background:color-mix(in oklab,var(--enriched-section-bg-muted) 65%,transparent);
    border:1px solid color-mix(in oklab,var(--enriched-border) 70%,transparent);
}

.rd-fact-icon{
    width:2.5rem;
    height:2.5rem;
    border-radius:var(--enriched-border-radius-lg);
    display:grid;
    place-items:center;
    font-size:1.1rem;
    color:var(--rot-primary);
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    flex:0 0 auto;
}

.rd-fact-content{
    flex:1;
    min-width:0;
}

.rd-fact-title{
    font-size:0.78rem;
    font-weight:900;
    color:var(--enriched-text-lighter);
    text-transform:uppercase;
    letter-spacing:0.08em;
}

.rd-fact-value{
    font-size:1.05rem;
    font-weight:900;
    color:var(--enriched-text);
    margin-top:0.2rem;
}

@media (max-width:768px){
    .rd-about-header{
        margin-bottom:2.25rem;
    }
    .rd-about-sections{
        grid-template-columns:1fr;
        gap:1.25rem;
        margin-bottom:2.25rem;
    }
    .rd-about-card{
        padding:1.5rem;
    }
    .rd-about-facts{
        grid-template-columns:1fr;
        padding:1.5rem;
    }
}

@media (max-width:480px){
    .rd-about-title{
        font-size:clamp(1.7rem,7vw,2.1rem);
    }
    .rd-about-summary{
        font-size:1rem;
    }
}

/* Contacts Section */
.rd-contacts-container{
    max-width:var(--rd-container-max);
    margin:0 auto;
}

.rd-contacts-header{
    text-align:center;
    max-width:48rem;
    margin:0 auto 3rem;
}

.rd-contacts-title{
    font-size:clamp(2rem,4vw,2.6rem);
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0 0 0.9rem;
    letter-spacing:-0.02em;
}

.rd-contacts-sub{
    font-size:1.1rem;
    color:var(--enriched-text-light);
    margin:0;
}

.rd-primary-contact{
    display:flex;
    align-items:center;
    gap:1.25rem;
    background:linear-gradient(135deg,color-mix(in oklab,var(--rot-primary) 10%,transparent) 0%,color-mix(in oklab,var(--rot-accent) 10%,transparent) 100%);
    border:1.5px solid color-mix(in oklab,var(--rot-primary) 55%,var(--enriched-border));
    border-radius:var(--enriched-border-radius-xxxl);
    padding:2rem;
    margin-bottom:2.5rem;
    transition:var(--rd-transition);
    box-shadow:var(--rd-shadow-md);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-primary-contact:hover{
    transform:translateY(-5px);
    box-shadow:var(--rd-shadow-lg);
    border-color:var(--rot-primary);
}

.rd-primary-contact-icon{
    width:3.1rem;
    height:3.1rem;
    border-radius:var(--enriched-border-radius-xl);
    display:grid;
    place-items:center;
    font-size:1.4rem;
    color:var(--rot-primary);
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    flex:0 0 auto;
}

.rd-primary-contact-content{
    flex:1;
    min-width:0;
}

.rd-primary-contact-label{
    font-size:0.78rem;
    font-weight:900;
    color:var(--rot-primary);
    text-transform:uppercase;
    letter-spacing:0.08em;
    margin-bottom:0.5rem;
}

.rd-primary-contact-email{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    flex-wrap:wrap;
}

.rd-primary-contact-email a{
    font-size:1.35rem;
    font-weight:900;
    color:var(--enriched-text-darker);
    text-decoration:none;
    transition:var(--rd-transition);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:100%;
}

.rd-primary-contact-email a:hover{
    color:var(--rot-primary);
}

.rd-contacts-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));
    gap:1.5rem;
    margin-bottom:2.5rem;
}

.rd-contact-card{
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:1.5rem;
    transition:var(--rd-transition);
    box-shadow:var(--enriched-shadow-xs);
    backdrop-filter:blur(var(--enriched-glass-blur));
    display:flex;
    flex-direction:column;
    min-height:100%;
}

.rd-contact-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--rd-shadow-md);
    border-color:color-mix(in oklab,var(--rot-primary) 30%,var(--enriched-border));
}

.rd-contact-card-header{
    display:flex;
    align-items:center;
    gap:0.9rem;
    margin-bottom:0.85rem;
}

.rd-contact-card-sort{
    width:2.6rem;
    height:2.6rem;
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
    border-radius:var(--enriched-border-radius-lg);
    display:grid;
    place-items:center;
    color:var(--rot-primary);
    font-size:1rem;
    border:1px solid color-mix(in oklab,var(--rot-primary) 18%,transparent);
    flex:0 0 auto;
}

.rd-contact-card-label{
    font-size:1.15rem;
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0;
    min-width:0;
}

.rd-contact-card-desc{
    font-size:0.9rem;
    color:var(--enriched-text-light);
    margin:0 0 1.25rem;
    line-height:1.6;
}

.rd-contact-card-email{
    margin-top:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:0.85rem;
    background:color-mix(in oklab,var(--enriched-bg) 55%,transparent);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-lg);
    padding:0.75rem 0.9rem;
    transition:var(--rd-transition);
}

.rd-contact-card-email:hover{
    border-color:color-mix(in oklab,var(--rot-primary) 35%,var(--enriched-border));
    background:color-mix(in oklab,var(--rot-primary) 6%,transparent);
}

.rd-contact-card-email-link{
    display:flex;
    align-items:center;
    gap:0.55rem;
    color:var(--rot-primary);
    text-decoration:none;
    font-weight:800;
    font-size:0.88rem;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rd-contact-card-email-link i{
    flex:0 0 auto;
    width:1.15rem;
    text-align:center;
}

.rd-contact-card-email-text{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.rd-copy-btn{
    background:none;
    border:1px solid var(--enriched-border);
    color:var(--enriched-text-lighter);
    cursor:pointer;
    padding:0.5rem;
    border-radius:var(--enriched-border-radius-md);
    transition:var(--rd-transition);
    display:grid;
    place-items:center;
    min-width:2.35rem;
    min-height:2.35rem;
    justify-self:end;
}

.rd-copy-btn:hover,
.rd-copy-btn.copied{
    color:var(--rot-primary);
    border-color:color-mix(in oklab,var(--rot-primary) 45%,var(--enriched-border));
    background:color-mix(in oklab,var(--rot-primary) 10%,transparent);
}

.rd-contacts-pattern{
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:1.5rem;
    text-align:center;
    box-shadow:var(--enriched-shadow-xs);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-pattern-label{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0.5rem;
    font-size:0.8rem;
    font-weight:900;
    color:var(--rot-primary);
    margin-bottom:0.75rem;
    letter-spacing:0.06em;
    text-transform:uppercase;
}

.rd-contacts-pattern code{
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;
    font-size:0.9rem;
    color:var(--enriched-text);
    background:color-mix(in oklab,var(--enriched-bg) 60%,transparent);
    padding:0.6rem 0.9rem;
    border-radius:var(--enriched-border-radius-lg);
    display:inline-block;
    border:1px solid color-mix(in oklab,var(--enriched-border) 70%,transparent);
}

@media (max-width:768px){
    .rd-contacts-header{
        margin-bottom:2.25rem;
    }
    .rd-primary-contact{
        padding:1.5rem;
        margin-bottom:2rem;
        gap:1rem;
    }
    .rd-primary-contact-email{
        flex-direction:column;
        align-items:flex-start;
    }
    .rd-primary-contact-email a{
        font-size:1.1rem;
        white-space:normal;
        word-break:break-word;
    }
    .rd-contacts-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:480px){
    .rd-contact-card{
        padding:1.25rem;
    }
    .rd-contact-card-email{
        grid-template-columns:1fr;
        gap:0.65rem;
    }
    .rd-copy-btn{
        width:100%;
        justify-self:stretch;
    }
}

/* DRR Section */
.rd-drr{
    background:color-mix(in oklab,var(--rot-accent) 3%,transparent);
}

.rd-drr-container{
    max-width:var(--rd-container-max);
    margin:0 auto;
}

.rd-drr-header{
    text-align:center;
    max-width:48rem;
    margin:0 auto 3rem;
}

.rd-drr-title{
    font-size:clamp(2rem,4vw,2.6rem);
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0 0 0.9rem;
    letter-spacing:-0.02em;
}

.rd-drr-sub{
    font-size:1.1rem;
    color:var(--enriched-text-light);
    margin:0;
}

.rd-drr-profile{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:2.75rem;
    align-items:start;
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xxxl);
    padding:3rem;
    box-shadow:var(--rd-shadow-md);
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-drr-photo-wrapper{
    position:relative;
    width:16rem;
    height:16rem;
    flex-shrink:0;
}

.rd-drr-photo{
    width:100%;
    height:100%;
    border-radius:var(--enriched-border-radius-xxxl);
    object-fit:cover;
    box-shadow:var(--rd-shadow-md);
    border:1px solid color-mix(in oklab,var(--enriched-border) 70%,transparent);
}

.rd-drr-initials{
    width:100%;
    height:100%;
    border-radius:var(--enriched-border-radius-xxxl);
    background:linear-gradient(135deg,var(--rot-primary),var(--rot-accent));
    display:grid;
    place-items:center;
    font-size:3rem;
    font-weight:900;
    color:white;
    box-shadow:var(--rd-shadow-md);
}

.rd-drr-photo-badge{
    position:absolute;
    bottom:0.6rem;
    right:0.6rem;
    width:2.6rem;
    height:2.6rem;
    background:var(--rot-accent);
    border-radius:var(--enriched-border-radius-o);
    display:grid;
    place-items:center;
    color:white;
    font-size:1rem;
    box-shadow:var(--enriched-shadow-sm);
    border:1px solid color-mix(in oklab,var(--rot-accent-dark) 25%,transparent);
}

.rd-drr-info{
    flex:1;
    min-width:0;
}

.rd-drr-name-title{
    margin-bottom:1.75rem;
}

.rd-drr-name{
    font-size:2.35rem;
    font-weight:900;
    color:var(--enriched-text-darker);
    margin:0 0 0.5rem;
    line-height:1.08;
    letter-spacing:-0.02em;
}

.rd-drr-title{
    font-size:1.25rem;
    font-weight:900;
    color:var(--rot-primary);
    margin:0 0 1rem;
}

.rd-drr-term{
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    color:var(--enriched-text-lighter);
    font-weight:700;
    background:color-mix(in oklab,var(--enriched-bg) 55%,transparent);
    padding:0.55rem 0.9rem;
    border-radius:var(--enriched-border-radius-o);
    border:1px solid var(--enriched-border);
}

.rd-drr-bio{
    font-size:1.05rem;
    line-height:1.75;
    color:var(--enriched-text-light);
    margin:0 0 1.75rem;
}

.rd-drr-links{
    display:flex;
    gap:0.85rem;
    flex-wrap:wrap;
    align-items:center;
}

@media (max-width:1024px){
    .rd-drr-profile{
        grid-template-columns:1fr;
        text-align:center;
        gap:2rem;
    }
    .rd-drr-photo-wrapper{
        margin:0 auto;
    }
    .rd-drr-links{
        justify-content:center;
    }
}

@media (max-width:768px){
    .rd-drr-header{
        margin-bottom:2.25rem;
    }
    .rd-drr-profile{
        padding:1.75rem;
    }
    .rd-drr-photo-wrapper{
        width:13rem;
        height:13rem;
    }
    .rd-drr-name{
        font-size:2rem;
    }
    .rd-drr-links{
        flex-direction:column;
        align-items:stretch;
    }
}

@media (max-width:480px){
    .rd-drr-photo-wrapper{
        width:12rem;
        height:12rem;
    }
}
/* Footer */
.rd-footer{
    background:var(--enriched-text-darker);
    color:var(--enriched-text-inverse);
    padding:3rem 0;
    position:relative;
    isolation:isolate;
    contain:paint;
    transform:translateZ(0);
}

.rd-footer-container{
    max-width:var(--rd-container-max);
    margin:0 auto;
}

.rd-footer-content{
    display:grid;
    grid-template-columns:1fr auto;
    gap:2.5rem;
    align-items:center;
}

.rd-footer-brand{
    display:flex;
    align-items:center;
    gap:1rem;
    min-width:0;
}

.rd-logo-small{
    height:2rem;
    width:auto;
    filter:none;
    transform:translateZ(0);
}

.rd-footer-links{
    display:flex;
    justify-content:flex-end;
    gap:1.5rem;
    flex-wrap:wrap;
}

.rd-footer-link{
    display:flex;
    align-items:center;
    gap:0.5rem;
    color:var(--enriched-text-inverse);
    text-decoration:none;
    font-weight:800;
    font-size:0.88rem;
    transition:var(--rd-transition);
    opacity:0.92;
}

.rd-footer-link:hover{
    color:var(--rot-primary-light);
    opacity:1;
}

@media (max-width:1024px){
    .rd-footer-content{
        grid-template-columns:1fr;
        text-align:center;
        gap:1.75rem;
    }
    .rd-footer-brand{
        justify-content:center;
    }
    .rd-footer-links{
        justify-content:center;
        gap:1.25rem;
    }
}

@media (max-width:480px){
    .rd-footer{
        padding:2.5rem 0;
    }
    .rd-footer-links{
        flex-direction:column;
        align-items:center;
        gap:0.9rem;
    }
}

/* Toast Container */
.rd-toast-container{
    position:fixed;
    bottom:calc(var(--enriched-safe-bottom) + var(--enriched-spacing-md));
    right:calc(var(--enriched-safe-right) + var(--enriched-spacing-md));
    z-index:var(--enriched-z-toast);
    display:flex;
    flex-direction:column;
    gap:0.5rem;
    pointer-events:none;
}

.rd-toast{
    background:var(--enriched-surface);
    border:1px solid var(--enriched-border);
    border-radius:var(--enriched-border-radius-xl);
    padding:1rem 1.25rem;
    display:flex;
    align-items:center;
    gap:0.85rem;
    box-shadow:var(--rd-shadow-lg);
    transform:translateX(100%);
    opacity:0;
    transition:transform 0.3s ease,opacity 0.3s ease;
    min-width:20rem;
    pointer-events:auto;
    backdrop-filter:blur(var(--enriched-glass-blur));
}

.rd-toast.show{
    transform:translateX(0);
    opacity:1;
}

.rd-toast--success{
    border-left:4px solid var(--enriched-success);
}

.rd-toast--error{
    border-left:4px solid var(--enriched-danger);
}

.rd-toast-icon{
    font-size:1.25rem;
}

.rd-toast--success .rd-toast-icon{
    color:var(--enriched-success);
}

.rd-toast--error .rd-toast-icon{
    color:var(--enriched-danger);
}

.rd-toast-message{
    flex:1;
    font-size:0.9rem;
    font-weight:700;
    color:var(--enriched-text);
}

@media (max-width:480px){
    .rd-toast-container{
        left:var(--enriched-safe-left);
        right:var(--enriched-safe-right);
        bottom:calc(var(--enriched-safe-bottom) + var(--enriched-spacing-sm));
    }
    .rd-toast{
        min-width:auto;
        width:100%;
        max-width:100%;
    }
}

/* Reduced Motion */
@media (prefers-reduced-motion:reduce){
    *,
    *::before,
    *::after{
        animation-duration:0.01ms !important;
        animation-iteration-count:1 !important;
        transition-duration:0.01ms !important;
        scroll-behavior:auto !important;
    }
    .rd-hero-scroll-hint{
        animation:none;
    }
}

/* Print Styles */
@media print{
    .rd-theme-toggle,
    .rd-hero-scroll-hint,
    .rd-copy-btn,
    .rd-toast-container{
        display:none !important;
    }
    .rd-topbar{
        position:static;
        backdrop-filter:none;
        box-shadow:none;
    }
    .rd-hero{
        padding-top:0;
        min-height:auto;
    }
    .rd-section{
        padding:2rem 0;
    }
}
