:root{
    --header-height:80px;
    --cream:#f7f4ef;
    --ivory:#fdfbf7;
    --charcoal:#1a1a18;
    --warm-dark:#2c2b26;
    --gold:#b8963e;
    --gold-light:#d4af6a;
    --muted:#8a8780;
    --border:#e2ddd6;
    --panel:#f2ede5;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Montserrat",sans-serif;background:var(--ivory);color:var(--charcoal);cursor:none}
body.touch-mode{cursor:auto}
body.touch-mode a,body.touch-mode button,body.touch-mode input,body.touch-mode textarea{cursor:pointer}
a,button,input,textarea{cursor:none}
img{max-width:100%}
main{margin-top:var(--header-height)}

.cursor,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none}
.cursor{width:8px;height:8px;border-radius:50%;background:var(--gold);z-index:99999}
.cursor-ring{width:32px;height:32px;border:1px solid var(--gold);border-radius:50%;z-index:99998}
body.touch-mode .cursor,body.touch-mode .cursor-ring{display:none}

header{
    position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--header-height);
    display:flex;align-items:center;justify-content:space-between;padding:0 60px;
    background:rgba(253,251,247,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);
    transition:box-shadow .3s ease
}
.logo,.footer-logo{
    font-family:"Cormorant Garamond",serif;letter-spacing:.35em;text-transform:uppercase;text-decoration:none
}
.logo{font-size:2rem;font-weight:300;color:var(--charcoal)}
.logo span,.footer-logo span{color:var(--gold)}
nav ul{list-style:none;display:flex;gap:2.25rem;align-items:center}
nav a,.footer-links a{text-decoration:none;position:relative;transition:color .3s ease}
nav a{font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
nav a::after{
    content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--gold);transition:width .3s ease
}
nav a:hover,nav a.active{color:var(--charcoal)}
nav a:hover::after,nav a.active::after{width:100%}
.cart-btn{
    display:inline-flex;align-items:center;gap:8px;border:none;background:none;color:var(--charcoal);
    font-size:.7rem;letter-spacing:.15em;text-transform:uppercase
}
.cart-count{
    width:18px;height:18px;border-radius:50%;background:var(--gold);color:#fff;font-size:.65rem;font-weight:600;
    display:inline-flex;align-items:center;justify-content:center
}

