/* PEN SHOP — HOMEPAGE V1 */

body:has(.ps-home) .site-content .ast-container {
    max-width: none;
    padding: 0;
    display: block;
}
body:has(.ps-home) #primary {
    width: 100%;
    margin: 0;
    padding: 0;
}
body:has(.ps-home) .ast-article-single { padding: 0; }
body:has(.ps-home) .entry-header { display: none; }
body:has(.ps-home) .entry-content { margin: 0; }
body:has(.ps-home) .site-footer { display: none; }

.ps-home {
    --ps-navy: #14243e;
    --ps-blue: #2563eb;
    --ps-text: #52637d;
    font-family: inherit;
    color: var(--ps-navy);
}
.ps-home * { box-sizing: border-box; }
.ps-home h1,
.ps-home h2,
.ps-home h3,
.ps-home p { margin-top: 0; }
.ps-container {
    width: min(1200px, calc(100% - 48px));
    margin-inline: auto;
}
.ps-eyebrow {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: .17em;
    text-transform: uppercase;
}
.ps-eyebrow:before {
    content: '';
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #71b4ff;
}
.ps-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 51px;
    padding: 13px 23px;
    border-radius: 9px;
    background: #fff;
    color: #162846 !important;
    font-size: 14px;
    font-weight: 750;
    text-decoration: none !important;
    transition: transform .2s, background .2s;
}
.ps-button:hover {
    transform: translateY(-2px);
    background: #e9f1ff;
}
.ps-button--blue {
    background: var(--ps-blue);
    color: white !important;
}
.ps-button--blue:hover { background: #1d4ed8; }
.ps-text-link {
    color: inherit !important;
    font-size: 14px;
    font-weight: 650;
    text-decoration: none !important;
    border-bottom: 1px solid currentColor;
    padding-bottom: 5px;
}

/* Hero */
.ps-hero {
    background:
      radial-gradient(ellipse at 85% 12%, #254b82 0%, transparent 42%),
      linear-gradient(135deg, #101e35, #172e50);
    color: white;
    overflow: hidden;
}
.ps-hero-grid {
    min-height: 620px;
    display: grid;
    grid-template-columns: 1.06fr .94fr;
    gap: 50px;
    align-items: center;
    padding-block: 86px;
}
.ps-hero .ps-eyebrow { color: #a9cafa; }
.ps-hero h1 {
    color: #fff;
    font-size: clamp(44px, 5.2vw, 76px);
    letter-spacing: -.055em;
    line-height: 1.08;
    font-weight: 760;
    margin: 26px 0 24px;
}
.ps-hero h1 em {
    font-style: normal;
    color: #99c2ff;
}
.ps-hero p {
    color: #c3d1e6;
    max-width: 500px;
    line-height: 1.8;
    font-size: 17px;
    margin-bottom: 32px;
}
.ps-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px;
}
.ps-hero .ps-text-link { color: white !important; }

/* Ilustratie produs — fara fotografie fictiva */
.ps-showcase {
    min-height: 450px;
    position: relative;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 28px;
    background: linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.035));
    box-shadow: 0 30px 75px rgba(0,0,0,.17);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.ps-orbit {
    width: 345px;
    height: 345px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 50%;
    position: absolute;
}
.ps-orbit:after {
    content: '';
    position: absolute;
    inset: 28px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
}
.ps-device {
    position: relative;
    z-index: 1;
    transform: rotate(-33deg);
    width: 46px;
    height: 310px;
    border-radius: 17px 17px 7px 7px;
    background: linear-gradient(90deg,#dbe8f6 0%,#fff 34%,#a7bdd5 84%,#eef5ff 100%);
    box-shadow: 16px 22px 38px rgba(0,0,0,.27);
}
.ps-device:before {
    content: '';
    position: absolute;
    bottom: -57px;
    left: 16px;
    width: 14px;
    height: 60px;
    background: linear-gradient(#cad7e7,#f8fbff);
    clip-path: polygon(0 0,100% 0,50% 100%);
}
.ps-device:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 46px;
    height: 12px;
    background: #2366cb;
    box-shadow: 0 167px 0 #2366cb;
}
.ps-floating-label {
    position: absolute;
    bottom: 26px;
    left: 26px;
    color: white;
    font-size: 12px;
    font-weight: 650;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ps-showcase-note {
    position: absolute;
    right: 25px;
    top: 25px;
    padding: 8px 11px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 30px;
    font-size: 11px;
    color: #d7e8ff;
}

/* Produse */
.ps-section { padding: 94px 0; }
.ps-section--soft { background: #f6f8fc; }
.ps-heading-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 34px;
}
.ps-section .ps-eyebrow { color: var(--ps-blue); }
.ps-section h2 {
    font-size: clamp(30px, 3.3vw, 46px);
    letter-spacing: -.04em;
    line-height: 1.15;
    margin: 14px 0 0;
}
.ps-cards {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 20px;
}
.ps-card {
    border: 1px solid #e5ebf3;
    border-radius: 18px;
    background: white;
    padding: 32px;
    min-height: 312px;
    display: flex;
    flex-direction: column;
    transition: transform .2s, box-shadow .2s;
}
.ps-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 45px rgba(20,36,62,.07);
}
.ps-card-number {
    font-size: 13px;
    font-weight: 700;
    color: #7b96bc;
    letter-spacing: .14em;
}
.ps-card-symbol {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    background: #edf4ff;
    border-radius: 16px;
    font-size: 29px;
    margin: 28px 0;
}
.ps-card h3 {
    font-size: 22px;
    letter-spacing: -.02em;
    margin-bottom: 10px;
}
.ps-card p {
    color: var(--ps-text);
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
}
.ps-card .ps-text-link {
    margin-top: auto;
    padding-top: 18px;
    width: fit-content;
    color: var(--ps-blue) !important;
}

/* Mesaj si ghid */
.ps-values {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
    padding-block: 39px;
    border-bottom: 1px solid #e6ebf3;
}
.ps-value { display: flex; gap: 15px; align-items: flex-start; }
.ps-value-mark {
    width: 33px;
    height: 33px;
    flex: 0 0 33px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eaf1ff;
    color: #2563eb;
    font-weight: 750;
}
.ps-value strong {
    display: block;
    font-size: 15px;
    margin-bottom: 4px;
}
.ps-value span {
    font-size: 13px;
    color: var(--ps-text);
}
.ps-guide {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 45px;
    align-items: center;
}
.ps-guide p {
    max-width: 500px;
    color: var(--ps-text);
    line-height: 1.8;
    margin: 20px 0 27px;
}
.ps-guide-panel {
    border-radius: 22px;
    padding: 40px;
    background: linear-gradient(140deg,#e8f0fd,#f7faff);
    border: 1px solid #dde8f8;
}
.ps-guide-panel-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: #5773a0;
    font-weight: 750;
    margin-bottom: 20px;
}
.ps-steps {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
}
.ps-step {
    border-radius: 12px;
    padding: 24px 0;
    text-align: center;
    font-weight: 750;
    color: #315d9d;
    background: #fff;
    border: 1px solid #dfebfa;
}
.ps-guide-panel-footer {
    font-size: 12px;
    color: #7388a8;
    margin-top: 17px;
}

/* Footer propriu pe homepage */
.ps-footer {
    background: #13233b;
    color: #c8d5e7;
    padding: 48px 0;
}
.ps-footer-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
}
.ps-footer-brand {
    color: white;
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.04em;
}
.ps-footer small { color: #9dafca; }
.ps-footer a { color: #dce9fb !important; text-decoration: none !important; }
.ps-footer-links { display: flex; gap: 25px; font-size: 13px; }

@media(max-width: 900px) {
    .ps-hero-grid { grid-template-columns: 1fr; padding-block: 65px; }
    .ps-showcase { min-height: 350px; }
    .ps-cards { grid-template-columns: 1fr 1fr; }
    .ps-guide { grid-template-columns: 1fr; }
}
@media(max-width: 600px) {
    .ps-container { width: min(100% - 32px, 1200px); }
    .ps-hero-grid { gap: 30px; padding-block: 48px; }
    .ps-hero h1 { font-size: 42px; }
    .ps-hero p { font-size: 15px; }
    .ps-showcase { min-height: 300px; }
    .ps-device { transform: rotate(-33deg) scale(.7); }
    .ps-orbit { width: 260px; height: 260px; }
    .ps-section { padding: 65px 0; }
    .ps-heading-row { display: block; }
    .ps-heading-row .ps-text-link { display: inline-block; margin-top: 20px; }
    .ps-cards { grid-template-columns: 1fr; }
    .ps-card { min-height: 270px; }
    .ps-values { grid-template-columns: 1fr; gap: 25px; }
    .ps-guide-panel { padding: 20px; }
    .ps-footer-inner { flex-direction: column; align-items: start; }
}

/* PENSHOP THREE CARDS */
.ps-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.ps-category-card {
    display: block;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    text-decoration: none !important;
    transition: transform .2s, box-shadow .2s;
}

.ps-category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(20,36,62,.09);
}

.ps-category-image {
    height: 270px;
    padding: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
}

.ps-category-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ps-category-info {
    padding: 24px;
}

.ps-category-info h3 {
    font-size: 21px;
    color: #172b4d;
    margin: 0 0 10px;
}

.ps-category-info p {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin: 0 0 20px;
}

.ps-category-link {
    font-size: 14px;
    font-weight: 700;
    color: #2563eb;
}

@media(max-width:767px) {
    .ps-category-grid {
        grid-template-columns: 1fr;
    }
}

/* PENSHOP HERO PRODUCT PHOTO V1 */

.ps-showcase.ps-showcase--product {
    background: #ffffff;
    border: 1px solid #e7edf6;
    padding: 30px;
    box-shadow: 0 28px 65px rgba(0, 0, 0, .20);
}

.ps-hero-photo-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 390px;
}

.ps-hero-product-image {
    display: block;
    width: 100%;
    height: 390px;
    object-fit: contain;
    transition: transform .3s ease;
}

.ps-hero-photo-link:hover .ps-hero-product-image {
    transform: scale(1.035);
}

.ps-hero-photo-tag {
    position: absolute;
    bottom: 18px;
    left: 22px;
    padding: 8px 13px;
    background: #edf4ff;
    color: #2563eb;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .12em;
}

@media (max-width: 600px) {
    .ps-showcase.ps-showcase--product {
        padding: 18px;
    }

    .ps-hero-photo-link {
        min-height: 260px;
    }

    .ps-hero-product-image {
        height: 260px;
    }
}

/* PENSHOP HOMEPAGE POLISH V2 */

/* Hero cu proportii si colturi premium */
.ps-home .ps-hero {
    width: min(1320px, calc(100% - 48px));
    margin: 26px auto 0;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(20, 36, 62, .13);
}

/* Sectiunea de produse urmeaza aceeasi geometrie */
.ps-home .ps-section--soft {
    width: min(1320px, calc(100% - 48px));
    margin: 26px auto 0;
    border-radius: 24px;
    overflow: hidden;
    background: #f4f7fc;
}

/* Carduri consistente */
.ps-home .ps-category-card {
    border-radius: 18px;
    box-shadow: 0 5px 18px rgba(20, 36, 62, .035);
}

/* Finisare mobila */
@media (max-width: 600px) {
    .ps-home .ps-hero,
    .ps-home .ps-section--soft {
        width: calc(100% - 24px);
        margin-top: 14px;
        border-radius: 16px;
    }

    .ps-home .ps-hero {
        box-shadow: 0 10px 28px rgba(20, 36, 62, .10);
    }
}
/* PEN SHOP — Ghid preview on Home V2 */
.ps-home .ps-guide-thumbs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 12px;
}
.ps-home .ps-guide-thumb {
    min-width: 0;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
    border-radius: 10px;
    background: #ffffff;
    border: 1px solid #dfe9f8;
    overflow: hidden;
    text-decoration: none !important;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.ps-home .ps-guide-thumb img {
    display: block;
    width: 100%; height: 100%; object-fit: contain;
}
.ps-home .ps-guide-thumb:hover,
.ps-home .ps-guide-thumb:focus-visible {
    transform: translateY(-2px);
    border-color: #2563eb;
    box-shadow: 0 7px 18px rgba(37,99,235,.09);
}
.ps-home .ps-guide-thumb:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.ps-home .ps-guide-panel-footer { margin-top: 15px; }
@media (max-width:600px) { .ps-home .ps-guide-thumbs { gap: 7px; } .ps-home .ps-guide-thumb { padding: 4px; border-radius: 8px; } }
