/* =========================================================
   MYSHOP — PREMIUM UI ENHANCEMENT LAYER
   Keeps the original black + light-yellow palette.
========================================================= */
:root{
  --yellow:#f6e58d;
  --yellow-bright:#ffe66d;
  --yellow-soft:#fff4b5;
  --ink:#050505;
  --panel:#0d0d0d;
  --panel-2:#121212;
  --line:rgba(255,255,255,.09);
  --line-strong:rgba(246,229,141,.22);
  --text:#f4f4f1;
  --muted:#a6a6a1;
  --ease:cubic-bezier(.2,.7,.2,1);
}

body{
  font-size:16px;
  background:
    radial-gradient(circle at 12% 0%,rgba(246,229,141,.055),transparent 30rem),
    radial-gradient(circle at 88% 18%,rgba(255,255,255,.035),transparent 28rem),
    var(--ink);
  text-rendering:optimizeLegibility;
}

.container{width:min(calc(100% - 48px),1240px)}

.site-header{
  background:rgba(5,5,5,.78);
  border-bottom:1px solid rgba(246,229,141,.13);
  box-shadow:0 10px 35px rgba(0,0,0,.18);
}
.header-inner{min-height:84px}
.logo{font-size:29px;letter-spacing:-1.4px}
.main-nav{gap:30px}
.main-nav a{font-size:14px;letter-spacing:.01em;padding:30px 0}
.main-nav a.active::after{height:3px;bottom:20px}
.header-actions{gap:14px}
.cart-link{
  border:1px solid var(--line);
  background:rgba(255,255,255,.025);
  border-radius:999px;
  padding:10px 14px;
  transition:transform .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease);
}
.cart-link:hover{transform:translateY(-2px);border-color:var(--line-strong);background:rgba(246,229,141,.06)}
.cart-link b{min-width:22px;height:22px;display:inline-grid;place-items:center;border-radius:50%;font-size:11px;background:var(--yellow);color:#080808}

.hero,.shop-hero,.page-hero{position:relative;overflow:hidden}
.hero::before,.shop-hero::before,.page-hero::before{
  content:"";position:absolute;inset:-30% -10%;pointer-events:none;
  background:radial-gradient(circle at 72% 42%,rgba(246,229,141,.08),transparent 24rem);
}
.hero-content h1{font-size:clamp(46px,5.4vw,76px);line-height:1.02;letter-spacing:-.045em}
.hero-content p{font-size:17px;line-height:1.8;max-width:620px;color:#bdbdb8}
.eyebrow,.section-label{font-size:12px;letter-spacing:.16em;font-weight:800}

.btn,.add-to-cart-btn,.checkout-btn,.place-order-btn,.shop-now-btn,.thank-you-btn{
  min-height:50px;
  border-radius:12px;
  font-size:14px;
  font-weight:800;
  letter-spacing:.01em;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),border-color .25s var(--ease);
}
.btn-primary,.add-to-cart-btn,.checkout-btn,.place-order-btn{
  box-shadow:0 12px 28px rgba(246,229,141,.10),inset 0 1px rgba(255,255,255,.25);
}
.btn-primary:hover,.add-to-cart-btn:hover,.checkout-btn:hover,.place-order-btn:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(246,229,141,.17)}
.btn-outline{border-color:rgba(246,229,141,.35)}

.section-heading h2,.page-heading h1{font-size:clamp(32px,4vw,48px);letter-spacing:-.035em;line-height:1.08}
.section-heading p,.page-heading p{font-size:16px;color:var(--muted)}