.hero{min-height:calc(100vh - var(--header-height));display:grid;grid-template-columns:1fr 1fr;overflow:hidden}
.hero-left{
    position:relative;overflow:hidden;background:var(--charcoal);padding:80px;display:flex;flex-direction:column;justify-content:flex-end
}
.hero-left::before{
    content:"Selly";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    font-family:"Cormorant Garamond",serif;font-size:18rem;font-weight:300;letter-spacing:.08em;
    color:rgba(255,255,255,.03);white-space:nowrap
}
.hero-tag,.section-eyebrow,.page-eyebrow,.footer-col-title,.contact-detail-label,.form-label,.total-label{
    font-size:.65rem;letter-spacing:.3em;text-transform:uppercase
}
.hero-tag,.section-eyebrow,.page-eyebrow,.footer-col-title,.contact-detail-label{color:var(--gold)}
.hero-tag{margin-bottom:24px}
.hero-title,.section-title,.page-title,.contact-info-title,.form-title,.terms-h,.cart-head-title,.total-amount,.product-name,.overlay-name,.team-name,.feature-title,.about-quote,.cart-item-name,.panel-title,.size-card h4{
    font-family:"Cormorant Garamond",serif;font-weight:300
}
.hero-title{font-size:5rem;line-height:.98;color:#fff;margin-bottom:32px}
.hero-title em,.section-title em,.page-title em{color:var(--gold-light);font-style:italic}
.hero-cta{
    display:inline-flex;align-items:center;gap:14px;width:fit-content;color:#fff;text-decoration:none;
    font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;transition:gap .3s ease
}
.hero-cta::after{content:"->";color:var(--gold);transition:transform .3s ease}
.hero-cta:hover{gap:22px}
.hero-cta:hover::after{transform:translateY(4px)}
.hero-right{position:relative;overflow:hidden}
.hero-right img,.about-right img,.team-card img,.product-img{width:100%;height:100%;object-fit:cover;display:block}
.hero-right img{transition:transform 6s ease}
.hero-right:hover img{transform:scale(1.05)}
.hero-right-overlay{position:absolute;right:0;bottom:0;padding:32px 40px;background:var(--cream);max-width:260px}
.hero-stat{font-family:"Cormorant Garamond",serif;font-size:3rem;line-height:1}
.hero-stat-label{margin-top:4px;color:var(--muted);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase}

.section-header{text-align:center;padding:80px 60px 60px}
.section-title{font-size:3.5rem;color:var(--charcoal)}
.products-grid{display:grid;gap:2px;padding:0 60px 80px}
.products-grid.featured{grid-template-columns:repeat(3,minmax(0,1fr))}
.products-grid.featured .product-card:first-child{grid-row:span 2}
.products-grid.four-col{grid-template-columns:repeat(4,minmax(0,1fr));padding-top:4px}
.product-card,.team-card{position:relative;overflow:hidden;background:var(--cream)}
.product-img{aspect-ratio:3/4;transition:transform .6s cubic-bezier(.25,.46,.45,.94)}
.products-grid.featured .product-card:first-child .product-img{height:100%}
.product-card:hover .product-img,.team-card:hover img{transform:scale(1.05)}
.product-overlay,.team-overlay{
    position:absolute;left:0;right:0;bottom:0;padding:40px 24px 24px;background:linear-gradient(transparent,rgba(26,26,24,.9))
}
.product-overlay{opacity:0;transform:translateY(18px);transition:all .35s ease}
.product-card:hover .product-overlay{opacity:1;transform:translateY(0)}
.product-name,.overlay-name{font-size:1.2rem;font-weight:400}
.product-info-bar{
    padding:20px 24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px
}
.product-price,.overlay-price,.cart-item-price{color:var(--gold);letter-spacing:.1em;font-size:.75rem}
.overlay-price,.team-role{color:var(--gold-light)}
.overlay-price{margin:8px 0 16px}
.add-cart-btn,.checkout-btn,.submit-btn,.qty-btn{transition:all .3s ease}
.add-cart-btn,.submit-btn,.checkout-btn{border:none;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem}
.add-cart-btn{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;padding:10px 20px}
.add-cart-btn:hover,.submit-btn:hover,.checkout-btn:hover{background:var(--gold)}

.features-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--charcoal)}
.feature-item{padding:48px 40px;border-right:1px solid rgba(255,255,255,.08)}
.feature-item:last-child{border-right:none}
.feature-icon{font-size:1.3rem;margin-bottom:16px}
.feature-title{font-size:1.2rem;color:#fff;margin-bottom:8px}
.feature-text,.footer-desc,.footer-copy,.terms-p,.content-copy,.about-text,.contact-detail-value,.panel-text,.info-list li,.size-card p,.policy-list li{line-height:1.9}
.feature-text,.footer-desc,.footer-copy{font-size:.75rem}
.feature-text{color:rgba(255,255,255,.5)}

.page-hero{
    position:relative;overflow:hidden;background:var(--charcoal);padding:100px 60px 60px
}
.page-hero::before,.page-hero::after{
    content:"";position:absolute;border-radius:50%;border:1px solid rgba(184,150,62,.08)
}
.page-hero::before{top:-50%;right:-10%;width:500px;height:500px}
.page-hero::after{top:-20%;right:5%;width:300px;height:300px}
.page-title{font-size:4rem;color:#fff;line-height:1.05}
.about-grid,.contact-layout{display:grid;grid-template-columns:1fr 1fr}
.about-left,.contact-left,.contact-right,.page-content,.terms-container{padding:80px 60px}
.about-text,.content-copy,.terms-p,.contact-detail-value,.panel-text,.info-list li,.size-card p,.policy-list li{color:#5a5a58;font-size:.86rem}
.about-text,.content-copy,.terms-p{margin-bottom:18px}
.about-quote{margin:40px 0;padding-left:24px;border-left:2px solid var(--gold);font-size:2rem;line-height:1.4}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-top:4px}
.team-role{margin-top:4px;font-size:.65rem;letter-spacing:.2em;text-transform:uppercase}

.contact-left{background:var(--charcoal)}
.contact-right{background:var(--cream)}
.contact-info-title,.form-title{font-size:2rem;margin-bottom:40px}
.contact-info-title{color:#fff}
.contact-detail{margin-bottom:36px}
.contact-detail-value{color:rgba(255,255,255,.72)}
.form-row{margin-bottom:28px}
.form-label{display:block;margin-bottom:10px;color:var(--muted);font-size:.6rem}
.form-input,.form-textarea{
    width:100%;border:none;border-bottom:1px solid var(--border);padding:12px 0;background:transparent;color:var(--charcoal);font:inherit;outline:none
}
.form-input:focus,.form-textarea:focus{border-bottom-color:var(--gold)}
.form-textarea{min-height:110px;resize:vertical}
.submit-btn,.checkout-btn{background:var(--charcoal);color:#fff;padding:18px 48px}
.checkout-btn{width:100%}
.newsletter-panel,.info-panel,.size-card{background:var(--panel);border:1px solid var(--border);padding:28px}
.newsletter-panel{margin-top:32px}
.panel-title{font-size:1.6rem;margin-bottom:10px}
.info-list,.policy-list{list-style:none}
.info-list{display:grid;gap:10px;margin-top:18px}

.terms-container{max-width:860px;margin:0 auto}
.terms-section{padding-bottom:44px;margin-bottom:44px;border-bottom:1px solid var(--border)}
.terms-section:last-child{border-bottom:none;margin-bottom:0}
.terms-h{font-size:1.7rem;margin-bottom:18px}
.shipping-table,.size-table{width:100%;border-collapse:collapse;margin:24px 0}
.shipping-table th,.size-table th{
    text-align:left;font-size:.65rem;font-weight:600;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;
    padding:12px 16px;border-bottom:1px solid var(--border)
}
.shipping-table td,.size-table td{padding:16px;border-bottom:1px solid var(--border);font-size:.84rem;color:#5a5a58}
.shipping-table tr:last-child td,.size-table tr:last-child td{border-bottom:none}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0 40px}
.size-card h4{font-size:1.4rem;margin-bottom:10px}
.policy-list{display:grid;gap:14px;margin-top:20px}
.policy-list li{padding-left:18px;position:relative}
.policy-list li::before{
    content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--gold)
}
.terms-p a,.panel-text a,.about-text a,.content-copy a{
    color:var(--charcoal);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px
}

.cart-backdrop{
    position:fixed;inset:0;background:rgba(26,26,24,.5);z-index:9998;opacity:0;pointer-events:none;transition:opacity .35s ease
}
.cart-backdrop.visible{opacity:1;pointer-events:auto}
.cart-sidebar{
    position:fixed;top:0;right:-480px;width:480px;height:100vh;background:var(--ivory);border-left:1px solid var(--border);
    z-index:9999;display:flex;flex-direction:column;transition:right .45s cubic-bezier(.77,0,.175,1)
}
.cart-sidebar.open{right:0}
.cart-head,.cart-foot{padding:32px 40px}
.cart-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
.cart-head-title{font-size:1.7rem}
.close-cart,.remove-btn{border:none;background:none;color:var(--muted)}
.close-cart{font-size:1.2rem}
.cart-body{flex:1;overflow-y:auto;padding:24px 40px}
.empty-cart-msg{text-align:center;padding:60px 0}
.empty-cart-msg p:first-child{font-family:"Cormorant Garamond",serif;font-size:1.4rem;margin-bottom:8px}
.empty-cart-msg p:last-child{color:var(--muted);font-size:.75rem}
.cart-item{display:flex;gap:18px;padding:20px 0;border-bottom:1px solid var(--border)}
.cart-item img{width:80px;height:100px;object-fit:cover}
.cart-item-details{flex:1}
.cart-item-name{font-size:1.1rem;font-weight:400;margin-bottom:4px}
.cart-item-price{margin-bottom:12px}
.qty-row{display:flex;align-items:center;gap:12px}
.qty-btn{
    width:28px;height:28px;border:1px solid var(--border);background:none;color:var(--charcoal);display:inline-flex;align-items:center;justify-content:center
}
.qty-btn:hover{border-color:var(--gold);color:var(--gold)}
.qty-num{min-width:22px;text-align:center;font-size:.85rem}
.remove-btn{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}
.cart-total-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px}
.total-label{color:var(--muted)}
.total-amount{font-size:1.8rem}
.notification{
    position:fixed;left:50%;bottom:40px;transform:translateY(-50%) translateY(80px);background:var(--charcoal);
    color:#fff;padding:16px 40px;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;z-index:99997;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1)
}
.notification.show{transform:translateY(-50%) translateY(0)}

footer{background:var(--warm-dark);padding:80px 60px 40px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px}
.footer-logo{display:inline-block;font-size:2.2rem;font-weight:300;color:#fff;margin-bottom:20px}
.footer-desc{color:rgba(255,255,255,.45)}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:12px}
.footer-links a{color:rgba(255,255,255,.55);font-size:.78rem;letter-spacing:.03em}
.footer-links a:hover{color:#fff}
.footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);padding-top:40px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap
}
.footer-copy{color:rgba(255,255,255,.28)}

@media (max-width:1100px){
    .products-grid.four-col,.features-strip,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
    :root{--header-height:138px}
    header{height:var(--header-height);padding:14px 24px;flex-direction:column;justify-content:center;gap:14px}
    nav{width:100%}
    nav ul{justify-content:center;flex-wrap:wrap;gap:.9rem 1.4rem}
    .hero,.about-grid,.contact-layout,.footer-grid{grid-template-columns:1fr}
    .hero-right{min-height:420px}
    .products-grid.featured{grid-template-columns:repeat(2,minmax(0,1fr))}
    .products-grid.featured .product-card:first-child{grid-row:auto}
    .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .about-left,.contact-left,.contact-right,.page-content,.terms-container,.page-hero{padding-left:30px;padding-right:30px}
    .section-header,.products-grid,footer{padding-left:30px;padding-right:30px}
}
@media (max-width:640px){
    :root{--header-height:176px}
    .hero-left,.page-hero,.about-left,.contact-left,.contact-right,.page-content,.terms-container,.section-header,.products-grid,footer{
        padding-left:20px;padding-right:20px
    }
    .hero-left{padding-top:60px;padding-bottom:60px}
    .hero-title{font-size:3.5rem}
    .section-title,.page-title{font-size:2.9rem}
    .products-grid.featured,.products-grid.four-col,.features-strip,.guide-grid,.team-grid{grid-template-columns:1fr}
    .cart-sidebar{width:100%;right:-100%}
    .cart-head,.cart-foot,.cart-body{padding-left:24px;padding-right:24px}
    .hero-right{min-height:320px}
}
