.btn{display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-8);font-family:var(--f-condensed);font-size:var(--t-sm);font-weight:var(--fw-bold);letter-spacing:var(--ls-wider);text-transform:uppercase;border-radius:var(--radius-full);cursor:pointer;position:relative;overflow:hidden;border:none;outline:none;transition:transform var(--dur-normal) var(--ease-gold),box-shadow var(--dur-normal) var(--ease-gold)}
.btn::before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,0.15) 50%,transparent 60%);transform:translateX(-100%);transition:transform var(--dur-slow) var(--ease-out-expo)}
.btn:hover::before{transform:translateX(100%)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--gold{background:var(--c-bg-cream);color:var(--c-text-primary);box-shadow:inset 0 0 0 1.5px var(--c-gold-mid)}
.btn--gold:hover{box-shadow:inset 0 0 0 1.5px var(--c-gold-bright),var(--shadow-gold);color:var(--c-gold-dark)}
.btn--dark{background:var(--c-bg-dark);color:var(--c-text-light);box-shadow:inset 0 0 0 1.5px var(--c-gold-mid)}
.btn--dark:hover{background:var(--c-gray-900);box-shadow:inset 0 0 0 1.5px var(--c-gold-bright),var(--shadow-gold)}
.btn__arrow{display:inline-block;transition:transform var(--dur-normal) var(--ease-gold)}
.btn:hover .btn__arrow{transform:translateX(4px)}
.corsell-nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed);padding:var(--sp-4) var(--gutter);display:flex;align-items:center;justify-content:space-between;transition:background var(--dur-slow) var(--ease-out-expo),backdrop-filter var(--dur-slow) var(--ease-out-expo)}
.corsell-nav.is-scrolled{background:rgba(13,13,11,0.85);backdrop-filter:var(--blur-md);-webkit-backdrop-filter:var(--blur-md);box-shadow:0 1px 0 rgba(201,150,58,0.15)}
.corsell-nav__links{display:flex;align-items:center;gap:var(--sp-8)}
.corsell-nav__link{font-family:var(--f-condensed);font-size:var(--t-sm);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--c-text-light);position:relative;padding-bottom:2px}
.corsell-nav__link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--c-gold-mid);transition:width var(--dur-normal) var(--ease-gold)}
.corsell-nav__link:hover::after,.corsell-nav__link.is-active::after{width:100%}
.guitar-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--c-bg-warm);cursor:pointer;transition:transform var(--dur-slow) var(--ease-gold),box-shadow var(--dur-slow) var(--ease-gold)}
.guitar-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.guitar-card__img{width:100%;aspect-ratio:3/4;object-fit:contain;object-position:center bottom;transition:transform var(--dur-cinematic) var(--ease-gold);padding:var(--sp-6) var(--sp-4) 0}
.guitar-card:hover .guitar-card__img{transform:scale(1.05) translateY(-4px)}
.guitar-card__body{padding:var(--sp-6);border-top:var(--border-gold)}
.guitar-card__number{font-family:var(--f-condensed);font-size:var(--t-sm);color:var(--c-gold-mid);letter-spacing:var(--ls-wider);margin-bottom:var(--sp-2)}
.guitar-card__name{font-family:var(--f-display);font-size:var(--t-xl);font-weight:var(--fw-semibold);color:var(--c-text-primary);margin-bottom:var(--sp-3)}
.guitar-card__desc{font-size:var(--t-sm);color:var(--c-text-secondary);line-height:var(--lh-relaxed)}
.feature-card{padding:var(--sp-6);background:var(--c-off-white);border:var(--border-dark);border-radius:var(--radius-lg);position:relative;overflow:hidden;transition:border-color var(--dur-normal) var(--ease-gold),transform var(--dur-normal) var(--ease-gold)}
.feature-card:hover{border-color:var(--c-gold-mid);transform:translateY(-4px)}
.feature-card__star{position:absolute;top:var(--sp-4);right:var(--sp-4);color:var(--c-gold-mid);font-size:var(--t-lg)}
.feature-card__title{font-family:var(--f-condensed);font-size:var(--t-sm);font-weight:var(--fw-bold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--c-text-primary);margin-bottom:var(--sp-3)}
.feature-card__text{font-size:var(--t-sm);color:var(--c-text-secondary);line-height:var(--lh-relaxed)}
.editorial-num{display:grid;grid-template-columns:auto 1fr;gap:0 var(--sp-6);align-items:end}
.editorial-num__digits{display:flex;flex-direction:column;line-height:0.85}
.editorial-num__n{font-family:var(--f-condensed);font-size:clamp(3rem,6vw,6rem);font-weight:var(--fw-black);color:var(--c-gold-mid)}
.editorial-num__de{font-family:var(--f-condensed);font-size:clamp(1.5rem,3vw,3rem);font-weight:var(--fw-black);color:var(--c-text-muted)}
.editorial-num__title{font-family:var(--f-condensed);font-size:clamp(2rem,4vw,4rem);font-weight:var(--fw-black);text-transform:uppercase;line-height:var(--lh-tight)}
.corsell-tabs{display:flex;gap:var(--sp-6);border-bottom:var(--border-gold);margin-bottom:var(--sp-8)}
.corsell-tab{font-family:var(--f-condensed);font-size:var(--t-sm);font-weight:var(--fw-bold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--c-text-muted);padding-bottom:var(--sp-3);position:relative;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-expo)}
.corsell-tab::after{content:'';position:absolute;bottom:-1px;left:0;width:0;height:2px;background:var(--c-gold-mid);transition:width var(--dur-normal) var(--ease-gold)}
.corsell-tab.is-active{color:var(--c-text-primary)}
.corsell-tab.is-active::after{width:100%}
.spec-table{width:100%;border-collapse:collapse}
.spec-table tr{border-bottom:var(--border-light);transition:background var(--dur-fast) var(--ease-out-expo)}
.spec-table tr:hover{background:rgba(201,150,58,0.04)}
.spec-table td{padding:var(--sp-4) var(--sp-2);font-size:var(--t-sm);vertical-align:top}
.spec-table td:first-child{font-family:var(--f-condensed);font-size:var(--t-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--c-text-muted);width:40%}
.spec-table td:last-child{color:var(--c-text-light);text-align:right}
.pull-quote{text-align:center;max-width:var(--max-width-text);margin-inline:auto;padding:var(--sp-16) var(--gutter)}
.pull-quote__text{font-family:var(--f-condensed);font-size:clamp(1.2rem,2.5vw,2rem);font-weight:var(--fw-black);text-transform:uppercase;letter-spacing:var(--ls-wide);line-height:var(--lh-snug)}
.pull-quote__text em{font-style:normal;color:var(--c-gold-mid)}
.eyebrow{display:inline-flex;align-items:center;gap:var(--sp-3);font-family:var(--f-condensed);font-size:var(--t-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--c-gold-mid);margin-bottom:var(--sp-4)}
.eyebrow::before{content:'';display:block;width:24px;height:1px;background:var(--c-gold-mid)}
.divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--c-gold-mid),transparent);margin-block:var(--sp-8)}
.divider--short{width:60px;background:var(--c-gold-mid);height:2px;margin-inline:0}
.img-zoom{overflow:hidden;position:relative}
.img-zoom img{transition:transform var(--dur-cinematic) var(--ease-gold);will-change:transform}
.img-zoom:hover img{transform:scale(1.06)}
.img-zoom__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,13,11,0.6) 0%,transparent 60%);opacity:0;transition:opacity var(--dur-slow) var(--ease-out-expo)}
.img-zoom:hover .img-zoom__overlay{opacity:1}
.cursor{position:fixed;width:12px;height:12px;background:var(--c-gold-mid);border-radius:50%;pointer-events:none;z-index:var(--z-cursor);transform:translate(-50%,-50%);transition:width var(--dur-fast) var(--ease-spring),height var(--dur-fast) var(--ease-spring);mix-blend-mode:difference}
.cursor--large{width:40px;height:40px;background:transparent;border:1px solid var(--c-gold-mid);mix-blend-mode:normal}
.cursor-ring{position:fixed;width:40px;height:40px;border:1px solid rgba(201,150,58,0.4);border-radius:50%;pointer-events:none;z-index:var(--z-cursor);transform:translate(-50%,-50%)}
.page-loader{position:fixed;inset:0;background:var(--c-bg-dark);z-index:9999;display:flex;align-items:center;justify-content:center;transition:opacity var(--dur-slow) var(--ease-out-expo),visibility var(--dur-slow) var(--ease-out-expo)}
.page-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.h-scroll-container{overflow:hidden;position:relative}
.h-scroll-track{display:flex;gap:var(--sp-6);will-change:transform;padding:var(--sp-8) 0}
.h-scroll-item{flex:0 0 min(85vw,640px);position:relative;border-radius:var(--radius-xl);overflow:hidden}
.float-anim{animation:floatY 4s cubic-bezier(0.37,0,0.63,1) infinite}
.float-anim--slow{animation-duration:6s}
.float-anim--fast{animation-duration:2.5s}
