/*
Theme Name: Sunflower Cashmere Course
Version: 1.0
Text Domain: sunflower-course
*/

:root{--ink:#272621;--paper:#f8f6f1;--muted:#777067;--line:#ded9d0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Microsoft YaHei',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.announcement{text-align:center;background:#292a25;color:#f5f2eb;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:9px}.header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:#faf9f6;gap:20px}.brand{font-family:serif;font-size:25px;letter-spacing:.15em;white-space:nowrap}.brand small{display:block;font:8px Arial;letter-spacing:.24em;text-align:center}.nav{display:flex;align-items:center;gap:28px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.nav a:hover{opacity:.55}.menu-toggle{display:none}.hero{min-height:650px;height:74vh;background:#ded5c8 url('assets/hero.jpg') center/cover;display:flex;align-items:center}.hero-inner{padding:5% 8%;max-width:650px}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase}.hero h1,.section h1,.editorial h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}.hero h1{font-size:clamp(48px,6vw,86px);margin:22px 0}.hero p{max-width:340px}.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-block;border:1px solid #282822;background:#282822;color:white;padding:14px 24px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;border-radius:0}.section{padding:90px 6%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:35px}.section h1,.section h2{font-family:Georgia,serif;font-weight:400}.section h2{font-size:42px;margin:8px 0}.muted{color:var(--muted)}.editorial{display:grid;grid-template-columns:1fr 1fr;background:#e8e2d8}.editorial img{width:100%;height:650px;object-fit:cover}.editorial-copy{padding:12%;align-self:center}.editorial h2{font-size:clamp(40px,4vw,64px)}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:5px;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-grid img{width:100%;height:420px;object-fit:cover}.product-grid p{margin:8px 0}.notice{padding:13px 6%;background:#eee9df;font-size:12px;text-align:center}.page-content{max-width:1200px;margin:auto;min-height:45vh}.page-content h1{font:normal 50px Georgia,serif}.page-content p{max-width:750px}.footer{background:#292a25;color:#eeeae2;padding:65px 6% 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer a{display:block;margin:7px 0}.footer small{display:block;margin-top:55px;color:#aaa59b}.woocommerce ul.products li.product .woocommerce-loop-product__title{font:normal 19px Georgia,serif}.woocommerce div.product div.images img{background:#ece7df}.woocommerce ul.products li.product .price{color:#6b655c}.woocommerce-message,.woocommerce-info{border-color:#827a6f}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px;border:1px solid #d7d1c8;background:white}.screen-reader-text{position:absolute;left:-9999px}@media(max-width:800px){.header{height:72px}.menu-toggle{display:block;background:none;border:0;font-size:22px}.nav{display:none;position:absolute;top:104px;left:0;right:0;background:#faf9f6;padding:25px 6%;z-index:10;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.hero{min-height:600px;height:75vh;background-position:64% center;align-items:flex-end}.hero-inner{padding:45px 7%;background:linear-gradient(transparent,rgba(248,246,241,.9));width:100%}.hero h1{font-size:49px}.section{padding:60px 6%}.section h2{font-size:34px}.editorial{grid-template-columns:1fr}.editorial img{height:440px}.product-grid{grid-template-columns:1fr 1fr}.product-grid img{height:300px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}}
.woocommerce #content,.woocommerce-page #content{padding:65px 6%;max-width:1500px;margin:auto;min-height:45vh}.woocommerce-breadcrumb{margin-bottom:25px!important}.catalog-tools{display:flex;justify-content:space-between;gap:24px;margin:25px 0 35px}.catalog-tools nav{display:flex;gap:25px}.catalog-tools input[type=search]{padding:10px;border:1px solid #d5cec4}.catalog-tools button{padding:10px;border:1px solid #292a25;background:#292a25;color:white}.woocommerce ul.products li.product a img{aspect-ratio:4/5;object-fit:cover}.woocommerce div.product .product_title{font:normal 46px Georgia,serif}.woocommerce div.product form.cart .variations select{padding:10px;border:1px solid #d5cec4}.woocommerce table.shop_table{border-radius:0}.woocommerce .quantity .qty{padding:8px}.woocommerce form.checkout{max-width:1000px}.site-search{display:flex;gap:8px;margin-top:20px}.site-search input{padding:12px;border:1px solid #ccc}@media(max-width:800px){.catalog-tools{flex-direction:column}.woocommerce div.product .product_title{font-size:36px}}

/* Restrained motion: content remains visible without JavaScript. */
@media (prefers-reduced-motion: no-preference) {
  .motion-ready .hero-inner > * { animation: shangyu-entrance .9s cubic-bezier(.22,1,.36,1) both; }
  .motion-ready .hero-inner h1 { animation-delay: .1s; }
  .motion-ready .hero-inner p { animation-delay: .2s; }
  .motion-ready .hero-inner .button { animation-delay: .3s; }
  .motion-reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms), transform .8s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms); }
  .motion-reveal.is-visible { opacity: 1; transform: translateY(0); }
  .nav a, .text-link, .button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { transition: color .3s ease, background-color .3s ease, border-color .3s ease, opacity .3s ease; }
  .text-link:hover { color: #8d7965; border-color: #8d7965; }
  .button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { background: #685e51; border-color: #685e51; color: #fff; }
  @media (hover: hover) {
    .woocommerce ul.products li.product a img { transition: transform .7s cubic-bezier(.22,1,.36,1), filter .7s ease; }
    .woocommerce ul.products li.product:hover a img { transform: scale(1.025); filter: brightness(.97); }
  }
}
@keyframes shangyu-entrance { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .motion-reveal { opacity: 1; transform: none; transition: none; } }
@media (prefers-reduced-motion: no-preference) {
  .motion-reveal.from-above:not(.is-visible) { transform: translateY(-24px); }
  .motion-reveal:focus-within { opacity: 1; transform: none; }
}
.language-switch { white-space:nowrap; font-size:11px; letter-spacing:.04em; }.language-switch a[aria-current="true"]{border-bottom:1px solid; padding-bottom:3px}.welcome-page{background:#eee9df}.welcome{min-height:100vh;display:grid;place-items:center;padding:40px 20px;background:linear-gradient(90deg,rgba(245,242,235,.96),rgba(245,242,235,.8)),url('assets/hero.jpg') center/cover}.welcome-card{width:min(100%,520px);text-align:center;padding:54px 50px;background:rgba(250,249,246,.93);box-shadow:0 18px 65px rgba(65,55,42,.09)}.welcome-kicker,.welcome-sub{font-size:10px;letter-spacing:.24em;color:#807469}.welcome-logo{font-family:serif;font-size:40px;letter-spacing:.2em;margin:22px 0 5px}.welcome-line{width:40px;height:1px;background:#b6a898;margin:36px auto}.welcome h1{font-family:serif;font-size:29px;font-weight:400;letter-spacing:.08em}.welcome p{color:#777067;font-size:13px}.welcome-languages{border:0;padding:0;margin:30px 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.welcome-languages label{cursor:pointer}.welcome-languages input{position:absolute;opacity:0}.welcome-languages label span{display:block;border:1px solid #d4cdc2;padding:16px 5px;font-size:14px;transition:border-color .2s,background .2s}.welcome-languages input:checked+span{border-color:#272621;background:#f1eee7}.welcome-languages input:focus-visible+span{outline:2px solid #272621;outline-offset:3px}.welcome-languages small{display:block;color:#8b8174;font-size:10px}.welcome-enter{width:100%;border:1px solid #292a25;background:#292a25;color:#fff;padding:16px;letter-spacing:.12em;cursor:pointer}.welcome-enter:hover{background:#685e51}.welcome-enter span{padding-left:8px}.welcome-note{margin-top:25px;line-height:1.9;font-size:11px!important}@media(max-width:800px){.welcome-card{padding:40px 24px}.welcome-logo{font-size:34px}.nav{gap:20px}}
.company-hero{display:grid;grid-template-columns:1fr 1.15fr;min-height:560px;background:#e9e3da}.company-hero>div{padding:12%;align-self:center}.company-hero h1{font:normal clamp(36px,4vw,60px)/1.35 Georgia,serif;white-space:pre-line}.company-hero img{width:100%;height:100%;min-height:560px;object-fit:cover}.company-intro{max-width:1400px;margin:auto;padding:110px 7%;display:grid;grid-template-columns:1fr 2fr;gap:8%}.company-label{font-size:11px;letter-spacing:.16em;color:#928778}.company-intro h2,.company-heading h2{font:normal clamp(29px,3vw,42px)/1.35 Georgia,serif;margin:0 0 30px}.company-intro p{line-height:2.1;color:#5c574f;margin-bottom:25px}.company-stats{background:#e9e3da;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:65px 7%}.company-stats strong,.company-stats span{display:block}.company-stats strong{font:normal clamp(30px,3vw,48px) Georgia,serif}.company-stats span{font-size:12px;color:#70685f;margin-top:8px}.company-gallery{padding:110px 7%}.company-heading{margin-bottom:40px}.company-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.company-gallery figure{margin:0}.company-gallery img{display:block;width:100%;height:300px;object-fit:cover}.company-gallery figcaption{font-size:12px;color:#81796e;margin-top:10px}.company-quality{background:#eeeae3;max-width:none;padding-left:max(7%,calc((100% - 1200px)/2));padding-right:max(7%,calc((100% - 1200px)/2))}@media(max-width:800px){.company-hero{grid-template-columns:1fr}.company-hero>div{padding:65px 7%}.company-hero img{min-height:0;height:340px}.company-intro{grid-template-columns:1fr;padding:65px 7%;gap:20px}.company-stats{grid-template-columns:1fr 1fr}.company-gallery{padding:65px 7%}.company-gallery-grid{grid-template-columns:1fr 1fr;gap:15px}.company-gallery img{height:200px}}
/* Mobile-first refinements for the existing storefront. */
:focus-visible{outline:2px solid #8d7862;outline-offset:3px}
@media(max-width:800px){
  .announcement{padding:8px 12px;line-height:1.4;font-size:10px;letter-spacing:.06em}
  .header{position:relative;z-index:20;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:4px;height:70px;padding:0 5%;border-bottom:1px solid rgba(97,84,67,.12)}
  .menu-toggle{grid-column:1;grid-row:1;width:44px;height:44px;padding:0;border:0;cursor:pointer;font-size:21px;line-height:1}
  .brand{grid-column:2;grid-row:1;justify-self:center;text-align:center;font-size:21px;letter-spacing:.14em}
  .brand small{font-size:7px;letter-spacing:.15em;margin-top:3px}
  .language-switch{grid-column:3;grid-row:1;display:flex;align-items:center;gap:4px;font-size:11px;min-height:44px}
  .language-switch a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px}
  .nav{top:100%;left:0;right:0;padding:12px 6% 20px;gap:0;background:#faf9f6;box-shadow:0 15px 22px rgba(44,38,32,.09)}
  .nav a{display:flex;align-items:center;width:100%;min-height:50px;border-bottom:1px solid #ebe6df;font-size:12px;letter-spacing:.1em}
  .hero{position:relative;min-height:590px;height:min(78svh,760px);background-position:69% center;align-items:flex-end}
  .hero-inner{position:relative;max-width:none;padding:120px 7% 46px;background:linear-gradient(0deg,rgba(248,246,241,.97) 2%,rgba(248,246,241,.84) 48%,rgba(248,246,241,0) 100%)}
  .hero h1{font-size:clamp(39px,10.5vw,54px);letter-spacing:.02em;line-height:1.18;margin:16px 0}
  .hero p{font-size:14px;line-height:1.8;max-width:275px;margin:0 0 20px}
  .hero .button{min-height:48px;display:inline-flex;align-items:center}
  .section{padding:68px 6%}.section-head{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:28px}
  .section h2{font-size:clamp(29px,8vw,38px);line-height:1.3;letter-spacing:.02em}
  .notice{padding:13px 7%;font-size:11px;line-height:1.6}
  .editorial{background-color:#e9e4dc;background-image:repeating-linear-gradient(115deg,rgba(110,96,79,.025) 0,rgba(110,96,79,.025) 1px,transparent 1px,transparent 5px)}
  .editorial img{height:auto;aspect-ratio:4/3;object-fit:cover}.editorial-copy{padding:62px 7% 70px}.editorial h2{font-size:clamp(34px,9vw,44px);line-height:1.25;letter-spacing:.01em}.editorial-copy p{font-size:14px;line-height:1.9}
  .woocommerce #content,.woocommerce-page #content{padding:42px 6% 65px}.woocommerce ul.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto!important;margin:0!important;min-width:0}.woocommerce ul.products li.product a img{aspect-ratio:4/5;object-fit:cover;margin-bottom:12px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px;line-height:1.5;min-height:3em}.woocommerce ul.products li.product .price{font-size:13px}.woocommerce ul.products li.product .button{padding:11px 9px;min-height:44px;font-size:9px;letter-spacing:.08em}
  .catalog-tools{gap:18px}.catalog-tools nav{gap:18px;overflow-x:auto;white-space:nowrap;padding-bottom:8px}.catalog-tools nav a{display:inline-flex;align-items:center;min-height:44px}.catalog-tools form{display:flex;max-width:100%}.catalog-tools input[type=search]{min-width:0;flex:1}
  .woocommerce div.product .product_title{font-size:30px;line-height:1.35}.woocommerce div.product form.cart .variations select{min-height:44px;max-width:100%}.woocommerce div.product form.cart .button{min-height:48px}.woocommerce table.shop_table{font-size:13px}.woocommerce form .form-row{padding:3px 0}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{font-size:16px;min-height:46px}
  .page-content h1{font-size:36px;line-height:1.3}.footer{padding:55px 7% 32px}.footer-grid{gap:30px 18px}.footer .brand{text-align:left}.footer a{padding:6px 0}.footer small{margin-top:35px;line-height:1.8}
  .company-hero>div{padding:64px 7% 42px}.company-hero h1{font-size:clamp(33px,9vw,45px);line-height:1.4;letter-spacing:.02em}.company-hero img{height:auto;aspect-ratio:4/3;object-fit:cover}.company-intro{padding:70px 7%;gap:18px}.company-intro h2,.company-heading h2{font-size:30px;line-height:1.4;margin-bottom:24px}.company-intro p{font-size:14px;line-height:2}.company-stats{padding:48px 7%;gap:30px 14px}.company-stats strong{font-size:30px}.company-gallery{padding:70px 7%}.company-gallery-grid{gap:22px 12px}.company-gallery img{height:auto;aspect-ratio:4/3}.company-gallery figure:first-child img{object-fit:contain;background:#e9e3da}.company-gallery figcaption{font-size:11px;line-height:1.5}
  .welcome{min-height:100svh;padding:26px 18px}.welcome-card{padding:38px 24px}.welcome-line{margin:27px auto}.welcome-languages label span,.welcome-enter{min-height:54px}
}
@media(max-width:350px){.header{padding:0 3%;grid-template-columns:40px minmax(0,1fr) auto}.brand{font-size:18px}.brand small{font-size:6px}.language-switch{font-size:10px}.company-gallery-grid{grid-template-columns:1fr}}

/* Desktop and tablet landscape: balanced editorial proportions. */
@media (min-width:801px) {
  .header{height:88px;padding-inline:clamp(32px,5vw,96px);gap:clamp(18px,2vw,34px);border-bottom:1px solid rgba(83,73,62,.08)}
  .header .brand{font-size:clamp(22px,2vw,27px);line-height:1.3}
  .header .brand small{margin-top:4px;font-size:8px;letter-spacing:.18em}
  .nav{margin-left:auto;gap:clamp(14px,2.1vw,34px);letter-spacing:.1em}
  .nav a{position:relative;white-space:nowrap;padding:12px 0}
  .nav a::after{content:'';position:absolute;left:0;right:0;bottom:6px;height:1px;background:#8a7966;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
  .nav a:hover::after,.nav a:focus-visible::after{transform:scaleX(1)}
  .language-switch{margin-left:clamp(4px,.8vw,14px)}
  .hero{min-height:600px;height:min(76vh,850px);background-position:center 47%}
  .hero-inner{width:min(49%,680px);max-width:none;padding:4% clamp(56px,7vw,140px)}
  .hero h1{font-size:clamp(48px,4.25vw,76px);line-height:1.18;letter-spacing:.025em;margin:22px 0}
  .hero p{line-height:1.9;margin:0 0 26px;max-width:340px}
  .hero .button{padding:16px 28px}
  .home .section{padding:clamp(90px,8vw,145px) max(6%,calc((100% - 1600px)/2))}
  .home .section-head{margin-bottom:clamp(35px,4vw,65px)}
  .home .section-head h2{font-size:clamp(38px,3.2vw,52px);letter-spacing:.02em;line-height:1.3}
  .home .section-head .text-link{margin-bottom:8px}
  .home ul.products,.woocommerce #content ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.4vw,42px)}
  .home ul.products::before,.home ul.products::after,.woocommerce #content ul.products::before,.woocommerce #content ul.products::after{display:none}
  .home ul.products li.product,.woocommerce #content ul.products li.product{float:none;width:auto!important;margin:0!important;min-width:0}
  .woocommerce ul.products li.product a img{aspect-ratio:4/5;object-fit:cover;margin-bottom:18px}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:18px;line-height:1.5}
  .woocommerce ul.products li.product .price{margin:5px 0 14px}
  .editorial{grid-template-columns:1.05fr .95fr;background-color:#e8e2d8;background-image:repeating-linear-gradient(115deg,rgba(110,96,79,.022) 0,rgba(110,96,79,.022) 1px,transparent 1px,transparent 6px)}
  .editorial img{height:clamp(540px,48vw,760px)}
  .editorial-copy{padding:clamp(55px,9vw,160px)}
  .editorial h2{font-size:clamp(38px,3.5vw,61px);line-height:1.3;letter-spacing:.015em}
  .editorial-copy p{max-width:440px;line-height:2;margin-bottom:30px}
  .woocommerce #content,.woocommerce-page #content{max-width:1600px;padding:75px clamp(45px,6vw,100px) 110px}
  .catalog-tools{padding:12px 0 20px;border-bottom:1px solid var(--line)}
  .company-hero{min-height:clamp(560px,48vw,720px)}
  .company-hero>div{padding:clamp(55px,7vw,125px)}
  .company-hero h1{font-size:clamp(40px,3.5vw,62px);line-height:1.35;letter-spacing:.02em}
  .company-intro{padding-block:clamp(95px,8vw,140px)}
  .company-gallery-grid{gap:32px}
  .company-gallery img{height:auto;aspect-ratio:4/3;object-fit:cover}
  .company-gallery figure:first-child img{object-fit:contain;background:#e9e3da}
  .footer{padding:80px max(6%,calc((100% - 1600px)/2)) 35px}
  .footer-grid{gap:60px}.footer p{max-width:360px}
}
@media (min-width:801px) and (max-width:1050px){.header{padding-inline:25px;gap:14px}.nav{gap:13px;font-size:10px}.header .brand{font-size:21px}.language-switch{font-size:10px}}
@media (prefers-reduced-motion:reduce){.nav a::after{transition:none}}
@media(min-width:801px){
 .woocommerce #primary{max-width:1600px;margin-inline:auto;padding:75px clamp(45px,6vw,100px) 110px}
 .woocommerce #primary ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.4vw,42px)}
 .woocommerce #primary ul.products::before,.woocommerce #primary ul.products::after{display:none}
 .woocommerce #primary ul.products li.product{float:none;width:auto!important;margin:0!important;min-width:0}
 .woocommerce #primary .woocommerce-products-header__title{font:normal clamp(38px,3vw,52px)/1.3 Georgia,serif;margin:25px 0}
}
@media(max-width:800px){.woocommerce #primary{padding:42px 6% 65px}}

.site-title{font-family:Georgia,serif} .nav.open{display:flex} .hero{position:relative;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,.24)}
