/*
Theme Name: Sahara Dunes
Theme URI: https://example.com/moban49
Author: Caravan Studio
Description: A desert-dunes WordPress theme — sand-gold landscapes, sun-bleached light, Arabic geometric patterns and a hand-lettered poetic mood.
Version: 1.0
License: GPL-2.0-or-later
Text Domain: saharadunes
*/

:root{
    --sd-night:#292524;
    --sd-rock:#44403c;
    --sd-gold:#ca8a04;
    --sd-gold-deep:#854d0e;
    --sd-sun:#fef08a;
    --sd-sand:#fef3c7;
    --sd-sand-light:#fffbeb;
    --sd-ink:#1c1917;
    --sd-display:'Amatic SC',cursive;
    --sd-body:'Cairo',system-ui,sans-serif;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
    font-family:var(--sd-body);
    color:#1c1917;background:var(--sd-sand-light);line-height:1.7;
    -webkit-font-smoothing:antialiased;
    background-image:
        radial-gradient(800px 500px at 50% -10%, rgba(202,138,4,.16), transparent 60%),
        radial-gradient(900px 600px at 100% 100%, rgba(254,240,138,.35), transparent 60%);
}
img{max-width:100%;height:auto;display:block}
a{color:var(--sd-gold-deep);text-decoration:none}
a:hover{color:var(--sd-night)}

.sd-container{max-width:1240px;margin:0 auto;padding:0 24px}

/* Arabic-inspired pattern strip */
.sd-pattern{
    height:32px;
    background:
        radial-gradient(circle at 0 100%, var(--sd-gold) 14px, transparent 15px) 0 0/40px 32px,
        radial-gradient(circle at 100% 100%, var(--sd-gold) 14px, transparent 15px) 0 0/40px 32px,
        radial-gradient(circle at 50% 0, var(--sd-night) 6px, transparent 7px) 0 0/40px 32px,
        var(--sd-sand);
    border-bottom:1px solid rgba(133,77,14,.25);
}

/* Header */
.sd-header{
    background:var(--sd-sand-light);
    border-bottom:2px solid rgba(202,138,4,.35);
    position:sticky;top:0;z-index:50;
}
.sd-header-inner{
    display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:24px;
}
.sd-logo{
    display:inline-flex;align-items:baseline;gap:10px;
    font-family:var(--sd-display);color:var(--sd-night);font-size:46px;font-weight:700;letter-spacing:.04em;line-height:1;
}
.sd-logo .sd-sun{
    width:30px;height:30px;background:var(--sd-gold);border-radius:50%;
    box-shadow:0 0 0 3px rgba(202,138,4,.25),0 0 30px var(--sd-sun);
    align-self:center;
}
.sd-logo i{color:var(--sd-gold-deep);font-style:normal}
.sd-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sd-nav a{
    color:var(--sd-night);font-weight:600;font-size:14.5px;letter-spacing:.04em;
    padding:10px 12px;position:relative;
}
.sd-nav a:not(.sd-cta):hover{color:var(--sd-gold-deep)}
.sd-nav a:not(.sd-cta):hover:after{
    content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;
    background:repeating-linear-gradient(90deg,var(--sd-gold) 0 4px,transparent 4px 8px);
}
.sd-cta{
    background:var(--sd-night);color:var(--sd-sand) !important;padding:11px 22px;font-weight:700;letter-spacing:.05em;
    box-shadow:inset 0 0 0 2px var(--sd-gold);
}
.sd-cta:hover{background:var(--sd-gold-deep);color:#fff !important}

/* Hero */
.sd-hero{position:relative;padding:80px 0 60px;overflow:hidden}
.sd-hero:before{
    /* dune layers */
    content:"";position:absolute;left:0;right:0;bottom:0;height:240px;z-index:0;
    background:
        radial-gradient(1200px 360px at 70% 100%, var(--sd-gold) 0 50%, transparent 51%),
        radial-gradient(1400px 320px at 20% 100%, var(--sd-gold-deep) 0 50%, transparent 51%);
    opacity:.85;
}
.sd-hero:after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:60px;z-index:1;
    background:
        radial-gradient(1800px 90px at 50% 100%, var(--sd-night) 0 50%, transparent 51%);
    opacity:.45;
}
.sd-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.sd-eyebrow{
    display:inline-flex;align-items:center;gap:10px;padding:6px 14px;
    background:var(--sd-sand);border:1px solid rgba(202,138,4,.4);border-radius:999px;
    font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--sd-gold-deep);font-weight:700;
}
.sd-eyebrow:before{content:"";width:8px;height:8px;background:var(--sd-gold);border-radius:50%}
.sd-hero h1{
    font-family:var(--sd-display);font-weight:700;
    font-size:clamp(64px,11vw,168px);line-height:.85;color:var(--sd-night);margin:18px 0 14px;letter-spacing:.01em;
}
.sd-hero h1 em{
    font-style:normal;color:var(--sd-gold);
    text-shadow:0 4px 0 rgba(202,138,4,.15);
}
.sd-hero h1 .sd-curl{color:var(--sd-gold-deep)}
.sd-hero p{color:#3f3f46;font-size:18px;max-width:540px;margin:0 0 28px}
.sd-hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.sd-btn{
    display:inline-flex;align-items:center;gap:10px;padding:14px 28px;font-weight:700;
    background:var(--sd-night);color:var(--sd-sand);border-radius:0;font-size:14px;
    box-shadow:6px 6px 0 var(--sd-gold);
    transition:transform .25s ease,box-shadow .25s ease;
}
.sd-btn:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--sd-gold);background:var(--sd-night);color:var(--sd-sun)}
.sd-btn-outline{background:transparent;color:var(--sd-night);box-shadow:6px 6px 0 var(--sd-gold-deep),inset 0 0 0 2px var(--sd-night)}
.sd-btn-outline:hover{background:var(--sd-night);color:var(--sd-sun)}

