:root{
  --orange:#ff6a00;
  --orange-dark:#e85f00;
  --ink:#161616;
  --graphite:#282828;
  --silver:#a6a6a8;
  --line:#e9e9e7;
  --soft:#f6f6f4;
  --white:#fff;
  --radius:22px;
  --font-ko:'Noto Sans KR',sans-serif;
  --font-display:'Cormorant Garamond','Noto Sans KR',serif;
  --font-ui:Manrope,Montserrat,'Noto Sans KR',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-ko);color:var(--ink);background:#fff;overflow-x:hidden}
a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit;font-family:inherit}
img{display:block;width:100%} .wrap{max-width:1440px;margin:auto;padding:0 64px}
.progress{position:fixed;left:0;top:0;height:3px;background:var(--orange);width:0;z-index:1000}
header{position:fixed;left:0;right:0;top:3px;z-index:500;transition:.3s}
header.scrolled{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.08)}
.navbar{height:90px;display:flex;align-items:center;justify-content:space-between;gap:38px}
.brand{display:flex;align-items:center;width:210px} .brand img{height:53px;width:auto;object-fit:contain}
nav{display:flex;gap:34px;align-items:center} nav a{font-family:Manrope,Montserrat,'Noto Sans KR',sans-serif;font-size:14px;font-weight:700;letter-spacing:.09em;position:relative;padding:12px 0}
nav a:after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:2px;background:var(--orange);transition:.25s} nav a:hover:after{right:0}
.nav-actions{display:flex;align-items:center;gap:10px} .outline-btn,.orange-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ink);padding:13px 19px;border-radius:999px;font-family:Manrope,Montserrat,'Noto Sans KR',sans-serif;font-size:12px;font-weight:700;letter-spacing:.07em;background:transparent;cursor:pointer;transition:.25s;color:inherit}
.orange-btn{background:var(--orange);border-color:var(--orange);color:white} .orange-btn:hover{background:var(--orange-dark);transform:translateY(-2px)} .outline-btn:hover{background:var(--ink);color:#fff}
.menu-btn{display:none;border:0;background:none;font-size:26px}
.hero{min-height:100vh;position:relative;display:flex;align-items:center;background:linear-gradient(120deg,#fff 0%,#fff 54%,#f3f3f1 54%,#ececea 100%);overflow:hidden}
.hero:before{content:"";position:absolute;width:540px;height:540px;border:110px solid rgba(255,106,0,.07);border-radius:50%;right:-150px;top:90px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:70px;padding-top:108px}
.eyebrow{font-family:Montserrat,'Noto Sans KR',sans-serif;color:var(--orange);font-weight:700;letter-spacing:.18em;font-size:12px;margin-bottom:22px}
.hero h1{font-family:'Cormorant Garamond','Noto Sans KR',serif;font-size:clamp(86px,9.2vw,164px);font-weight:500;line-height:.74;letter-spacing:-.065em;margin-bottom:44px;text-transform:none}
.hero h1 .hero-power{display:block;color:var(--ink);font-style:normal}
.hero h1 .hero-designed{display:block;color:var(--orange);font-style:italic;font-weight:500;margin-left:14%;letter-spacing:-.07em}
.hero-copy{font-size:18px;line-height:1.9;color:#5b5b5b;max-width:610px}
.hero-actions{display:flex;gap:12px;margin-top:38px;flex-wrap:wrap} .hero-actions a{padding:17px 26px;border-radius:999px;font-size:13px;font-weight:700}
.hero-actions .primary{background:var(--orange);color:#fff} .hero-actions .secondary{border:1px solid #bbb;background:#fff}
.hero-visual{position:relative;height:650px;display:flex;align-items:center;justify-content:center}
.hero-card{position:absolute;width:74%;aspect-ratio:1/1;border-radius:50%;background:#fff;box-shadow:0 40px 100px rgba(0,0,0,.12);overflow:hidden}
.hero-card img{height:100%;object-fit:cover;transform:scale(1.45)} .hero-logo-icon{position:absolute;width:108px;height:108px;right:4%;top:14%;background:#fff;border-radius:28px;padding:14px;box-shadow:0 20px 60px rgba(0,0,0,.15);transform:rotate(6deg)}
.float-label{position:absolute;left:2%;bottom:15%;background:rgba(22,22,22,.95);color:#fff;border-radius:20px;padding:22px 26px;max-width:270px}
.float-label b{display:block;font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:12px;color:#ff9b59;letter-spacing:.12em;margin-bottom:8px} .float-label span{font-size:15px;line-height:1.55}
.scroll-mark{position:absolute;left:64px;bottom:30px;font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:10px;letter-spacing:.2em;transform:rotate(-90deg);transform-origin:left center}
.ticker{background:var(--ink);color:#fff;overflow:hidden;padding:16px 0;border-bottom:4px solid var(--orange);position:relative}
.ticker-track{display:flex;width:max-content;will-change:transform;animation:ticker-marquee 32s linear infinite}
.ticker-group{display:flex;flex-shrink:0;align-items:center}
.ticker span{flex-shrink:0;white-space:nowrap;padding:0 32px;font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:12px;font-weight:600;letter-spacing:.12em}
@keyframes ticker-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.ticker:hover .ticker-track{animation-play-state:paused}
.section{padding:128px 0} .section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:52px}
.section-head h2{font-family:'Cormorant Garamond','Noto Sans KR',serif;font-size:clamp(46px,5.7vw,84px);font-weight:500;letter-spacing:-.045em;line-height:.9}
.section-head p{max-width:520px;color:#666;line-height:1.8;font-size:15px} .section-no{font-family:Montserrat,'Noto Sans KR',sans-serif;color:var(--orange);font-weight:700;margin-bottom:15px}
.categories{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.category{position:relative;min-height:510px;border-radius:var(--radius);overflow:hidden;background:#111;color:#fff;cursor:pointer}
.category img{height:100%;object-fit:cover;transition:.55s;filter:saturate(.85)} .category:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82))}
.category:hover img{transform:scale(1.055);filter:saturate(1)} .category-content{position:absolute;left:30px;right:30px;bottom:28px;z-index:2}
.category small{font-family:Montserrat,'Noto Sans KR',sans-serif;color:#ff9a57;letter-spacing:.14em} .category h3{font-size:28px;margin:7px 0} .category p{font-size:13px;opacity:.75;line-height:1.65}
.category:first-child{grid-column:span 2} .category:first-child .category-content{max-width:420px}
.dark-section{background:#171717;color:#fff;position:relative;overflow:hidden} .dark-section:before{content:"HAPPYCLICK";position:absolute;font-family:Montserrat,'Noto Sans KR',sans-serif;font-weight:800;font-size:18vw;color:rgba(255,255,255,.025);top:20px;left:-20px;white-space:nowrap}
.value-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.value-copy h2{font-family:'Cormorant Garamond','Noto Sans KR',serif;font-size:clamp(42px,6.4vw,92px);font-weight:500;line-height:1.18;letter-spacing:-.045em;margin:16px 0 28px} .value-copy h2 em{font-style:normal;color:var(--orange)}
@media(min-width:651px){.value-copy h2{white-space:nowrap}}
.value-copy p{color:#aaa;line-height:1.9;max-width:570px} .value-list{margin-top:36px;border-top:1px solid #3b3b3b}
.value-item{display:grid;grid-template-columns:52px 1fr;gap:15px;padding:22px 0;border-bottom:1px solid #3b3b3b} .value-item b{font-family:Montserrat,'Noto Sans KR',sans-serif;color:var(--orange)} .value-item strong{display:block;margin-bottom:6px} .value-item span{font-size:13px;color:#999}
.value-image{border-radius:30px;overflow:hidden;transform:rotate(2deg);box-shadow:0 30px 90px rgba(0,0,0,.35)} .value-image img{aspect-ratio:1/1;object-fit:cover}
.products-section{background:var(--soft)} .filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px} .filter button{border:1px solid #d8d8d5;background:white;padding:11px 18px;border-radius:999px;font-size:12px;cursor:pointer}
.filter button.active{background:var(--orange);border-color:var(--orange);color:#fff}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px} .product-card{background:white;border-radius:18px;padding:14px;transition:.3s;border:1px solid transparent}
.product-card:hover{transform:translateY(-7px);box-shadow:0 22px 55px rgba(0,0,0,.09);border-color:#eee} .product-image{height:290px;border-radius:13px;overflow:hidden;background:#eee}
.product-image img{height:100%;object-fit:cover} .product-meta{padding:21px 8px 10px} .product-meta small{color:var(--orange);font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:10px;letter-spacing:.12em;font-weight:700}
.product-meta h3{font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:18px;margin:8px 0} .product-meta p{font-size:12px;color:#777;line-height:1.6}
.lookbook{display:grid;grid-template-columns:1.35fr .65fr;gap:18px} .look-main,.look-side>div{border-radius:24px;overflow:hidden;position:relative}
.look-main{height:690px} .look-side{display:grid;gap:18px} .look-side>div{height:336px} .lookbook img{height:100%;object-fit:cover;transition:.5s} .lookbook div:hover>img{transform:scale(1.03)}
.look-label{position:absolute;left:24px;bottom:24px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);padding:15px 18px;border-radius:14px;font-size:12px;font-weight:700}
.contact-section{background:linear-gradient(135deg,#ff6a00,#ef5200);color:#fff} .contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.contact-copy h2{font-family:'Cormorant Garamond','Noto Sans KR',serif;font-size:clamp(52px,6.4vw,90px);font-weight:500;line-height:.94;letter-spacing:-.045em;margin:16px 0 25px} .contact-copy p{line-height:1.9;color:rgba(255,255,255,.8)} .contact-info{margin-top:38px;font-size:14px;line-height:2}
.contact-form{background:#fff;color:var(--ink);padding:38px;border-radius:28px} .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px} .field{margin-bottom:16px}
.field label{display:block;font-size:12px;font-weight:700;margin-bottom:8px} .field input,.field textarea{width:100%;border:1px solid #ddd;background:#fafafa;border-radius:11px;padding:15px;outline:none}
.field input:focus,.field textarea:focus{border-color:var(--orange);background:#fff} .field textarea{height:120px;resize:vertical} .submit{width:100%;border:0;background:var(--ink);color:#fff;padding:16px;border-radius:12px;font-weight:700;cursor:pointer}
footer{background:#111;color:#999;padding:58px 0 34px} .footer-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:start} .footer-logo{
  width:280px;
  max-width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  filter:none;
  opacity:1;
  image-rendering:auto;
}
.footer-links{display:flex;gap:25px;justify-content:flex-end;flex-wrap:wrap;color:#ddd;font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:11px} .legal{margin-top:35px;padding-top:25px;border-top:1px solid #2e2e2e;font-size:11px;line-height:1.8}
.reveal{opacity:0;transform:translateY(30px);transition:.75s} .reveal.show{opacity:1;transform:none}
.mobile-panel{display:none}
@media(max-width:1050px){.wrap{padding:0 28px} nav{display:none} .menu-btn{display:block} .hero-grid,.value-grid,.contact-grid{grid-template-columns:1fr} .hero{padding-top:80px} .hero-visual{height:520px} .categories{grid-template-columns:1fr 1fr} .category:first-child{grid-column:span 2} .product-grid{grid-template-columns:repeat(2,1fr)} .lookbook{grid-template-columns:1fr} .look-side{grid-template-columns:1fr 1fr} .scroll-mark{display:none} .mobile-panel.open{display:flex;position:fixed;inset:93px 0 0;background:#fff;z-index:490;flex-direction:column;padding:30px;gap:22px;font-family:Montserrat,'Noto Sans KR',sans-serif;font-size:22px;font-weight:700}}
@media(max-width:650px){.wrap{padding:0 20px} .navbar{height:76px} .brand{width:165px} .nav-actions .outline-btn,.nav-actions .orange-btn{display:none} .hero-grid{padding-top:70px;gap:20px} .hero h1{font-size:72px;line-height:.78}.hero h1 .hero-designed{margin-left:8%} .hero-copy{font-size:15px} .hero-visual{height:410px} .hero-card{width:90%} .hero-logo-icon{width:80px;height:80px} .float-label{left:0;bottom:4%;padding:16px;max-width:220px} .section{padding:86px 0} .section-head{display:block} .section-head p{margin-top:22px} .categories{grid-template-columns:1fr} .category,.category:first-child{grid-column:auto;min-height:430px} .product-grid{grid-template-columns:1fr} .look-side{grid-template-columns:1fr} .look-main{height:500px} .look-side>div{height:300px} .form-row{grid-template-columns:1fr} .contact-form{padding:24px} .footer-grid{grid-template-columns:1fr} .footer-links{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){
  *:not(.ticker-track){animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .ticker-track{animation:ticker-marquee 60s linear infinite!important}
}

.footer-brand-panel{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
}
.footer-brand-panel .footer-logo{
  width:280px;
}
@media(max-width:650px){
  .footer-brand-panel{
    justify-content:flex-start;
  }
  .footer-brand-panel .footer-logo{
    width:230px;
  }
}

/* Final revision: v1.0 layout retained; only typography/menu sizing follows v2.7. */

/* ===== v2.7 dropdown / navigation applied to v1.0 layout ===== */
body.menu-open{overflow:hidden}
.navbar{height:124px;display:grid;grid-template-columns:minmax(280px,340px) 1fr minmax(200px,250px);align-items:center;gap:0}
.brand{width:auto;max-width:100%;overflow:hidden}.brand img{width:min(285px,100%);height:72px;object-fit:contain;object-position:left center}
.nav-center{display:flex;justify-content:center;gap:68px;height:100%;align-items:center}
.nav-center>a{font-family:Manrope,'Noto Sans KR',sans-serif;font-size:16px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;position:relative;padding:50px 0 43px}
.nav-center>a:after{content:"";position:absolute;left:0;right:100%;bottom:31px;height:1px;background:var(--orange);transition:.35s cubic-bezier(.22,1,.36,1)}
.nav-center>a:hover:after,.nav-center>a.active:after{right:0}
.nav-actions{justify-content:flex-end}
.mega-menu{position:absolute;left:0;right:0;top:124px;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(250,248,244,.99));border-top:1px solid rgba(18,18,18,.07);border-bottom:1px solid rgba(18,18,18,.10);box-shadow:0 28px 70px rgba(18,18,18,.11);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.32s cubic-bezier(.22,1,.36,1);pointer-events:none;overflow:visible;z-index:450}
header.mega-open .mega-menu,.mega-menu:hover{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.mega-inner{max-width:1440px;width:calc(100% - 128px);height:auto;min-height:200px;margin:auto;position:relative;padding:22px 0 28px}
.mega-inner:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,106,0,.34),transparent)}
.mega-col{
  position:absolute;
  top:22px;
  width:min(220px,100%);
  min-height:0;
  padding:0 0 8px;
  display:flex;
  flex-direction:column;
  gap:2px;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:left .2s cubic-bezier(.22,1,.36,1);
}
.mega-col:before{
  content:"";
  position:absolute;
  left:-18px;
  top:4px;
  width:1px;
  height:calc(100% - 8px);
  background:linear-gradient(180deg,rgba(18,18,18,.10),rgba(18,18,18,0));
}
.mega-col:first-child:before{display:none}
.mega-col.is-focus .mega-link{color:#3d3a36}
.mega-link{
  display:flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:38px;
  padding:8px 14px 8px 0;
  border-radius:10px;
  font-family:var(--font-ko);
  font-size:15px;
  font-weight:600;
  line-height:1.35;
  color:#4f4a45;
  letter-spacing:-.01em;
  transition:color .24s,transform .24s,background .24s,padding .24s;
}
.mega-link:hover{color:var(--ink);background:rgba(255,106,0,.09);padding-left:14px;transform:translateX(2px)}
.mega-link:after{display:none!important}
.mobile-group{border-bottom:1px solid var(--line);padding:8px 0 16px}
.mobile-group-title{display:block;font:700 13px Manrope,'Noto Sans KR',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin:17px 0 8px}
.mobile-panel .mobile-sub{font:500 20px 'Noto Sans KR';padding:8px 0;border-bottom:0;color:#514d48}
.hero-grid{padding-top:142px}
@media(max-width:1050px){
  .navbar{height:88px;display:grid;grid-template-columns:1fr auto}.brand img{width:190px;height:58px}
  .nav-center,.nav-actions .outline-btn,.nav-actions .orange-btn{display:none}.menu-btn{display:block}
  .mega-menu{display:none}.mobile-panel.open{display:flex;position:fixed;inset:91px 0 0;background:#fff;z-index:490;flex-direction:column;padding:112px 30px 35px;gap:0;overflow-y:auto;font-family:Manrope,'Noto Sans KR',sans-serif}
  .hero-grid{padding-top:100px}
}
@media(max-width:650px){
  .navbar{height:78px}.brand img{width:170px;height:52px}
  .mobile-panel.open{inset:81px 0 0;padding:100px 24px 35px}.mobile-panel .mobile-sub{font-size:18px}
}

.form-status{display:none;margin-top:16px;padding:14px 16px;border-radius:10px;font-size:14px;line-height:1.6}
.form-status.show{display:block}
.form-status.success{background:#edf8f0;color:#176b32}
.form-status.error{background:#fff0ed;color:#a52a1f}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.submit:disabled{opacity:.6;cursor:wait}

/* Shared detail-page hero: unified height (home .hero stays full-bleed) */
.detail-hero{
  min-height:320px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:130px 0 52px;
  background:linear-gradient(120deg,#fff 0%,#fff 54%,#f3f3f1 54%,#ececea 100%);
  overflow:hidden;
  text-align:left;
}
.detail-hero:before{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  border:72px solid rgba(255,106,0,.06);
  border-radius:50%;
  right:-90px;
  top:50px;
}
.detail-hero-grid{
  display:grid;
  grid-template-columns:1fr;
  align-items:start;
  justify-items:start;
  gap:0;
  padding-top:0;
  width:100%;
  text-align:left;
}
.detail-hero-copy{
  position:relative;
  z-index:2;
  width:100%;
  max-width:720px;
  margin:0;
  text-align:left;
}
.detail-hero .eyebrow{
  font-family:var(--font-ui);
  color:var(--orange);
  font-weight:700;
  letter-spacing:.18em;
  font-size:12px;
  margin-bottom:16px;
  text-align:left;
}
.detail-hero h1{
  font-family:var(--font-ko);
  font-size:clamp(40px,4.6vw,56px);
  font-weight:800;
  font-style:normal;
  line-height:1.15;
  letter-spacing:-.04em;
  margin-bottom:16px;
  color:var(--ink);
  text-transform:none;
  white-space:nowrap;
  text-align:left;
}
.detail-title-main,
.detail-title-accent{
  display:inline;
  margin:0;
  color:inherit;
  font-style:inherit;
  font-weight:inherit;
  letter-spacing:inherit;
}
.detail-copy{
  font-size:16px;
  line-height:1.75;
  color:#5b5b5b;
  max-width:640px;
  text-align:left;
}
.detail-actions{
  display:flex;
  gap:12px;
  margin-top:22px;
  flex-wrap:wrap;
  justify-content:flex-start;
}
.detail-actions a{
  padding:13px 20px;
  border-radius:999px;
  font-size:13px;
  font-weight:700;
}
.detail-actions .primary{background:var(--orange);color:#fff}
.detail-actions .secondary{border:1px solid #bbb;background:#fff}
.detail-visual{display:none}

/* Shared sticky section tabs (Brand / Products) */
.subnav{
  position:sticky;
  top:127px;
  z-index:400;
  background:#fff;
  border-bottom:1px solid #e8e6e1;
}
.subnav-inner{display:grid;grid-template-columns:repeat(3,1fr)}
.product-subnav-inner{grid-template-columns:repeat(5,1fr)}
.subnav a,
.subnav button{
  display:block;
  width:100%;
  padding:22px;
  text-align:center;
  border:0;
  border-right:1px solid #e8e6e1;
  background:transparent;
  color:inherit;
  font-family:var(--font-ko);
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  transition:color .2s,background .2s;
}
.subnav a:last-child,
.subnav button:last-child{border-right:0}
.subnav small{
  display:block;
  margin-top:3px;
  font:700 10px Manrope,'Noto Sans KR',sans-serif;
  color:#999;
  letter-spacing:.12em;
}
.subnav a:hover,
.subnav a.active,
.subnav button:hover,
.subnav button.active{
  color:var(--orange);
  background:#fffaf6;
}
.subnav a:hover small,
.subnav a.active small,
.subnav button:hover small,
.subnav button.active small{color:var(--orange)}

@media(max-width:1050px){
  .detail-hero{min-height:280px;padding:118px 0 44px}
  .subnav{top:91px}
}
@media(max-width:650px){
  .detail-hero{min-height:240px;padding:100px 0 36px}
  .detail-hero h1{font-size:34px;white-space:normal;margin-bottom:12px}
  .detail-copy{font-size:15px}
  .subnav{top:81px}
  .subnav a,
  .subnav button{padding:17px 6px;font-size:12px}
  .subnav small{font-size:8px;letter-spacing:.08em}
}

/* 한글 텍스트: 메인 페이지와 동일하게 Noto Sans KR 통일 (영문 장식 폰트는 유지) */
.detail-copy,
.detail-actions a,
.hero-copy,
.category h3,
.category p,
.look-label,
.head-copy,
.address,
.info-row span,
.event h3,
.event p,
.note,
.fact span,
.about-panel,
.product-body,
.product-body h3,
.product-card h3,
.specs,
.support-card h3,
.support-card p,
.inquiry-copy h2,
.inquiry-copy p,
.field label,
.g5-board-wrap,
.g5-ready-card,
.qa-list,
.board-fallback-list,
.mega-link,
.mobile-sub,
.subpage-head h2,
.partner-page .type h3,
.partner-page .type p,
.solution-item p,
.step span{
  font-family:var(--font-ko);
}
