/*
Theme Name: Irish Around Oz
Theme URI: https://irisharoundoz.com/
Description: Irish Around Oz on GeneratePress. Same look as the job board: Century Gothic body, Georgia headings, green for links and buttons only, thin rules, no sidebar.
Author: Palmer Productions LLC
Template: generatepress
Version: 1.0.4
Text Domain: generatepress-iaoz
*/

:root{
  --g:#169B62;--g2:#0B7A4B;
  --ink:#252320;--head:#1F1235;--muted:#6E6A63;--soft:#8F8A81;--line:#E8E4DC;--line2:#D8D2C7;--wash:#FAF8F4;
  --body:"Century Gothic",CenturyGothic,AppleGothic,"Avenir Next",Avenir,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",Times,serif;
  --ease:cubic-bezier(.2,.7,.2,1)
}

/* ---------- base ---------- */
body{font-family:var(--body);color:var(--ink);background:#fff;font-size:17px;line-height:1.7}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);color:var(--head);font-weight:700;line-height:1.22}
h1{font-size:clamp(1.9rem,4vw,2.6rem)}
h2{font-size:clamp(1.45rem,3vw,1.85rem);margin:1.7em 0 .55em}
h3{font-size:1.25rem;margin:1.5em 0 .45em}
a{color:var(--g2);text-underline-offset:3px}
a:hover{color:var(--g)}
img{border-radius:0}
::selection{background:#DDF1E7}
button,.button,input[type=submit]{font-family:var(--body);font-weight:700;border-radius:3px;background:var(--g);color:#fff;border:0}
button:hover,.button:hover,input[type=submit]:hover{background:var(--g2);color:#fff}
input[type=text],input[type=email],input[type=search],textarea{font-family:var(--body);border:1px solid var(--line2);border-radius:3px;background:#fff;color:var(--ink)}

/* ---------- header ---------- */
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.inside-header{max-width:1240px;padding:18px 24px}
.site-logo img,.site-header .header-image{height:44px;width:auto}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--g2);padding-left:8px;padding-right:8px;line-height:56px;position:relative}
.main-navigation .main-nav ul li a::after{content:"";position:absolute;left:8px;right:8px;bottom:14px;height:2px;background:var(--g);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.main-navigation .main-nav ul li a:hover::after,.main-navigation .main-nav ul li.current-menu-item>a::after{transform:scaleX(1)}
.main-navigation .main-nav ul li:hover>a,.main-navigation .main-nav ul li.current-menu-item>a{color:var(--g2);background:transparent}
.main-navigation .menu-toggle{color:var(--g2);font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:13px;background:transparent}
.main-navigation .main-nav ul ul{background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(31,18,53,.08)}
.main-navigation .main-nav ul ul li a{line-height:1.4;padding:12px 16px;letter-spacing:1px}
.main-navigation .main-nav ul ul li a::after{display:none}

/* ---------- layout ---------- */
.site.grid-container,.site-content{max-width:1140px}
.one-container .site-content{padding:36px 24px 56px}
.separate-containers .inside-article,.one-container .inside-article{background:transparent;padding:0}
.single .site-main,.page .site-main{max-width:760px;margin:0 auto}
.entry-header{margin-bottom:22px}
.entry-title{margin:0}
.entry-meta{font-size:.86rem;color:var(--muted);margin-top:10px}
.entry-meta a{color:var(--muted)}
.featured-image,.page-header-image-single{margin:0 0 26px}
.featured-image img,.page-header-image-single img{width:100%;height:auto;border-radius:6px;display:block}
.entry-content>p,.entry-content>ul,.entry-content>ol{margin-bottom:1.2em}
.entry-content li{margin-bottom:.35em}
.entry-content img{border-radius:6px;height:auto}
.entry-content blockquote{border-left:3px solid var(--g);background:var(--wash);padding:16px 20px;font-style:normal;color:var(--ink)}
.entry-content table{font-size:.95rem}
footer.entry-meta{margin-top:28px;font-size:.85rem;color:var(--muted)}
footer.entry-meta .tags-links{display:none}
.post-navigation{display:none}
/* the homepage and other pages don't need a big title gap when the content starts with its own hero */
.home .entry-header{margin-bottom:14px}

/* ---------- blog, category and search pages: a clean grid of cards ---------- */
.blog .site-main,.archive .site-main,.search .site-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 28px}
.blog .site-main>*:not(article),.archive .site-main>*:not(article),.search .site-main>*:not(article){grid-column:1/-1}
.blog article,.archive article,.search article{margin:0}
.blog .inside-article,.archive .inside-article,.search .inside-article{display:flex;flex-direction:column;height:100%}
.blog .post-image,.archive .post-image,.search .post-image{order:-1;margin:0 0 14px}
.blog .post-image img,.archive .post-image img,.search .post-image img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px;display:block;transition:transform .5s var(--ease)}
.blog article:hover .post-image img,.archive article:hover .post-image img{transform:translateY(-3px)}
.blog .entry-header,.archive .entry-header,.search .entry-header{margin-bottom:8px}
.blog .entry-title,.archive .entry-title,.search .entry-title{font-size:1.18rem;line-height:1.3}
.blog .entry-title a,.archive .entry-title a,.search .entry-title a{color:var(--head);text-decoration:none}
.blog .entry-title a:hover,.archive .entry-title a:hover{text-decoration:underline;text-decoration-thickness:1px}
.blog .entry-summary,.archive .entry-summary,.search .entry-summary{font-size:.92rem;line-height:1.6;color:var(--muted);margin-top:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog .entry-summary p,.archive .entry-summary p{margin:0}
.blog .read-more-container,.archive .read-more-container,.blog footer.entry-meta,.archive footer.entry-meta,.search footer.entry-meta,
.blog .entry-meta .byline,.archive .entry-meta .byline,.search .entry-meta .byline{display:none}
.blog .entry-meta,.archive .entry-meta,.search .entry-meta{margin-top:4px;font-size:.8rem}
.page-header{margin-bottom:6px}
.page-header .page-title{font-size:clamp(1.8rem,4vw,2.4rem)}
.taxonomy-description{color:var(--muted);max-width:720px}
.paging-navigation{margin-top:10px;border-top:1px solid var(--line);padding-top:22px}
.paging-navigation .page-numbers{padding:6px 12px;color:var(--g2);font-weight:700;text-decoration:none}
.paging-navigation .page-numbers.current{color:var(--head)}

/* ---------- end of post: about the author + email list ---------- */
.iaoz-after{margin-top:40px;border-top:1px solid var(--line);padding-top:28px;display:grid;gap:22px}
.iaoz-author{display:flex;gap:16px;align-items:flex-start}
.iaoz-author img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:none}
.iaoz-author p{margin:0;font-size:.95rem;color:var(--muted)}
.iaoz-author .iaoz-name{font-family:var(--serif);font-weight:700;color:var(--head);font-size:1.05rem;margin-bottom:2px}
.iaoz-list{background:var(--wash);border:1px solid var(--line);border-radius:6px;padding:20px 22px}
.iaoz-list h3{margin:0 0 6px;font-size:1.15rem}
.iaoz-list>p{margin:0 0 12px;font-size:.95rem;color:var(--muted)}
.iaoz-list form{display:flex;flex-wrap:wrap;gap:8px}
.iaoz-list form p{margin:0;flex:1 1 180px}
.iaoz-list form p:last-of-type{flex:0 0 auto}
.iaoz-list input{width:100%;padding:10px 12px}
.iaoz-list button{padding:11px 20px}

/* ---------- share buttons (plain links, no plugin) ---------- */
.iaoz-share{margin:0 0 26px}
.iaoz-after .iaoz-share{margin:0}
.iaoz-share-label{font-weight:700;color:var(--head);font-size:.92rem;margin:0 0 8px}
.iaoz-share-links{display:flex;flex-wrap:wrap;gap:8px}
.iaoz-sh{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--line2);border-radius:3px;color:var(--ink);text-decoration:none;font-size:.85rem;font-weight:700;line-height:1.2;transition:border-color .2s,color .2s}
.iaoz-sh:hover{border-color:var(--g);color:var(--g2)}
.iaoz-sh svg{width:17px;height:17px;fill:currentColor;flex:none}
.iaoz-sh-fb svg{color:#1877F2}.iaoz-sh-wa svg{color:#1FA855}.iaoz-sh-x svg{color:#111}.iaoz-sh-em svg{color:var(--muted)}

/* ---------- footer ---------- */
.site-footer,.site-info{background:#fff;color:var(--muted)}
.site-info{border-top:1px solid var(--line);font-size:.85rem}
.inside-site-info{max-width:1140px;padding:26px 24px;justify-content:center;text-align:center}
.site-info a{color:var(--muted)}
.site-info a:hover{color:var(--g2)}

/* ---------- small screens ---------- */
@media (max-width:1180px) and (min-width:769px){
  .site-logo img{height:36px}
  .main-navigation .main-nav ul li a{font-size:11px;letter-spacing:.6px;padding-left:6px;padding-right:6px}
  .main-navigation .main-nav ul li a::after{left:6px;right:6px}
}
@media (max-width:900px){
  .blog .site-main,.archive .site-main,.search .site-main{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:768px){
  body{font-size:16px}
  .inside-header{padding:12px 16px}
  .site-logo img{height:36px}
  .one-container .site-content{padding:24px 16px 44px}
  .main-navigation .main-nav ul li a{line-height:1.4;padding:14px 16px;border-bottom:1px solid var(--line)}
  .main-navigation .main-nav ul li a::after{display:none}
  .blog .site-main,.archive .site-main,.search .site-main{grid-template-columns:1fr;gap:28px}
}
@media (max-width:420px){
  .iaoz-sh{padding:10px 12px}
  .iaoz-sh span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .iaoz-sh svg{width:20px;height:20px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