/* Caravan card */
.sd-caravan{
    position:relative;background:var(--sd-sand-light);
    border:2px solid var(--sd-night);border-radius:0;
    padding:30px;
    box-shadow:10px 10px 0 var(--sd-gold);
}
.sd-caravan:before{
    content:"";position:absolute;top:8px;left:8px;right:8px;bottom:8px;
    border:1px dashed rgba(133,77,14,.35);pointer-events:none;
}
.sd-caravan h3{
    font-family:var(--sd-display);color:var(--sd-night);font-size:42px;font-weight:700;margin:0 0 12px;letter-spacing:.02em;
}
.sd-caravan ul{list-style:none;padding:0;margin:0}
.sd-caravan li{
    display:flex;justify-content:space-between;align-items:center;
    padding:12px 0;border-bottom:1px dotted rgba(133,77,14,.4);gap:18px;
}
.sd-caravan li:last-child{border-bottom:0}
.sd-caravan strong{color:var(--sd-night);font-weight:700}
.sd-caravan small{display:block;color:var(--sd-rock);font-size:12px;letter-spacing:.04em;margin-top:2px}
.sd-odds{
    background:var(--sd-night);color:var(--sd-sun);padding:6px 14px;font-weight:700;letter-spacing:.04em;font-size:18px;
    font-family:var(--sd-body);
}