.product-card,.shop-product-card,.why-card,.value-card,.feature-item,.contact-details-card,.contact-form-card,.cart-summary,.checkout-card,.order-card,.policy-section,.mission-box{
  background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  border:1px solid var(--line);
  box-shadow:0 18px 50px rgba(0,0,0,.20);
}
.product-card,.shop-product-card{overflow:hidden;border-radius:18px;transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.product-card:hover,.shop-product-card:hover{transform:translateY(-7px);border-color:var(--line-strong);box-shadow:0 25px 65px rgba(0,0,0,.34)}
.product-image,.shop-product-image{background:linear-gradient(135deg,#121212,#080808)}
.product-info,.shop-product-info{padding:22px}
.product-category{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#a7a79f}
.product-description,.shop-product-description{font-size:14px;line-height:1.65;color:#a9a9a4}
.product-price,.shop-price{font-size:21px;font-weight:850;color:var(--yellow)}
.product-badge,.shop-product-badge{border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.08em;padding:7px 10px}

.feature-item,.why-card,.value-card{border-radius:16px;transition:transform .3s var(--ease),border-color .3s var(--ease)}
.feature-item:hover,.why-card:hover,.value-card:hover{transform:translateY(-4px);border-color:var(--line-strong)}

.about-content p,.policy-content p,.contact-intro p,.cart-page p,.checkout-page p{font-size:16px;line-height:1.85;color:#b8b8b3}
.policy-section{border-radius:16px;padding:28px}
.policy-section h2{font-size:23px;letter-spacing:-.02em;margin-bottom:12px}
.policy-links a{color:var(--yellow);text-decoration:underline;text-underline-offset:3px}

.form-group label{font-size:13px;font-weight:750;color:#ddd}
.form-group input,.form-group textarea,.form-group select,.sort-box select,.quantity-input{
  min-height:48px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:11px;
  background:#0a0a0a;
  color:#f2f2ee;
  padding:12px 14px;
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.form-group textarea{min-height:145px}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus,.sort-box select:focus,.quantity-input:focus{
  border-color:rgba(246,229,141,.58);box-shadow:0 0 0 4px rgba(246,229,141,.07);outline:0;background:#0d0d0d;
}

.shop-toolbar{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:14px;padding:10px 14px}
.shop-view-btn{border-radius:10px}

.cart-item,.summary-product-info,.order-item-info{border-color:var(--line)}
.cart-summary,.checkout-card,.order-card{border-radius:18px}
.summary-total,.order-total{color:var(--yellow)}
.empty-cart,.empty-checkout{border:1px dashed rgba(246,229,141,.24);background:rgba(246,229,141,.025);border-radius:18px}

.payment-option{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.018)}
.payment-option.active{border-color:rgba(246,229,141,.4);box-shadow:0 14px 35px rgba(0,0,0,.2)}

.site-footer{background:linear-gradient(180deg,#080808,#040404);border-top:1px solid var(--line);margin-top:60px}
.footer-column a,.footer-bottom a{transition:color .2s}
.footer-column a:hover,.footer-bottom a:hover{color:var(--yellow)}

/* premium decorative edge */
.hero-image-card,.hero-visual,.about-visual-card,.contact-bottom,.cta-box{border-color:rgba(246,229,141,.16)}
.image-placeholder,.product-placeholder,.shop-product-image{position:relative}
.image-placeholder::after,.product-placeholder::after,.shop-product-image::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(120deg,transparent 25%,rgba(255,255,255,.035) 50%,transparent 75%);
  transform:translateX(-100%);transition:transform .7s var(--ease)
}
.product-card:hover .product-placeholder::after,.shop-product-card:hover .shop-product-image::after{transform:translateX(100%)}

@media (max-width:900px){
  .container{width:min(calc(100% - 32px),1240px)}
  .header-inner{min-height:72px}
  .main-nav{gap:20px}
  .main-nav a{font-size:13px}
  .hero-content h1{font-size:clamp(40px,8vw,62px)}
}
@media (max-width:700px){
  body{font-size:15px}
  .container{width:min(calc(100% - 24px),1240px)}
  .logo{font-size:25px}
  .cart-link{padding:9px 11px}
  .hero-content p{font-size:15px;line-height:1.7}
  .section-heading h2,.page-heading h1{font-size:34px}
  .product-info,.shop-product-info{padding:18px}
  .policy-section{padding:21px}
  .form-group input,.form-group textarea,.form-group select{min-height:50px}
}
@media (prefers-reduced-motion:reduce){
  .product-card:hover,.shop-product-card:hover,.feature-item:hover,.why-card:hover,.value-card:hover{transform:none}
}

/* Shared mobile menu, deliberately at the end for precedence over page CSS. */
@media (max-width:760px){
  .mobile-menu-btn{display:flex!important;position:relative;z-index:1100}
  .main-nav{
    position:fixed!important;top:72px;left:12px;right:12px;width:auto!important;
    display:flex!important;flex-direction:column;align-items:stretch!important;gap:0!important;
    padding:10px!important;border:1px solid rgba(246,229,141,.16);border-radius:16px;
    background:rgba(9,9,9,.98);box-shadow:0 25px 70px rgba(0,0,0,.6);
    opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;
    transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s;
  }
  .main-nav.open{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .main-nav a{padding:15px 14px!important;border-radius:10px}
  .main-nav a:hover{background:rgba(246,229,141,.06)}
  .main-nav a.active::after{display:none}
  .mobile-menu-btn span{transition:transform .25s,opacity .2s}
  .mobile-menu-btn.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .mobile-menu-btn.open span:nth-child(2){opacity:0}
  .mobile-menu-btn.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
}

/* =========================================================
   HOMEPAGE FINAL LAYOUT
   ========================================================= */

/* ---------- Common section headings ---------- */

.about-home,
.why-us,
.contact-cta {
    text-align: center;
}

.about-home .section-label,
.about-home h2,
.why-us .section-label,
.why-us h2,
.contact-cta .section-label,
.contact-cta h2,
.contact-cta p {
    text-align: center;
}


/* ---------- About Section ---------- */

.about-home {
    padding-top: 70px;
    padding-bottom: 75px;
}

.about-home .about-content {
    text-align: center;
}

.about-home .about-content p {
    width: calc(100% - 80px);
    max-width: none;
    margin: 12px auto 0;
    text-align: center;
}

.about-home .about-content .btn {
    display: inline-flex;
    margin: 22px auto 0;
}


/* ---------- Why Choose Us ---------- */

.why-us {
    padding-top: 70px;
    padding-bottom: 75px;
}

.why-us .section-label {
    display: block;
    text-align: center;
    margin-bottom: 10px;
}

.why-us h2 {
    text-align: center;
    margin-top: 0;
    margin-bottom: 30px;
}

.why-us .why-card {
    text-align: center;
}

.why-us .why-card .why-number,
.why-us .why-card h3,
.why-us .why-card p {
    text-align: center;
}


/* ---------- Contact CTA ---------- */

.contact-cta {
    padding-top: 70px;
    padding-bottom: 75px;
}

.contact-cta .cta-content {
    text-align: center;
}

.contact-cta .section-label {
    display: block;
    text-align: center;
    margin-bottom: 10px;
}

.contact-cta h2 {
    text-align: center;
    margin-top: 0;
    margin-bottom: 14px;
}

.contact-cta p {
    text-align: center;
    margin-bottom: 22px;
}

.contact-cta .btn {
    display: inline-flex;
    margin: 0 auto;
}


/* ---------- Feature text readability ---------- */

.feature-item h3 {
    font-size: 18px;
    line-height: 1.4;
}

.feature-item p {
    font-size: 15px;
    line-height: 1.6;
}


/* ---------- Footer readability ---------- */

.site-footer .footer-brand p,
.site-footer .footer-column a,
.site-footer .footer-column p {
    font-size: 15px;
    line-height: 1.7;
}

.site-footer .footer-column h3 {
    font-size: 17px;
}

.site-footer .footer-bottom p,
.site-footer .footer-bottom a {
    font-size: 14px;
}


/* ---------- Mobile ---------- */

@media (max-width: 768px) {

    .about-home {
        padding-top: 50px;
        padding-bottom: 55px;
    }

    .about-home .about-content p {
        width: calc(100% - 30px);
    }

    .why-us {
        padding-top: 50px;
        padding-bottom: 55px;
    }

    .contact-cta {
        padding-top: 50px;
        padding-bottom: 55px;
    }

    .feature-item h3 {
        font-size: 18px;
    }

    .feature-item p {
        font-size: 15px;
    }

    .site-footer .footer-brand p,
    .site-footer .footer-column a,
    .site-footer .footer-column p {
        font-size: 15px;
    }
}

/* =========================================================
   HOMEPAGE SECTION ALIGNMENT - FINAL
   ========================================================= */

/* Why Choose Us heading */
.why-us .centered-heading,
.why-us .centered-heading > div,
.why-us .centered-heading .section-label,
.why-us .centered-heading h2 {
    width: 100%;
    text-align: center;
}

.why-us .centered-heading h2 {
    margin-left: auto;
    margin-right: auto;
}


/* About heading/content */
.about-home .about-content {
    text-align: center;
}

.about-home .about-content .section-label,
.about-home .about-content h2,
.about-home .about-content p {
    text-align: center;
}


/* Contact heading/content */
.contact-cta .cta-content {
    text-align: center;
}

.contact-cta .cta-content .section-label,
.contact-cta .cta-content h2,
.contact-cta .cta-content p {
    text-align: center;
}

.contact-cta .cta-content .btn {
    margin-left: auto;
    margin-right: auto;
}


/* Feature section */
.feature-item h3,
.feature-item p {
    text-align: left;
}

/* =========================================================
   FINAL HEADER RESPONSIVE FIX
========================================================= */

@media (max-width: 760px) {

    .site-header {
        width: 100%;
        overflow: visible;
    }

    .header-inner {
        width: 100%;
        min-height: 72px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
    }

    /* Logo must be allowed to shrink */
    .logo {
        flex: 1 1 auto;
        min-width: 0;
        max-width: calc(100% - 100px);
        overflow: hidden;
        white-space: nowrap;
    }

    .logo img {
        width: auto;
        max-width: 150px;
        height: auto;
        max-height: 44px;
        object-fit: contain;
    }

    /* Cart + hamburger stay fixed on right */
    .header-actions {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 7px;
        margin-left: auto;
    }

    /* Compact cart on mobile */
    .cart-link {
        width: 42px;
        min-width: 42px;
        max-width: 42px;
        height: 42px;
        min-height: 42px;
        padding: 0 !important;

        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0;

        flex: 0 0 42px;
        border-radius: 9px;
    }

    .cart-link span {
        display: none !important;
    }

    .cart-link svg {
        width: 18px;
        height: 18px;
        flex: 0 0 auto;
    }

    .cart-link b {
        position: absolute;
        margin-top: -28px;
        margin-left: 25px;

        min-width: 18px;
        width: 18px;
        height: 18px;

        padding: 0;
        font-size: 9px;
    }

    /* Hamburger */
    .mobile-menu-btn {
        width: 42px !important;
        min-width: 42px;
        height: 42px !important;
        min-height: 42px;

        flex: 0 0 42px;

        padding: 0;
        margin: 0;
    }
}


/* Smaller phones */
@media (max-width: 420px) {

    .container {
        width: calc(100% - 20px);
    }

    .header-inner {
        gap: 6px;
    }

    .logo {
        max-width: calc(100% - 94px);
    }

    .logo img {
        max-width: 130px;
    }

    .header-actions {
        gap: 5px;
    }

    .cart-link,
    .mobile-menu-btn {
        width: 40px !important;
        min-width: 40px;
        max-width: 40px;
        height: 40px !important;
        min-height: 40px;
        flex-basis: 40px;
    }

    .cart-link b {
        margin-top: -27px;
        margin-left: 23px;
    }
}