/*
Theme Name: Yanis Damiri
Author: Custom Theme Studio
Description: Faithful English/French athlete portfolio based on the supplied Yanis Damiri design. Includes original photos and video, native Customizer editing and standard WordPress pages and posts. No builder or premium plugin required.
Version: 1.0.1
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: yanis-damiri
Tags: portfolio, custom-logo, custom-menu, featured-images, translation-ready
*/
:root{--yd-header-height:76px}
html{scroll-padding-top:calc(var(--yd-header-height) + 28px)}
body{overflow-wrap:break-word}
button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold2);outline-offset:5px}
.skip-link{position:fixed;top:-100px;left:16px;z-index:100000;background:var(--gold2);color:var(--navy);padding:12px 18px;border-radius:4px}
.skip-link:focus{top:12px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.admin-bar .topbar{top:32px}
.admin-bar{--yd-admin-offset:32px}
.admin-bar:root{scroll-padding-top:130px}
.yd-menu{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:26px}
.yd-menu li{position:relative;margin:0}
.yd-menu .sub-menu{position:absolute;top:100%;left:0;list-style:none;min-width:190px;margin:0;padding:15px;background:var(--navy2);border:1px solid var(--line);display:none}
.yd-menu .sub-menu li+li{margin-top:12px}
.yd-menu li:hover>.sub-menu,.yd-menu li:focus-within>.sub-menu{display:block}
.navlinks .yd-menu{flex-wrap:wrap;row-gap:8px}
.footer-links .yd-menu{flex-wrap:wrap;gap:18px}
.footer-links .sub-menu{position:static;margin-top:10px}
.brand{flex-shrink:0}
.brand img.yd-logo{width:66px;height:52px;object-fit:contain}
.footer-brand img.yd-logo{width:72px;height:56px;object-fit:contain}
.lang button{min-width:34px;min-height:36px}
.menu{cursor:pointer;min-height:40px;min-width:42px}
.contact-actions{margin-top:24px!important}
.contact-actions a{max-width:100%;overflow-wrap:anywhere;letter-spacing:.05em}
.site-main{padding-top:var(--yd-header-height);min-height:65vh}
.section-head h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.1;letter-spacing:-.04em;margin:13px 0}
.reading-wrap{max-width:850px}
.entry-featured{width:100%;height:auto;border-radius:6px;margin:0 0 30px}
.entry-content{font-size:1.05rem;line-height:1.8}
.entry-content:after{content:'';display:table;clear:both}
.entry-content a,.entry-meta a,.comment-content a{color:var(--gold2);text-decoration:underline;text-underline-offset:3px}
.entry-content h2,.entry-content h3{line-height:1.2;margin-top:1.5em}
.entry-content img,.entry-content video,.entry-content iframe{max-width:100%}
.entry-content img{height:auto}
.entry-content blockquote{border-left:2px solid var(--gold);margin-left:0;padding-left:22px;color:var(--gold2)}
.entry-content pre{overflow:auto;background:var(--navy2);padding:20px}
.entry-content table{border-collapse:collapse;width:100%}
.entry-content td,.entry-content th{border:1px solid var(--line);padding:10px}
.alignleft{float:left;margin:0 24px 20px 0}.alignright{float:right;margin:0 0 20px 24px}.aligncenter{margin-left:auto;margin-right:auto;display:block}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{color:var(--muted);font-size:.8rem}.sticky{border-color:var(--gold)}.bypostauthor .comment-author{color:var(--gold2)}
.yd-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.yd-post-grid h2{font-size:1.4rem;line-height:1.25}.yd-post-grid .btn{margin-top:20px}
.pagination,.post-navigation,.comments-pagination{margin:40px 0 0}.nav-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}.page-numbers{padding:5px 10px}.page-numbers.current{background:var(--gold);color:var(--navy)}
input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select{font:inherit;border:1px solid var(--line);background:var(--navy2);color:var(--ivory);padding:12px;border-radius:4px;max-width:100%}input[type=submit]{font:inherit;cursor:pointer;border:0;padding:13px 19px;background:var(--gold);color:var(--navy);border-radius:4px}textarea{width:100%}.search-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:24px 0}.search-field{min-height:44px}.comment-form label{display:block}.comment-form-cookies-consent label{display:inline}.comments-area{margin-top:55px;border-top:1px solid var(--line);padding-top:25px}.comment-list{list-style:none;padding:0}.comment-list .children{list-style:none;padding-left:24px}.comment-body{margin:24px 0;padding:20px;background:var(--navy2);border:1px solid var(--line)}.comment-author .avatar{float:left;margin-right:12px}.comment-metadata{font-size:.8rem;color:var(--muted)}
@media(max-width:1100px) and (min-width:901px){.navlinks .yd-menu{gap:13px}.nav{gap:14px}.brand-copy{display:none}.nav-actions{gap:5px}.nav-actions>.btn{padding:11px;font-size:.62rem}}
@media(max-width:900px){.mobile-drawer .yd-menu{display:flex;align-items:stretch;flex-direction:column;gap:14px}.mobile-drawer.open{max-height:calc(100dvh - 110px);overflow-y:auto}.mobile-drawer a{display:block;padding:5px 0}.mobile-drawer .sub-menu{display:block;position:static;padding:10px 0 0 15px;min-width:0;border:0;background:transparent}.video-feature{grid-template-columns:1fr}.yd-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.navlinks{display:none}}
@media(max-width:782px){.admin-bar .topbar{top:46px}}
@media(max-width:600px){:root{--yd-header-height:66px}.admin-bar .topbar{position:absolute;top:46px}.brand img.yd-logo{width:54px}.footer-brand img.yd-logo{width:60px}.yd-post-grid{grid-template-columns:1fr}.video-feature{padding:18px}.image-stack{gap:9px}.alignleft,.alignright{float:none;display:block;margin:20px auto}.footer-links .yd-menu{gap:14px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.btn:hover{transform:none}.moment:hover img{transform:none}}

/* Approved logo: preserve its natural proportions, with readable dark-site lettering. */
:root{--yd-header-height:100px}
.nav{height:100px}
.brand-copy{display:none}
.brand img.yd-logo{width:152px;height:88px;object-fit:contain}
.footer-brand img.yd-logo{width:176px;height:116px;object-fit:contain}
.footer-brand>div{display:none}
@media(max-width:900px){.mobile-drawer.open{top:100px}.hero{padding-top:150px}}
@media(max-width:600px){:root{--yd-header-height:86px}.nav{height:86px}.brand img.yd-logo{width:126px;height:74px}.mobile-drawer.open{top:86px}.hero{padding-top:124px}.footer-brand img.yd-logo{width:176px;height:116px}}

/* Keep the supplied PNG colors intact; recolor its lettering only at display time. */
.yd-approved-logo{position:relative;display:inline-block;width:152px;height:88px;flex-shrink:0;vertical-align:middle}
.yd-approved-logo img.yd-logo{display:block;width:100%!important;height:100%!important;object-fit:contain}
.yd-approved-logo:after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--ivory);clip-path:inset(74% 0 0);-webkit-mask-image:url('assets/yanis-damiri-approved-logo.png');mask-image:url('assets/yanis-damiri-approved-logo.png');-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}
.footer-brand .yd-approved-logo{width:176px;height:116px}
@media(max-width:600px){.brand .yd-approved-logo{width:126px;height:74px}}

/* Trim only empty margins in layout; retain every pixel of the supplied artwork. */
.yd-approved-logo{overflow:hidden}
.yd-approved-logo img.yd-logo{position:absolute;left:-6%;top:-30.5%;width:112%!important;height:145%!important;max-width:none}
.yd-approved-logo:after{inset:auto;left:-6%;top:-30.5%;width:112%;height:145%}