/* Section heads */
.sd-main{padding:60px 0}
.sd-layout{display:grid;grid-template-columns:1fr 320px;gap:48px}
.sd-section-head{
    display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:30px;
    border-bottom:3px double var(--sd-gold);padding-bottom:14px;
}
.sd-section-head h2{
    font-family:var(--sd-display);color:var(--sd-night);font-size:64px;font-weight:700;line-height:.95;letter-spacing:.02em;margin:0;
}
.sd-section-head h2 em{color:var(--sd-gold);font-style:normal}
.sd-section-sub{color:var(--sd-rock);font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.sd-link{
    color:var(--sd-night);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;
    border:2px solid var(--sd-night);padding:9px 16px;
}
.sd-link:hover{background:var(--sd-night);color:var(--sd-sand)}

/* Cards */
.sd-feed{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
.sd-card{
    position:relative;background:#fff;border:2px solid var(--sd-night);
    transition:transform .35s ease;
    animation:sd-rise .9s ease both;animation-delay:var(--sd-d,0ms);
}
.sd-card:hover{transform:translate(-3px,-3px)}
.sd-card:after{
    content:"";position:absolute;left:6px;top:6px;right:-6px;bottom:-6px;background:var(--sd-gold);z-index:-1;
    transition:transform .35s ease;
}
.sd-card:hover:after{transform:translate(3px,3px)}
@keyframes sd-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.sd-card-thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--sd-sand);position:relative;border-bottom:2px solid var(--sd-night)}
.sd-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .9s ease;filter:saturate(1.05) sepia(.05)}
.sd-card:hover .sd-card-thumb img{transform:scale(1.06)}
.sd-card-tag{
    position:absolute;left:14px;top:14px;
    background:var(--sd-night);color:var(--sd-sun);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
    padding:5px 10px;
}
.sd-card-fb{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    background:
        radial-gradient(circle at 30% 70%, var(--sd-gold) 0 40%, transparent 41%),
        radial-gradient(circle at 70% 80%, var(--sd-gold-deep) 0 35%, transparent 36%),
        var(--sd-sand);
    color:var(--sd-night);font-family:var(--sd-display);font-size:96px;
}
.sd-card-body{padding:18px 20px 22px}
.sd-card-meta{
    color:var(--sd-rock);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
    display:flex;gap:10px;align-items:center;margin-bottom:8px;
}
.sd-card h3{
    font-family:var(--sd-display);color:var(--sd-night);font-size:38px;font-weight:700;line-height:.98;margin:0 0 8px;letter-spacing:.01em;
}
.sd-card h3 a{color:inherit}
.sd-card h3 a:hover{color:var(--sd-gold-deep)}
.sd-card p{color:#3f3f46;font-size:14.5px;margin:0 0 12px}
.sd-card-link{
    color:var(--sd-night);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;border-bottom:2px solid var(--sd-gold);padding-bottom:1px;
}
.sd-card-link:hover{border-color:var(--sd-night)}

/* Sidebar */
.sd-sidebar{display:flex;flex-direction:column;gap:24px}
.sd-widget{
    background:#fff;border:2px solid var(--sd-night);padding:22px;position:relative;
    box-shadow:6px 6px 0 var(--sd-gold);
}
.sd-widget h3{
    font-family:var(--sd-display);color:var(--sd-night);font-size:36px;font-weight:700;letter-spacing:.02em;margin:0 0 10px;
}
.sd-widget ul{list-style:none;margin:0;padding:0}
.sd-widget li{padding:7px 0;border-bottom:1px dotted rgba(133,77,14,.35);font-size:14.5px}
.sd-widget li:last-child{border-bottom:0}
.sd-widget a{color:var(--sd-night)}
.sd-widget a:hover{color:var(--sd-gold-deep)}
.sd-widget-oasis{background:var(--sd-night);color:var(--sd-sand);box-shadow:6px 6px 0 var(--sd-gold-deep)}
.sd-widget-oasis h3{color:var(--sd-sun)}
.sd-widget-oasis p{color:#fef3c7;font-size:14.5px}

/* Crumb */
.sd-crumb{
    color:var(--sd-rock);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;
    display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:30px 0 14px;
}
.sd-crumb a{color:var(--sd-night)}
.sd-crumb span{color:var(--sd-gold-deep)}

/* Article */
.sd-article{
    background:#fff;border:2px solid var(--sd-night);padding:48px;position:relative;
    box-shadow:14px 14px 0 var(--sd-gold);
}
.sd-article h1{
    font-family:var(--sd-display);color:var(--sd-night);font-size:clamp(54px,8vw,108px);line-height:.92;font-weight:700;letter-spacing:.02em;margin:8px 0 14px;
}
.sd-article-meta{color:var(--sd-rock);font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:22px}
.sd-article-feature{margin:24px 0 30px;border:2px solid var(--sd-night)}
.sd-content{font-size:17px;line-height:1.85;color:#27272a}
.sd-content p{margin:0 0 18px}
.sd-content h2{font-family:var(--sd-display);font-size:54px;margin:32px 0 12px;color:var(--sd-night);letter-spacing:.02em}
.sd-content h3{font-family:var(--sd-display);font-size:40px;margin:24px 0 8px;color:var(--sd-gold-deep);letter-spacing:.02em}
.sd-content blockquote{
    border-left:4px solid var(--sd-gold);background:var(--sd-sand);padding:18px 22px;margin:24px 0;
    font-family:var(--sd-display);font-size:32px;color:var(--sd-night);
}
.sd-content a{color:var(--sd-gold-deep);border-bottom:2px solid var(--sd-gold)}

/* Related */
.sd-related{margin-top:54px}
.sd-related h2{font-family:var(--sd-display);color:var(--sd-night);font-size:48px;letter-spacing:.02em;margin:0 0 18px;border-bottom:3px double var(--sd-gold);padding-bottom:8px}
.sd-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* Pager */
.sd-pager{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:42px}
.sd-pager a,.sd-pager span{
    background:#fff;border:2px solid var(--sd-night);color:var(--sd-night);padding:10px 16px;font-weight:700;letter-spacing:.06em;font-size:13px;
}
.sd-pager .current{background:var(--sd-gold);color:var(--sd-night)}

/* Comments */
.sd-comments{margin-top:50px;background:#fff;border:2px solid var(--sd-night);padding:28px;box-shadow:10px 10px 0 var(--sd-gold)}
.sd-comments h2,.sd-comments h3{font-family:var(--sd-display);color:var(--sd-night)}
.sd-comments h2{font-size:42px}
.sd-comments .comment{border-bottom:1px dotted rgba(133,77,14,.4);padding:16px 0}
.sd-comments input[type=text],.sd-comments input[type=email],.sd-comments input[type=url],.sd-comments textarea{
    width:100%;padding:14px 16px;background:var(--sd-sand-light);color:var(--sd-night);border:2px solid var(--sd-night);font-family:inherit;font-size:14.5px;
}
.sd-comments input[type=submit]{
    background:var(--sd-night);color:var(--sd-sun);border:2px solid var(--sd-night);padding:14px 26px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
    box-shadow:5px 5px 0 var(--sd-gold);
}

/* 404 */
.sd-404{padding:120px 0;text-align:center}
.sd-404 .sd-glyph{
    font-family:var(--sd-display);font-size:300px;line-height:.85;color:var(--sd-gold);text-shadow:10px 10px 0 var(--sd-night);
}
.sd-404 h1{font-family:var(--sd-display);color:var(--sd-night);font-size:64px;margin:0 0 14px;letter-spacing:.02em}
.sd-404 p{color:var(--sd-rock);max-width:560px;margin:0 auto 24px}

/* Footer */
.sd-footer{
    background:var(--sd-night);color:var(--sd-sand);padding:60px 0 26px;margin-top:60px;
    background-image:
        radial-gradient(900px 400px at 100% 100%, rgba(202,138,4,.25), transparent 60%);
    border-top:6px double var(--sd-gold);
}
.sd-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}
.sd-foot-grid h4{
    font-family:var(--sd-display);color:var(--sd-sun);font-size:36px;margin:0 0 12px;font-weight:700;letter-spacing:.02em;
}
.sd-foot-grid ul{list-style:none;margin:0;padding:0}
.sd-foot-grid li{padding:6px 0;font-size:14px}
.sd-foot-grid a{color:var(--sd-sand)}
.sd-foot-grid a:hover{color:var(--sd-sun)}
.sd-foot-brand p{color:#fef3c7;font-size:14px;max-width:340px}
.sd-foot-bottom{
    margin-top:42px;border-top:1px dashed rgba(254,240,138,.3);padding-top:22px;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
    font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#fef3c7;
}

@media (max-width:980px){
    .sd-hero-grid,.sd-layout{grid-template-columns:1fr;gap:36px}
    .sd-feed,.sd-related-grid{grid-template-columns:1fr 1fr}
    .sd-foot-grid{grid-template-columns:1fr 1fr}
    .sd-section-head h2{font-size:48px}
}
@media (max-width:560px){
    .sd-feed,.sd-related-grid,.sd-foot-grid{grid-template-columns:1fr}
    .sd-article{padding:24px}
    .sd-card:after{display:none}
}
